Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Cannot view asset's info with qutebrowser or falkon #2606

Closed
1 of 3 tasks
Ram-Z opened this issue May 29, 2023 · 9 comments
Closed
1 of 3 tasks

[BUG] Cannot view asset's info with qutebrowser or falkon #2606

Ram-Z opened this issue May 29, 2023 · 9 comments
Labels
bug Something isn't working needs triage Bug that needs triage from maintainer 🖥️web

Comments

@Ram-Z
Copy link

Ram-Z commented May 29, 2023

The bug

Clicking the "Info" button on an image produces the error below and nothing happens.

This happens consistently with my usual browser qutebrowser and other qtwebengine based browsers like falkon. I cannot reproduce it with Firefox or Chromium.

datetime.4fd94379.js:1 Uncaught (in promise) RangeError: Value longOffset out of range for Intl.DateTimeFormat options property timeZoneName
    at new DateTimeFormat (<anonymous>)
    at ze (datetime.4fd94379.js:1)
    at new Pr (datetime.4fd94379.js:1)
    at w.dtFormatter (datetime.4fd94379.js:1)
    at E.formatDateTime (datetime.4fd94379.js:1)
    at h.toLocaleString (datetime.4fd94379.js:1)
    at nl (asset-viewer.2038139d.js:formatted:1)
    at Sn (asset-viewer.2038139d.js:formatted:1)
    at cn (index.69ccc1f4.js:4)
    at new Tn (asset-viewer.2038139d.js:formatted:1)
asset-viewer.2038139d.js:formatted:1 Uncaught (in promise) TypeError: Cannot set property 'value' of undefined
    at asset-viewer.2038139d.js:formatted:1

The OS that Immich Server is running on

Arch

Version of Immich Server

v1.58.0

Version of Immich Mobile App

N/A

Platform with the issue

  • Server
  • Web
  • Mobile

Your docker-compose.yml content

N/A

Your .env content

N/A

Reproduction steps

1. Open qutebrowser or falkon
2. Click on picture
3. Click on "Info"
4. Nothing happens
5. Console now contains above errors

Additional information

No response

@Ram-Z Ram-Z added bug Something isn't working needs triage Bug that needs triage from maintainer labels May 29, 2023
@alextran1502 alextran1502 changed the title [BUG] "Value longOffset out of range for Intl.DateTimeFormat" when clicking Info [BUG] Cannot view asset's info with qutebrowser or falkan May 30, 2023
@alextran1502
Copy link
Contributor

Could it be those browsers don't support the specific API call to convert the date and time info to the appropriate locale?

@jrasm91
Copy link
Contributor

jrasm91 commented May 30, 2023

That's more than likely the root cause here. You could try running some of the example here and report back.

@Ram-Z Ram-Z changed the title [BUG] Cannot view asset's info with qutebrowser or falkan [BUG] Cannot view asset's info with qutebrowser or falkon May 30, 2023
@Ram-Z
Copy link
Author

Ram-Z commented May 30, 2023

Commented constructors below do not work in my browser, expected results generated on Firefox.

const date = new Date(Date.UTC(2020, 11, 20, 3, 23, 16, 738));

console.log(new Intl.DateTimeFormat('en-US').format(date));
// Expected: "12/20/2020"
console.log(new Intl.DateTimeFormat('en-US', { timeZoneName: 'short' }).format(date));
// Expected: "12/20/2020, GMT"
console.log(new Intl.DateTimeFormat('en-US', { timeZoneName: 'long' }).format(date));
// Expected: "12/20/2020, Greenwich Mean Time"
//console.log(new Intl.DateTimeFormat('en-US', { timeZoneName: 'shortOffset' }).format(date));
// Expected: "12/20/2020, GMT"
//console.log(new Intl.DateTimeFormat('en-US', { timeZoneName: 'longOffset' }).format(date));
// Expected: "12/20/2020, GMT"
//console.log(new Intl.DateTimeFormat('en-US', { timeZoneName: 'shortGeneric' }).format(date));
// Expected: "12/20/2020, United Kingdom Time"
//console.log(new Intl.DateTimeFormat('en-US', { timeZoneName: 'longGeneric' }).format(date));
// Expected: "12/20/2020, United Kingdom Time"

@michelheusschen
Copy link
Contributor

Didn't find any compatibility data for this and I had to search through the ECMAScript spec to even get some answers. In the 2021 spec timeZoneName only had the short/long options, but in 2022 it seems to have expanded which seem to cause problems for you. Specifically with longOffset which is what we're using.

The browsers you're trying to use are Chromium based, correct? Do you know which version perhaps? We could use timeZoneName: 'short' to solve this, the timezones would no longer be only GMT and also have some localized timezones like PST

@Ram-Z
Copy link
Author

Ram-Z commented May 30, 2023

Yes it's Chromium based.

Backend: QtWebEngine 5.15.14, based on Chromium 87.0.4280.144

Full version info

Version info
         ______     ,,
    ,.-"`      | ,-` |
  .^           ||    |
 /    ,-*^|    ||    |
