4

What happened? How did it happen? What are the steps to replicate the issue.
On some sites (not most sites), some images don't load, even in compatibility mode. They do load in Safari. I've seen this on mutiple sites, but I haven't noticed any kind of pattern to it.

Example page: https://cutethingsfromjapan.com/collections/cute-things-from-japan-original/products/ctfj-x-eric-stationery-set-boxes
See attachments for Orion screenshot (in compatibility mode)

In Orion, for an image which didn't load, if you right-click it and choose "Open image in new tab", you get a new tab with a successfully loaded image. So the images are accessible.

I notice that in Orion, the Dev Tools -> Network view lists the failed images as Type = "jxl". But in Safari's Network view they are listed as "webp". (See attached

screenshot)

One other thing: I think the affected images always (or usually) have query-params in the URL. Example from the above page: https://cutethingsfromjapan.com/cdn/shop/products/stationerybox_stationerybox_21_1800x1800.jpg?v=1648170292

Please note: this is not specific to one site, I've seen it on a few other sites - but not many. But I don't have another example to hand right now - sorry.

What did you expect to happen? Describe the desired functionality.
Safari screenshots attached for images successfully loaded in Safari and in Network view

What version of Orion are you running?
0.99.125-beta (WebKit 616.1.22)

    Cant reproduce in latest RC I would expect it to fix it.

      6 days later

      I see the next release should fix it but I thought I would mention that in Safari the request accept header does not include image/jxl but in Orion that type is included which is why the response type changes.

      A fix I've been using is to remove the image/jxl. To do this, I installed the "Header Editor" Chrome extension and setup a rule to:

      1. rule type request header
      2. match all requests
      3. execute custom function:
      for (const a in val) {
          if (val[a].name.toLowerCase() === 'accept') {
              val[a].value = val[a].value.replace('image/jxl,','');
              val[a].value = val[a].value.replace(',image/jxl','');
              break;
          }
      }
        6 days later
        No one is typing