* Fix opus handling as accepted audio codec in transcode policy
Fix the issue when opus is among accepted audio codecs in transcode policy
(which is default) but it still triggers transcoding because the codec name
from ffprobe (opus) does not match `libopus` literal in Immich.
Make a distinction between a codec name and encoder:
- codec name: switch to `opus` as the audio codec name. This matches what ffprobe
returns for a media file with opus audio.
- encoder: continue using the `libopus` encoder in ffmpeg.
* Add unit tests for accepted audio codecs and for libopus encoder
* Add db migration for ffmpeg.targetAudioCodec opus
* backward compatibility
* tweak
* noisy logs
* full mapping
* make check happy
* mark deprecated
* update api
* indexOf
---------
Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
Add `name` to all vitest configs matching CI job buckets (server:unit,
server:medium, cli:unit, web:unit, e2e:server, e2e:maintenance) so they
appear as filterable @tags in the Vitest VSCode extension.
Fix `root` in server vitest configs to use an absolute path derived from
`import.meta.url` instead of `'./'`, which resolved relative to the config
file directory (`server/test/`) rather than `server/`, causing test
discovery to fail in the Vitest VSCode extension.
* feat: SyncAssetV2
* feat: mobile sync handling
* feat: request correct sync object based on server version
* fix: mobile queries
* chore: sync sql
* fix: test
* chore: switch to mapper
* fix: sql sync
* fix: download the edited version when downloading multiple photos
* test: update tests
* chore: clean up
---------
Co-authored-by: Jason Rasmussen <jason@rasm.me>
* fix(server): use provided database name/username for restore & ensure name is not mangled
fixes#25633
Signed-off-by: izzy <me@insrt.uk>
* chore: add db switch back but with comments
Signed-off-by: izzy <me@insrt.uk>
* refactor: no need to restore database since it's not technically possible
chore: late fallback for username in parameter builder
Signed-off-by: izzy <me@insrt.uk>
* chore: type fix
Signed-off-by: izzy <me@insrt.uk>
* refactor: move db backup code into service
* test: check SQL sent to psql
* chore: remove todo
Signed-off-by: izzy <me@insrt.uk>
---------
Signed-off-by: izzy <me@insrt.uk>
* Fixed an issue where time tests fail in some timezones
* Revert previous fix and add TZ env variable to fix the issue
* Revert other changes and align TZ fix between server and web
* Revert package lock file
---------
Co-authored-by: Dion de Koning <dion@DionK01.local>