;    /    |    ||    ;-*```^*.
;   ;     |    |;,-*`         \
|   |     |  ,-*`    ,-"""\    \
|    \   ,-"`    ,-^`|     \    |
 \    `^^    ,-;|    |     ;    |
  *;     ,-*`  ||    |     /   ;;
    `^^`` |    ||    |   ,^    /
          |    ||    `^^`    ,^
          |  _,"|        _,-"
          -*`   ****"""``

qutebrowser v2.5.4
Git commit: a42c85e8e on master-patched (2023-05-30 00:10:40 +0100)
Backend: QtWebEngine 5.15.14, based on Chromium 87.0.4280.144
Qt: 5.15.9 (compiled 5.15.8)

CPython: 3.11.3
PyQt: 5.15.9

sip: 6.7.9
colorama: 0.4.6
jinja2: 3.1.2
pygments: 2.15.1
yaml: 6.0
adblock: no
objc: no
PyQt5.QtWebEngineWidgets: yes
PyQt5.QtWebEngine: 5.15.6
PyQt5.QtWebKitWidgets: no
pdf.js: 2.3.200 (bundled)
sqlite: 3.42.0
QtNetwork SSL: OpenSSL 3.0.8 7 Feb 2023

Style: QFusionStyle
Platform plugin: xcb
OpenGL: AMD, 4.6 (Compatibility Profile) Mesa 23.1.0
Platform: Linux-6.3.4-arch1-1-x86_64-with-glibc2.37, 64bit
Linux distribution: Arch Linux (arch)
Frozen: False
Imported from /home/ramsi/src/qutebrowser/qutebrowser
Using Python from /usr/bin/python3
Qt library executable path: /usr/lib/qt/libexec, data path: /usr/share/qt

Paths:
cache: /home/ramsi/.cache/qutebrowser
config: /home/ramsi/.config/qutebrowser
data: /home/ramsi/.local/share/qutebrowser
runtime: /run/user/1000/qutebrowser
system data: /usr/share/qutebrowser

Autoconfig loaded: yes
Config.py: /home/ramsi/.config/qutebrowser/config.py has been loaded
Uptime: 2 days, 19:43:00
Yank pastebin URL for version info
Copyright info
Copyright 2014-2021 Florian Bruhin (The Compiler)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/ or open qute://gpl.

There is some effort going on to port the browser to qt6 webengine, which I suppose will have a newer version of Blink.

@Ram-Z
Copy link
Author

Ram-Z commented May 30, 2023

I gave this a go on the qt6 version, and can still reproduce the issue.

Backend: QtWebEngine 6.3.2, based on Chromium 94.0.4606.126 (from api)

Full version info

Version info
         ______     ,,
    ,.-"`      | ,-` |
  .^           ||    |
 /    ,-*^|    ||    |
;    /    |    ||    ;-*```^*.
;   ;     |    |;,-*`         \
|   |     |  ,-*`    ,-"""\    \
|    \   ,-"`    ,-^`|     \    |
 \    `^^    ,-;|    |     ;    |
  *;     ,-*`  ||    |     /   ;;
    `^^`` |    ||    |   ,^    /
          |    ||    `^^`    ,^
          |  _,"|        _,-"
          -*`   ****"""``

qutebrowser v2.5.4
Git commit: a42c85e8e on master-patched (2023-05-30 00:10:40 +0100)
Backend: QtWebEngine 6.3.2, based on Chromium 94.0.4606.126 (from api)
Qt: 6.3.2 (compiled 6.3.1)

CPython: 3.11.3
PyQt: 6.3.1

sip: no
colorama: 0.4.6
jinja2: 3.1.2
pygments: 2.15.1
yaml: 6.0
adblock: 0.6.0
objc: no
PyQt6.QtWebEngineCore: 6.3.1
pdf.js: 2.3.200 (bundled)
sqlite: 3.39.2
QtNetwork SSL: no

Style: QFusionStyle
Platform plugin: xcb
OpenGL: AMD, 4.6 (Compatibility Profile) Mesa 23.1.1
Platform: Linux-6.3.4-arch1-1-x86_64-with-glibc2.37, 64bit
Linux distribution: Arch Linux (arch)
Frozen: False
Imported from /home/ramsi/src/qutebrowser/qutebrowser
Using Python from /home/ramsi/src/qutebrowser/.venv-qt6/bin/python
Qt library executable path: /home/ramsi/src/qutebrowser/.venv-qt6/lib/python3.11/site-packages/PyQt6/Qt6/libexec, data path: /home/ramsi/src/qutebrowser/.venv-qt6/lib/python3.11/site-packages/PyQt6/Qt6

Paths:
cache: /tmp/qutebrowser-basedir-8wlbaiqz/cache
config: /tmp/qutebrowser-basedir-8wlbaiqz/config
data: /tmp/qutebrowser-basedir-8wlbaiqz/data
runtime: /tmp/qutebrowser-basedir-8wlbaiqz/runtime
system data: /usr/share/qutebrowser

Autoconfig loaded: yes
Config.py: no config.py was loaded
Uptime: 0:01:08

@Ram-Z
Copy link
Author

Ram-Z commented May 30, 2023

Backend: QtWebEngine 6.3.2, based on Chromium 94.0.4606.126 (from api)

QtWebEngine 6.3.2 seems to be running the last version of Chromium that does not support the extensions.

@Ram-Z
Copy link
Author

Ram-Z commented May 30, 2023

QtWebEngines 6.4 and onwards do support them and I can confirm that I cannot reproduce the bug with "Backend: QtWebEngine 6.5, based on Chromium 108.0.5359.220 (from api)".

Happy to have this resolved as "wontfix, update your browser" if you'd rather not change the timeZoneName.

@michelheusschen
Copy link
Contributor

There haven't been any other reports for this error and you're using an older Chromium version, so I'll leave it for now. We can always revisit this if more people run into this issue.

@michelheusschen michelheusschen closed this as not planned Won't fix, can't repro, duplicate, stale May 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working needs triage Bug that needs triage from maintainer 🖥️web
Projects
Archived in project
Development

No branches or pull requests

4 participants