forked from immich-app/immich
-
Notifications
You must be signed in to change notification settings - Fork 0
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
Merge Changes #14
Open
tsemachh
wants to merge
694
commits into
DEV
Choose a base branch
from
main
base: DEV
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Merge Changes #14
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…-app#6308) Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
* fix(mobile): copy shared link * fix: handle trailing slash --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
* feat(ml): ARMNN acceleration for CLIP * wrap ANN as ONNX-Session * strict typing * normalize ARMNN CLIP embedding * mutex to handle concurrent execution * make inputs contiguous * fine-grained locking; concurrent network execution --------- Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
* refactor admin settings * use slots to render buttons in simplified template settings * remove more boilerplate by looping over components * fix: onboarding * fix: reset/reset to default * remove lodash since it is unecessary * chore: standardize padding and margins --------- Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* fix(web): Correct oauth documentation link * fix(web): Quotes instead of backticks
* Update added and re -arrangement of FAQ * Erasure of addition mistakes * Erasure of addition mistakes * Fix broken links * Correcting spelling errors + adding more questions * New required fixes * More FAQ * Adding questions + adding a note about a directory and an explanation about adding a path in a Windows environment * Update docs/docs/FAQ/Albums-FAQ.md Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com> * Update docs/docs/FAQ/Assets-FAQ.md Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com> * Update docs/docs/FAQ/Machine-Learning-FAQ.md Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com> * Update docs/docs/FAQ/Machine-Learning-FAQ.md Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com> * Update docs/docs/features/libraries.md Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com> * Corrections * chore: updates * import TOCinlines from all FAQ pages to one page + Corrections * Removing privacy information + adding required Flutter version information * Removing privacy information + adding required Flutter version information * Revert "Removing privacy information + adding required Flutter version information" This reverts commit da63439. * All in one page * Guide - Remove Offline Files * Guide - Remove Offline Files * doc: updates * chore: fix broken link * docs: clean up database gui guide --------- Co-authored-by: Alex <alex.tran1502@gmail.com> Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com> Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* chore: rebase * fix: re-size issue --------- Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* feat: quotas * chore: open api * chore: update status box and upload error message --------- Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* chore(deps): update machine-learning * fix typing, use new lifespan syntax * wrap in try / finally * move log --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
* remove unused import * formatting
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* chore(web): quota enhancement * show quota in user table * update quota for single user ioption * Add a note how to set unlimited storage * fixed deletion doesn't update quota * refactor relation * fixed test * re-refactor * update sql * fix e2e test * Update server/src/domain/user/user.service.ts Co-authored-by: Jason Rasmussen <jrasm91@gmail.com> * revert e2e test --------- Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* feat(mobile): Focus search on doubletap nav button * Update mobile/lib/modules/search/ui/immich_search_bar.dart Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com> * Move search notifier inside search bar file And fix naming to better represent type. * Remove onSearchFocusRequest and call focusSearch directly * Fix compilation error after file autosave --------- Co-authored-by: Justin van der Krieken <justin@vdkrieken.com> Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>
* chore: maplibre gl pubspec * refactor(wip): maplibre for maps * refactor(wip): dual pane + location button * chore: remove flutter_map and deps * refactor(wip): map zoom to location * refactor: location picker * open gallery_viewer on marker tap * remove detectScaleGesture param * test: debounce and throttle * chore: rename get location method * feat(mobile): Adds gps locator to map prompt for easy geolocation (immich-app#6282) * Refactored get gps coords * Use var for linter's sake, should handle errors better * Cleanup * Fix linter issues * chore(dep): update maplibre to official lib --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> Co-authored-by: Joshua Herrera <joshua.herrera227@gmail.com>
…eme (immich-app#6398) Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
* chore(dep): update auto_route * chore: rebase main --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
…p#5390) [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [com.google.guava:guava](https://togithub.com/google/guava) | `31.0.1-android` -> `33.0.0-android` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.google.guava:guava/33.0.0-android?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.google.guava:guava/33.0.0-android?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.google.guava:guava/31.0.1-android/33.0.0-android?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.google.guava:guava/31.0.1-android/33.0.0-android?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>google/guava (com.google.guava:guava)</summary> ### [`v32.1.3`](https://togithub.com/google/guava/releases/tag/v32.1.3): 32.1.3 [Compare Source](https://togithub.com/google/guava/compare/v32.1.2...v32.1.3) ##### Maven ```xml <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>32.1.3-jre</version> <!-- or, for Android: --> <version>32.1.3-android</version> </dependency> ``` ##### Jar files - [32.1.3-jre.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.1.3-jre/guava-32.1.3-jre.jar) - [32.1.3-android.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.1.3-android/guava-32.1.3-android.jar) Guava requires [one runtime dependency](https://togithub.com/google/guava/wiki/UseGuavaInYourBuild#what-about-guavas-own-dependencies), which you can download here: - [failureaccess-1.0.1.jar](https://repo1.maven.org/maven2/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar) ##### Javadoc - [32.1.3-jre](http://guava.dev/releases/32.1.3-jre/api/docs/) - [32.1.3-android](http://guava.dev/releases/32.1.3-android/api/docs/) ##### JDiff - [32.1.3-jre vs. 32.1.2-jre](http://guava.dev/releases/32.1.3-jre/api/diffs/) - [32.1.3-android vs. 32.1.2-android](http://guava.dev/releases/32.1.3-android/api/diffs/) - [32.1.3-android vs. 32.1.3-jre](http://guava.dev/releases/32.1.3-android/api/androiddiffs/) ##### Changelog - Changed Gradle Metadata to include dependency versions directly. This may address ["Could not find `some-dependency`" errors](https://togithub.com/google/guava/issues/6657) that some users have reported (which might be a result of users' excluding `guava-parent`). ([`c6d35cf`](https://togithub.com/google/guava/commit/c6d35cf1a5)) - `collect`: Changed `Multisets.unmodifiableMultiset(set).removeIf(predicate)` to throw an exception always, even if nothing matches `predicate`. ([`61dbccf`](https://togithub.com/google/guava/commit/61dbccfda3)) - `graph`: Fixed the behavior of `Graph`/`ValueGraph` views for a node when that node is removed from the graph. ([`9507996`](https://togithub.com/google/guava/commit/950799691c)) - `io`: Fixed `Files.createTempDir` and `FileBackedOutputStream` under [Windows *services*, a rare use case](https://togithub.com/google/guava/issues/6634). (The fix actually covers only Java 9+ because Java 8 would require an additional approach. Let us know if you need support under Java 8.) ([`f87f68c`](https://togithub.com/google/guava/commit/f87f68cd3e)) - `net`: Made `MediaType.parse` allow and skip over whitespace around the `/` and `=` separator tokens in addition to the `;` separator, for which it was already being allowed. ([`2786f83`](https://togithub.com/google/guava/commit/2786f83291)) - `util.concurrent`: Tweaked `Futures.getChecked` constructor-selection behavior: The method continues to prefer to call constructors with a `String` parameter, but now it breaks ties based on whether the constructor has a `Throwable` parameter. Beyond that, the choice of constructor remains undefined. (For this and other reasons, we discourage the use of `getChecked`.) ([`59cfb22`](https://togithub.com/google/guava/commit/59cfb2267a)) ### [`v32.1.2`](https://togithub.com/google/guava/releases/tag/v32.1.2): 32.1.2 [Compare Source](https://togithub.com/google/guava/compare/v32.1.1...v32.1.2) ##### Maven ```xml <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>32.1.2-jre</version> <!-- or, for Android: --> <version>32.1.2-android</version> </dependency> ``` ##### Jar files - [32.1.2-jre.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.1.2-jre/guava-32.1.2-jre.jar) - [32.1.2-android.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.1.2-android/guava-32.1.2-android.jar) Guava requires [one runtime dependency](https://togithub.com/google/guava/wiki/UseGuavaInYourBuild#what-about-guavas-own-dependencies), which you can download here: - [failureaccess-1.0.1.jar](https://repo1.maven.org/maven2/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar) ##### Javadoc - [32.1.2-jre](http://guava.dev/releases/32.1.2-jre/api/docs/) - [32.1.2-android](http://guava.dev/releases/32.1.2-android/api/docs/) ##### JDiff - [32.1.2-jre vs. 32.1.1-jre](http://guava.dev/releases/32.1.2-jre/api/diffs/) - [32.1.2-android vs. 32.1.1-android](http://guava.dev/releases/32.1.2-android/api/diffs/) - [32.1.2-android vs. 32.1.2-jre](http://guava.dev/releases/32.1.2-android/api/androiddiffs/) ##### Changelog - [Removed](https://togithub.com/google/guava/issues/6642#issuecomment-1656201382) the section of our Gradle metadata that caused Gradle to report conflicts with `listenablefuture`. ([`9ed0fa6`](https://togithub.com/google/guava/commit/9ed0fa65ab)) - Changed our Maven project to avoid [affecting which version of Mockito our Gradle users see](https://togithub.com/google/guava/issues/6654). ([`71a16d5`](https://togithub.com/google/guava/commit/71a16d5a74)) - `collect`: Under J2CL, exposed `ImmutableList` and `ImmutableSet` methods `copyOf` and `of` for JavaScript usage. ([`b41968f`](https://togithub.com/google/guava/commit/b41968f5f2)) - `net`: Optimized `InternetDomainName` construction. ([`3a1d18f`](https://togithub.com/google/guava/commit/3a1d18fbefa10218988a0fbbb6e1fada012397bf), [`eaa62eb`](https://togithub.com/google/guava/commit/eaa62eb09548a6f1b7a757e21d8852724b631cab)) ### [`v32.1.1`](https://togithub.com/google/guava/releases/tag/v32.1.1): 32.1.1 [Compare Source](https://togithub.com/google/guava/compare/v32.1.0...v32.1.1) ##### Maven ```xml <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>32.1.1-jre</version> <!-- or, for Android: --> <version>32.1.1-android</version> </dependency> ``` ##### Jar files - [32.1.1-jre.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.1.1-jre/guava-32.1.1-jre.jar) - [32.1.1-android.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.1.1-android/guava-32.1.1-android.jar) Guava requires [one runtime dependency](https://togithub.com/google/guava/wiki/UseGuavaInYourBuild#what-about-guavas-own-dependencies), which you can download here: - [failureaccess-1.0.1.jar](https://repo1.maven.org/maven2/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar) ##### Javadoc - [32.1.1-jre](http://guava.dev/releases/32.1.1-jre/api/docs/) - [32.1.1-android](http://guava.dev/releases/32.1.1-android/api/docs/) ##### JDiff - [32.1.1-jre vs. 32.1.0-jre](http://guava.dev/releases/32.1.1-jre/api/diffs/) - [32.1.1-android vs. 32.1.0-android](http://guava.dev/releases/32.1.1-android/api/diffs/) - [32.1.1-android vs. 32.1.1-jre](http://guava.dev/releases/32.1.1-android/api/androiddiffs/) ##### Changelog - Fixed our broken Gradle metadata from [32.1.0](https://togithub.com/google/guava/releases/tag/v32.1.0). Sorry again for the trouble. If you use Gradle, please still read [the release notes from that version](https://togithub.com/google/guava/releases/tag/v32.1.0): You may still see errors from the new checking that the metadata enables, and the release notes discuss how to fix those errors. ### [`v32.1.0`](https://togithub.com/google/guava/releases/tag/v32.1.0): 32.1.0 [Compare Source](https://togithub.com/google/guava/compare/v32.0.1...v32.1.0) ##### Warning: Our Gradle-metadata version numbers are broken. Read these notes, but upgrade straight to [32.1.2](https://togithub.com/google/guava/releases/tag/v32.1.2). We made a mistake in our release script, so the new Gradle metadata (discussed below) has [broken version numbers](https://togithub.com/google/guava/issues/6612) in 32.1.0. Sorry for the trouble and for the need for another quick patch release. We recommend upgrading straight to release [32.1.2](https://togithub.com/google/guava/releases/tag/v32.1.2), especially if you use Gradle or if you publish a library whose users might use Gradle. Still, read the release notes below if you use Gradle, since the fixed Gradle metadata in 32.1.2 may still require action on your part. ##### Maven ```xml <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>32.1.0-jre</version> <!-- or, for Android: --> <version>32.1.0-android</version> </dependency> ``` ##### Jar files - [32.1.0-jre.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.1.0-jre/guava-32.1.0-jre.jar) - [32.1.0-android.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.1.0-android/guava-32.1.0-android.jar) Guava requires [one runtime dependency](https://togithub.com/google/guava/wiki/UseGuavaInYourBuild#what-about-guavas-own-dependencies), which you can download here: - [failureaccess-1.0.1.jar](https://repo1.maven.org/maven2/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar) ##### Javadoc - [32.1.0-jre](http://guava.dev/releases/32.1.0-jre/api/docs/) - [32.1.0-android](http://guava.dev/releases/32.1.0-android/api/docs/) ##### JDiff - [32.1.0-jre vs. 32.0.1-jre](http://guava.dev/releases/32.1.0-jre/api/diffs/) - [32.1.0-android vs. 32.0.1-android](http://guava.dev/releases/32.1.0-android/api/diffs/) - [32.1.0-android vs. 32.1.0-jre](http://guava.dev/releases/32.1.0-android/api/androiddiffs/) ##### Changelog ##### [Gradle Module Metadata](https://docs.gradle.org/current/userguide/publishing_gradle_module_metadata.html) **Warning:** We made a mistake in our release script, so this is [broken](https://togithub.com/google/guava/issues/6612) in 32.1.0. We recommend upgrading straight to release [32.1.2](https://togithub.com/google/guava/releases/tag/v32.1.2), especially if you use Gradle or if you publish a library whose users might use Gradle. Still, read the release notes below if you use Gradle, since the fixed Gradle metadata in 32.1.2 may still require action on your part. The Gradle team has contributed a metadata file for Guava. If you use Gradle 6 or higher, you will see better handling of two kinds of dependency conflicts, plus another small feature related to our dependencies. As a result of this change, you may see errors, which you can resolve as documented below. If you encounter a problem that isn't documented below, or if the documentation is unclear, please [let us know](https://togithub.com/google/guava/issues/new). ##### If you use Gradle 6 (not 5, not 7+)<a name="gradle-6"></a> You may see [an error like this one](https://togithub.com/google/guava/issues/6612#issuecomment-1614897285): > Could not resolve all artifacts for configuration ':classpath'. > Could not resolve com.google.guava:guava:30.1-jre. Required by: project : > com.google.cloud.tools.jib:com.google.cloud.tools.jib.gradle.plugin:2.8.0 > gradle.plugin.com.google.cloud.tools:jib-gradle-plugin:2.8.0 > The consumer was configured to find a runtime of a library compatible with Java 15, packaged as a jar, and its dependencies declared externally. However we cannot choose between the following variants of com.google.guava:guava:32.1.1-jre: - androidRuntimeElements - jreRuntimeElements All of them match the consumer attributes: - Variant 'androidRuntimeElements' capabilities com.google.collections:google-collections:32.1.1-jre and com.google.guava:guava:32.1.1-jre and com.google.guava:listenablefuture:1.0 declares a runtime of a library compatible with Java 8, packaged as a jar, and its dependencies declared externally: If you do, you'll need to add [something like this](https://togithub.com/google/guava/issues/6612#issuecomment-1614992368) to a place where you configure the Java plugins: ```kotlin sourceSets.all { configurations.getByName(runtimeClasspathConfigurationName) { attributes.attribute(Attribute.of("org.gradle.jvm.environment", String), "standard-jvm") } configurations.getByName(compileClasspathConfigurationName) { attributes.attribute(Attribute.of("org.gradle.jvm.environment", String), "standard-jvm") } } ``` ##### If you see an error about a duplicate `ListenableFuture` class<a name="duplicate-ListenableFuture"></a> For example: Execution failed for task ':app:checkDebugDuplicateClasses'. > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable > Duplicate class com.google.common.util.concurrent.ListenableFuture found in modules jetified-guava-32.1.1-android (com.google.guava:guava:32.1.1-android) and jetified-listenablefuture-1.0 (com.google.guava:listenablefuture:1.0) This [appears to be a Gradle bug](https://togithub.com/gradle/gradle/issues/22326#issuecomment-1617422240). [@&immich-app#8203;mathisdt](https://togithub.com/mathisdt) has provided [a workaround](https://togithub.com/google/guava/issues/6618): dependencies { ### dependency definitions here ... modules { module("com.google.guava:listenablefuture") { replacedBy("com.google.guava:guava", "listenablefuture is part of guava") } } } ##### Selecting the appropriate flavor<a name="selecting-flavor"></a> When Gradle automatically selects the newest version of Guava in your dependency graph, it will now also select the appropriate flavor (`-android` or `-jre`) based on whether you project targets Android or not. For example, if you depend on 32.1.0-android and 30.0-jre, Gradle will select 32.1.0-jre. This is the version most likely to be compatible with all your dependencies. In the unusual event that you need to override Gradle's choice of flavor, you can do so as follows: ```kotlin dependencies.constraints { implementation("com.google.guava:guava") { attributes { attribute( TargetJvmEnvironment.TARGET_JVM_ENVIRONMENT_ATTRIBUTE, objects.named(TargetJvmEnvironment, TargetJvmEnvironment.ANDROID)) } } } // If the above leads to a conflict error because there are additional transitive dependencies to Guava, then use: configurations.all { resolutionStrategy.capabilitiesResolution.withCapability("com.google.guava:guava") { select(candidates.find { it.variantName.contains("android") }) } } ``` ##### Reporting dependencies that overlap with Guava<a name="overlap"></a> If your dependency graph contains the very old `google-collections` or the [hacky](https://groups.google.com/g/guava-announce/c/Km82fZG68Sw) `listenablefuture`, Gradle will now report that those libraries contain duplicates of Guava classes. When this happens, you'll need to tell Gradle to [select](https://docs.gradle.org/current/userguide/dependency_capability_conflict.html#sub:selecting-between-candidates) Guava: ```kotlin configurations.all { resolutionStrategy.capabilitiesResolution.withCapability("com.google.collections:google-collections") { select("com.google.guava:guava:0") } // and/or resolutionStrategy.capabilitiesResolution.withCapability("com.google.guava:listenablefuture") { select("com.google.guava:guava:0") } } ``` If that doesn't work, please let us know. And let us know whether [our `replacedBy` workaround](#user-content-duplicate-ListenableFuture) or [these other workarounds](https://togithub.com/googleapis/sdk-platform-java/pull/1832#issuecomment-1624315236) work instead. ##### Omitting annotations at runtime One dependency of Guava that is not needed at runtime (`j2objc-annotations`) is now omitted from the runtime classpath. (We may omit others in the future. See [#&immich-app#8203;6606](https://togithub.com/google/guava/issues/6606).) ##### Other changes - `collect`: Tweaked more nullness annotations. ([`501a016`](https://togithub.com/google/guava/commit/501a01631f742bbcb73cf46ae409abf567903944), [`5c23590`](https://togithub.com/google/guava/commit/5c2359087acc36c86ed42f1875ce69b7be231868)) - `hash`: Enhanced `crc32c()` to use Java's hardware-accelerated implementation where available. ([`65c7f10`](https://togithub.com/google/guava/commit/65c7f10ff0)) - `util.concurrent`: Added `Duration`-based `default` methods to `ListeningExecutorService`. ([`e7714b0`](https://togithub.com/google/guava/commit/e7714b0b8b)) - Began updating [Javadoc](https://guava.dev/api) to focus less on APIs that have been superseded by additions to the JDK. We're also looking to add more documentation that directs users to JDK equivalents for our APIs. Further PRs welcome! ([`c9efc47`](https://togithub.com/google/guava/commit/c9efc479950e40be4a11daa707dcf9258745cc2e), [`01dcc2e`](https://togithub.com/google/guava/commit/01dcc2e6104e9bd0392cb19029edf2c581425b67)) - Fixed some problems with [using Guava from a Java Agent](https://togithub.com/google/guava/issues/6566). (But we don't test that configuration, and we don't know how well we'll be able to keep it working.) ([`e42d4e8`](https://togithub.com/google/guava/commit/e42d4e863b), [`de62703`](https://togithub.com/google/guava/commit/de62703987)) - Fixed `BootstrapMethodError` when [using `CacheBuilder` from a custom system class loader](https://togithub.com/google/guava/issues/6565). (As with the previous item, we're not sure how well we'll be able to keep this use case working.) ([`a667c38`](https://togithub.com/google/guava/commit/a667c38772)) - Suppressed [a harmless `unusable-by-js` warning](https://togithub.com/google/guava/issues/6602) seen by users of `guava-gwt`. ### [`v32.0.1`](https://togithub.com/google/guava/releases/tag/v32.0.1): 32.0.1 [Compare Source](https://togithub.com/google/guava/compare/v32.0.0...v32.0.1) ##### Maven ```xml <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>32.0.1-jre</version> <!-- or, for Android: --> <version>32.0.1-android</version> </dependency> ``` ##### Jar files - [32.0.1-jre.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.0.1-jre/guava-32.0.1-jre.jar) - [32.0.1-android.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.0.1-android/guava-32.0.1-android.jar) Guava requires [one runtime dependency](https://togithub.com/google/guava/wiki/UseGuavaInYourBuild#what-about-guavas-own-dependencies), which you can download here: - [failureaccess-1.0.1.jar](https://repo1.maven.org/maven2/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar) ##### Javadoc - [32.0.1-jre](http://guava.dev/releases/32.0.1-jre/api/docs/) - [32.0.1-android](http://guava.dev/releases/32.0.1-android/api/docs/) ##### JDiff - [32.0.1-jre vs. 32.0.0-jre](http://guava.dev/releases/32.0.1-jre/api/diffs/) - [32.0.1-android vs. 32.0.0-android](http://guava.dev/releases/32.0.1-android/api/diffs/) - [32.0.1-android vs. 32.0.1-jre](http://guava.dev/releases/32.0.1-android/api/androiddiffs/) ##### Changelog - `io`: Fixed `Files.createTempDir` and `FileBackedOutputStream` under Windows, which broke as part of the security fix in release 32.0.0. Sorry for the trouble. ([`fdbf77d`](https://togithub.com/google/guava/commit/fdbf77d3f2)) ### [`v32.0.0`](https://togithub.com/google/guava/releases/tag/v32.0.0): 32.0.0 [Compare Source](https://togithub.com/google/guava/compare/v31.0.1...v32.0.0) ##### Maven ```xml <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>32.0.0-jre</version> <!-- or, for Android: --> <version>32.0.0-android</version> </dependency> ``` ##### Jar files - [32.0.0-jre.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.0.0-jre/guava-32.0.0-jre.jar) - [32.0.0-android.jar](https://repo1.maven.org/maven2/com/google/guava/guava/32.0.0-android/guava-32.0.0-android.jar) Guava requires [one runtime dependency](https://togithub.com/google/guava/wiki/UseGuavaInYourBuild#what-about-guavas-own-dependencies), which you can download here: - [failureaccess-1.0.1.jar](https://repo1.maven.org/maven2/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar) ##### Javadoc - [32.0.0-jre](http://guava.dev/releases/32.0.0-jre/api/docs/) - [32.0.0-android](http://guava.dev/releases/32.0.0-android/api/docs/) ##### JDiff - [32.0.0-jre vs. 31.1-jre](http://guava.dev/releases/32.0.0-jre/api/diffs/) - [32.0.0-android vs. 31.1-android](http://guava.dev/releases/32.0.0-android/api/diffs/) - [32.0.0-android vs. 32.0.0-jre](http://guava.dev/releases/32.0.0-android/api/androiddiffs/) ##### Changelog ##### Security fixes - Reimplemented `Files.createTempDir` and `FileBackedOutputStream` to further address CVE-2020-8908 ([#&immich-app#8203;4011](https://togithub.com/google/guava/issues/4011)) and CVE-2023-2976 ([#&immich-app#8203;2575](https://togithub.com/google/guava/issues/2575)). ([`feb83a1`](https://togithub.com/google/guava/commit/feb83a1c8f)) While CVE-2020-8908 was officially closed when we deprecated `Files.createTempDir` in [Guava 30.0](https://togithub.com/google/guava/releases/tag/v30.0), we've heard from users that even recent versions of Guava have been listed as vulnerable in *other* databases of security vulnerabilities. In response, we've reimplemented the method (and the very rarely used `FileBackedOutputStream` class, which had a similar issue) to eliminate the insecure behavior entirely. This change could technically affect users in a number of different ways (discussed under "Incompatible changes" below), but in practice, the only problem users are likely to encounter is with Windows. If you are using those APIs under Windows, you should skip 32.0.0 and go straight to [32.0.1](https://togithub.com/google/guava/releases/tag/v32.0.1) which fixes the problem. (Unfortunately, we didn't think of the Windows problem until after the release. And while we [warn that `common.io` in particular may not work under Windows](https://togithub.com/google/guava#important-warnings), we didn't intend to regress support.) Sorry for the trouble. ##### Incompatible changes Although this release bumps Guava's major version number, it makes **no binary-incompatible changes to the `guava` artifact**. One change could cause issues for Widows users, and a few other changes could cause issues for users in more usual situations: - **The new implementations of `Files.createTempDir` and `FileBackedOutputStream` [throw an exception under Windows](https://togithub.com/google/guava/issues/6535).** This is fixed in [32.0.1](https://togithub.com/google/guava/releases/tag/v32.0.1). Sorry for the trouble. - `guava-gwt` now [requires](https://togithub.com/google/guava/issues/6627) GWT [2.10.0](https://togithub.com/gwtproject/gwt/releases/tag/2.10.0). - This release makes a binary-incompatible change to a `@Beta` API in the **separate artifact** `guava-testlib`. Specifically, we changed the return type of `TestingExecutors.sameThreadScheduledExecutor` to `ListeningScheduledExecutorService`. The old return type was a package-private class, which caused the Kotlin compiler to produce warnings. ([`dafaa3e`](https://togithub.com/google/guava/commit/dafaa3e435)) - This release *adds* two methods to the Android flavor of Guava: `Invokable.getAnnotatedReturnType()` and `Parameter.getAnnotatedType()`. Those methods do not work under an Android VM; we added them only to help our tests of the Android flavor (since we also run those tests under a JRE). Android VMs tolerate such methods as long as the app does not call them or perform reflection on them, and builds tolerate them because of our new Proguard configurations (discussed below). Thus, we expect no impact to most users. However, we could imagine build problems for users who have set up their own build system for the Android flavor of Guava. Please report any problems so that we can judge how safely we might be able to add other methods to the Android flavor in the future, such as APIs that use Java 8 classes like `Stream`. ([`b30e73c`](https://togithub.com/google/guava/commit/b30e73cfa81ad15c1023c17cfd083255a3df0105)) - This release removes various APIs from the `guava-gwt`. This affects only users of [GWT](https://www.gwtproject.org/). The APIs we removed are `Enums`, `Sets.complementOf`, and the `Enum*BiMap` classes' `keyType()` and `valueType()` methods. These changes prepare for the removal of reflective enum-related APIs from [J2CL](https://togithub.com/google/j2cl). If one of these changes causes you problems as a GWT user, let us know. ([`c3a155d`](https://togithub.com/google/guava/commit/c3a155dc85), [`09db2c2`](https://togithub.com/google/guava/commit/09db2c29ae), [`3de12be`](https://togithub.com/google/guava/commit/3de12be516)) - The new implementations of `Files.createTempDir` and `FileBackedOutputStream` are annotated as `@J2ObjCIncompatible`. If you need to use them under J2ObjC, contact us. ([`56dc928`](https://togithub.com/google/guava/commit/56dc928a25)) - Because the new version of `Files.createTempDir` restricts permissions to the current user, it could break any caller that relies on letting other users access the directory. - The new versions of `Files.createTempDir` and `FileBackedOutputStream` throw an exception if they can't create the directory or file securely. Aside from the accidental Windows bug discussed above, this is possible only under Android Ice Cream Sandwich, a [very old](https://en.wikipedia.org/wiki/Android_Ice_Cream_Sandwich) version of Android that is [the oldest one we test Guava with](https://togithub.com/google/guava#important-warnings). ##### Other changes - Removed `@Beta` from almost all APIs. For details, see the bottom of the release notes. At this point, it's probably simpler to look at a list of APIs that still *are* `@Beta`, such as [this list for `guava-jre`](https://guava.dev/releases/32.0.0-jre/api/docs/com/google/common/annotations/class-use/Beta.html). Most of the remaining `@Beta` APIs are in `graph` and `hash`. - Enhanced the Guava jar to include Proguard configurations that are picked up automatically by the Android Gradle Plugin. This should help with warnings that were promoted to errors in Android Gradle Plugin 8.x. ([`aeba1e1`](https://togithub.com/google/guava/commit/aeba1e1b2d)) - Enhanced the Guava jar to include information about method parameters in its class files. If you use static analyzers that look at method-parameter names, you may see new warnings or errors if they are now able to detect mismatches. But mostly, you may see better tooltips and autocompletion in IDEs. ([`59d174c`](https://togithub.com/google/guava/commit/59d174cfbe)) - Improved nullness annotations on [a few classes](https://togithub.com/google/guava/issues/6510). - Modified classes with "serial proxies" to declare exception-throwing `readObject` methods, in accordance with best practice. ([`e62d6a0`](https://togithub.com/google/guava/commit/e62d6a0456)) - `collect`: Fixed `Maps.newHashMapWithExpectedSize` to stop allocating maps that were larger than they needed to be. ([`6ad621e`](https://togithub.com/google/guava/commit/6ad621e76d)) - `collect`: Made various APIs work J2CL: `Maps.immutableEnumMap`+`toImmutableEnumMap`, `EnumMultiset`, `CollectorTester`. Previously, the APIs were present but failed at runtime. ([`b62c88e`](https://togithub.com/google/guava/commit/b62c88e630), [`23ff918`](https://togithub.com/google/guava/commit/23ff91848f), [`852a7d3`](https://togithub.com/google/guava/commit/852a7d3fe9)) - `collect`: Optimized memory usage for `Interner` and `MapMaker`. ([`a2e8f3c`](https://togithub.com/google/guava/commit/a2e8f3c7ce)) - `graph`: Changed directed graphs to [reject attempts to add undirected edges](https://togithub.com/google/guava/issues/5843#issuecomment-1136678073). ([`76260d9`](https://togithub.com/google/guava/commit/76260d9b3c)) - `io`: Added `BaseEncoding.ignoreCase()` to support case-insensitive decoding. ([`9c1e5de`](https://togithub.com/google/guava/commit/9c1e5dea4b)) - `net`: Added `HttpHeaders` constants: - `No-Vary-Search` ([`688b9c2`](https://togithub.com/google/guava/commit/688b9c2cfa)) - `Sec-CH-DPR` ([`75a3d4d`](https://togithub.com/google/guava/commit/75a3d4dd36)) - `Sec-CH-UA-Wow64` ([`49e6b9c`](https://togithub.com/google/guava/commit/49e6b9c4a1)) - `Sec-CH-Viewport-Width` and `Sec-CH-Viewport-Height` ([`44df85a`](https://togithub.com/google/guava/commit/44df85a829)) - `Supports-Loading-Mode` ([`0d5c16f`](https://togithub.com/google/guava/commit/0d5c16fc6b)) - `net`: Added the `MediaType` constant for JWT. ([`f942fd2`](https://togithub.com/google/guava/commit/f942fd2c0e)) - `primitives`: Added `rotate()` for arrays of all primitive types. ([`cd338fa`](https://togithub.com/google/guava/commit/cd338fa2bc), [`6e9057d`](https://togithub.com/google/guava/commit/6e9057d0f2)) - `util.concurrent`: Changed `AbstractFuture` to run `interruptTask()` just before `afterDone()`. Until this change, it ran slightly earlier than that: We used to run it before unblocking any pending `get()` calls, and now we run it after. ([`b337be6`](https://togithub.com/google/guava/commit/b337be6089)) - `util.concurrent`: Fixed some cases in which we could catch `InterruptedException` but fail to restore the interrupt bit. ([`8f0350a`](https://togithub.com/google/guava/commit/8f0350a21a)) ##### `@Beta` removal list - `base`: `Utf8` ([`211907c`](https://togithub.com/google/guava/commit/211907cb8b)) - `base`: more APIs ([`b0cc461`](https://togithub.com/google/guava/commit/b0cc461da5)) - `collect`: `Multimaps.asMap(...)` ([`df0081f`](https://togithub.com/google/guava/commit/df0081f28f)) - `collect`: `FluentIterable` APIs ([`73b2f7b`](https://togithub.com/google/guava/commit/73b2f7bee0)) - `collect`: `Forwarding[Foo]` APIs ([`9760dbc`](https://togithub.com/google/guava/commit/9760dbcd4c)) - `collect`: `ImmutableFoo.Builder.builderWithExpectedSize(...)`, `orderEntriesByValue(...)`, and `Entry`-related APIs ([`61be35c`](https://togithub.com/google/guava/commit/61be35ce49)) - `collect`: `RangeMap`, `RangeSet`, and friends ([`fe12c81`](https://togithub.com/google/guava/commit/fe12c81e79)) - `collect`: more APIs ([`98820c7`](https://togithub.com/google/guava/commit/98820c77f9), [`e5e0f66`](https://togithub.com/google/guava/commit/e5e0f660cc)) - `io`: `ByteStreams` ([`4897930`](https://togithub.com/google/guava/commit/48979309a5)) - `io`: more APIs ([`a589256`](https://togithub.com/google/guava/commit/a5892560de)) - `math`: various APIs ([`912815e`](https://togithub.com/google/guava/commit/912815e4e2)) - `primitives`: `Longs.tryParse(...)` and friends ([`b3d4856`](https://togithub.com/google/guava/commit/b3d48564c6)) - `primitives`: `UnsignedLongs` ([`b240e8c`](https://togithub.com/google/guava/commit/b240e8ce14)) - `primitives`: more APIs ([`fcec25f`](https://togithub.com/google/guava/commit/fcec25f45e), [`ab4302a`](https://togithub.com/google/guava/commit/ab4302aa53)) - `reflect`: `Invokable` and some methods in `TypeToken` ([`a195f7d`](https://togithub.com/google/guava/commit/a195f7d604)) - `reflect`: `Parameter` (except `getAnnotatedType()` in `guava-android`) ([`b561eb1`](https://togithub.com/google/guava/commit/b561eb14c2)) - `testing`: various APIs ([`b331769`](https://togithub.com/google/guava/commit/b331769af3), [`74ad9b8`](https://togithub.com/google/guava/commit/74ad9b8a1f)) - `util.concurrent`: `FluentFuture` ([`b9a2d58`](https://togithub.com/google/guava/commit/b9a2d58503)) - `util.concurrent`: `Futures` ([`15a0c9f`](https://togithub.com/google/guava/commit/15a0c9fd57)) - `util.concurrent`: `Striped` ([`ba8ad69`](https://togithub.com/google/guava/commit/ba8ad69d03)) - `util.concurrent`: various `MoreExecutors` APIs ([`a3571b4`](https://togithub.com/google/guava/commit/a3571b408f)) - `util.concurrent`: more APIs ([`bbaf76a`](https://togithub.com/google/guava/commit/bbaf76a199)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/immich-app/immich). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuMTI3LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
chore: remove form-data dependency
* fix: bundle CLI with Vite * bundle dependencies as well * remove unused dependencies
Add a haptic feedback when jumping from one month to another in the asset grid view. The feedback is similar to the one implemented in the Google Photos app.
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
* chore(docs): Small FAQ tweaks and nits * chore: format:fix
Adds show password field to login
… adds progress indicator (immich-app#6793) * Made memories full screen * Uses linear bar and fits the card better for memories * Fixes pageview close button moving with pages * Uses hooks instead of stateful components * Adds ticks to the progress indicator * Rounds the edges of the progress bar * Fixes trailing comma analyze error * Adds padding and hero to memories * Fixes an issue with initial index set and adds hero / proper padding * Fixes aspect ratio calculation * Color --------- Co-authored-by: Alex <alex.tran1502@gmail.com>
* wip new tests * test for auth file mode * check perms internally * chore: lint
* use fetch api * bump version * add documentation * revert to using file blob
* chore(deps): update @immich/cli * npm install --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Jonathan Jogenfors <jonathan@jogenfors.se>
* import dockerfile from old cli * build works * rename login command * bump packages * fix login command * chore: remove axios dependency from CLI * move immich script path * can build docker * wip * wip * don't externalize sdk * can run docker * improve entrypoint * can save auth state between runs * add docs * clarify reqs * fix lint * bump alpine to 3.19 * add env files for api key * remove immich cli GHA for now * Update docs/docs/features/command-line-interface.md Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com> * remove redundant env variable check * cleanup * speling --------- Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
…pp#6923) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
A typo in the command
remove maplibre dependency
chore(deps): update base-image to v20240206 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This change simplifies the Access repository methods, by using the `ChunkedSet` decorator. As the methods expect sets, the `chunks` util needed to be fixed, so it returns chunks of the same type it received. Now `chunks` is overloaded, to have proper typing based on the input parameter.
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* chore(deps): update server * chore: generate sql --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
…pp#6952) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* chore(deps): update @immich/cli * bumpy --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Jonathan Jogenfors <jonathan@jogenfors.se>
…6785) * basic changes update version check set ef_search for clip * pgvector compatibility Revert "pgvector compatibility" This reverts commit 2b66a52. pgvector compatibility: minimal edition pgvector startup check * update extension at startup * wording shortened vector extension variable name * nightly docker * fixed version checks * update tests add tests for updating extension remove unnecessary check * simplify `getRuntimeConfig` * wording * reindex on minor version update * 0.2 upgrade testing update prod compose * acquire lock for init * wip vector down on shutdown * use upgrade helper * update image tag * refine restart check check error message * test reindex testing upstream fix formatting fixed reindexing * use enum in signature * fix tests remove unused code * add reindexing tests * update to official 0.2 remove alpha from version name * add warning test if restart required * update test image to 0.2.0 * linting and test cleanup * formatting * update sql * wording * handle setting search path for new and existing databases * handle new db in reindex check * fix post-update reindexing * get dim size * formatting * use vbase * handle different db name * update sql * linting * fix suggested env
…-app#6960) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.