martyfuhry
9b4a770b9d
refactor(mobile): Immich image provider ( #7016 )
...
* Adds image provider
* uses image provider
* wip load preview
* wip everything but activity asset thumbnail needs some help with a remote id
* Immich provider used in gallery
* First draft of the immich image provider, working nicely!
* Removed OriginalImageProvider
* Fixes for thumbnails
* feat(mobile): thumbhash support (#7028 )
* feat(mobile): thumbhash support
* perf(mobile): store bmp thumbhash bytes in Isar
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
* Uses octoimage for fade in and placeholders
* fixes thumbnails, removes unused values, adds better thumbnail size
* removes thumbhash support for now
* Forgot one thumbhash removal
* Use big thumbnail for local image on ios
* fix(mobile): Multipart image loading for iOS double swipe (#7064 )
* uses local thumb first
* Multipart thumbnail
* Clean up file delete
* await file delete
* Fynn's comments, made thumbnail smaller and doesn't crash on erroring out on thumbnail
* lint
---------
Co-authored-by: Marty Fuhry <marty@fuhry.farm>
Co-authored-by: Alex <alex.tran1502@gmail.com>
* Moves http client to global private place for reuse
* Got rid of usePreview for local image providers since we always show a thumbnail anyway first
* linter
---------
Co-authored-by: shenlong <139912620+shenlong-tanwen@users.noreply.github.com>
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
Co-authored-by: Marty Fuhry <marty@fuhry.farm>
2024-02-13 15:30:32 -06:00
Alex
4b3f8d1946
feat: Search filtering logic ( #6968 )
...
* commit
* controller/service/repository logic
* use enum
* openapi
* suggest people
* suggest place/camera
* cursor hover
* refactor
* Add try catch
* Remove get people with name service
* Remove deadcode
* people selection
* People placement
* sort people
* Update server/src/domain/repositories/metadata.repository.ts
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* pr feedback
* styling
* done
* open api
* fix test
* use string type
* remmove bad merge
* use correct type
* fix test
* fix lint
* remove unused code
* remove unused code
* pr feedback
* pr feedback
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-02-13 19:54:58 +00:00
Mert
e334443919
feat(server, web): smart search filtering and pagination ( #6525 )
...
* initial pagination impl
* use limit + offset instead of take + skip
* wip web pagination
* working infinite scroll
* update api
* formatting
* fix rebase
* search refactor
* re-add runtime config for vector search
* fix rebase
* fixes
* useless omitBy
* unnecessary handling
* add sql decorator for `searchAssets`
* fixed search builder
* fixed sql
* remove mock method
* linting
* fixed pagination
* fixed unit tests
* formatting
* fix e2e tests
* re-flatten search builder
* refactor endpoints
* clean up dto
* refinements
* don't break everything just yet
* update openapi spec & sql
* update api
* linting
* update sql
* fixes
* optimize web code
* fix typing
* add page limit
* make limit based on asset count
* increase limit
* simpler import
2024-02-12 20:50:47 -05:00
shenlong
ec5e4dbcc2
fix(mobile): stack entity handling ( #6980 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-02-09 21:09:43 -06:00
martyfuhry
fb8be51ff2
fix(mobile): Stop advancing to next memory on video ended ( #7007 )
...
Stop advancing to next asset on video ended
2024-02-09 20:29:57 -06:00
Jason Rasmussen
90a7f16817
chore(server): remove deprecated endpoints ( #6984 )
...
* chore: remove deprecated endpoints
* chore: open api
2024-02-08 16:57:54 -05:00
martyfuhry
69091e5309
feat(mobile): Videos play in memories now ( #6940 )
...
* Videos play in memories now
Remove auto video advance
* to next asset after video is done playing
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-02-08 04:07:50 +00:00
martyfuhry
0d876a470f
feat(mobile): Adds WiFi only backup option to iOS ( #6724 )
...
Adds WiFi only backup option to iOS
Co-authored-by: Marty Fuhry <marty@fuhry.farm>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-02-07 21:54:54 -06:00
shenlong
e0864768c2
refactor(mobile): map heatmap color and location picker ( #6553 )
...
* refactor(mobile): make location picker scaffold primary
* chore(mobile): update map heatmap colors
* style(mobile): map bottomsheet - only use borders on top
* fix(mobile): location picker show buttons above navigation bar
* fix: crash on iOS due to heatmap invalid color format
* disable rotate
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-02-08 03:07:43 +00:00
martyfuhry
c29976cd6f
feat(mobile): Memories activity is now full screen, better image fit, adds progress indicator ( #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>
2024-02-05 19:12:33 +00:00
martyfuhry
f6b4024a21
feat(mobile): Adds show password field to login ( #6918 )
...
Adds show password field to login
2024-02-05 09:11:30 -06:00
shenlong
1d93889920
fix(mobile): debounce map layer update ( #6861 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-02-04 21:07:08 -06:00
Emanuel Bennici
f4ab5d3ff7
feat(mobile): Add haptic feedback to asset grid ( #5344 )
...
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.
2024-02-04 21:02:51 -06:00
rovo89
5061c35c8d
feat(mobile): Add support for Basic Authentication ( #6840 )
2024-02-04 14:35:13 -06:00
Daniel Dietzler
d3404f927c
feat(server)!: oauth encryption algorithm setting ( #6818 )
...
* feat: add oauth signing algorithm setting
* chore: open api
* chore: change default to RS256
* feat: test and clean up
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-02-02 00:27:54 -05:00
Alex
ada3eeb777
chore: post release tasks
2024-01-31 16:52:48 -06:00
Alex
7a6ec8b0b5
fix(mobile): video player shows black screen ( #6819 )
...
fix(mobile): video player show black screen
2024-01-31 16:38:32 -06:00
Alex The Bot
07466fa7b7
Version v1.94.1
2024-01-31 19:21:00 +00:00
Alex
d2c2db2595
chore: post release tasks
2024-01-31 12:53:56 -06:00
Alex The Bot
a7ed2b7132
Version v1.94.0
2024-01-31 15:41:53 +00:00
Jonathan Jogenfors
068e703e88
feat(server): Automatic watching of library folders ( #6192 )
...
* feat: initial watch support
* allow offline files
* chore: ignore query errors when resetting e2e db
* revert db query
* add savepoint
* guard the user query
* chore: openapi and db migration
* wip
* support multiple libraries
* fix tests
* wip
* can now cleanup chokidar watchers
* fix unit tests
* add library watch queue
* add missing init from merge
* wip
* can now filter file extensions
* remove watch api from non job client
* Fix e2e test
* watch library with updated import path and exclusion pattern
* add library watch frontend ui
* case sensitive watching extensions
* can auto watch libraries
* move watcher e2e tests to separate file
* don't watch libraries from a queue
* use event emitters
* shorten e2e test timeout
* refactor chokidar code to filesystem provider
* expose chokidar parameters to config file
* fix storage mock
* set default config for library watching
* add fs provider mocks
* cleanup
* add more unit tests for watcher
* chore: fix format + sql
* add more tests
* move unwatch feature back to library service
* add file event unit tests
* chore: formatting
* add documentation
* fix e2e tests
* chore: fix e2e tests
* fix library updating
* test cleanup
* fix typo
* cleanup
* fixing as per pr comments
* reduce library watch config file
* update storage config and mocks
* move negative event tests to unit tests
* fix library watcher e2e
* make watch configuration global
* remove the feature flag
* refactor watcher teardown
* fix microservices init
* centralize asset scan job queue
* improve docs
* add more tests
* chore: open api
* initialize app service
* fix docs
* fix library watch feature flag
* Update docs/docs/features/libraries.md
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
* fix: import right app service
* don't be truthy
* fix test speling
* stricter library update tests
* move fs watcher mock to external file
* subscribe to config changes
* docker does not need polling
* make library watch() private
* feat: add configuration ui
---------
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-01-31 08:15:54 +00:00
Markus
87c38d1832
feat(server, web): Added TranscodePolicy "Bitrate higher than max bitrate or not in accepted format" ( #6479 )
...
* chore: rebase
* chore: open api
* Add Database-Migration for setting targetCodec as acceptedCodec if it was set by admin
* Add TranscodePolicy setting, to only transcode files with a bitrate higher than set max bitrate
* Rename enum value of TranscodePolicy
* calculate max_bitrate according to "k" and "m" suffix for comparison
* remove migration
* minor changes
* UnitTest for Bitrate Policy
* Fix UnitTest
* Add missing output options
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-01-30 20:25:07 -05:00
martyfuhry
149bc71eba
feat(mobile): Add end page to the end to memories ( #6780 )
...
* Adding memory epilogue card
* Adds epilogue page to memories
* Fixes a next / back issue
* color
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-01-30 17:47:47 -06:00
Alex
33bf7d5d8b
Localizely: Translations update ( #6772 )
...
chore(mobile): translation update
2024-01-30 13:29:12 -06:00
martyfuhry
8864d07782
chore(mobile): Corrects FVM gitignore and sets Flutter version to 3.16.9 ( #6775 )
...
Corrects FVM gitignore and sets Flutter version to 3.16.9
2024-01-30 13:28:55 -06:00
Alex
97cd91749c
fix(mobile): FR translation ( #6771 )
2024-01-30 12:01:03 -06:00
Alex
9e1d358168
fix(mobile): blurry memory photos ( #6734 )
...
* fix(mobile): blurry memory photos
* better naming and performance
2024-01-30 09:24:31 -06:00
t4keda
76f8d030ce
added a configuration option to select the dri node in transcoding ( #6376 )
...
* added a configuration option to select the dri node in transcoding
* chore: open api
* refactor: get hawrdware device
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-01-29 20:40:02 -05:00
Mert
ae7f174948
refactor: rename clip -> smart search ( #6713 )
2024-01-29 09:51:22 -05:00
martin
fa0913120d
feat(web,server): search people ( #5703 )
...
* feat: search peoples
* fix: responsive design
* use existing count
* generate sql file
* fix: tests
* remove visible people
* fix: merge, hide...
* use component
* fix: linter
* chore: regenerate api
* fix: change name when searching for a face
* save search
* remove duplicate
* use enums for query parameters
* fix: increase to 20 for the local search
* use constants
* simplify
* fix: number of people more visible
* fix: merge
* fix: search
* fix: loading spinner position
* pr feedback
2024-01-27 19:54:31 -05:00
Emanuel Bennici
9422359b51
fix(mobile): Fix single element archiving ( #6668 )
2024-01-27 18:57:51 +00:00
AxGD
64ab09bbb6
Update fr-FR.json ( #6633 )
...
* Update fr-FR.json
* Update fr-FR.json
commit after the feedback from @martabal
* Update fr-FR.json
some mistakes in the previous commit
2024-01-27 18:17:27 +00:00
shenlong
27488ceb67
deps(mobile): flutter 3.16 ( #6677 )
...
* dep(mobile): update flutter and deps
* chore: dart analyzer
* chore: update flutter workflow version
* chore: dart format
* fix: gallery_viewer PopScope
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-27 10:14:32 -06:00
Markus
8aef92affc
feat(server, web): accepted codecs ( #6460 )
...
* chore: rebase
* chore: open api
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-01-26 12:02:56 -05:00
Jason Rasmussen
96b7885583
refactor(server): trash endpoints ( #6652 )
...
* refactor(server): trash endpoints
* chore: open api
* chore: fix wrong rename
2024-01-26 11:48:37 -05:00
Jason Rasmussen
2e39243670
deps: open-api generator ( #6655 )
...
* deps: open-api generator
* fix: unused sed/replace
2024-01-26 11:40:28 -05:00
Jason Rasmussen
7ea55c7236
refactor(server): download endpoints ( #6653 )
...
* refactor(server): download controller
* chore: open api
* chore: fix mobile references
2024-01-26 08:19:13 -06:00
Jason Rasmussen
b306cf564e
refactor(server): move asset detail endpoint to new controller ( #6636 )
...
* refactor(server): move asset by id to new controller
* chore: open api
* refactor: more consolidation
* refactor: asset service
2024-01-25 12:52:21 -05:00
Alex
64e299ba9b
fix(mobile): skip tests using mock http client to make actual network request ( #6642 )
2024-01-25 10:57:11 -06:00
shenlong
3ae10c75fb
fix(mobile): es-US pluralization ( #6612 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-23 23:26:23 -06:00
Jason Rasmussen
a00768c9e5
chore(server): remove old device id endpoint ( #6578 )
...
* chore: remove old endpoint
* chore: open api
* chore: remove old tests
2024-01-22 20:54:53 -06:00
Jason Rasmussen
7b314f9435
chore(server): sort open api params ( #6484 )
...
* chore: sort spec
* chore: open api
* chore(mobile): sort auditDeletes params
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-22 11:49:51 -05:00
Alex
b34a808fbb
feat(mobile): Add Slovenian ( #6558 )
2024-01-21 16:27:54 -06:00
Alex The Bot
4ebb9974ff
Version v1.93.3
2024-01-20 16:03:18 +00:00
Alex The Bot
3dddc6b449
Version v1.93.2
2024-01-19 18:29:04 +00:00
shenlong
f80f867976
fix(mobile): stack button not in bottom app bar ( #6497 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-19 17:40:10 +00:00
Jason Rasmussen
df27460f1c
fix: open api pump ( #6502 )
2024-01-19 11:09:18 -06:00
Alex The Bot
d5af357992
Version v1.93.1
2024-01-19 15:01:17 +00:00
Alex Tran
20c284407c
chore: post release openapi update
2024-01-18 21:21:28 -06:00
Alex
7e1b1eae41
chore: post release tasks
2024-01-18 21:15:58 -06:00
Alex The Bot
fa0b7c8563
Version v1.93.0
2024-01-19 02:14:46 +00:00
shenlong
f62678f58f
feat(mobile): long-press delete button to permanently delete asset ( #6240 )
...
* feat(mobile): delete assets from device only
* mobile: add backed up only toggle for delete device only
* remove toggle inside alert and show different content
* mobile: change content color for local only
* mobile: delete local only button to dialog
* style: display bottom action in two lines
* feat: separate delete buttons
* fix: incorrect error message for ownedRemoteSelection
* feat(mobile): long-press delete to permanently delete asset
* chore: add todo to handle long press to delete in gallery_viewer
* chore: rebase on deletion branch
* feat(mobile): long-press delete to permanently delete asset
* fix(mobile): update minChildSize of control bottom app bar
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-01-18 15:01:38 -06:00
shenlong
04c783f2f0
fix(mobile): asset state when delete from trash ( #6476 )
...
* fix(mobile): handle asset removal state from trash for merged assets
* fix(mobile): use appropriate text for trash / delete
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-18 14:55:19 -06:00
Mert
68f52818ae
feat(server): separate face clustering job ( #5598 )
...
* separate facial clustering job
* update api
* fixed some tests
* invert clustering
* hdbscan
* update api
* remove commented code
* wip dbscan
* cleanup
removed cluster endpoint
remove commented code
* fixes
updated tests
minor fixes and formatting
fixed queuing
refinements
* scale search range based on library size
* defer non-core faces
* optimizations
removed unused query option
* assign faces individually for correctness
fixed unit tests
remove unused method
* don't select face embedding
update sql
linting
fixed ml typing
* updated job mock
* paginate people query
* select face embeddings because typeorm
* fix setting face detection concurrency
* update sql
formatting
linting
* simplify logic
remove unused imports
* more specific delete signature
* more accurate typing for face stubs
* add migration
formatting
* chore: better typing
* don't select embedding by default
remove unused import
* updated sql
* use normal try/catch
* stricter concurrency typing and enforcement
* update api
* update job concurrency panel to show disabled queues
formatting
* check jobId in queueAll
fix tests
* remove outdated comment
* better facial recognition icon
* wording
wording
formatting
* fixed tests
* fix
* formatting & sql
* try to fix sql check
* more detailed description
* update sql
* formatting
* wording
* update `minFaces` description
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-01-18 00:08:48 -05:00
Steven Carter
d4146e3e6d
feat(server): provide the ability to search archived photos ( #6332 )
...
* Feat: provide the ability to search archived photos
Adds a query parameter (`searchArchived`) to the search URL parameters
to allow the results to contain archived photos.
* chore: rename includeArchived => withArchived
* chore: open api
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-01-18 02:08:00 +00:00
waclaw66
574aecc1e2
fix(mobile): add to album - list thumbnails ( #6444 )
...
fix(mobile): add to album thumbnails
2024-01-17 14:27:55 -06:00
shenlong
4c2befc68c
feat(mobile): separate delete buttons ( #4505 )
...
* feat(mobile): delete assets from device only
* mobile: add backed up only toggle for delete device only
* remove toggle inside alert and show different content
* mobile: change content color for local only
* mobile: delete local only button to dialog
* style: display bottom action in two lines
* feat: separate delete buttons
* fix: incorrect error message for ownedRemoteSelection
* fix: handle remoteOnly from delete everywhere
* request confirmation for local only only when non-backed assets are in selection
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-01-16 21:28:23 -06:00
Alex
78de4f1312
feat(mobile): quota ( #6409 )
...
* feat(mobile): quota
* openapi
* user entity update
* Render quota
* refresh usage upon opening the app bar
* stop backup when quota exceed
2024-01-16 20:08:31 -06:00
Alex
76bad762d7
fix(mobile): null check on null value on top app bar ( #6406 )
...
Fixed issue with null check on null value causing the top app bar render
a gray overlay when open an asset in Album On Device section in Library
page
2024-01-16 00:25:59 +00:00
renovate[bot]
f160969894
fix(deps): update dependency com.google.guava:guava to v33 ( #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`](3a1d18fbef
),
[`eaa62eb`](eaa62eb095
))
### [`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 ).
[@​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
[#​6606](https://togithub.com/google/guava/issues/6606 ).)
##### Other changes
- `collect`: Tweaked more nullness annotations.
([`501a016`](501a01631f
),
[`5c23590`](5c2359087a
))
- `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`](c9efc47995
),
[`01dcc2e`](01dcc2e610
))
- 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
([#​4011](https://togithub.com/google/guava/issues/4011 )) and
CVE-2023-2976
([#​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`](b30e73cfa8
))
- 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>
2024-01-15 18:29:18 +00:00
shenlong
ba5cca9348
chore(dep): update auto_route ( #6390 )
...
* chore(dep): update auto_route
* chore: rebase main
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-15 16:50:33 +00:00
shenlong
e6c0f0e3aa
refactor(mobile): maplibre ( #6087 )
...
* 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 (#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>
2024-01-15 09:26:13 -06:00
Justin van der Krieken
aa8c54e248
feat(mobile): Focus search on doubletap nav button ( #6048 )
...
* 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>
2024-01-15 09:25:56 -06:00
shenlong
6ee9c8277f
chore(dep): remove unused badges dep ( #6384 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-15 00:02:11 -06:00
cfitzw
deb1f970a8
feat(server, web): quotas ( #4471 )
...
* feat: quotas
* chore: open api
* chore: update status box and upload error message
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-01-12 19:43:36 -05:00
shenlong
4f942bc182
fix(mobile): copy shared link ( #6310 )
...
* fix(mobile): copy shared link
* fix: handle trailing slash
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-10 09:32:09 -06:00
shenlong
0e0a472de1
fix(mobile): ensure notifier is mounted before updating state ( #6308 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-10 09:31:54 -06:00
Alex The Bot
df59b2099f
Version v1.92.1
2024-01-08 15:24:38 +00:00
Alex The Bot
319ddfda53
Version v1.92.0
2024-01-08 05:19:11 +00:00
Alex
d095382b14
chore(mobile): translation update ( #6242 )
2024-01-07 23:17:35 -06:00
shenlong
a233e176e5
fix(mobile): handle readonly and offline assets ( #5565 )
...
* feat: add isReadOnly and isOffline fields to Asset collection
* refactor: move asset iterable filters to extension
* hide asset actions based on offline and readOnly fields
* pr changes
* chore: doc comments
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-01-05 21:02:16 -06:00
Fynn Petersen-Frey
56cde0438c
feat(mobile): multiselect for search & person page ( #6016 )
...
* feat(mobile): multiselect for search & person page
* merge main
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-01-05 21:23:58 +00:00
shenlong
d3af2b1f69
(mobile): ios - calculate hash using CryptoKit ( #5976 )
...
* ios: calculate hash using CryptoKit
* chore: remove unused crypto dep
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2024-01-05 10:49:43 -06:00
shenlong
af32183728
refactor(mobile): Activities ( #5990 )
...
* refactor: autoroutex pushroute
* refactor: autoroutex popRoute
* refactor: autoroutex navigate and replace
* chore: add doc comments for extension methods
* refactor: Add LoggerMixin and refactor Album activities to use mixin
* refactor: Activity page
* chore: activity user from user constructor
* fix: update current asset after build method
* refactor: tests with similar structure as lib
* chore: remove avoid-declaring-call-method rule from dcm analysis
* test: fix proper expect order
* test: activity_statistics_provider_test
* test: activity_provider_test
* test: use proper matchers
* test: activity_text_field_test & dismissible_activity_test added
* test: add http mock to return transparent image
* test: download isar core libs during test
* test: add widget tags to widget test cases
* test: activity_tile_test
* build: currentAlbumProvider to generator
* movie add / remove like to activity input tile
* test: activities_page_test.dart
* chore: better error logs
* chore: dismissibleactivity as statelesswidget
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-04 23:20:55 -06:00
shenlong
2aaf941dda
refactor(mobile): use startOAuth and server features flags ( #6155 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-04 14:44:40 -06:00
Alex
18f59f78e3
feat(web): onboarding ( #6066 )
...
* feat(web): onboarding
* feat: openapi
* feat: modulization
* feat: page advancing
* Animation
* Add storage templaete settings
* sql
* more style
* Theme
* information and styling
* hide/show table
* Styling
* Update user property
* fix test
* fix test:
* fix e2e
* test
* Update web/src/lib/components/onboarding-page/onboarding-hello.svelte
Co-authored-by: bo0tzz <git@bo0tzz.me>
* naming
* use System Metadata
* better return type
* onboarding using server metadata
* revert previous changes in user entity
* sql
* test web
* fix test server
* server/web test
* more test
* consolidate color theme change logic
* consolidate save button to storage template
* merge main
* fix web
---------
Co-authored-by: bo0tzz <git@bo0tzz.me>
2024-01-04 05:28:32 +00:00
Jason Rasmussen
f8d64be13c
feat(server)!: move welcome message to settings ( #6157 )
...
* feat(server): move welcome message to settings
* chore: open api
2024-01-04 05:00:17 +00:00
Jason Rasmussen
317adc5c28
feat(web,server): external domain setting ( #6146 )
...
* feat: external domain setting
* chore: open api
* mobile: handle serverconfig-externalDomain
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2024-01-03 21:54:48 -05:00
Jason Rasmussen
9a04014f98
feat(mobile): use new endpoint ( #6108 )
2024-01-01 19:02:30 -05:00
Opbod
a5a71e6b5c
Update en-US.json - spelling changes ( #5868 )
2024-01-01 19:27:45 +00:00
Zack Pollard
2e38fa73bf
feat: storage template file move hardening ( #5917 )
...
* fix: pgvecto.rs extension breaks typeorm schema:drop command
* fix: parse postgres bigints to javascript number types when selecting data
* feat: verify file size is the same as original asset after copying file for storage template job
* feat: allow disabling of storage template job, defaults to disabled for new instances
* fix: don't allow setting concurrency for storage template migration, can cause race conditions above 1
* feat: add checksum verification when file is copied for storage template job
* fix: extract metadata for assets that aren't visible on timeline
2023-12-29 18:41:33 +00:00
Emanuel Bennici
fd3a1a4da8
fix(mobile): Fix "Live Images" and "Recently added" page ( #6030 )
...
* fix(mobile): Load assets on "Live-Images" page
Instead of requesting the server for the relevant entries, we can use
the local DB.
This change fixes loading errors when going to the "Live-Images" page.
It is similar to the work done with #5971 .
* fix(mobile): Fix Recently added page
2023-12-27 23:33:37 -06:00
Fynn Petersen-Frey
733fa28aa2
feat(mobile): load search result assets from local DB ( #5971 )
2023-12-26 15:41:51 -06:00
Alex
dea1063b17
chore(mobile): translation update ( #5960 )
2023-12-24 10:29:53 -06:00
Alex
17ef411b0a
Localizely: Translations update ( #5902 )
...
* chore(mobile): translation update
* fix localizely plurals form
* more fix
2023-12-24 10:20:34 -06:00
Mert
092a23fd7f
feat(server,ml): remove image tagging ( #5903 )
...
* remove image tagging
* updated lock
* fixed tests, improved logging
* be nice
* fixed tests
2023-12-20 20:47:56 -05:00
shenlong
154292242f
fix(mobile): use proper id for gellery_viewer hero attribute ( #5894 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-20 11:23:17 -06:00
André Pinto
4505ebc315
fix(mobile): Fix pt-PT locale. Add missing pt-PT localizely entry ( #5892 )
2023-12-20 09:46:20 -06:00
Alex
cabc2d57dd
Revert "chore(mobile): translation update ( #5867 )" ( #5871 )
...
This reverts commit 4e06ccd052
.
2023-12-19 13:17:20 -06:00
Alex
4e06ccd052
chore(mobile): translation update ( #5867 )
2023-12-19 10:45:11 -06:00
Alex The Bot
b40859551b
Version v1.91.4
2023-12-19 03:34:19 +00:00
shenlong
085dc6cd93
fix(mobile): use safe area for gallery_viewer bottom sheet ( #5831 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-18 11:22:06 -06:00
Alex
ffc31f034c
chore(mobile): handle delete file error ( #5827 )
2023-12-18 09:54:42 -06:00
Quek
27f8dd6040
doc: documentation of the Immich Flutter Architectural Pattern ( #5748 )
...
* Added Documentation of the Immich Flutter Architectural Pattern
* Update README.md
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-12-17 17:51:03 +00:00
Alex The Bot
08f66c2ae5
Version v1.91.3
2023-12-17 16:57:16 +00:00
Alex The Bot
a15c799ba3
Version v1.91.2
2023-12-16 23:19:58 +00:00
Alex The Bot
0aae9696f6
Version v1.91.1
2023-12-16 17:26:51 +00:00
Mert
cb1201e690
chore(web): update job dashboard ( #5745 )
...
* rename clip encoding to smart search
* update job subtitles
* update api
* update smart search job title and subtitle
* fix `getJobName`
* change smart search icon
* formatting
* wording
* update reference to clip
* formatting
* update reference to Encode CLIP
2023-12-16 10:50:46 -06:00
Alex
f8519d60c7
chore: post release tasks
2023-12-15 13:25:37 -06:00
Alex The Bot
e9a8daa924
Version v1.91.0
2023-12-15 15:22:37 +00:00
Jason Rasmussen
9768931275
feat(web,server)!: runtime log level ( #5672 )
...
* feat: change log level at runtime
* chore: open api
* chore: prefer env over runtime
* chore: remove default env value
2023-12-14 16:55:40 +00:00
waclaw66
3a2e9b6298
feat(web): increase map max zoom ( #5693 )
...
* increate max zoom
* increase max zoom on mobile
2023-12-14 08:40:56 -05:00
Alex
885eba2b7c
fix(mobile): simplify state management in backup selection page ( #5655 )
...
* fix(mobile): simplify album selection backup state management
* remove search bar'
* log available albums
2023-12-12 21:06:04 -06:00
shenlong
ec0526dbcb
chore(mobile): move mocktail to dev dep ( #5666 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-12 20:49:14 -06:00
Alex
c7df800d27
fix(mobile): Fix upload hang on iOS when deleting stale files ( #5658 )
...
* fix(mobile): Fix upload hang on iOS when deleting stale files
* Cleaner fix
2023-12-12 11:36:37 -06:00
Jason Rasmussen
cbca69841a
refactor(server): immich file responses ( #5641 )
...
* refactor(server): immich file response
* chore: open api
* chore: tests
* chore: fix logger import
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-12-12 08:58:25 -06:00
Alex
af7c4ae090
fix(mobile): better error message ( #5653 )
2023-12-12 08:58:13 -06:00
shenlong
fb4b4e5895
fix: handle livePhotos using originFileWithSubType ( #5602 )
...
* fix: handle livePhotos using originFileWithSubType
* remove livePhoto asset cache
* fetch live photo video name from entity
* fix: video file not detected
* chore: pull main
* fix: set correct header
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-12-11 20:20:36 -06:00
Łukasz Wawrzyk
f6ef226b64
chore(mobile): put delete button before metadata editing ( #5633 )
2023-12-11 12:53:11 -06:00
Alex
64e985d600
fix(mobile): Revert - upload motion and live part of LivePhotos together ( #5601 )
2023-12-11 10:38:02 -06:00
shenlong
960b68b02f
fix(mobile): live / motion photo download ( #5607 )
...
* reverts: 5566
* fix: stitch livePhoto only in iOS
* fix: PMProgressHandler only on iOS
* ios: fallback to saving image if livephoto fails
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-10 09:56:39 -06:00
shenlong
3a794d7a2b
fix: use avatarColor as the text background when no avatar available ( #5566 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-09 20:32:39 -06:00
shenlong
68c0112aaa
fix(mobile): memory lane not displayed in mobile app ( #5587 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-09 20:32:20 -06:00
shenlong
8847ebeef2
fix(mobile): mobile album sort not persisting ( #5584 )
...
* chore(deps): use mocktail instead of mockito
* refactor: move stubs to fixtures/
* fix: fetch assetsortmode based on storeindex
* test: validate AlbumSortByOptions provider
---------
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-09 20:31:23 -06:00
Jason Rasmussen
1e99ba8167
feat: use pgvecto.rs ( #3605 )
2023-12-08 11:15:46 -05:00
Alex The Bot
429ad28810
Version v1.90.2
2023-12-08 14:23:04 +00:00
Alex The Bot
d2fbbe790b
Version v1.90.1
2023-12-08 04:20:27 +00:00
Alex
e086fa6931
chore: post release tasks
2023-12-07 12:48:43 -06:00
Alex The Bot
c174f0e871
Version v1.90.0
2023-12-07 18:32:45 +00:00
shenlong
3581069c2b
fix(mobile): do not show loading overlay on grid refresh ( #5531 )
...
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-07 12:21:07 -06:00
shenlong
c5504aae6e
refactor(mobile): album sort ( #5510 )
...
* refactor: migrate album sort option to provider
* refactor: use sort order in add to album sheet list
* test(mobile): album_sort_options_provider unit tests
* refactor: sort shared albums with user selected sort
* refactor: use listview to render shared albums
* refactor: rename to AlbumSortByOptions
* refactor: remove filtering inside sort functions
* font size
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-12-07 18:14:09 +00:00
Alex
2e59b07cc6
feat(mobile): handle backup iCloud asset ( #5508 )
...
* feat(mobile): handle backup iCloud asset
* additional state
* Download progress
* Added a separate page for backup options
* handle ingore iCloud asset upload'
* fix init backup service
* PR feedback
* fix negative count
* get file title
2023-12-07 09:53:15 -06:00
Fynn Petersen-Frey
c25556bb08
feat(mobile): unify asset grid multiselect actions ( #5407 )
...
* feat(mobile): unify asset grid multiselect actions
* add favorite & archive page
* show edit date&place on main photos screen
* Reposition exit button
* Sort favorite with the same order as other view
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-12-07 09:38:22 -06:00
shenlong
e1739ac4fc
fix(mobile): allow editing asset dates in the future ( #5522 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-06 20:04:03 -06:00
shenlong
f53b70571b
fix: notify mobile app when live photos are linked ( #5504 )
...
* fix(mobile): album thumbnail list tile overflow on large album title
* fix: notify clients about live photo linked event
* refactor: notify clients during meta extraction
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-06 08:56:09 -06:00
shenlong
086a957a2b
feat(mobile): edit date time & location ( #5461 )
...
* chore: text correction
* fix: update activities stat only when the widget is mounted
* feat(mobile): edit date time
* feat(mobile): edit location
* chore(build): update gradle wrapper - 7.6.3
* style: dropdownmenu styling
* style: wrap locationpicker in singlechildscrollview
* test: add unit test for getTZAdjustedTimeAndOffset
* pr changes
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-05 13:34:37 -06:00
shenlong
d5f6584e1d
fix(mobile): use zoomedpagetransition for galleryvieweroute ( #5495 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-12-05 09:45:04 -06:00
martin
7702560b12
feat(web): re-assign person faces (2) ( #4949 )
...
* feat: unassign person faces
* multiple improvements
* chore: regenerate api
* feat: improve face interactions in photos
* fix: tests
* fix: tests
* optimize
* fix: wrong assignment on complex-multiple re-assignments
* fix: thumbnails with large photos
* fix: complex reassign
* fix: don't send people with faces
* fix: person thumbnail generation
* chore: regenerate api
* add tess
* feat: face box even when zoomed
* fix: change feature photo
* feat: make the blue icon hoverable
* chore: regenerate api
* feat: use websocket
* fix: loading spinner when clicking on the done button
* fix: use the svelte way
* fix: tests
* simplify
* fix: unused vars
* fix: remove unused code
* fix: add migration
* chore: regenerate api
* ci: add unit tests
* chore: regenerate api
* feat: if a new person is created for a face and the server takes more than 15 seconds to generate the person thumbnail, don't wait for it
* reorganize
* chore: regenerate api
* feat: global edit
* pr feedback
* pr feedback
* simplify
* revert test
* fix: face generation
* fix: tests
* fix: face generation
* fix merge
* feat: search names in unmerge face selector modal
* fix: merge face selector
* simplify feature photo generation
* fix: change endpoint
* pr feedback
* chore: fix merge
* chore: fix merge
* fix: tests
* fix: edit & hide buttons
* fix: tests
* feat: show if person is hidden
* feat: rename face to person
* feat: split in new panel
* copy-paste-error
* pr feedback
* fix: feature photo
* do not leak faces
* fix: unmerge modal
* fix: merge modal event
* feat(server): remove duplicates
* fix: title for image thumbnails
* fix: disable side panel when there's no face until next PR
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-12-05 09:43:15 -06:00
Clement Ong
982183600d
feat(web): clear failed jobs ( #5423 )
...
* add clear failed jobs button
* refactor: clean up code
* chore: open api
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-12-05 02:07:20 +00:00
Quek
ca1be71bca
fix(mobile): new album icon has different height to existing album cover ( #5422 )
2023-12-04 13:26:17 -06:00
Fynn Petersen-Frey
bdbaa166d9
fix(mobile): clear album provider on logout ( #5477 )
2023-12-04 10:21:05 -06:00
YFrendo
644e52b153
feat: Edit metadata ( #5066 )
...
* chore: rebase and clean-up
* feat: sync description, add e2e tests
* feat: simplify web code
* chore: unit tests
* fix: linting
* Bug fix with the arrows key
* timezone typeahead filter
timezone typeahead filter
* small stlying
* format fix
* Bug fix in the map selection
Bug fix in the map selection
* Websocket basic
Websocket basic
* Update metadata visualisation through the websocket
* Update timeline
* fix merge
* fix web
* fix web
* maplibre system
* format fix
* format fix
* refactor: clean up
* Fix small bug in the hour/timezone
* Don't diplay modify for readOnly asset
* Add log in case of failure
* Formater + try/catch error
* Remove everything related to websocket
* Revert "Remove everything related to websocket"
This reverts commit 14bcb9e1e4
.
* remove notification
* fix test
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-30 03:52:28 +00:00
Alex The Bot
8b6a79ad9e
Version v1.89.0
2023-11-29 19:20:24 +00:00
shenlong
527d602a9f
refactor(mobile): immich loading overlay ( #5320 )
...
* refactor: dcm fixes
* refactor: ImmichLoadingOverlay to custom hook
* chore: dart fixes
* pr changes
* fix: process overlay add / remove in postframecallback
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-29 04:20:00 +00:00
shenlong
513f252a0c
refactor(mobile): log asyncvalue errors ( #5327 )
...
* refactor: scaffoldwhen to log errors during scaffold body render
* refactor: onError and onLoading scaffoldbody
* refactor: more scaffold body to custom extension
* refactor: add skiploadingonrefresh
* Snackbar color
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-29 04:17:29 +00:00
avaness
5a2fc20b20
fix(mobile): server endpoint input auto parse https when not specified ( #5326 )
...
This fixes issue #4397 and automatically adds the https protocol to the server endpoint url if it is missing
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-29 04:02:19 +00:00
shenlong
b0db8ed6c4
style(mobile): asset selection animation ( #5322 )
...
* refactor: replace navigator.pop with context.pop
* mobile: use demo instance credentials for test login
* style(mobile): centre align add partner button
* mobile: add thumbnail selection animation
* differnt gesture for test instance
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-28 22:05:13 +00:00
Romon Wafa
cf58649a99
Change wording ( #5312 )
2023-11-26 00:12:51 -06:00
shenlong
e65d1d5930
refactor: mobile - send livephoto as a separate request ( #5275 )
...
* refactor: mobile - send livephoto as a separate request
* fix: create new request for live asset
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-25 21:45:18 -06:00
Zack Pollard
698226634e
feat: postgres reverse geocoding ( #5301 )
...
* feat: add system metadata repository for storing key values for internal usage
* feat: add database entities for geodata
* feat: move reverse geocoding from local-reverse-geocoder to postgresql
* infra: disable synchronization for geodata_places table until typeorm supports earth column
* feat: remove cities override config as we will default all instances to cities500 now
* test: e2e tests don't clear geodata tables on reset
2023-11-25 18:53:30 +00:00
shenlong
0108211c0f
refactor: deprecate getUserAssetsByDeviceId ( #5273 )
...
* refactor: deprecated getUserAssetsByDeviceId
* prevent breaking changes
* chore: add deprecation
* prevent breaking changes
* prevent breaking changes
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-25 15:46:20 +00:00
shenlong
f222e47651
fix(mobile): update password change description text to use user name ( #5105 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-24 15:32:21 -06:00
Michael Manganiello
8a8d3811b9
fix(mobile): Add translatable strings for shared links info ( #5292 )
...
Mark more strings as translatable, regarding shared link information and
expiration.
2023-11-24 15:29:49 -06:00
Alex Tran
95280fd692
chore(mobile): remove unused import
2023-11-22 08:00:28 -06:00
PyKen
ff275ea175
chore(mobile): Add log when saving asset ( #5259 )
2023-11-22 03:55:51 +00:00
Alex The Bot
55fa3234fd
Version v1.88.2
2023-11-21 16:09:18 +00:00
Alex Tran
a13052e24c
Revert "Version v1.88.2"
...
This reverts commit bc2c73e499
.
2023-11-21 09:07:50 -06:00
Alex The Bot
bc2c73e499
Version v1.88.2
2023-11-21 15:01:06 +00:00
Alex The Bot
9cf40afaf0
Version v1.88.1
2023-11-21 03:00:19 +00:00
Alex
30e9763888
chore: post release tasks
2023-11-20 15:11:56 -06:00
Alex The Bot
0f596e278c
Version v1.88.0
2023-11-20 20:47:37 +00:00
Alex
347e6191c5
chore(mobile): minor font fix
2023-11-20 12:59:53 -06:00
Alex
acf099e481
chore(mobile): Mobile make over ( #5129 )
...
* chore: added overpass font
* Setting page
* style: app bar dialog
* style: backup controller and album selection page
* style: asset grid
* blanket fix
* blanket fix
* remove description input for local only asset
* revert
* merge main
* style: search page
* sharing page
* text size in sharing page
* style: library page
* library page
* album page + album creation page
* Navigationbar
* style: minor
* update
* album bottom sheet
* album option page
* minor style fix
* remove unused fonts
* remove fonts in pubspec
2023-11-20 08:58:03 -06:00
shenlong
983473261b
refactor(mobile): riverpod codegen + riverpod lint ( #4836 )
...
* build(mobile): add riverpod_lint
* refactor(mobile): riverpod_generator for providers
* test(mobile): fix integration test helper
* refactor: ApiService to riverpod codegen
* refactor(mobile): return curatedcontent instead of people dto
* refactor: person provider to asyncnotifier
* mobile: update service providers to use lambda
* mobile: update scaffoldbody default error icon
* remove logger mixin
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-19 10:04:44 -06:00
shenlong
41d43acf5f
mobile: add initial DCM analysis_options ( #5136 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-18 23:17:08 -06:00
shenlong
fce8d48de6
fix(mobile): use proper context for popping out from share ( #5138 )
...
* fix(mobile): use proper context for popping out from share
* mobile: use proper context for popping
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-18 23:13:38 -06:00
Michael Manganiello
6d310d6297
fix(mobile): Mark more strings for translation ( #5132 )
...
* fix(mobile): Mark more strings for translation
Moving more strings to the `i18n` JSON file, and also including their
es-US translations.
* Add more translatable strings
2023-11-18 20:32:28 -06:00
Alex
cc15c5c69f
chore: post release tasks
2023-11-17 21:25:13 -06:00
Alex The Bot
ec51a9f6d6
Version v1.87.0
2023-11-18 02:58:26 +00:00
shenlong
4daf2478aa
feat(mobile): remove announcement overlay and show in app bar dialog ( #5104 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-17 15:46:18 -06:00
Fynn Petersen-Frey
63a745c7ad
fix(mobile): update local deleted assets in sync ( #5099 )
2023-11-17 15:35:57 -06:00
Jason Rasmussen
82f12b8ee6
chore(server): remove import file endpoint ( #5093 )
...
* chore(server): remove import file endpoint
* chore: open api
2023-11-17 05:44:59 +00:00
Jason Rasmussen
c7b3039a1a
chore(server): remove asset search endpoint ( #5094 )
...
* chore(server): remove unused search endpoint
* chore: open api
2023-11-16 22:24:31 -06:00
Fynn Petersen-Frey
343afea713
fix(mobile): rebuild of unified partner timeline ( #5065 )
2023-11-15 08:31:38 -06:00
Alex
54b9bfaeef
chore(mobile): translation update ( #5053 )
2023-11-14 20:27:01 -06:00
Michael Manganiello
c4f7cfc2a6
feat(mobile): Add es-US translations ( #4997 )
...
Adding es-US translations for all current strings in the application.
2023-11-14 20:23:58 -06:00
Jason Rasmussen
753dab8b3c
feat(server): asset search endpoint ( #4931 )
...
* feat(server): GET /assets endpoint
* chore: open api
* chore: use dumb name
* feat: search by make, model, lens, city, state, country
* chore: open api
* chore: pagination validation and tests
* chore: pr feedback
2023-11-14 22:47:15 +00:00
Fynn Petersen-Frey
5d8af5f94c
fix(mobile): partner assets in albums & share ( #5029 )
2023-11-14 14:32:38 -06:00
Fynn Petersen-Frey
5145c33ed4
feat(mobile): use app without storage permission ( #5014 )
...
* feat(mobile): use app without storage permission
* address review feedback
2023-11-14 14:30:27 -06:00
Alex
dc4e6c4629
chore: post release tasks
2023-11-13 22:19:24 -06:00
Alex The Bot
a7cacafe25
Version v1.86.0
2023-11-14 04:08:18 +00:00
martin
d25a245049
feat(web,server): user avatar color ( #4779 )
2023-11-14 03:10:35 +00:00
opdelta
14c7187539
feat(mobile): Added fr-CA translations ( #5023 )
...
Co-authored-by: Ziad Lteif <cj291059>
2023-11-13 20:20:54 -06:00
Alex
ac7e8bcdf4
fix(mobile): freeze at splash screen when updating from 1.85 to the new version ( #5012 )
...
* fix(mobile): Cannot return to logged in screen due to name changes
* fix(mobile): Cannot return to logged in screen due to name changes
* remove deadcode
* test deprecate
* Add deprecated decorator
* revert api change
2023-11-13 14:15:36 -06:00
Fynn Petersen-Frey
38983838fd
fix(mobile): better app state handling ( #4989 )
...
* fix(mobile): better app state handling
* watch -> read
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-13 19:51:16 +00:00
Fynn Petersen-Frey
464cf903f4
fix(mobile): better icon spacing in bottom bar ( #5010 )
...
* fix(mobile): better icon spacing in bottom bar
* wider buttons
2023-11-13 10:19:51 -06:00
Fynn Petersen-Frey
9fa9ad05b1
feat(mobile): unify partner assets on timeline ( #4974 )
...
* feat(mobile): unify partner assets on timeline
* skip non-owned assets in bulk actions
* add message when trying to delete partner assets
2023-11-13 09:54:41 -06:00
Alex
c3f8dc8c22
chore(mobile): translation update ( #5011 )
2023-11-13 09:24:00 -06:00
Fynn Petersen-Frey
069a32dcdb
fix(mobile): run user sync operation with lock ( #4984 )
2023-11-12 10:35:08 -06:00
Alex Tran
2e82476cff
chore: styling for partner stylesheet
2023-11-11 23:02:26 -06:00
Brian Austin
7fca0d8da5
fix: replace first and last name with single field ( #4915 )
2023-11-11 19:03:32 -06:00
Alex
35767591d2
feat(web): show partners assets on the main timeline ( #4933 )
2023-11-11 21:06:19 +00:00
aphymi
3b11854702
fix(mobile): fix JSON-format typos in Asset model ( #4942 )
2023-11-10 02:56:30 +00:00
martin
92ec1ce77f
fix(server,web): correctly show album level like ( #4916 )
...
* fix: like in global activity
* refactor: rename isGlobal to ReactionLevel.Album
* chore: open api
* chore: e2e test for album vs comment duplicate like checking
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-11-09 21:32:31 -05:00
shenlong
bffc2cdf60
refactor(mobile): build context extensions ( #4923 )
...
* refactor: move all extensions to separate package
* refactor(mobile): add BuildContext extension
* refactor(mobile): use theme getters from context
* refactor(mobile): use media query size from context
* refactor(mobile): use auto router methods from context
* refactor(mobile): use navigator methods from context
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-09 10:19:53 -06:00
Daniel Dietzler
a147dee4b6
feat: Maplibre ( #4294 )
...
* maplibre on web, custom styles from server
Actually use new vector tile server, custom style.json
support multiple style files, light/dark mode
cleanup, use new map everywhere
send file directly instead of loading first
better light/dark mode switching
remove leaflet
fix mapstyles dto, first draft of map settings
delete and add styles
fix delete default styles
fix tests
only allow one light and one dark style url
revert config core changes
fix server config store
fix tests
move axios fetches to repo
fix package-lock
fix tests
* open api
* add assets to docker container
* web: use mapSettings color for style
* style: add unique ids to map styles
* mobile: use style json for vector / raster
* do not use svelte-material-icons
* add click events to markers, simplify asset detail map
* improve map performance by using asset thumbnails for markers instead of original file
* Remove custom attribution
(by request)
* mobile: update map attribution
* style: map dark mode
* style: map light mode
* zoom level for state
* styling
* overflow gradient
* Limit maxZoom to 14
* mobile: listen for mapStyle changes in MapThumbnail
* mobile: update concurrency
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: bo0tzz <git@bo0tzz.me>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-11-09 10:10:56 -06:00
Jason Rasmussen
5423f1c25b
refactor(server): auth dtos ( #4881 )
...
* refactor: auth dtos
* chore: open api
2023-11-09 10:14:15 -05:00
shenlong
5c602bf4d4
fix(mobile): add label for expire after in shared link edit page ( #4920 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-09 08:36:57 -06:00
Michael Manganiello
52fe392a9e
fix(mobile): display simple album date when range is single day ( #4919 )
...
This change makes albums with same start and end date, to just display a
single date.
Currently, date range is displayed as `Nov 9 - Nov 9 2023`. With this
change, just `Nov 9 2023` is displayed. No changes are made for albums
where start and end dates do not match.
2023-11-09 03:16:56 +00:00
Alex
5e1c0fb465
chore: post release tasks
2023-11-08 12:51:34 -06:00
Alex The Bot
37ab37bffc
Version v1.85.0
2023-11-08 03:20:59 +00:00
shenlong
664b7106ca
feat(mobile): shared album activity disable handling ( #4890 )
...
* feat(mobile): shared album activity disable handling
* not show comment/like option on non-shared album, alternative text when activity is disabled
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-08 03:07:43 +00:00
shenlong
c2c26c471a
fix(mobile): do not show trashed assets in album viewer page ( #4894 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-07 13:19:45 -06:00
martin
9d01885b58
feat(server, web): Album's options ( #4870 )
...
* feat: disable activity
* fix: disable reactions
* fix: tests
* fix: tests
* fix: tests
* pr feedback
* pr feedback
* chore: styling & wording
* refactor component
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-07 04:37:21 +00:00
Fynn Petersen-Frey
21f2d3058a
feat(mobile)!: batched full/initial sync ( #4840 )
...
* feat(mobile): batched full/initial sync
* use OptionalBetween
* skip/take as integer
---------
Co-authored-by: Fynn Petersen-Frey <zoodyy@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-11-06 11:40:43 -06:00
shenlong
26fd9d7e5f
feat(mobile): shared album activities ( #4833 )
...
* fix(server): global activity like duplicate search
* mobile: user_circle_avatar - fallback to text icon if no profile pic available
* mobile: use favourite icon in search "your activity"
* feat(mobile): shared album activities
* mobile: align hearts with user profile icon
* styling
* replace bottom sheet with dismissible
* add auto focus to the input
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-11-06 09:46:26 -06:00
Jason Rasmussen
279481ad54
feat(server): make is favorite optional on asset upload ( #4865 )
...
* feat(server): make isFavorite optional
* chore: open api
* chore: e2e
2023-11-06 09:04:39 -05:00
Fynn Petersen-Frey
68000c21a8
fix(mobile): backup indicator wrong when only background backup is enabled ( #4842 )
...
Co-authored-by: Fynn Petersen-Frey <zoodyy@users.noreply.github.com>
2023-11-05 10:07:57 -06:00
doggo
de29480dda
fix(mobile): first stack list asset is now highlighted on view ( #4802 )
2023-11-03 20:43:43 -05:00
Jason Rasmussen
2e424fe249
feat(server): better api error messages (for unhandled exceptions) ( #4817 )
...
* feat(server): better error messages
* chore: open api
* chore: remove debug log
* fix: syntax error
* fix: e2e test
2023-11-03 20:33:15 -05:00
Wingy
d4ef6f52bb
chore(mobile): change version mismatch text ( #4831 )
...
* change version mismatch text
* change text
2023-11-03 20:20:42 -05:00
waclaw66
621eef0edc
feat(mobile): share assets from album ( #4821 )
...
* share from album
* fix case
* enhance conditional array items
2023-11-03 16:00:55 -05:00
waclaw66
33ce2b7bba
fix(mobile): shows asset datetime with original timezone ( #4774 )
2023-11-03 09:04:41 -05:00
shenlong
81792a5342
fix(mobile): immich app bar tap radius ( #4816 )
...
* mobile: tool-tip for server url in app bar dialog
* fix: Add Inkwell around the entire profile image
* mobile: open documentation and github in browser
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-03 09:04:06 -05:00
shenlong
5f43971ccf
mobile: allow upload if local asset in selection ( #4815 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-11-03 09:03:01 -05:00
Alex
309bf1ad22
chore: post release tasks
2023-11-01 14:43:10 -05:00
Jason Rasmussen
0130591a0f
fix: show/set activity like per user ( #4775 )
...
* fix: like per user
* chore: open api
* chore: e2e test for userId filtering
2023-11-01 11:49:12 -04:00
Alex The Bot
cf4ec06750
Version v1.84.0
2023-11-01 14:46:59 +00:00
martin
ce5966c23d
feat(web,server): activity ( #4682 )
...
* feat: activity
* regenerate api
* fix: make asset owner unable to delete comment
* fix: merge
* fix: tests
* feat: use textarea instead of input
* fix: do actions only if the album is shared
* fix: placeholder opacity
* fix(web): improve messages UI
* fix(web): improve input message UI
* pr feedback
* fix: tests
* pr feedback
* pr feedback
* pr feedback
* fix permissions
* regenerate api
* pr feedback
* pr feedback
* multiple improvements on web
* fix: ui colors
* WIP
* chore: open api
* pr feedback
* fix: add comment
* chore: clean up
* pr feedback
* refactor: endpoints
* chore: open api
* fix: filter by type
* fix: e2e
* feat: e2e remove own comment
* fix: web tests
* remove console.log
* chore: cleanup
* fix: ui tweaks
* pr feedback
* fix web test
* fix: unit tests
* chore: remove unused code
* revert useless changes
* fix: grouping messages
* fix: remove nullable on updatedAt
* fix: text overflow
* styling
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-10-31 22:13:34 -05:00
Daniel Dietzler
cd375a976e
feat(server): custom library scanning interval ( #4390 )
...
* add automatic library scan config options
* add validation
* open api
* use CronJob instead of cron-validator
* fix tests
* catch potential error of the library scan initialization
* better description for input field
* move library scan job initialization to server app service
* fix tests
* add comments to all parameters of cronjob contructor
* make scan a child of a more general library object
* open api
* chore: cleanup
* move cronjob handling to job repoistory
* web: select for common cron expressions
* fix open api
* fix tests
* put scanning settings in nested accordion
* fix system config validation
* refactor, tests
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-10-31 15:19:12 -05:00
shenlong
2377df9dae
fix(mobile): store exposure time as string ( #4589 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-31 05:33:45 -05:00
waclaw66
ad5ba82f50
fix(mobile): don't show lens info if it's not available ( #4737 )
2023-10-31 05:33:08 -05:00
Jason Rasmussen
8dcd159bd6
chore(server): remove user count endpoint ( #4724 )
...
* chore: remove unused endpoint
* chore: open api
2023-10-30 19:29:18 +00:00
shenlong
9f56bf0ab9
refactor(mobile): app bar ( #4687 )
...
* refactor(mobile): add app bar to library and sharing
* mobile: add app bar dialog
* fix(mobile): refetch profile image only when path is changed
* mobile: add server url to dialog
* mobile: move trash to library app bar
* replace discord link with github
* user confirmation before sign out
* edit some styles
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-10-30 12:17:34 -05:00
Fynn Petersen-Frey
ce04e9e07a
feat(server): hardware video acceleration for Rockchip SOCs via RKMPP ( #4645 )
...
* feat(server): hardware video acceleration for Rockchip SOCs via RKMPP
* add tests
* use LD_LIBRARY_PATH for custom ffmpeg
* incorporate review feedback
* code re-use for ffmpeg call
* review feedback
2023-10-30 09:39:37 -05:00
Mayuresh Dharwadkar
c77ba46d60
docs: fix typos ( #4713 )
2023-10-30 09:17:10 -05:00
shenlong
512f672e9e
fix(mobile): cache key for assets from dto ( #4699 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-29 15:28:54 -05:00
shenlong
b117985f66
fix(mobile): first char miss in new description ( #4697 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-29 14:16:25 -05:00
jarvis2f
8a6889529c
feat(server,web,mobile): Add optional password option for share links. ( #4655 )
...
* feat(server,web,mobile): Add optional password option for share links.
Signed-off-by: jarvis2f <137974272+jarvis2f@users.noreply.github.com>
* feat(server,web): Update shared-link.controller and page.svelte for improved cookie handling and metadata updates.
Signed-off-by: jarvis2f <137974272+jarvis2f@users.noreply.github.com>
---------
Signed-off-by: jarvis2f <137974272+jarvis2f@users.noreply.github.com>
2023-10-28 20:35:38 -05:00
shenlong
2a2c74e081
fix(mobile): handle shared assets in viewer ( #4679 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-28 14:48:30 -05:00
Alex The Bot
d98a2a5f79
Version v1.83.0
2023-10-28 13:32:48 +00:00
shenlong
a42c95a781
mobile: show stack indicator for videos ( #4671 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-27 20:09:17 -05:00
Alex
8b5b6d0821
feat(web): manual stacking asset ( #4650 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-27 20:34:01 +00:00
Wingy
a08a687951
refactor(server, web): standardize theme api response ( #4664 )
...
* web: standardize theme api response
* revert makefile change that i didn't mean to commit
2023-10-27 02:32:33 +00:00
shenlong
b49b10141e
fix(mobile): stack count reset when navigating to library ( #4647 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-26 09:19:06 -05:00
Wingy
cb0e37e76e
fix(web): fix Theme Custom CSS endpoint requiring the user to be logged in as the server admin ( #4633 )
...
* fix custom css requiring the user to be the admin and logged in
* move theme api to custom endpoint
* add e2e test
2023-10-25 22:13:05 +00:00
Alex
237d1c1bf4
fix(mobile): incorrect date range ( #4644 )
...
* fix(mobile): incorrect date range
* remove comment
* pr feedback
2023-10-25 16:56:31 -05:00
shenlong
52e09b4857
fix(mobile): asset deletion state management ( #4568 )
2023-10-25 11:02:59 -05:00
Alex
aefd052888
feat(mobile): clear local storage option ( #4635 )
...
* feat(mobile): clear local storage option
* en json
2023-10-25 09:53:16 -05:00
Alex
e47a11b8ba
chore(mobile): translation update ( #4641 )
2023-10-25 09:34:34 -05:00
Jason Rasmussen
3021eca8e5
chore(server): remove unused method ( #4627 )
...
* chore(server): remove unused method
* chore: open api
2023-10-24 12:59:06 -04:00
martin
3e3598fd92
fix: suggest people ( #4566 )
...
* fix: suggest people
* feat: remove hidden people
* add hidden people when merging faces
* pr feedback
* fix: don't use reactive statement
* fixed section height
* improve merging
* fix: migration
* fix migration
* feat: add asset count
* fix: test
* rename endpoint
* add server test
* improve responsive design
* fix: remove videos from live photos in the asset count
* pr feedback
* fix: rename asset count endpoint
* fix: return firstname and lastname
* fix: reset people only on error
* fix: search
* fix: responsive design & div flickering
* fix: cleanup
* chore: open api
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-10-24 15:53:49 +00:00
martin
1aae29a0b8
refactor(server, web)!: store latest immich version available on the server ( #3565 )
...
* refactor: store latest immich version available on the server
* don't store admins acknowledgement
* merge main
* fix: api
* feat: custom interval
* pr feedback
* remove unused code
* update environment-variables
* pr feedback
* ci: fix server tests
* fix: dart number
* pr feedback
* remove proxy
* pr feedback
* feat: make stringToVersion more flexible
* feat(web): disable check
* feat: working version
* remove env
* fix: check if interval exists when updating the interval
* feat: show last check
* fix: tests
* fix: remove availableVersion when updated
* fix merge
* fix: web
* fix e2e tests
* merge main
* merge main
* pr feedback
* pr feedback
* fix: tests
* pr feedback
* pr feedback
* pr feedback
* pr feedback
* pr feedback
* fix: migration
* regenerate api
* fix: typo
* fix: compare versions
* pr feedback
* fix
* pr feedback
* fix: checkIntervalTime on startup
* refactor: websockets and interval logic
* chore: open api
* chore: remove unused code
* fix: use interval instead of cron
* mobile: handle WS event data as json object
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-24 11:05:42 -04:00
Wingy
62a11283af
feat(web): custom stylesheets ( #4602 )
...
* add initial ui and api definitions for stylesheets
* proper saving
* make custom css work
* add textarea
* rebuild api
* run prettier
* add typecast
* update typings
* move css accordion to be sorted alphabetically
* set content-type properly
* rename stylesheets to theme
* fix server test
2023-10-23 18:38:41 +00:00
shenlong
28d35bf04e
fix(mobile): unique hero tag for assets from api response ( #4600 )
...
* fix(mobile): render error on switching asset while video playing
* fix(mobile): generate proper hero tags for assets from DTOs
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-23 13:28:12 -05:00
shenlong
b05132a01a
refactor(mobile): server info to use data classes instead of dtos ( #4591 )
...
* refactor: server info model to use data classes instead of dtos
* mobile: add return types and refactor private variables in map / stack
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-22 15:15:34 -05:00
shenlong
9b418642a6
refactor(mobile): stack only through merging from timeline ( #4598 )
...
* mobile: remove stack selection page
* mobile: require at-least 2 assets to stack
* mobile: sort stack children by fileCreatedAt
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-22 15:07:27 -05:00
shenlong
8dcc01b2be
feat(mobile): shared-links ( #4490 )
...
* add shared links page
* feat(mobile): shared link items
* feat(mobile): create / edit shared links page
* server: add changeExpiryTime to SharedLinkEditDto
* fix(mobile): edit expiry to never
* mobile: add icon when shares list is empty
* mobile: create new share from album / timeline
* mobile: add translation texts
* mobile: minor ui fixes
* fix: handle serverURL with /api path
* mobile: show share link on successful creation
* mobile: shared links list - 2 column layout
* mobile: use sharedlink pod class instead of dto
* mobile: show error on link creation
* mobile: show share icon only when remote assets are in selection
* mobile: use server endpoint instead of server url
* styling
* styling
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-10-22 15:05:10 +00:00
shenlong
cf08ac7538
feat: manual stack assets ( #4198 )
2023-10-21 21:38:07 -05:00
shenlong
22172a680b
fix(mobile): validate response code from download file ( #4543 )
...
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2023-10-19 15:19:00 -05:00
Alex The Bot
31987bc043
Version v1.82.1
2023-10-18 17:14:26 +00:00
Alex The Bot
219f99e516
Version v1.82.0
2023-10-17 01:24:08 +00:00
shenlong
a78e08bac1
fix(mobile): handle asset trash, restore and delete ws events ( #4482 )
...
* server: add ASSET_RESTORE ws event
* mobile: handle ASSET_TRASH, ASSET_RESTORE and ASSET_DELETE ws events
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-10-16 13:01:38 -05:00
shenlong
634169235a
fix(mobile): reset trashed state for local assets on remote asset deletion ( #4501 )
2023-10-16 12:26:35 -05:00
shenlong
45ffa65173
feat(web): show trash days info in trash page ( #4484 )
2023-10-16 11:04:22 -05:00
Jason Rasmussen
d2807b8d6a
feat(web,server): offline/untracked files admin tool ( #4447 )
...
* feat: admin repair orphans tool
* chore: open api
* fix: include upload folder
* fix: bugs
* feat: empty placeholder
* fix: checks
* feat: move buttons to top of page
* feat: styling and clipboard
* styling
* better clicking hitbox
* fix: show title on hover
* feat: download report
* restrict file access to immich related files
* Add description
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2023-10-14 19:12:59 +02:00
Jonathan Jogenfors
dadcf49eca
fix(server,web): correctly remove metadata from shared links ( #4464 )
...
* wip: strip metadata
* fix: authenticate time buckets
* hide detail panel
* fix tests
* fix lint
* add e2e tests
* chore: open api
* fix web compilation error
* feat: test with asset with gps position
* fix: only import fs.promises.cp
* fix: cleanup mapasset
* fix: format
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-10-14 01:46:30 +00:00
Alex
7e9fc4aa97
fix(mobile): remove debug description text
2023-10-12 13:23:41 -05:00
Alexander Groß
e57c926676
feat(mobile): offer the same album sorting options on mobile as on web ( #3804 )
...
* Add translations for new album sort options
* Support additional album sort options like on web
* Update generated code
* Fix lint
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-10-12 13:18:54 -05:00
Alex
9af5e7838f
fix(mobile): description not render on first opening ( #4451 )
2023-10-12 10:30:56 -05:00
shenlong
5dacea6f74
fix(mobile): asset state change not updated in gallery app bar ( #4441 )
2023-10-11 21:10:59 -05:00
shenlong
18fcca2884
style(mobile): update video indicator ( #4443 )
2023-10-11 14:03:04 -05:00
Jonathan Jogenfors
41befc0948
fix(server): don't publicly reveal user count ( #4409 )
...
* fix: don't reveal user count publicly
* fix: mobile and user controller
* fix: update other frontend endpoints
* fix: revert openapi change
* chore: open api
* fix: initialize
* openapi
---------
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-10-11 02:37:13 +00:00
martin
b8d6cc1e09
feat(server,web): improve performances in person page (1) ( #4387 )
...
* feat: improve performances in people page
* feat: add loadingspinner when searching
* fix: reset people on error
* fix: case insensitive
* feat: better sql query
* fix: reset people list before api request
* fix: format
2023-10-10 09:34:25 -05:00
Alex
29981b1088
chore(mobile): pump photo_manager version ( #4412 )
2023-10-10 08:20:52 -05:00
shenlong
c48d4f01dc
Fix/mobile remove upload soft limit ( #4380 )
...
* fix(mobile): remove soft limit for manual upload
* chore(mobile): remove translation text
2023-10-07 05:17:50 -05:00
shenlong
4a8887f37b
feat(server): trash asset ( #4015 )
...
* refactor(server): delete assets endpoint
* fix: formatting
* chore: cleanup
* chore: open api
* chore(mobile): replace DeleteAssetDTO with BulkIdsDTOs
* feat: trash an asset
* chore(server): formatting
* chore: open api
* chore: wording
* chore: open-api
* feat(server): add withDeleted to getAssets queries
* WIP: mobile-recycle-bin
* feat(server): recycle-bin to system config
* feat(web): use recycle-bin system config
* chore(server): domain assetcore removed
* chore(server): rename recycle-bin to trash
* chore(web): rename recycle-bin to trash
* chore(server): always send soft deleted assets for getAllByUserId
* chore(web): formatting
* feat(server): permanent delete assets older than trashed period
* feat(web): trash empty placeholder image
* feat(server): empty trash
* feat(web): empty trash
* WIP: mobile-recycle-bin
* refactor(server): empty / restore trash to separate endpoint
* test(server): handle failures
* test(server): fix e2e server-info test
* test(server): deletion test refactor
* feat(mobile): use map settings from server-config to enable / disable map
* feat(mobile): trash asset
* fix(server): operations on assets in trash
* feat(web): show trash statistics
* fix(web): handle trash enabled
* fix(mobile): restore updates from trash
* fix(server): ignore trashed assets for person
* fix(server): add / remove search index when trashed / restored
* chore(web): format
* fix(server): asset service test
* fix(server): include trashed assts for duplicates from uploads
* feat(mobile): no dialog for trash, always dialog for permanent delete
* refactor(mobile): use isar where instead of dart filter
* refactor(mobile): asset provide - handle deletes in single db txn
* chore(mobile): review changes
* feat(web): confirmation before empty trash
* server: review changes
* fix(server): handle library changes
* fix: filter external assets from getting trashed / deleted
* fix(server): empty-bin
* feat: broadcast config update events through ws
* change order of trash button on mobile
* styling
* fix(mobile): do not show trashed toast for local only assets
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
2023-10-06 02:01:14 -05:00
Jason Rasmussen
192e950567
fix: use local time for time buckets and improve memories ( #4072 )
...
* fix: timezone bucket timezones
* chore: open api
* fix: interpret local time in utc
* fix: tests
* fix: refactor memory lane
* fix(web): use local date in memory viewer
* chore: set localDateTime non-null
* fix: filter out memories from the current year
* wip: move localDateTime to asset
* fix: correct sorting from db
* fix: migration
* fix: web typo
* fix: formatting
* fix: e2e
* chore: localDateTime is non-null
* chore: more non-nulliness
* fix: asset stub
* fix: tests
* fix: use extract and index for day of year
* fix: don't show memories before today
* fix: cleanup
* fix: tests
* fix: only use localtime for tz
* fix: display memories in client timezone
* fix: tests
* fix: svelte tests
* fix: bugs
* chore: open api
---------
Co-authored-by: Jonathan Jogenfors <jonathan@jogenfors.se>
2023-10-04 22:11:11 +00:00
Alex The Bot
126dd45751
Version v1.81.1
2023-10-04 17:53:42 +00:00
Daniel Dietzler
e571880c16
feat(web, mobile): Options to show archived assets in map ( #4293 )
...
* Add include archive setting to map on web
* open api
* better naming for web isArchived variable
* add withArchived setting to mobile
* (e2e): tests for mapMarker endpoint and isArchived
* isArchived to mobile
* chore: cleanup test
* chore: optimize e2e
---------
Co-authored-by: shalong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-10-04 09:51:07 -04:00
Alex The Bot
81d51fbd7e
Version v1.81.0
2023-10-03 20:48:23 +00:00
Alex The Bot
66e860a08e
Version v1.80.0
2023-10-02 14:47:21 +00:00
shenlong
d7e970dcea
fix(mobile): reduce server version api calls ( #4265 )
2023-09-29 21:51:54 +07:00
Daniel Dietzler
521436dd21
feat(server): Add week numbers for templating ( #4263 )
...
* add week numbers as template option
* generate api
* fix tests
* change example date to show week padding
* change example date to immich birthday
2023-09-28 13:47:31 -04:00
Fynn Petersen-Frey
098ab9eae5
fix(mobile): speed up RenderList creation for timeline ( #4103 )
...
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-09-28 10:43:55 +07:00
shenlong
a937efe719
feat(mobile): use map settings from server-config ( #4045 )
...
* feat(mobile): use map settings from server-config to enable / disable map
* refactor(mobile): remove async await for server info update
2023-09-28 10:26:48 +07:00
Daniel Dietzler
9bada51d56
feat(server, web)!: Move reverse geocoding settings to the UI ( #4222 )
...
* feat: reverse geocoding settings
* chore: open api
* re-init geocoder if precision has been updated
* update docs
* chore: update verbiage
* fix: re-init logic
* fix: reset to default
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-09-26 14:03:57 +07:00
Daniel Dietzler
3053cbd4c8
chore(server): Store generated files (thumbnails, encoded video) in subdirectories ( #4112 )
...
* save thumbnails in subdirectories
* migration job, migrate assets and face thumbnails
* fix tests
* directory depth of two instead of three
* cleanup empty dirs after migration
* clean up empty dirs after migration, migrate people without assetId
* add job card for new migration job
* fix removeEmptyDirs race condition because of missing await
* cleanup empty directories after asset deletion
* move ensurePath to storage core
* rename jobs
* remove unnecessary property of IEntityJob
* use updated person getById, minor refactoring
* ensure that directory cleanup doesn't interfere with migration
* better description for job in ui
* fix remove directories when migration is done
* cleanup empty folders at start of migration
* fix: actually persist concurrency setting
* add comment explaining regex
* chore: cleanup
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2023-09-25 11:07:21 -04:00
fujie
c0ce81ca0e
fix(mobile): assetList is empty ( #4213 )
...
* fix(mobile): assetList is empty
* add comments
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-09-25 08:09:09 +00:00
Daniele Ricci
014d164d99
feat(server): random assets API ( #4184 )
...
* feat(server): get random assets API
* Fix tests
* Use correct validation annotation
* Fix offset use in query
* Update API specs
* Fix typo
* Random assets e2e tests
* Improve e2e tests
2023-09-23 22:28:55 +07:00
Alex The Bot
e050121dbf
Version v1.79.1
2023-09-22 01:37:20 +00:00
Alex The Bot
86f5ceb80e
Version v1.79.0
2023-09-21 14:17:00 +00:00
Jonathan Jogenfors
acdc66413c
feat(server,web): libraries ( #3124 )
...
* feat: libraries
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-09-20 13:16:33 +02:00
Alex
2e0c7abd65
fix(mobile): fix background upload regression on Android ( #4139 )
2023-09-19 16:39:54 +07:00
GenericGuy
94cbbf3c4b
feat(web): add setting for minimum face count for face detection ( #4128 )
...
* feat: add setting for minimum face count for face detection
Adds the minimum face count setting to the web interface to
circumvent detection of strangers and random background people
if desired.
* fix: codestyle, remove max for face count
2023-09-18 11:05:35 +07:00
Fynn Petersen-Frey
1c02e1dadf
feat(mobile): image caching & viewer improvements ( #4095 )
2023-09-18 10:57:05 +07:00
Mert
0a9b632e48
fix(server): use libopus for transcoding ( #4102 )
...
* updated audio codec enum
* added migration
* updated api
* fixed enum
* formatting
* simplified migration
2023-09-16 00:52:45 +00:00
Alex
9cec6aaf46
chore: post release tasks
2023-09-14 22:16:15 +07:00
Alex The Bot
a3206bf950
Version v1.78.1
2023-09-14 13:56:33 +00:00
Azsde
8a421eb778
fix (mobile): Fix slow album thumbnail generation for album picker ( #3905 )
...
* [BUGFIX] Fix slow album thumbnail generation
When generating the thumbnail of an album, all of the pictures of the
album are retrieved but only the first picture of the album is used.
Retrieving all of the pictures of the album at once can cause huge performance
issues on large albums.
Since only the first picture is used to generate the thumbnail, this commit
uses the getAssetListPaged method instead of getAssetListRange, effectively
retrieving only the first picture of the album.
* [DEVMINOR] Remove unecessary check
As we already check for the number of assets in the album, when
fetching assets using `album.getAssetListPaged` the returned result
won't be empty.
---------
Co-authored-by: Azsde <aelkaim@pixium-vision.com>
2023-09-13 22:32:06 +07:00
Alex
b1d31a4567
chore: post release
2023-09-13 17:27:31 +07:00
Alex The Bot
b42ca61e1f
Version v1.78.0
2023-09-13 08:24:02 +00:00
Alex
197baf3473
chore(mobile): update translation
2023-09-13 11:40:59 +07:00
Alex
bbbdd463fd
chore(mobile): translation update ( #4077 )
2023-09-13 10:55:20 +07:00
shenlong
73ad0d468f
feat(mobile): upload image assets before videos ( #3958 )
...
* feat(mobile): upload image assets before videos (#3872 )
* feat(mobile): upload image assets before videos
* mobile: sort by creation date before uploading assets
* feat(mobile): upload newest assets first for foreground upload
* feat(mobile): upload images before videos only for background backup
2023-09-13 10:50:16 +07:00
Dhrumil Shah
fb20381f98
feat(mobile): allow self-signed certificate on the mobile app ( #4051 )
...
* WIP: self-signed certs accept
* WIP: format
* WIP: pushing up adding settings menu
* Add serverEndpointURL check
* Add translation update
* Handle errors properly
* format
* typo
* cleanup
* styling and permission
* remove deadcode
* put pack condition
* styling
* remove hiding settings options
* format + match drop shadow
* match color
* remove deadcode
---------
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-09-12 21:51:43 +07:00
Fynn Petersen-Frey
bd226e9e2c
fix(mobile): images rendered twice due to rebuild ( #4060 )
...
* fix(mobile): images rendered twice due to rebuild
* fix bottom sheet triggered multiple times
2023-09-12 20:43:15 +07:00
Alex
47ea47ce14
fix(mobile): Fix background backup on iOS ( #4038 )
2023-09-11 17:31:15 +07:00
Fynn Petersen-Frey
5d1011b482
feat(mobile): efficient asset sync ( #3945 )
...
* feat(mobile): efficient asset sync
2023-09-10 14:51:18 +02:00
Jason Rasmussen
f1db257628
feat(server,web): server config ( #4006 )
...
* feat: server config
* chore: open api
* fix: redirect /map to /photos when disabled
2023-09-08 22:51:46 -04:00
Dhrumil Shah
fb477627c7
fix(mobile): Clean up image details if there is missing info ( #4018 )
...
* fix 0,0 location
* image details cleanup
* Static anal fix
2023-09-08 12:55:55 +07:00
Dhrumil Shah
e1eae00b35
Truncate Log lines ( #4003 )
2023-09-07 03:53:11 +07:00
Alex The Bot
608543da0b
Version v1.77.0
2023-09-06 03:30:44 +00:00
Maarten Rijke
b4fa60d4fd
feat(web): show original uploader in shared album photo details ( #3977 )
...
* feat(web): show original uploader in shared album photo details
* feat: send owner in asset by id response
* chore: open api
* fix: linting
* fix: change to Shared By
* openapi
* openapi
* api
* styling
---------
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2023-09-06 10:14:44 +07:00
Jason Rasmussen
454737ca79
refactor(server): update asset endpoint ( #3973 )
...
* refactor(server): update asset
* chore: open api
2023-09-04 22:25:31 -04:00
Dhrumil Shah
54775b896f
fix(mobile): change password page not navigating back ( #3967 )
2023-09-05 06:36:16 +07:00
shenlong
90f9501902
fix(mobile): curated places taking more size on large screens ( #3959 )
2023-09-05 06:10:27 +07:00
shenlong
f8d26bd865
fix(mobile): map markers not loading with int coordinates ( #3957 )
...
* fix(mobile): increase zoom-level for map zoom to asset
* refactor(mobile): map-view - rename lastAssetOffsetInSheet
* Workaround OpenAPI Dart generator bug
* fix(mobile): map - increase appbar top padding
* fix(mobile): navigation bar overlapping map bottom sheet
* fix(mobile): map - do not animate the drag handle of bottom sheet on scroll
* fix(mobile): F-Droid build failure due to map view
* fix(mobile): remove jank on map asset marker update
* fix(mobile): map view app-bar padding is made dynamic
* fix(mobile): reduce debounce time in bottom sheet asset scroll
* fix(mobile): bottom sheet - reduce drag handle total height
---------
Co-authored-by: Daniele Ricci <daniele@casaricci.it>
2023-09-05 06:08:43 +07:00
Mert
2069293cc1
feat(server): wide gamut thumbnails ( #3658 )
2023-09-03 02:21:51 -04:00
Mert
f8ff342852
feat(server): advanced settings for transcoding ( #3775 )
...
* set stream with `-map` flag
* updated tests
* fixed audio stream mapping
* added bframe setting to config
* updated api
* added b-frame option in dashboard
* updated tests and formatting
* "Advanced" section for FFmpeg with extra options
* updated api
* updated tests and formatting
* styling
* made vp9 bitstream filters conditional on b-frames
* fixed gop size condition
* add cq override
* simplified isEdited conditions
* simplified conditional flow for cq mode
* fixed dto
* clarified cq mode in description
* formatting
* added npl setting
* Adjusted b-frame title and description
* fixed rebase
* changed defaults for pascal compatibility, added temporal aq setting
* updated api
* added temporal aq to ui
* polished dashboard
* formatting
2023-09-03 08:22:42 +07:00