Merge remote-tracking branch 'origin/main' into video_file_preview
This commit is contained in:
@@ -2,8 +2,8 @@ PODS:
|
||||
- app_links (1.0.0):
|
||||
- FlutterMacOS
|
||||
- connectivity_plus (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- ReachabilitySwift
|
||||
- desktop_webview_window (0.0.1):
|
||||
- FlutterMacOS
|
||||
- device_info_plus (0.0.1):
|
||||
@@ -29,14 +29,13 @@ PODS:
|
||||
- path_provider_foundation (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- ReachabilitySwift (5.2.3)
|
||||
- screen_retriever (0.0.1):
|
||||
- FlutterMacOS
|
||||
- Sentry/HybridSDK (8.25.0)
|
||||
- sentry_flutter (7.20.2):
|
||||
- Sentry/HybridSDK (8.33.0)
|
||||
- sentry_flutter (8.7.0):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- Sentry/HybridSDK (= 8.25.0)
|
||||
- Sentry/HybridSDK (= 8.33.0)
|
||||
- share_plus (0.0.1):
|
||||
- FlutterMacOS
|
||||
- shared_preferences_foundation (0.0.1):
|
||||
@@ -47,16 +46,16 @@ PODS:
|
||||
- sqflite (0.0.3):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- "sqlite3 (3.46.0+1)":
|
||||
- "sqlite3/common (= 3.46.0+1)"
|
||||
- "sqlite3/common (3.46.0+1)"
|
||||
- "sqlite3/dbstatvtab (3.46.0+1)":
|
||||
- "sqlite3 (3.46.1+1)":
|
||||
- "sqlite3/common (= 3.46.1+1)"
|
||||
- "sqlite3/common (3.46.1+1)"
|
||||
- "sqlite3/dbstatvtab (3.46.1+1)":
|
||||
- sqlite3/common
|
||||
- "sqlite3/fts5 (3.46.0+1)":
|
||||
- "sqlite3/fts5 (3.46.1+1)":
|
||||
- sqlite3/common
|
||||
- "sqlite3/perf-threadsafe (3.46.0+1)":
|
||||
- "sqlite3/perf-threadsafe (3.46.1+1)":
|
||||
- sqlite3/common
|
||||
- "sqlite3/rtree (3.46.0+1)":
|
||||
- "sqlite3/rtree (3.46.1+1)":
|
||||
- sqlite3/common
|
||||
- sqlite3_flutter_libs (0.0.1):
|
||||
- FlutterMacOS
|
||||
@@ -74,7 +73,7 @@ PODS:
|
||||
|
||||
DEPENDENCIES:
|
||||
- app_links (from `Flutter/ephemeral/.symlinks/plugins/app_links/macos`)
|
||||
- connectivity_plus (from `Flutter/ephemeral/.symlinks/plugins/connectivity_plus/macos`)
|
||||
- connectivity_plus (from `Flutter/ephemeral/.symlinks/plugins/connectivity_plus/darwin`)
|
||||
- desktop_webview_window (from `Flutter/ephemeral/.symlinks/plugins/desktop_webview_window/macos`)
|
||||
- device_info_plus (from `Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos`)
|
||||
- file_saver (from `Flutter/ephemeral/.symlinks/plugins/file_saver/macos`)
|
||||
@@ -100,7 +99,6 @@ DEPENDENCIES:
|
||||
SPEC REPOS:
|
||||
trunk:
|
||||
- OrderedSet
|
||||
- ReachabilitySwift
|
||||
- Sentry
|
||||
- sqlite3
|
||||
|
||||
@@ -108,7 +106,7 @@ EXTERNAL SOURCES:
|
||||
app_links:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/app_links/macos
|
||||
connectivity_plus:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/connectivity_plus/macos
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/connectivity_plus/darwin
|
||||
desktop_webview_window:
|
||||
:path: Flutter/ephemeral/.symlinks/plugins/desktop_webview_window/macos
|
||||
device_info_plus:
|
||||
@@ -154,7 +152,7 @@ EXTERNAL SOURCES:
|
||||
|
||||
SPEC CHECKSUMS:
|
||||
app_links: 10e0a0ab602ffaf34d142cd4862f29d34b303b2a
|
||||
connectivity_plus: 18d3c32514c886e046de60e9c13895109866c747
|
||||
connectivity_plus: ddd7f30999e1faaef5967c23d5b6d503d10434db
|
||||
desktop_webview_window: d4365e71bcd4e1aa0c14cf0377aa24db0c16a7e2
|
||||
device_info_plus: 5401765fde0b8d062a2f8eb65510fb17e77cf07f
|
||||
file_saver: 44e6fbf666677faf097302460e214e977fdd977b
|
||||
@@ -165,17 +163,16 @@ SPEC CHECKSUMS:
|
||||
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
|
||||
local_auth_darwin: 66e40372f1c29f383a314c738c7446e2f7fdadc3
|
||||
OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c
|
||||
package_info_plus: 02d7a575e80f194102bef286361c6c326e4c29ce
|
||||
package_info_plus: fa739dd842b393193c5ca93c26798dff6e3d0e0c
|
||||
path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
|
||||
ReachabilitySwift: 7f151ff156cea1481a8411701195ac6a984f4979
|
||||
screen_retriever: 59634572a57080243dd1bf715e55b6c54f241a38
|
||||
Sentry: cd86fc55628f5b7c572cabe66cc8f95a9d2f165a
|
||||
sentry_flutter: 0cf2507eb90ff7a6aa3304e900dd7f08edbbefdf
|
||||
share_plus: 76dd39142738f7a68dd57b05093b5e8193f220f7
|
||||
Sentry: 8560050221424aef0bebc8e31eedf00af80f90a6
|
||||
sentry_flutter: e26b861f744e5037a3faf9bf56603ec65d658a61
|
||||
share_plus: 36537c04ce0c3e3f5bd297ce4318b6d5ee5fd6cf
|
||||
shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78
|
||||
sodium_libs: d39bd76697736cb11ce4a0be73b9b4bc64466d6f
|
||||
sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec
|
||||
sqlite3: 292c3e1bfe89f64e51ea7fc7dab9182a017c8630
|
||||
sqlite3: 0bb0e6389d824e40296f531b858a2a0b71c0d2fb
|
||||
sqlite3_flutter_libs: 5ca46c1a04eddfbeeb5b16566164aa7ad1616e7b
|
||||
tray_manager: 9064e219c56d75c476e46b9a21182087930baf90
|
||||
url_launcher_macos: 5f437abeda8c85500ceb03f5c1938a8c5a705399
|
||||
|
||||
@@ -1,11 +1,15 @@
|
||||
# CHANGELOG
|
||||
|
||||
## v1.7.4 (Unreleased)
|
||||
## v1.7.5 (Unreleased)
|
||||
|
||||
- .
|
||||
|
||||
## v1.7.4
|
||||
|
||||
- Improved date search, including support for day of week and hour of day.
|
||||
- Fix video thumbnail generation and upload on Intel macOS.
|
||||
- Club a photo and video into a live photo only if both are within 2 minutes.
|
||||
- .
|
||||
- Fix an issue causing ZIP uploads to sometimes fail.
|
||||
|
||||
## v1.7.3
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ente",
|
||||
"version": "1.7.4-beta",
|
||||
"version": "1.7.5-beta",
|
||||
"private": true,
|
||||
"description": "Desktop client for Ente Photos",
|
||||
"repository": "github:ente-io/photos-desktop",
|
||||
@@ -37,10 +37,10 @@
|
||||
"lru-cache": "^11.0.0",
|
||||
"next-electron-server": "^1.0.0",
|
||||
"node-stream-zip": "^1.15.0",
|
||||
"onnxruntime-node": "^1.19.0"
|
||||
"onnxruntime-node": "^1.19.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@eslint/js": "^9.9.0",
|
||||
"@eslint/js": "^9.9.1",
|
||||
"@tsconfig/node20": "^20.1.4",
|
||||
"@types/auto-launch": "^5.0.5",
|
||||
"@types/eslint__js": "^8.42.3",
|
||||
@@ -53,10 +53,10 @@
|
||||
"eslint": "^9",
|
||||
"prettier": "^3.3.3",
|
||||
"prettier-plugin-organize-imports": "^4.0.0",
|
||||
"prettier-plugin-packagejson": "^2.5.1",
|
||||
"prettier-plugin-packagejson": "^2.5.2",
|
||||
"shx": "^0.3.4",
|
||||
"typescript": "^5.5.4",
|
||||
"typescript-eslint": "^8.2.0"
|
||||
"typescript-eslint": "^8.4.0"
|
||||
},
|
||||
"packageManager": "yarn@1.22.22",
|
||||
"productName": "ente"
|
||||
|
||||
@@ -61,10 +61,13 @@ export const migrateLegacyWatchStoreIfNeeded = () => {
|
||||
// this'll be undefined, so tell ESLint to calm down.
|
||||
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
||||
if (!collectionMapping) {
|
||||
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
||||
collectionMapping = watch.uploadStrategy == 1 ? "parent" : "root";
|
||||
needsUpdate = true;
|
||||
}
|
||||
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
||||
if (watch.rootFolderName) {
|
||||
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
||||
delete watch.rootFolderName;
|
||||
needsUpdate = true;
|
||||
}
|
||||
|
||||
@@ -8,9 +8,9 @@
|
||||
integrity sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==
|
||||
|
||||
"@babel/runtime@^7.21.0":
|
||||
version "7.25.4"
|
||||
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.4.tgz#6ef37d678428306e7d75f054d5b1bdb8cf8aa8ee"
|
||||
integrity sha512-DSgLeL/FNcpXuzav5wfYvHCGvynXkJbn3Zvc3823AEe9nPwW9IK4UoCSS5yGymmQzN0pCPvivtgS6/8U2kkm1w==
|
||||
version "7.25.6"
|
||||
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.6.tgz#9afc3289f7184d8d7f98b099884c26317b9264d2"
|
||||
integrity sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==
|
||||
dependencies:
|
||||
regenerator-runtime "^0.14.0"
|
||||
|
||||
@@ -122,10 +122,10 @@
|
||||
resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.11.0.tgz#b0ffd0312b4a3fd2d6f77237e7248a5ad3a680ae"
|
||||
integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==
|
||||
|
||||
"@eslint/config-array@^0.17.1":
|
||||
version "0.17.1"
|
||||
resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.17.1.tgz#d9b8b8b6b946f47388f32bedfd3adf29ca8f8910"
|
||||
integrity sha512-BlYOpej8AQ8Ev9xVqroV7a02JK3SkBAaN9GfMMH9W6Ch8FlQlkjGw4Ir7+FgYwfirivAf4t+GtzuAxqfukmISA==
|
||||
"@eslint/config-array@^0.18.0":
|
||||
version "0.18.0"
|
||||
resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.18.0.tgz#37d8fe656e0d5e3dbaea7758ea56540867fd074d"
|
||||
integrity sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==
|
||||
dependencies:
|
||||
"@eslint/object-schema" "^2.1.4"
|
||||
debug "^4.3.1"
|
||||
@@ -146,10 +146,10 @@
|
||||
minimatch "^3.1.2"
|
||||
strip-json-comments "^3.1.1"
|
||||
|
||||
"@eslint/js@9.9.0", "@eslint/js@^9.9.0":
|
||||
version "9.9.0"
|
||||
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.9.0.tgz#d8437adda50b3ed4401964517b64b4f59b0e2638"
|
||||
integrity sha512-hhetes6ZHP3BlXLxmd8K2SNgkhNSi+UcecbnwWKwpP7kyi/uC75DJ1lOOBO3xrC4jyojtGE3YxKZPHfk4yrgug==
|
||||
"@eslint/js@9.9.1", "@eslint/js@^9.9.1":
|
||||
version "9.9.1"
|
||||
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.9.1.tgz#4a97e85e982099d6c7ee8410aacb55adaa576f06"
|
||||
integrity sha512-xIDQRsfg5hNBqHz04H1R3scSVwmI+KUbqjsQKHKQ1DAUSaUjYPReZZmS/5PNiKu1fUvzDd6H7DEDKACSEhu+TQ==
|
||||
|
||||
"@eslint/object-schema@^2.1.4":
|
||||
version "2.1.4"
|
||||
@@ -287,9 +287,9 @@
|
||||
"@types/ms" "*"
|
||||
|
||||
"@types/eslint@*":
|
||||
version "9.6.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-9.6.0.tgz#51d4fe4d0316da9e9f2c80884f2c20ed5fb022ff"
|
||||
integrity sha512-gi6WQJ7cHRgZxtkQEoyHMppPjq9Kxo5Tjn2prSKDSmZrCz8TZ3jSRCeTJm+WoM+oB0WG37bRqLzaaU3q7JypGg==
|
||||
version "9.6.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-9.6.1.tgz#d5795ad732ce81715f27f75da913004a56751584"
|
||||
integrity sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==
|
||||
dependencies:
|
||||
"@types/estree" "*"
|
||||
"@types/json-schema" "*"
|
||||
@@ -341,9 +341,9 @@
|
||||
integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==
|
||||
|
||||
"@types/node@*":
|
||||
version "22.5.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.5.0.tgz#10f01fe9465166b4cab72e75f60d8b99d019f958"
|
||||
integrity sha512-DkFrJOe+rfdHTqqMg0bSNlGlQ85hSoh2TPzZyhHsXnMtligRWpxUySiyw8FY14ITt24HVCiQPWxS3KO/QlGmWg==
|
||||
version "22.5.4"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.5.4.tgz#83f7d1f65bc2ed223bdbf57c7884f1d5a4fa84e8"
|
||||
integrity sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==
|
||||
dependencies:
|
||||
undici-types "~6.19.2"
|
||||
|
||||
@@ -353,9 +353,9 @@
|
||||
integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==
|
||||
|
||||
"@types/node@^20.9.0":
|
||||
version "20.16.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.16.1.tgz#0b44b15271d0e2191ca68faf1fbe506e06aed732"
|
||||
integrity sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==
|
||||
version "20.16.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.16.5.tgz#d43c7f973b32ffdf9aa7bd4f80e1072310fd7a53"
|
||||
integrity sha512-VwYCweNo3ERajwy0IUlqqcyZ8/A7Zwa9ZP3MnENWcB11AejO+tLy3pu850goUW2FC/IJMdZUfKpX/yxL1gymCA==
|
||||
dependencies:
|
||||
undici-types "~6.19.2"
|
||||
|
||||
@@ -386,85 +386,85 @@
|
||||
dependencies:
|
||||
"@types/node" "*"
|
||||
|
||||
"@typescript-eslint/eslint-plugin@8.2.0":
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.2.0.tgz#bf50e9c8dac6bdf15dd1b52ca29448550903558e"
|
||||
integrity sha512-02tJIs655em7fvt9gps/+4k4OsKULYGtLBPJfOsmOq1+3cdClYiF0+d6mHu6qDnTcg88wJBkcPLpQhq7FyDz0A==
|
||||
"@typescript-eslint/eslint-plugin@8.4.0":
|
||||
version "8.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.4.0.tgz#188c65610ef875a086404b5bfe105df936b035da"
|
||||
integrity sha512-rg8LGdv7ri3oAlenMACk9e+AR4wUV0yrrG+XKsGKOK0EVgeEDqurkXMPILG2836fW4ibokTB5v4b6Z9+GYQDEw==
|
||||
dependencies:
|
||||
"@eslint-community/regexpp" "^4.10.0"
|
||||
"@typescript-eslint/scope-manager" "8.2.0"
|
||||
"@typescript-eslint/type-utils" "8.2.0"
|
||||
"@typescript-eslint/utils" "8.2.0"
|
||||
"@typescript-eslint/visitor-keys" "8.2.0"
|
||||
"@typescript-eslint/scope-manager" "8.4.0"
|
||||
"@typescript-eslint/type-utils" "8.4.0"
|
||||
"@typescript-eslint/utils" "8.4.0"
|
||||
"@typescript-eslint/visitor-keys" "8.4.0"
|
||||
graphemer "^1.4.0"
|
||||
ignore "^5.3.1"
|
||||
natural-compare "^1.4.0"
|
||||
ts-api-utils "^1.3.0"
|
||||
|
||||
"@typescript-eslint/parser@8.2.0":
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.2.0.tgz#de3993304feb98576d9ffbf10c83ca1bcb68a5dd"
|
||||
integrity sha512-j3Di+o0lHgPrb7FxL3fdEy6LJ/j2NE8u+AP/5cQ9SKb+JLH6V6UHDqJ+e0hXBkHP1wn1YDFjYCS9LBQsZDlDEg==
|
||||
"@typescript-eslint/parser@8.4.0":
|
||||
version "8.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.4.0.tgz#36b7cd7643a1c190d49dc0278192b2450f615a6f"
|
||||
integrity sha512-NHgWmKSgJk5K9N16GIhQ4jSobBoJwrmURaLErad0qlLjrpP5bECYg+wxVTGlGZmJbU03jj/dfnb6V9bw+5icsA==
|
||||
dependencies:
|
||||
"@typescript-eslint/scope-manager" "8.2.0"
|
||||
"@typescript-eslint/types" "8.2.0"
|
||||
"@typescript-eslint/typescript-estree" "8.2.0"
|
||||
"@typescript-eslint/visitor-keys" "8.2.0"
|
||||
"@typescript-eslint/scope-manager" "8.4.0"
|
||||
"@typescript-eslint/types" "8.4.0"
|
||||
"@typescript-eslint/typescript-estree" "8.4.0"
|
||||
"@typescript-eslint/visitor-keys" "8.4.0"
|
||||
debug "^4.3.4"
|
||||
|
||||
"@typescript-eslint/scope-manager@8.2.0":
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.2.0.tgz#4a4bd7e7df5522acc8795c3b6f21e8c41b951138"
|
||||
integrity sha512-OFn80B38yD6WwpoHU2Tz/fTz7CgFqInllBoC3WP+/jLbTb4gGPTy9HBSTsbDWkMdN55XlVU0mMDYAtgvlUspGw==
|
||||
"@typescript-eslint/scope-manager@8.4.0":
|
||||
version "8.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.4.0.tgz#8a13d3c0044513d7960348db6f4789d2a06fa4b4"
|
||||
integrity sha512-n2jFxLeY0JmKfUqy3P70rs6vdoPjHK8P/w+zJcV3fk0b0BwRXC/zxRTEnAsgYT7MwdQDt/ZEbtdzdVC+hcpF0A==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "8.2.0"
|
||||
"@typescript-eslint/visitor-keys" "8.2.0"
|
||||
"@typescript-eslint/types" "8.4.0"
|
||||
"@typescript-eslint/visitor-keys" "8.4.0"
|
||||
|
||||
"@typescript-eslint/type-utils@8.2.0":
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.2.0.tgz#5cd7fef50f492e5a0f508bdd40678861a57c3549"
|
||||
integrity sha512-g1CfXGFMQdT5S+0PSO0fvGXUaiSkl73U1n9LTK5aRAFnPlJ8dLKkXr4AaLFvPedW8lVDoMgLLE3JN98ZZfsj0w==
|
||||
"@typescript-eslint/type-utils@8.4.0":
|
||||
version "8.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.4.0.tgz#4a91b5789f41946adb56d73e2fb4639fdcf37af7"
|
||||
integrity sha512-pu2PAmNrl9KX6TtirVOrbLPLwDmASpZhK/XU7WvoKoCUkdtq9zF7qQ7gna0GBZFN0hci0vHaSusiL2WpsQk37A==
|
||||
dependencies:
|
||||
"@typescript-eslint/typescript-estree" "8.2.0"
|
||||
"@typescript-eslint/utils" "8.2.0"
|
||||
"@typescript-eslint/typescript-estree" "8.4.0"
|
||||
"@typescript-eslint/utils" "8.4.0"
|
||||
debug "^4.3.4"
|
||||
ts-api-utils "^1.3.0"
|
||||
|
||||
"@typescript-eslint/types@8.2.0":
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.2.0.tgz#dfe9895a2812f7c6bf7af863054c22a67060420c"
|
||||
integrity sha512-6a9QSK396YqmiBKPkJtxsgZZZVjYQ6wQ/TlI0C65z7vInaETuC6HAHD98AGLC8DyIPqHytvNuS8bBVvNLKyqvQ==
|
||||
"@typescript-eslint/types@8.4.0":
|
||||
version "8.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.4.0.tgz#b44d6a90a317a6d97a3e5fabda5196089eec6171"
|
||||
integrity sha512-T1RB3KQdskh9t3v/qv7niK6P8yvn7ja1mS7QK7XfRVL6wtZ8/mFs/FHf4fKvTA0rKnqnYxl/uHFNbnEt0phgbw==
|
||||
|
||||
"@typescript-eslint/typescript-estree@8.2.0":
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.2.0.tgz#fbdb93a1c7ac7f1f96ae2de4fc97cd64c60ae894"
|
||||
integrity sha512-kiG4EDUT4dImplOsbh47B1QnNmXSoUqOjWDvCJw/o8LgfD0yr7k2uy54D5Wm0j4t71Ge1NkynGhpWdS0dEIAUA==
|
||||
"@typescript-eslint/typescript-estree@8.4.0":
|
||||
version "8.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.4.0.tgz#00ed79ae049e124db37315cde1531a900a048482"
|
||||
integrity sha512-kJ2OIP4dQw5gdI4uXsaxUZHRwWAGpREJ9Zq6D5L0BweyOrWsL6Sz0YcAZGWhvKnH7fm1J5YFE1JrQL0c9dd53A==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "8.2.0"
|
||||
"@typescript-eslint/visitor-keys" "8.2.0"
|
||||
"@typescript-eslint/types" "8.4.0"
|
||||
"@typescript-eslint/visitor-keys" "8.4.0"
|
||||
debug "^4.3.4"
|
||||
globby "^11.1.0"
|
||||
fast-glob "^3.3.2"
|
||||
is-glob "^4.0.3"
|
||||
minimatch "^9.0.4"
|
||||
semver "^7.6.0"
|
||||
ts-api-utils "^1.3.0"
|
||||
|
||||
"@typescript-eslint/utils@8.2.0":
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.2.0.tgz#02d442285925f28d520587185f295f932702e733"
|
||||
integrity sha512-O46eaYKDlV3TvAVDNcoDzd5N550ckSe8G4phko++OCSC1dYIb9LTc3HDGYdWqWIAT5qDUKphO6sd9RrpIJJPfg==
|
||||
"@typescript-eslint/utils@8.4.0":
|
||||
version "8.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.4.0.tgz#35c552a404858c853a1f62ba6df2214f1988afc3"
|
||||
integrity sha512-swULW8n1IKLjRAgciCkTCafyTHHfwVQFt8DovmaF69sKbOxTSFMmIZaSHjqO9i/RV0wIblaawhzvtva8Nmm7lQ==
|
||||
dependencies:
|
||||
"@eslint-community/eslint-utils" "^4.4.0"
|
||||
"@typescript-eslint/scope-manager" "8.2.0"
|
||||
"@typescript-eslint/types" "8.2.0"
|
||||
"@typescript-eslint/typescript-estree" "8.2.0"
|
||||
"@typescript-eslint/scope-manager" "8.4.0"
|
||||
"@typescript-eslint/types" "8.4.0"
|
||||
"@typescript-eslint/typescript-estree" "8.4.0"
|
||||
|
||||
"@typescript-eslint/visitor-keys@8.2.0":
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.2.0.tgz#f6abb3b6508898a117175ddc11f9b9869cc96834"
|
||||
integrity sha512-sbgsPMW9yLvS7IhCi8IpuK1oBmtbWUNP+hBdwl/I9nzqVsszGnNGti5r9dUtF5RLivHUFFIdRvLiTsPhzSyJ3Q==
|
||||
"@typescript-eslint/visitor-keys@8.4.0":
|
||||
version "8.4.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.4.0.tgz#1e8a8b8fd3647db1e42361fdd8de3e1679dec9d2"
|
||||
integrity sha512-zTQD6WLNTre1hj5wp09nBIDiOc2U5r/qmzo7wxPn4ZgAjHql09EofqhF9WF+fZHzL5aCyaIpPcT2hyxl73kr9A==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "8.2.0"
|
||||
"@typescript-eslint/types" "8.4.0"
|
||||
eslint-visitor-keys "^3.4.3"
|
||||
|
||||
"@xmldom/xmldom@^0.8.8":
|
||||
@@ -629,11 +629,6 @@ argparse@^2.0.1:
|
||||
resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
|
||||
integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
|
||||
|
||||
array-union@^2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
|
||||
integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
|
||||
|
||||
assert-plus@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
|
||||
@@ -1343,9 +1338,9 @@ es6-error@^4.1.1:
|
||||
integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==
|
||||
|
||||
escalade@^3.1.1:
|
||||
version "3.1.2"
|
||||
resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27"
|
||||
integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==
|
||||
version "3.2.0"
|
||||
resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5"
|
||||
integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==
|
||||
|
||||
escape-string-regexp@^4.0.0:
|
||||
version "4.0.0"
|
||||
@@ -1371,15 +1366,15 @@ eslint-visitor-keys@^4.0.0:
|
||||
integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==
|
||||
|
||||
eslint@^9:
|
||||
version "9.9.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.9.0.tgz#8d214e69ae4debeca7ae97daebbefe462072d975"
|
||||
integrity sha512-JfiKJrbx0506OEerjK2Y1QlldtBxkAlLxT5OEcRF8uaQ86noDe2k31Vw9rnSWv+MXZHj7OOUV/dA0AhdLFcyvA==
|
||||
version "9.9.1"
|
||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.9.1.tgz#147ac9305d56696fb84cf5bdecafd6517ddc77ec"
|
||||
integrity sha512-dHvhrbfr4xFQ9/dq+jcVneZMyRYLjggWjk6RVsIiHsP8Rz6yZ8LvZ//iU4TrZF+SXWG+JkNF2OyiZRvzgRDqMg==
|
||||
dependencies:
|
||||
"@eslint-community/eslint-utils" "^4.2.0"
|
||||
"@eslint-community/regexpp" "^4.11.0"
|
||||
"@eslint/config-array" "^0.17.1"
|
||||
"@eslint/config-array" "^0.18.0"
|
||||
"@eslint/eslintrc" "^3.1.0"
|
||||
"@eslint/js" "9.9.0"
|
||||
"@eslint/js" "9.9.1"
|
||||
"@humanwhocodes/module-importer" "^1.0.1"
|
||||
"@humanwhocodes/retry" "^0.3.0"
|
||||
"@nodelib/fs.walk" "^1.2.8"
|
||||
@@ -1469,7 +1464,7 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
|
||||
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
|
||||
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
|
||||
|
||||
fast-glob@^3.2.9, fast-glob@^3.3.0:
|
||||
fast-glob@^3.3.0, fast-glob@^3.3.2:
|
||||
version "3.3.2"
|
||||
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129"
|
||||
integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==
|
||||
@@ -1765,18 +1760,6 @@ globalthis@^1.0.1:
|
||||
define-properties "^1.2.1"
|
||||
gopd "^1.0.1"
|
||||
|
||||
globby@^11.1.0:
|
||||
version "11.1.0"
|
||||
resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
|
||||
integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
|
||||
dependencies:
|
||||
array-union "^2.1.0"
|
||||
dir-glob "^3.0.1"
|
||||
fast-glob "^3.2.9"
|
||||
ignore "^5.2.0"
|
||||
merge2 "^1.4.1"
|
||||
slash "^3.0.0"
|
||||
|
||||
globby@^13.1.2:
|
||||
version "13.2.2"
|
||||
resolved "https://registry.yarnpkg.com/globby/-/globby-13.2.2.tgz#63b90b1bf68619c2135475cbd4e71e66aa090592"
|
||||
@@ -2276,9 +2259,9 @@ merge2@^1.3.0, merge2@^1.4.1:
|
||||
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
|
||||
|
||||
micromatch@^4.0.4:
|
||||
version "4.0.7"
|
||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5"
|
||||
integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==
|
||||
version "4.0.8"
|
||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202"
|
||||
integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==
|
||||
dependencies:
|
||||
braces "^3.0.3"
|
||||
picomatch "^2.3.1"
|
||||
@@ -2554,17 +2537,17 @@ onetime@^5.1.0, onetime@^5.1.2:
|
||||
dependencies:
|
||||
mimic-fn "^2.1.0"
|
||||
|
||||
onnxruntime-common@1.19.0:
|
||||
version "1.19.0"
|
||||
resolved "https://registry.yarnpkg.com/onnxruntime-common/-/onnxruntime-common-1.19.0.tgz#1d913321caa5eda76775c496d9f0f831dd30bec6"
|
||||
integrity sha512-Oo16UIJ/xLOtZDVGcL4bL8EP8MiNFztyBmR3pB14D+cl/UCpOgHHzEk0MADSmYXQ0FgyEegPXtOFcJqhq1YRsw==
|
||||
onnxruntime-common@1.19.2:
|
||||
version "1.19.2"
|
||||
resolved "https://registry.yarnpkg.com/onnxruntime-common/-/onnxruntime-common-1.19.2.tgz#39447d703aef6499f71487cb8970f58752234523"
|
||||
integrity sha512-a4R7wYEVFbZBlp0BfhpbFWqe4opCor3KM+5Wm22Az3NGDcQMiU2hfG/0MfnBs+1ZrlSGmlgWeMcXQkDk1UFb8Q==
|
||||
|
||||
onnxruntime-node@^1.19.0:
|
||||
version "1.19.0"
|
||||
resolved "https://registry.yarnpkg.com/onnxruntime-node/-/onnxruntime-node-1.19.0.tgz#7ce538eb400cf2370023e7f07f7e7a4d7589cc1f"
|
||||
integrity sha512-JivYcrZ9H9YPpHnP+5rTVTJjzuD+ZB0TsB0//e2La0ViYNG0hmTvnwFgmRoes6F7E1PyVMpyRftmcl9pnIWsnw==
|
||||
onnxruntime-node@^1.19.2:
|
||||
version "1.19.2"
|
||||
resolved "https://registry.yarnpkg.com/onnxruntime-node/-/onnxruntime-node-1.19.2.tgz#2f2e1c9286c97291030770c085fb403647538ad7"
|
||||
integrity sha512-9eHMP/HKbbeUcqte1JYzaaRC8JPn7ojWeCeoyShO86TOR97OCyIyAIOGX3V95ErjslVhJRXY8Em/caIUc0hm1Q==
|
||||
dependencies:
|
||||
onnxruntime-common "1.19.0"
|
||||
onnxruntime-common "1.19.2"
|
||||
tar "^7.0.1"
|
||||
|
||||
optionator@^0.9.3:
|
||||
@@ -2735,12 +2718,12 @@ prettier-plugin-organize-imports@^4.0.0:
|
||||
resolved "https://registry.yarnpkg.com/prettier-plugin-organize-imports/-/prettier-plugin-organize-imports-4.0.0.tgz#a69acf024ea3c8eb650c81f664693826ca853534"
|
||||
integrity sha512-vnKSdgv9aOlqKeEFGhf9SCBsTyzDSyScy1k7E0R1Uo4L0cTcOV7c1XQaT7jfXIOc/p08WLBfN2QUQA9zDSZMxA==
|
||||
|
||||
prettier-plugin-packagejson@^2.5.1:
|
||||
version "2.5.1"
|
||||
resolved "https://registry.yarnpkg.com/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.1.tgz#026742dee06e3de0d32b0546abcc51413943942a"
|
||||
integrity sha512-6i4PW1KxEA+VrokYNGeI/q8qQX3u5DNBc7eLr9GX4OrvWr9DMls1lhbuNopkKG7Li9rTNxerWnYQyjxoUO4ROA==
|
||||
prettier-plugin-packagejson@^2.5.2:
|
||||
version "2.5.2"
|
||||
resolved "https://registry.yarnpkg.com/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.2.tgz#25e8531e15b04e1f68ee7ee4a4b111bd5bea6fcc"
|
||||
integrity sha512-w+TmoLv2pIa+siplW1cCj2ujEXQQS6z7wmWLOiLQK/2QVl7Wy6xh/ZUpqQw8tbKMXDodmSW4GONxlA33xpdNOg==
|
||||
dependencies:
|
||||
sort-package-json "2.10.0"
|
||||
sort-package-json "2.10.1"
|
||||
synckit "0.9.1"
|
||||
|
||||
prettier@^3.3.3:
|
||||
@@ -3037,11 +3020,6 @@ simple-update-notifier@2.0.0:
|
||||
dependencies:
|
||||
semver "^7.5.3"
|
||||
|
||||
slash@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
|
||||
integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
|
||||
|
||||
slash@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7"
|
||||
@@ -3083,10 +3061,10 @@ sort-object-keys@^1.1.3:
|
||||
resolved "https://registry.yarnpkg.com/sort-object-keys/-/sort-object-keys-1.1.3.tgz#bff833fe85cab147b34742e45863453c1e190b45"
|
||||
integrity sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==
|
||||
|
||||
sort-package-json@2.10.0:
|
||||
version "2.10.0"
|
||||
resolved "https://registry.yarnpkg.com/sort-package-json/-/sort-package-json-2.10.0.tgz#6be07424bf3b7db9fbb1bdd69e7945f301026d8a"
|
||||
integrity sha512-MYecfvObMwJjjJskhxYfuOADkXp1ZMMnCFC8yhp+9HDsk7HhR336hd7eiBs96lTXfiqmUNI+WQCeCMRBhl251g==
|
||||
sort-package-json@2.10.1:
|
||||
version "2.10.1"
|
||||
resolved "https://registry.yarnpkg.com/sort-package-json/-/sort-package-json-2.10.1.tgz#18e7fa0172233cb2d4d926f7c99e6bfcf4d1d25c"
|
||||
integrity sha512-d76wfhgUuGypKqY72Unm5LFnMpACbdxXsLPcL27pOsSrmVqH3PztFp1uq+Z22suk15h7vXmTesuh2aEjdCqb5w==
|
||||
dependencies:
|
||||
detect-indent "^7.0.1"
|
||||
detect-newline "^4.0.0"
|
||||
@@ -3273,9 +3251,9 @@ ts-api-utils@^1.3.0:
|
||||
integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==
|
||||
|
||||
tslib@^2.1.0, tslib@^2.6.2:
|
||||
version "2.6.3"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0"
|
||||
integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==
|
||||
version "2.7.0"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01"
|
||||
integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==
|
||||
|
||||
type-check@^0.4.0, type-check@~0.4.0:
|
||||
version "0.4.0"
|
||||
@@ -3299,14 +3277,14 @@ typedarray@^0.0.6:
|
||||
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
|
||||
integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==
|
||||
|
||||
typescript-eslint@^8.2.0:
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.2.0.tgz#90d75636b663a9f5e391e9b3a33f3031236a25c8"
|
||||
integrity sha512-DmnqaPcML0xYwUzgNbM1XaKXpEb7BShYf2P1tkUmmcl8hyeG7Pj08Er7R9bNy6AufabywzJcOybQAtnD/c9DGw==
|
||||
typescript-eslint@^8.4.0:
|
||||
version "8.4.0"
|
||||
resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.4.0.tgz#3fa38bd279994cdb40ba9264ef5262a17cf4cfa0"
|
||||
integrity sha512-67qoc3zQZe3CAkO0ua17+7aCLI0dU+sSQd1eKPGq06QE4rfQjstVXR6woHO5qQvGUa550NfGckT4tzh3b3c8Pw==
|
||||
dependencies:
|
||||
"@typescript-eslint/eslint-plugin" "8.2.0"
|
||||
"@typescript-eslint/parser" "8.2.0"
|
||||
"@typescript-eslint/utils" "8.2.0"
|
||||
"@typescript-eslint/eslint-plugin" "8.4.0"
|
||||
"@typescript-eslint/parser" "8.4.0"
|
||||
"@typescript-eslint/utils" "8.4.0"
|
||||
|
||||
typescript@^5.4.3, typescript@^5.5.4:
|
||||
version "5.5.4"
|
||||
|
||||
@@ -1,43 +1,52 @@
|
||||
---
|
||||
title: Unable to login on Windows Desktop
|
||||
description:
|
||||
Troubleshooting when you are not able to login or register on Ente Auth app on Windows
|
||||
Troubleshooting when you are not able to login or register on Ente Auth app
|
||||
on Windows
|
||||
---
|
||||
|
||||
|
||||
|
||||
# Windows Login Error
|
||||
|
||||
|
||||
### HandshakeException: Handshake error in client
|
||||
|
||||
This error usually happens when the Trusted Root certificates on your Windows machine are outdated.
|
||||
This error usually happens when the Trusted Root certificates on your Windows
|
||||
machine are outdated.
|
||||
|
||||
To update the Trusted Root Certificates on Windows, you can use the `certutil` command. Here are the steps to do so:
|
||||
To update the Trusted Root Certificates on Windows, you can use the `certutil`
|
||||
command. Here are the steps to do so:
|
||||
|
||||
1. **Open Command Prompt as Administrator**:
|
||||
- Press `Windows + X` and select `Command Prompt (Admin)` or `Windows PowerShell (Admin)`.
|
||||
1. **Open Command Prompt as Administrator**:
|
||||
|
||||
- Press `Windows + X` and select `Command Prompt (Admin)` or
|
||||
`Windows PowerShell (Admin)`.
|
||||
|
||||
2. **Run the following command to update the root certificates**:
|
||||
```bash
|
||||
certutil -generateSSTFromWU roots.sst
|
||||
```
|
||||
This command will generate a file named `roots.sst` that contains the latest root certificates from Windows Update.
|
||||
|
||||
```bash
|
||||
certutil -generateSSTFromWU roots.sst
|
||||
```
|
||||
|
||||
This command will generate a file named `roots.sst` that contains the latest
|
||||
root certificates from Windows Update.
|
||||
|
||||
3. **Install the new root certificates**:
|
||||
```bash
|
||||
certutil -addstore -f ROOT roots.sst
|
||||
```
|
||||
This command will add the certificates from the `roots.sst` file to the Trusted Root Certification Authorities store.
|
||||
|
||||
4. **Clean up**:
|
||||
After the installation, you can delete the `roots.sst` file if you no longer need it:
|
||||
```bash
|
||||
del roots.sst
|
||||
```
|
||||
```bash
|
||||
certutil -addstore -f ROOT roots.sst
|
||||
```
|
||||
|
||||
Make sure to restart your application after updating the certificates to ensure the changes take effect.
|
||||
This command will add the certificates from the `roots.sst` file to the
|
||||
Trusted Root Certification Authorities store.
|
||||
|
||||
If the above steps don't resolve the issue, please follow [this guide](https://woshub.com/updating-trusted-root-certificates-in-windows-10/#h2_3) to update your trusted root certicates, and try again.
|
||||
4. **Clean up**: After the installation, you can delete the `roots.sst` file if
|
||||
you no longer need it:
|
||||
```bash
|
||||
del roots.sst
|
||||
```
|
||||
|
||||
Make sure to restart your application after updating the certificates to ensure
|
||||
the changes take effect.
|
||||
|
||||
If the above steps don't resolve the issue, please follow
|
||||
[this guide](https://woshub.com/updating-trusted-root-certificates-in-windows-10/#h2_3)
|
||||
to update your trusted root certicates, and try again.
|
||||
|
||||
@@ -74,8 +74,8 @@ items, in case the original owner were to delete it from their own library.
|
||||
We plan to tackle these complexities in the future, by copying a reference to
|
||||
the item that was shared, instead of the actual file, so that your storage will
|
||||
only get consumed if the original owner deletes it from their library. If this
|
||||
sounds useful to you, please participate in [this
|
||||
discussion](https://github.com/ente-io/ente/discussions/790).
|
||||
sounds useful to you, please participate in
|
||||
[this discussion](https://github.com/ente-io/ente/discussions/790).
|
||||
|
||||
## Technical details
|
||||
|
||||
|
||||
@@ -14,7 +14,10 @@ storage namespace. The same user account works for both of them.
|
||||
|
||||
Yes, if you wish, you can self-host the server and use it only for the 2FA auth
|
||||
app. The starter Docker compose will work fine for either Photos or Auth (or
|
||||
both!)
|
||||
both!).
|
||||
|
||||
> You currently don't need to configure the S3 object storage (e.g. minio
|
||||
> containers) if you're only using your self hosted Ente instance for auth.
|
||||
|
||||
### Can I use the server with _X_ as the object storage?
|
||||
|
||||
|
||||
@@ -81,6 +81,22 @@ Set the S3 bucket `endpoint` in `credentials.yaml` to a `yourserverip:3200` or
|
||||
some such IP/hostname that accessible from both where you are running the Ente
|
||||
clients (e.g. the mobile app) and also from within the Docker compose cluster.
|
||||
|
||||
### Example
|
||||
|
||||
An example `museum.yaml` when you're trying to connect to museum running on your
|
||||
computer from your phone on the same WiFi network:
|
||||
|
||||
```
|
||||
s3:
|
||||
are_local_buckets: true
|
||||
b2-eu-cen:
|
||||
key: test
|
||||
secret: testtest
|
||||
endpoint: http://<YOUR-WIFI-IP>:3200
|
||||
region: eu-central-2
|
||||
bucket: b2-eu-cen
|
||||
```
|
||||
|
||||
### 403 Forbidden
|
||||
|
||||
If museum (`2`) is able to make a network connection to your S3 bucket (`3`) but
|
||||
|
||||
@@ -250,6 +250,7 @@ class UploadLocksDB {
|
||||
}
|
||||
final row = rows.first;
|
||||
final objectKey = row[_trackUploadTable.columnObjectKey] as String;
|
||||
final encFileSize = row[_trackUploadTable.columnEncryptedFileSize] as int;
|
||||
final partsStatus = await db.query(
|
||||
_partsTable.table,
|
||||
where: '${_partsTable.columnObjectKey} = ?',
|
||||
@@ -285,6 +286,7 @@ class UploadLocksDB {
|
||||
.byName(row[_trackUploadTable.columnStatus] as String),
|
||||
partUploadStatus: partUploadStatus,
|
||||
partETags: partETags,
|
||||
encFileSize: encFileSize,
|
||||
partSize: row[_trackUploadTable.columnPartSize] as int,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -73,6 +73,7 @@ class FFProbeKeys {
|
||||
static const sideDataList = 'side_data_list';
|
||||
static const rotation = 'rotation';
|
||||
static const sideDataType = 'side_data_type';
|
||||
static const sampleAspectRatio = 'sample_aspect_ratio';
|
||||
}
|
||||
|
||||
class MediaStreamTypes {
|
||||
|
||||
@@ -35,16 +35,31 @@ class FFProbeProps {
|
||||
|
||||
int? get width {
|
||||
if (_width == null || _height == null) return null;
|
||||
final intWidth = int.tryParse(_width!);
|
||||
if (_rotation == null) {
|
||||
return intWidth;
|
||||
} else {
|
||||
if ((_rotation! ~/ 90).isEven) {
|
||||
return intWidth;
|
||||
} else {
|
||||
return int.tryParse(_height!);
|
||||
int? finalWidth = int.tryParse(_width!);
|
||||
if (propData?[FFProbeKeys.sampleAspectRatio] != null &&
|
||||
finalWidth != null) {
|
||||
finalWidth = _calculateWidthConsideringSAR(finalWidth);
|
||||
}
|
||||
if (_rotation != null) {
|
||||
if ((_rotation! ~/ 90).isOdd) {
|
||||
finalWidth = int.tryParse(_height!);
|
||||
}
|
||||
}
|
||||
return finalWidth;
|
||||
}
|
||||
|
||||
/// To know more, read about Sample Aspect Ratio (SAR), Display Aspect Ratio (DAR)
|
||||
/// and Pixel Aspect Ratio (PAR)
|
||||
int _calculateWidthConsideringSAR(int width) {
|
||||
final List<String> sar =
|
||||
propData![FFProbeKeys.sampleAspectRatio].toString().split(":");
|
||||
if (sar.length == 2) {
|
||||
final int sarWidth = int.tryParse(sar[0]) ?? 1;
|
||||
final int sarHeight = int.tryParse(sar[1]) ?? 1;
|
||||
return (width * (sarWidth / sarHeight)).toInt();
|
||||
} else {
|
||||
return width;
|
||||
}
|
||||
}
|
||||
|
||||
int? get height {
|
||||
@@ -202,6 +217,8 @@ class FFProbeProps {
|
||||
parsedData[FFProbeKeys.rotation] = result._rotation;
|
||||
}
|
||||
}
|
||||
} else if (key == FFProbeKeys.sampleAspectRatio) {
|
||||
parsedData[key] = stream[key];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ class MultipartInfo {
|
||||
final List<bool>? partUploadStatus;
|
||||
final Map<int, String>? partETags;
|
||||
final int? partSize;
|
||||
final int encFileSize;
|
||||
final MultipartUploadURLs urls;
|
||||
final MultipartStatus status;
|
||||
|
||||
@@ -41,6 +42,7 @@ class MultipartInfo {
|
||||
this.partETags,
|
||||
this.partSize,
|
||||
this.status = MultipartStatus.pending,
|
||||
required this.encFileSize,
|
||||
required this.urls,
|
||||
});
|
||||
}
|
||||
|
||||
@@ -148,10 +148,11 @@ class MultiPartUploader {
|
||||
Future<String> putMultipartFile(
|
||||
MultipartUploadURLs urls,
|
||||
File encryptedFile,
|
||||
int fileSize,
|
||||
) async {
|
||||
// upload individual parts and get their etags
|
||||
final etags = await _uploadParts(
|
||||
MultipartInfo(urls: urls),
|
||||
MultipartInfo(urls: urls, encFileSize: fileSize),
|
||||
encryptedFile,
|
||||
);
|
||||
|
||||
@@ -180,6 +181,11 @@ class MultiPartUploader {
|
||||
}
|
||||
|
||||
final int encFileLength = encryptedFile.lengthSync();
|
||||
if (encFileLength != partInfo.encFileSize) {
|
||||
throw Exception(
|
||||
"File size mismatch. Expected ${partInfo.encFileSize} but got $encFileLength",
|
||||
);
|
||||
}
|
||||
// Start parts upload
|
||||
int count = 0;
|
||||
while (i < partsLength) {
|
||||
|
||||
@@ -127,6 +127,7 @@ class _PanoramaViewerScreenState extends State<PanoramaViewerScreen> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
appBar: isVisible ? AppBar() : null,
|
||||
body: Stack(
|
||||
children: [
|
||||
Panorama(
|
||||
|
||||
@@ -531,13 +531,16 @@ class FileUploader {
|
||||
: null;
|
||||
bool multipartEntryExists = existingMultipartEncFileName != null;
|
||||
|
||||
final String uniqueID = const Uuid().v4().toString();
|
||||
final String uniqueID =
|
||||
'${const Uuid().v4().toString()}_${file.generatedID}';
|
||||
|
||||
final encryptedFilePath = multipartEntryExists
|
||||
? '$tempDirectory$existingMultipartEncFileName'
|
||||
: '$tempDirectory$uploadTempFilePrefix${uniqueID}_file.encrypted';
|
||||
final encryptedThumbnailPath =
|
||||
'$tempDirectory$uploadTempFilePrefix${uniqueID}_thumb.encrypted';
|
||||
late final int encFileSize;
|
||||
late final int encThumbSize;
|
||||
|
||||
var uploadCompleted = false;
|
||||
// This flag is used to decide whether to clear the iOS origin file cache
|
||||
@@ -585,7 +588,7 @@ class FileUploader {
|
||||
final encryptedFileExists = File(encryptedFilePath).existsSync();
|
||||
|
||||
// If the multipart entry exists but the encrypted file doesn't, it means
|
||||
// that we'll have to reupload as the nonce is lost
|
||||
// that we'll have to re-upload as the nonce is lost
|
||||
if (multipartEntryExists) {
|
||||
final bool updateWithDiffKey = isUpdatedFile &&
|
||||
multiPartFileEncResult != null &&
|
||||
@@ -623,6 +626,7 @@ class FileUploader {
|
||||
} else {
|
||||
thumbnailData = mediaUploadData.thumbnail;
|
||||
}
|
||||
encFileSize = await encryptedFile.length();
|
||||
|
||||
final EncryptionResult encryptedThumbnailData =
|
||||
await CryptoUtil.encryptChaCha(
|
||||
@@ -635,21 +639,24 @@ class FileUploader {
|
||||
final encryptedThumbnailFile = File(encryptedThumbnailPath);
|
||||
await encryptedThumbnailFile
|
||||
.writeAsBytes(encryptedThumbnailData.encryptedData!);
|
||||
encThumbSize = await encryptedThumbnailFile.length();
|
||||
|
||||
// Calculate the number of parts for the file.
|
||||
final count = await _multiPartUploader.calculatePartCount(
|
||||
await encryptedFile.length(),
|
||||
);
|
||||
final count = await _multiPartUploader.calculatePartCount(encFileSize);
|
||||
|
||||
late String fileObjectKey;
|
||||
late String thumbnailObjectKey;
|
||||
|
||||
if (count <= 1) {
|
||||
final thumbnailUploadURL = await _getUploadURL();
|
||||
thumbnailObjectKey =
|
||||
await _putFile(thumbnailUploadURL, encryptedThumbnailFile);
|
||||
thumbnailObjectKey = await _putFile(
|
||||
thumbnailUploadURL,
|
||||
encryptedThumbnailFile,
|
||||
encThumbSize,
|
||||
);
|
||||
final fileUploadURL = await _getUploadURL();
|
||||
fileObjectKey = await _putFile(fileUploadURL, encryptedFile);
|
||||
fileObjectKey =
|
||||
await _putFile(fileUploadURL, encryptedFile, encFileSize);
|
||||
} else {
|
||||
isMultipartUpload = true;
|
||||
_logger.finest(
|
||||
@@ -672,13 +679,14 @@ class FileUploader {
|
||||
collectionID,
|
||||
fileUploadURLs,
|
||||
encFileName,
|
||||
await encryptedFile.length(),
|
||||
encFileSize,
|
||||
fileAttributes.key!,
|
||||
fileAttributes.header!,
|
||||
);
|
||||
fileObjectKey = await _multiPartUploader.putMultipartFile(
|
||||
fileUploadURLs,
|
||||
encryptedFile,
|
||||
encFileSize,
|
||||
);
|
||||
}
|
||||
// in case of multipart, upload the thumbnail towards the end to avoid
|
||||
@@ -686,8 +694,11 @@ class FileUploader {
|
||||
// In regular upload, always upload the thumbnail first to keep existing behaviour
|
||||
//
|
||||
final thumbnailUploadURL = await _getUploadURL();
|
||||
thumbnailObjectKey =
|
||||
await _putFile(thumbnailUploadURL, encryptedThumbnailFile);
|
||||
thumbnailObjectKey = await _putFile(
|
||||
thumbnailUploadURL,
|
||||
encryptedThumbnailFile,
|
||||
encThumbSize,
|
||||
);
|
||||
}
|
||||
|
||||
final metadata = await file.getMetadataForUpload(mediaUploadData);
|
||||
@@ -713,10 +724,10 @@ class FileUploader {
|
||||
file,
|
||||
fileObjectKey,
|
||||
fileDecryptionHeader,
|
||||
await encryptedFile.length(),
|
||||
encFileSize,
|
||||
thumbnailObjectKey,
|
||||
thumbnailDecryptionHeader,
|
||||
await encryptedThumbnailFile.length(),
|
||||
encThumbSize,
|
||||
encryptedMetadata,
|
||||
metadataDecryptionHeader,
|
||||
);
|
||||
@@ -762,10 +773,10 @@ class FileUploader {
|
||||
fileAttributes,
|
||||
fileObjectKey,
|
||||
fileDecryptionHeader,
|
||||
await encryptedFile.length(),
|
||||
encFileSize,
|
||||
thumbnailObjectKey,
|
||||
thumbnailDecryptionHeader,
|
||||
await encryptedThumbnailFile.length(),
|
||||
encThumbSize,
|
||||
encryptedMetadata,
|
||||
metadataDecryptionHeader,
|
||||
pubMetadata: pubMetadataRequest,
|
||||
@@ -1266,11 +1277,10 @@ class FileUploader {
|
||||
|
||||
Future<String> _putFile(
|
||||
UploadURL uploadURL,
|
||||
File file, {
|
||||
int? contentLength,
|
||||
File file,
|
||||
int fileSize, {
|
||||
int attempt = 1,
|
||||
}) async {
|
||||
final fileSize = contentLength ?? await file.length();
|
||||
_logger.info(
|
||||
"Putting object for " +
|
||||
file.toString() +
|
||||
@@ -1297,22 +1307,14 @@ class FileUploader {
|
||||
|
||||
return uploadURL.objectKey;
|
||||
} on DioError catch (e) {
|
||||
if (e.message.startsWith(
|
||||
"HttpException: Content size exceeds specified contentLength.",
|
||||
) &&
|
||||
attempt == 1) {
|
||||
return _putFile(
|
||||
uploadURL,
|
||||
file,
|
||||
contentLength: (await file.readAsBytes()).length,
|
||||
attempt: 2,
|
||||
);
|
||||
if (e.message.startsWith("HttpException: Content size")) {
|
||||
rethrow;
|
||||
} else if (attempt < kMaximumUploadAttempts) {
|
||||
final newUploadURL = await _getUploadURL();
|
||||
return _putFile(
|
||||
newUploadURL,
|
||||
file,
|
||||
contentLength: (await file.readAsBytes()).length,
|
||||
fileSize,
|
||||
attempt: attempt + 1,
|
||||
);
|
||||
} else {
|
||||
|
||||
@@ -1297,18 +1297,18 @@ packages:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: leak_tracker
|
||||
sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a"
|
||||
sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "10.0.4"
|
||||
version: "10.0.5"
|
||||
leak_tracker_flutter_testing:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: leak_tracker_flutter_testing
|
||||
sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8"
|
||||
sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.3"
|
||||
version: "3.0.5"
|
||||
leak_tracker_testing:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -1441,10 +1441,10 @@ packages:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: material_color_utilities
|
||||
sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a"
|
||||
sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.8.0"
|
||||
version: "0.11.1"
|
||||
media_extension:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
@@ -1529,10 +1529,10 @@ packages:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: meta
|
||||
sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136"
|
||||
sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.12.0"
|
||||
version: "1.15.0"
|
||||
mgrs_dart:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -1901,10 +1901,10 @@ packages:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: platform
|
||||
sha256: "12220bb4b65720483f8fa9450b4332347737cf8213dd2840d8b2c823e47243ec"
|
||||
sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.1.4"
|
||||
version: "3.1.5"
|
||||
plugin_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -2410,26 +2410,26 @@ packages:
|
||||
dependency: "direct dev"
|
||||
description:
|
||||
name: test
|
||||
sha256: "7ee446762c2c50b3bd4ea96fe13ffac69919352bd3b4b17bac3f3465edc58073"
|
||||
sha256: "7ee44229615f8f642b68120165ae4c2a75fe77ae2065b1e55ae4711f6cf0899e"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.25.2"
|
||||
version: "1.25.7"
|
||||
test_api:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: test_api
|
||||
sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f"
|
||||
sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.7.0"
|
||||
version: "0.7.2"
|
||||
test_core:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: test_core
|
||||
sha256: "2bc4b4ecddd75309300d8096f781c0e3280ca1ef85beda558d33fcbedc2eead4"
|
||||
sha256: "55ea5a652e38a1dfb32943a7973f3681a60f872f8c3a05a14664ad54ef9c6696"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.6.0"
|
||||
version: "0.6.4"
|
||||
timezone:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -2602,10 +2602,10 @@ packages:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: uuid
|
||||
sha256: "648e103079f7c64a36dc7d39369cabb358d377078a051d6ae2ad3aa539519313"
|
||||
sha256: f33d6bb662f0e4f79dcd7ada2e6170f3b3a2530c28fc41f49a411ddedd576a77
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.7"
|
||||
version: "4.5.0"
|
||||
vector_graphics:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -2708,10 +2708,10 @@ packages:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: vm_service
|
||||
sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec"
|
||||
sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "14.2.1"
|
||||
version: "14.2.5"
|
||||
volume_controller:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
||||
@@ -173,7 +173,7 @@ dependencies:
|
||||
tuple: ^2.0.0
|
||||
uni_links: ^0.5.1
|
||||
url_launcher: ^6.0.3
|
||||
uuid: ^3.0.7
|
||||
uuid: ^4.5.0
|
||||
video_editor:
|
||||
git:
|
||||
url: https://github.com/prateekmedia/video_editor.git
|
||||
|
||||
@@ -5,12 +5,13 @@
|
||||
# load one of the files from the `configurations/` directory. If not present,
|
||||
# then by default `local.yaml` (this file) will get loaded.
|
||||
#
|
||||
# 2. Then, museum will look for a file named `museum.yaml` in the current
|
||||
# working directory. If found, this file will also be loaded, and entries
|
||||
# specified therein will override the defaults specified here.
|
||||
# 2. If the "credentials-file" config option is set then museum will look for
|
||||
# that file. If found, that file will also be loaded, and entries specified
|
||||
# therein will override the defaults specified here.
|
||||
#
|
||||
# 3. If the "credentials-file" config option is set, then museum will also load
|
||||
# that and merge it in.
|
||||
# 3. Then, museum will look for a file named `museum.yaml` (gitignored) in the
|
||||
# current working directory. If found, this file will also be loaded and
|
||||
# merged.
|
||||
#
|
||||
# 4. Config can be overridden with via environment variables (details below).
|
||||
#
|
||||
|
||||
@@ -47,11 +47,6 @@ func ConfigureViper(environment string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
err = mergeConfigFileIfExists("museum.yaml")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
credentialsFile := viper.GetString("credentials-file")
|
||||
if credentialsFile == "" {
|
||||
credentialsFile = "credentials.yaml"
|
||||
@@ -61,6 +56,11 @@ func ConfigureViper(environment string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
err = mergeConfigFileIfExists("museum.yaml")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -76,20 +76,23 @@ const ChangelogContent: React.FC = () => {
|
||||
return (
|
||||
<StyledUL>
|
||||
<li>
|
||||
<Typography color="primary">
|
||||
{ut("Improved date search")}
|
||||
</Typography>
|
||||
<Typography>
|
||||
<Typography color="primary">
|
||||
{ut("Support for Passkeys")}
|
||||
</Typography>
|
||||
{ut(
|
||||
"Passkeys can now be used as a second factor authentication mechanism.",
|
||||
)}
|
||||
Search for photos by day of week (<i>Wednesday</i>) or hour
|
||||
of day (<i>8 pm</i>) in addition to the existing search by
|
||||
partial dates (<i>20 July</i>, or even <i>2021</i>) and
|
||||
relative dates (<i>Last month</i>,<i>Yesterday</i>).
|
||||
</Typography>
|
||||
</li>
|
||||
<li>
|
||||
<Typography color="primary">{ut("Window size")}</Typography>
|
||||
<Typography color="primary">
|
||||
{ut("Faster magic search")}
|
||||
</Typography>
|
||||
<Typography>
|
||||
{ut(
|
||||
"The app's window will remember its size and position.",
|
||||
"The magic search beta, where you can search for photos just by typing whatever is in them, just got faster.",
|
||||
)}
|
||||
</Typography>
|
||||
</li>
|
||||
|
||||
@@ -26,7 +26,7 @@ import type { Electron } from "@/base/types/ipc";
|
||||
* The what's new dialog sets the saved version to the current one whenever it
|
||||
* is shown.
|
||||
*/
|
||||
const changelogVersion = 1;
|
||||
const changelogVersion = 2;
|
||||
|
||||
/**
|
||||
* Return true if we should show the {@link WhatsNew} dialog.
|
||||
|
||||
Reference in New Issue
Block a user