[🐛] Web App Bugs

WebGL

  • Fragment shader error:
    0:2(12): error: extension `GL_EXT_shader_texture_lod' unsupported in fragment shader
    
    GetShaderSource() ->
    
    #extension GL_EXT_shader_texture_lod: require
    void main() {}
    

Console

  • Imports need some attention:
    WARNING: Multiple instances of Three.js being imported. main.aa7a8648d60f5eee.js:2023:683951
    
  • I think the following should be logged at .info() level:
    system   ERROR in CurrentUserService.reloadCurrentUser()  No accessToken and/or userId in local storage main.aa7a8648d60f5eee.js:1:551236
    
  • Traffic sign sprites missing:
    Image "information--general-directions--g1" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event. main.aa7a8648d60f5eee.js:2087:596491
    Image "complementary--texts-three-lines--g1" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event. main.aa7a8648d60f5eee.js:2087:596491
    Image "regulatory--texts-four-lines--g1" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event. main.aa7a8648d60f5eee.js:2087:596491
    

UI

  • The Image by <username> for <organization> attribution components are no longer links.

cc: @nikola

Thanks for letting us know! BTW, which browser/OS are you using? I can’t see the WebGL-related message on my system. I’ll look into the other console warnings.

The UI change is recent as the user profile now switches to the image owner when an image loads automatically so it was deemed no longer needed. Do you think it would still be useful?

@nikola - the “org” link would still be helpful right? So for example: “for bemaps” should be a hyperlink.

1 Like

BTW, which browser/OS are you using? I can’t see the WebGL-related message on my system.

User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:140.0) Gecko/20100101 Firefox/140.0
The WebGL message is emitted to stdout, not in the browser console. This is because the GLSL compiler/preprocessor is part of Mesa 3D, not the browser’s JavaScript runtime. So, it is a Mesa 3D (GL implementation) specific message that helps diagnose shader errors more quickly. Though, it is not a verbose or debug mode message. Furthermore, the GL implementation on your machine may support the GL_EXT_shader_texture_lod GL extension, hence you will not see this error message at all. On Windows, regardless whether the GL implementation supports the GL_EXT_shader_texture_lod GL extension or not, you will usually not see this message on the command line either because applications that do not target the console sub‑system (like most browsers) redirect stdout and stderr output to nul: by default. You can though get hold of stdout and stderr output of such applications by explicitly redirecting stdout and stderr output on the command line like so:

firefox 2>&1 > stdout+stderr.txt
# or
firefox > stdout.txt

Please note that GL implementations on Windows and other OSes may not emit (shader) error messages at all or only after enabling their debug mode.

Right, that’s what I would I suggest too. However, for the sake of orthogonality I would reinstate both links, unless it requires unreasonable technical effort or performance penalty.

1 Like

@nikola Just FYI, the fragment shader error is caused by the map layer.