-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add minimal devcontainer setup #14038
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you! Very cool <3
@@ -1,5 +1,6 @@ | |||
# PR Checklist | |||
|
|||
A minimal devcontainer is supplied with this repository. All commands can be executed directly inside this container to avoid tedious installation of the environment. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since you mention that you can't run the Compose stack in this dev container, it'd be good to clarify that in the docs here as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
.devcontainer/devcontainer.json
Outdated
"forwardPorts": [], | ||
"postCreateCommand": "make install-all", | ||
"remoteUser": "node" | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add a new line to the end of the file :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool stuff! Just to clarify on "What is still missing", are those things you're planning to add in this PR as well? Have you already tried running the stack in the devcontainer/how confident are you that that will work?
"args": { | ||
"BASEIMAGE": "mcr.microsoft.com/devcontainers/typescript-node:22" | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this defined as an arg, and in two separate places?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, I have no intention of adding anything else to this PR.
It is just an "initial" version of a working devcontainer that makes it easy to contribute to some components of immich (web, doc...) without having to setup a development environment. I'll let other people contribute !
Regarding BASEIMAGE
, it was inspired by other open source projects => most likely it is easier to update the base image from the json file (rather than editing Dockerfile).
Also, for now, the Dockerfile is empty (just the base image), but it will allow to easily add software & tools later.
"extensions": [ | ||
"svelte.svelte-vscode" | ||
] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think there's some more extensions worth adding, see https://immich.app/docs/developer/setup#vscode
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's beyond my field of expertise. As I stated above, the purpose of my PR was to share my setup to ease contributions regarding web server (and doc).
I pretty sure that vscode/settings.json
is still in use inside the dev container. Regarding missing extensions (maybe you are referring to flutter, ...), I've never used them so I won't be able to test anything.
If the change is easy, feel free to add a suggestion, otherwise, maybe open another PR ?
* add minimal devcontainer setup * fix Makefile & update doc * fix Makefile * add warning regarding devcontainer + add newline at EOF
* feat: track when assets are added to an album (immich-app#13725) * refactor(server): telemetry env variables (immich-app#13705) refactor(server)!: telemetry env variables Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com> * refactor(server): database config (immich-app#13730) * refactor(server): user create logic (immich-app#13728) * fix: duplicated library scan jobs and api server library watch (immich-app#13734) * chore(deps): update base-image to v20241025 (major) (immich-app#13736) chore(deps): update base-image to v20241025 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix: X years ago ordering (immich-app#13742) * fix: order by fileCreatedAt to account for tz * run make sql * chore(ml): remove setuptools from dependencies (immich-app#13762) * feat: github actions workflow to fix formatting (immich-app#13768) * fix: Add DB_DATA_LOCATION config. (immich-app#13754) Add DB_DATA_LOCATION config. Posted [on reddit](https://www.reddit.com/r/unRAID/comments/1f8wq45/immich_install_via_docker_compose_database_cannot/). * chore: version v1.119.0 * chore(mobile): post release task (immich-app#13779) * feat(web): add job action to search page result (immich-app#13784) * chore(deps): update dependency @types/node to ^20.17.0 (immich-app#13787) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update stumpylog/image-cleaner-action action to v0.9.0 (immich-app#13788) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * docs: note about Nginx reverse proxy compatibility with Let's Encrypt (immich-app#13764) * Nginx reverse proxy compatibility with Let's Encrypt * Update reverse-proxy.md * Update reverse-proxy.md Co-authored-by: bo0tzz <git@bo0tzz.me> * Priority of = is higher * Update reverse-proxy.md --------- Co-authored-by: bo0tzz <git@bo0tzz.me> * docs: Add info about album sync&folder view (immich-app#12371) * Album Sync * npm run format:fix * fix path * info about folder view * Sync albums * npm run format:fix * Add information about limitations of a property that appears in multiple albums * npm run format:fix * - to -> * Update docs/docs/features/mobile-app.mdx Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com> * Update docs/docs/features/mobile-app.mdx Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com> --------- Co-authored-by: Alex <alex.tran1502@gmail.com> Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com> * chore: version v1.119.1 * fix(server): handle N/A duration response from ffprobe (immich-app#13803) * chore(web): update translations (immich-app#13688) Translate-URL: https://hosted.weblate.org/projects/immich/immich/ca/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/de/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/en_devel/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/es/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/et/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/fi/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/hr/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/id/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/it/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ko/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/lv/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ms/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ro/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/ru/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sk/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sr_Cyrl/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sr_Latn/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/sv/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/th/ Translate-URL: https://hosted.weblate.org/projects/immich/immich/uk/ Translation: Immich/immich Co-authored-by: Amirul Asri <amirulasrix@gmail.com> Co-authored-by: Dean Cvjetanović <forteee@gmail.com> Co-authored-by: Diego Saint Esteben <diego@saintesteben.me> Co-authored-by: Florian Ostertag <florian.kuepper@gmail.com> Co-authored-by: Hexie <hexterjexter@gmail.com> Co-authored-by: Indrek Haav <IndrekHaav@users.noreply.hosted.weblate.org> Co-authored-by: Jiri Grönroos <jiri.gronroos@iki.fi> Co-authored-by: Junghyuk Kwon <kwon@junghy.uk> Co-authored-by: Lab Forensic <recoverylabkor@gmail.com> Co-authored-by: Leo Bottaro <github@leobottaro.com> Co-authored-by: LeonardoCasarotto <leonardo.casar8@gmail.com> Co-authored-by: Linerly <linerly@proton.me> Co-authored-by: Max <mail@heavygale.de> Co-authored-by: Michal Micech <michal.micech@gmail.com> Co-authored-by: Miki Mrvos <medolino2009@gmail.com> Co-authored-by: Mārtiņš Bruņenieks <martinsb@gmail.com> Co-authored-by: Napat Srichan <napatsrichan2001@gmail.com> Co-authored-by: Roger Veciana Rovira <rveciana@gmail.com> Co-authored-by: gallegonovato <fran-carro@hotmail.es> Co-authored-by: qtm <qtm@users.noreply.hosted.weblate.org> Co-authored-by: tux2000 <tux2k@web.de> Co-authored-by: Вячеслав Лукьяненко <madeinchuguev@gmail.com> * feat: mount checks on a folder level (immich-app#13801) * fix: shutdown api process when another worker exits unexpectedly (immich-app#13802) * refactor: better postgres connection param typing (immich-app#13800) * fix(mobile): Revert thumbnail image ui improvements (immich-app#13655) (immich-app#13806) Revert "chore(mobile): thumbnail image ui improvements (immich-app#13655)" This reverts commit 16f2364. * refactor(server): worker cleanup (immich-app#13805) * feat(web): library settings crontab link includes existing expression (immich-app#13807) * fix(server): keep system config transformations (immich-app#13796) * chore(docs): add feature to readme (immich-app#13794) * fix(mobile): thumbnail not filled area on tablet (immich-app#13808) * feat(web): disable opening image and library sub-items by default (immich-app#13729) Disable opening image and library sub-items by default Disable both the Image Settings and the External Library sub-items by default. This aligns with auth other settings sub-items showing as collapsed by default. * chore(server): telemetry env clean up (immich-app#13813) * refactor(server): cls (immich-app#13814) * refactor(server): env validation (immich-app#13817) * chore(deps): update grafana/grafana docker tag to v11.3.0 (immich-app#13763) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update terraform cloudflare to v4.45.0 (immich-app#13820) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update base-image to v20241029 (major) (immich-app#13821) chore(deps): update base-image to v20241029 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * feat(web): scrubber label and animation (immich-app#13815) * feat(web): scrubber label and animation * tune x fly in distance * refactor * lint and minor fix * fly height * chore(docs): update german readme to latest version (immich-app#13824) * chore(docs): update german readme to latest version * formatting * chore(deps): update node to v22 (major) (immich-app#13792) * chore(deps): update node to v22 * fix: deprecated constructor --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Daniel Dietzler <mail@ddietzler.dev> * fix(deps): update machine-learning (immich-app#13786) * refactor(server): remove unused on method (immich-app#13830) * chore(deps): update typescript-projects (immich-app#13789) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(mobile): search page (immich-app#13833) * fix(mobile): search page minor problems * fix: flashing between search * restore search size * remove print statement * linting * fix(mobile): Reapply thumbnail image improvements and fix issue immich-app#13804 (immich-app#13835) fix issue immich-app#13804 Co-authored-by: dvbthien <dvbthien@gmail.com> * feat: built-in automatic database backups (immich-app#13773) * chore(deps): update dependency @types/node to ^22.8.1 (immich-app#13854) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency node to v22 (immich-app#13855) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(mobile): not throwing error when cannot parse orientation value (immich-app#13853) * fix(mobile): not throw when error in parsing the orientation * fix(mobile): not throw when error in parsing the orientation * linting * chore: move library settings cron expression to setting select element (immich-app#13856) * chore(docs): Add Immich Public Proxy to the Community Projects list (immich-app#13836) Update community-projects.tsx Add Immich Public Proxy to Community Projects * refactor(server): job discovery (immich-app#13838) refactor(server): job discorvery * chore(deps): update flutter (immich-app#13455) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(mobile): update flutter_web_auth (immich-app#13863) * feat(server): use tonemapx for software tone-mapping (immich-app#13785) * fix(mobile): do not removed not backup asset when selecting the correspond options (immich-app#13256) * fixed the local ids selecting issue * code: updated impl inside deleteLocalOnlyAssets * fix: used png instead of jpg to maintain picture quality * Revert "fix: used png instead of jpg to maintain picture quality" This reverts commit 04f2ed5. * fix: update logic from code-review perspective * refractor (mobile) : Dart fix applied * fix (mobile) : Updated multi grid as per requirement --------- Co-authored-by: Alex <alex.tran1502@gmail.com> * fix(server): wrong image dimensions for RAW files (RAF, CR2) (also fixes face preview) (immich-app#13377) * refactor(server): immich worker (immich-app#13871) refactor(server): immich work * chore: svelte 5 🎉 (immich-app#13738) chore: svelte 5 Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com> Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com> * feat: render asset path (immich-app#13873) render asset path * fix: healthcheck if custom host is set (immich-app#13887) * fix(deps): update dependency exiftool-vendored to v28.7.0 (immich-app#13790) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix: remove duplicateIds on unique assets (immich-app#13752) * fix(deps): update machine-learning (immich-app#13919) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update node (immich-app#13918) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency @types/node to ^22.8.5 (immich-app#13923) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * refactor(server): get worker (immich-app#13927) * chore: better observability for geodata import (immich-app#13931) * refactor: config init event for first config load (immich-app#13930) * chore(mobile): upgrade gradle (immich-app#13901) * chore(mobile): upgrade gradle * update photo_manager * migrate from kapt to ksp pumps kotlin and other dependency version to fix build issues * increase java heap size --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> * chore(web): scrubber animation (immich-app#13936) * chore(web): scrubber animation * minor styling * chore(deps): update dependency @types/node to ^22.8.6 (immich-app#13937) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update typescript-projects (immich-app#13922) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Daniel Dietzler <mail@ddietzler.dev> * chore(deps): update base-image to v20241105 (major) (immich-app#13826) * docs: fail2ban community project (immich-app#13943) fail2ban * chore(mobile): translation update (immich-app#13942) * chore(web): update translations (immich-app#13810) Co-authored-by: Benjamin Freeman <b.t.freeman16@gmail.com> Co-authored-by: Bezruchenko Simon <worcposj44@gmail.com> Co-authored-by: Carl Dressler <cstmth@gmail.com> Co-authored-by: Diego Saint Esteben <diego@saintesteben.me> Co-authored-by: Dmitry Banny <dj.icecore@gmail.com> Co-authored-by: Dragonslayer <chybzik@gmail.com> Co-authored-by: Fjuro <fjuro@alius.cz> Co-authored-by: Florian Ostertag <florian.kuepper@gmail.com> Co-authored-by: Hurricane-32 <rodrigorimo@hotmail.com> Co-authored-by: Indrek Haav <IndrekHaav@users.noreply.hosted.weblate.org> Co-authored-by: Iwwww <mike.yolgin@gmail.com> Co-authored-by: JBP <weblate@1peer1boom.nl> Co-authored-by: Jonas Grubbauer <nicjontrickshots@gmail.com> Co-authored-by: Junghyuk Kwon <kwon@junghy.uk> Co-authored-by: Kamil Warczek <kamilwarczek@gmail.com> Co-authored-by: Kovács Ádám <kovaszftw@gmail.com> Co-authored-by: Linerly <linerly@proton.me> Co-authored-by: Mehmet Numan Çam <mncam051@gmail.com> Co-authored-by: Miki Mrvos <medolino2009@gmail.com> Co-authored-by: Polly Julien <julien.polly@laposte.net> Co-authored-by: Rastislav Simcisko <21sd95@gmail.com> Co-authored-by: Samet Güzeldemirci <s.g52@gmx.de> Co-authored-by: Shawn <xiaxinx@gmail.com> Co-authored-by: Stan P <g97d6liib@mozmail.com> Co-authored-by: T.Nikolaou <tnikolaou@users.noreply.hosted.weblate.org> Co-authored-by: TheGothian <github@dreamstate.nu> Co-authored-by: fmis13 <fmis13@disroot.org> Co-authored-by: pyccl <changcongliang@163.com> Co-authored-by: qtm <qtm@users.noreply.hosted.weblate.org> Co-authored-by: vytautas <immichtranslation.a03gn@simplelogin.com> Co-authored-by: waclaw66 <waclaw66@seznam.cz> Co-authored-by: xxzp3 <oliver@bastholm.dk> Co-authored-by: Вячеслав Лукьяненко <madeinchuguev@gmail.com> Co-authored-by: 李奕寯 <eugenelego88@gmail.com> * chore: version v1.120.0 * fix: docker link (immich-app#13956) * docs: improve custom-locations wording to be easier to read (immich-app#13849) * Improve wording to make it easier to read custom-locations.md It's only grammatical change * Update docs/docs/guides/custom-locations.md Co-authored-by: bo0tzz <git@bo0tzz.me> * Update custom-locations.md Revert to 'because of' and remove 'hard drive' --------- Co-authored-by: bo0tzz <git@bo0tzz.me> * docs: Added a note about avoiding redundant database backups (immich-app#13958) * Add note about built-in backups * npm run format:fix * fix(server): cannot render email template (immich-app#13957) * chore: tidy up backup-and-restore.md (immich-app#13961) * docs: 50k stars (immich-app#13964) * chore(mobile): post release task (immich-app#13954) * docs: add backups to startup folders list (immich-app#13967) Add the check of backups that is done on immich microservice of backups folder presence * fix(server): allow starting backup through API and fix pg_dumpall args when using database URLs (immich-app#13970) * fix(server): allow starting backup through API * fix(server): fix pg_dumpall args when using database URLs The database has to be specified using `-d`, unlike for pg_dump. * fix(server): database backups compatible with deduplication (immich-app#13965) gzip --rsyncable has a slightly worse compression ratio, but allows for efficient deduplication and, as the name implies, faster rsync operations. Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net> * docs: update roadmap (immich-app#13984) * fix(mobile): video player not playing in full size on Android (immich-app#13986) * fix(web): time zone dependent test (immich-app#13859) * chore: version v1.120.1 * chore(mobile): update isar build (immich-app#13987) * refactor: remove smart info table (immich-app#13985) * chore(mobile): post release tasks (immich-app#13989) * refactor(server): cron repository (immich-app#13988) * refactor(server): cron validation (immich-app#13990) * chore: backups custom location and config file docs (immich-app#13996) * fix(server): support non-default postgres port when taking a backup (immich-app#13992) * fix(server): thumbnail rotation when using embedded previews (immich-app#13948) * docs: make IGNORE_MOUNT_CHECK warning stronger (immich-app#14011) * fix(web): use locale for scrubber label when scrolling (immich-app#14012) * chore(docs): roadmap SEO (immich-app#14024) * fix(mobile): make sure date locale is inititialized for some languages (immich-app#14035) * feat(web): stable json settings export (immich-app#14036) * recursively sort json output (settings) * fix format/lint/...g * chore(web): Update the new version announcement text (immich-app#14001) * Update en.json * Update en.json * Update en.json * docs: Fix DCM docs link (immich-app#14059) Fix DCM docs link * chore: add weblate requests (immich-app#14051) * docs: clarify file size impact in hardware-transcoding.md (immich-app#14049) * fix(server): attempt to delete failed backups immediately after failure (immich-app#13995) * docs: backup folder name is backups (immich-app#14073) * fix: config updates not applying for job and storage template service (immich-app#14074) * chore(ml): replace fastapi-slim with fastapi (immich-app#14091) The two have been identical since version 0.112.0: fastapi/fastapi#11525 (comment) * chore(deps): update node (immich-app#14090) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update base-image to v20241112 (major) (immich-app#14088) chore(deps): update base-image to v20241112 Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * feat(server): use pg_dumpall version that matches the database version (immich-app#14083) * fix(server): correct rotation for common files (immich-app#14092) * fix(server): correct rotation for common files * fix: test: * pr feedback * fix(server): backup version checks not handling database versions correctly (immich-app#14102) * chore: version v1.120.2 * chore(mobile): post release tasks (immich-app#14105) * chore(deps): update redis:6.2-alpine docker digest to 77c6e37 (immich-app#14098) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update docker.io/redis:6.2-alpine docker digest to 77c6e37 (immich-app#14097) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): bump ytanikin/PRConventionalCommits from 1.2.0 to 1.3.0 (immich-app#13051) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): update prom/prometheus docker digest to 2659f4c (immich-app#13928) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * refactor(mobile): video controls (immich-app#14086) * refactor video controls * inline * make mute icon const * move placeholder to private widget * adjust text width, move volume button slightly right * chore(docs): encode db dump in UTF-8 without BOM for Windows (immich-app#13775) * chore(deps): update docker.io/redis:6.2-alpine docker digest to eaba718 (immich-app#14113) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update redis:6.2-alpine docker digest to eaba718 (immich-app#14114) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(mobile): duration ui overflow (immich-app#14120) * fix(mobile): duration ui overflow * pr feedback * feat: use dateTimeOriginal to calculate album date (immich-app#14119) * docs: Update TrueNAS docs for TrueNAS SCALE 24.10 (immich-app#14067) * initial-docs-update * add-info-about-external-libraries * fix(mobile): fix logout timeout (immich-app#14104) * fix(mobile): add timeout to logout * chore(mobile): refactor timeout durations * feat(mobile): add loading state to logout button * chore(mobile): format authentication.provider.dart * chore: format * chore: revert settings.json change --------- Co-authored-by: Alex <alex.tran1502@gmail.com> * feat: add minimal devcontainer setup (immich-app#14038) * add minimal devcontainer setup * fix Makefile & update doc * fix Makefile * add warning regarding devcontainer + add newline at EOF * feat(mobile): new video slider ui (immich-app#14126) * fix(server): Some MTS videos fail to generate thumbnail (immich-app#14134) * Stop skipping of all frames in MTS video * Only skip flag for mts videos * Fix lint checks * Adds test * Add comment for why flag is removed * chore(web): migration svelte 5 syntax (immich-app#13883) * fix(web): textarea autogrow height (immich-app#13983) fix(web): remove album assetGridWidth & globalWidth Co-authored-by: Alex Tran <alex.tran1502@gmail.com> * fix: Routing back button in sharedLinks page (immich-app#13703) * fix: go back to last page from shared links page. Handle albums page from shared links page routing * add default route for sharing * chore: remove redundant import * remove unnecessary comment --------- Co-authored-by: Alex Tran <alex.tran1502@gmail.com> * fix(web): ensure current asset index stays within bounds (immich-app#14013) * fix(web): saving pasted coordinates (immich-app#14143) * chore(web): move enum out of .svelte file (immich-app#14144) * chore(web): clean up todo task * chore(web): move enums out of .svelte file * fix(web): update description height when navigating between assets (immich-app#14145) * fix(web): allow selecting people after clearing search options (immich-app#14146) * fix(mobile): Android local notification failes to invoke (immich-app#14155) * fix(mobile): local notification failed to invoke * add proguard rules * feat(web): Added tag button to the context menu in the favorites page (immich-app#14156) Added tag action to the context menu in the favorites page when selection is active * chore(deps): update prom/prometheus docker digest to 3b9b2a1 (immich-app#14154) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(web): prevent infinite loop when modifying stacked asset (immich-app#14162) * fix(cli): Concurrency not fully using queue potential (immich-app#11828) * refactor(mobile): backup info box (immich-app#14171) split up backup info box into separate widgets * refactor(web): remove reactivity triggers (immich-app#14164) * fix(web): don't refresh panorama viewer when modifying asset (immich-app#14163) * feat: adding photo & video storage space to server stats (immich-app#14125) * expose detailed user storage stats + display them in the storage per user table * chore: openapi & sql * fix: fix test stubs * fix: formatting errors, e2e test and server test * fix: upper lower case typo in spec file --------- Co-authored-by: Alex Tran <alex.tran1502@gmail.com> * docs: get asset owner by ID from database (immich-app#14174) asset owner * fix(mobile): unnecessary rebuilds from partner share notifier (immich-app#14170) * fix unnecessary notifications * move equality function * sort by id * use same comparison for initial and later queries * fix: show tags when viewing stacked assets (immich-app#14199) fix: refresh tags when viewing stacked assets * chore(deps): pin mcr.microsoft.com/devcontainers/typescript-node docker tag to dc2c365 (immich-app#14124) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(mobile): use sets in album refresh, concurrent futures (immich-app#14193) * use sets in album sync, concurrent futures * batch excluded asset IDs * update test * take advantage of sets in Recents check * move log statement * smaller diff * fix(mobile): Dismissible menus (immich-app#14192) * chore(mobile): make all search filters dismissible * chore(mobile): make ImmichAppBarDialog dismissible --------- Co-authored-by: Alex <alex.tran1502@gmail.com> --------- Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net> Co-authored-by: Jason Rasmussen <jason@rasm.me> Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com> Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com> Co-authored-by: Zack Pollard <zackpollard@ymail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Darrel <39296145+darrelhong@users.noreply.github.com> Co-authored-by: Robert Schütz <mail@dotlambda.de> Co-authored-by: bo0tzz <git@bo0tzz.me> Co-authored-by: Sweebah <mistri.boy@gmail.com> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Alex <alex.tran1502@gmail.com> Co-authored-by: Jevgeni Kiski <yozik04@gmail.com> Co-authored-by: aviv926 <51673860+aviv926@users.noreply.github.com> Co-authored-by: Weblate (bot) <hosted@weblate.org> Co-authored-by: Amirul Asri <amirulasrix@gmail.com> Co-authored-by: Dean Cvjetanović <forteee@gmail.com> Co-authored-by: Diego Saint Esteben <diego@saintesteben.me> Co-authored-by: Florian Ostertag <florian.kuepper@gmail.com> Co-authored-by: Hexie <hexterjexter@gmail.com> Co-authored-by: Indrek Haav <IndrekHaav@users.noreply.hosted.weblate.org> Co-authored-by: Jiri Grönroos <jiri.gronroos@iki.fi> Co-authored-by: Junghyuk Kwon <kwon@junghy.uk> Co-authored-by: Lab Forensic <recoverylabkor@gmail.com> Co-authored-by: Leo Bottaro <github@leobottaro.com> Co-authored-by: LeonardoCasarotto <leonardo.casar8@gmail.com> Co-authored-by: Linerly <linerly@proton.me> Co-authored-by: Max <mail@heavygale.de> Co-authored-by: Michal Micech <michal.micech@gmail.com> Co-authored-by: Miki Mrvos <medolino2009@gmail.com> Co-authored-by: Mārtiņš Bruņenieks <martinsb@gmail.com> Co-authored-by: Napat Srichan <napatsrichan2001@gmail.com> Co-authored-by: Roger Veciana Rovira <rveciana@gmail.com> Co-authored-by: gallegonovato <fran-carro@hotmail.es> Co-authored-by: qtm <qtm@users.noreply.hosted.weblate.org> Co-authored-by: tux2000 <tux2k@web.de> Co-authored-by: Вячеслав Лукьяненко <madeinchuguev@gmail.com> Co-authored-by: Justin <5438593+ITestInProd@users.noreply.github.com> Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com> Co-authored-by: Daniel Dietzler <mail@ddietzler.dev> Co-authored-by: dvbthien <89862334+dvbthien@users.noreply.github.com> Co-authored-by: dvbthien <dvbthien@gmail.com> Co-authored-by: Alan Grainger <alan.grainger@gmail.com> Co-authored-by: Yashraj Jain <yashrajjain726@gmail.com> Co-authored-by: Carsten Otto <git@c-otto.de> Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com> Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com> Co-authored-by: cfitzw <20694057+cfitzw@users.noreply.github.com> Co-authored-by: Pranay Pandey <79053599+Pranay-Pandey@users.noreply.github.com> Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com> Co-authored-by: Matthew Momjian <50788000+mmomjian@users.noreply.github.com> Co-authored-by: Benjamin Freeman <b.t.freeman16@gmail.com> Co-authored-by: Bezruchenko Simon <worcposj44@gmail.com> Co-authored-by: Carl Dressler <cstmth@gmail.com> Co-authored-by: Dmitry Banny <dj.icecore@gmail.com> Co-authored-by: Dragonslayer <chybzik@gmail.com> Co-authored-by: Fjuro <fjuro@alius.cz> Co-authored-by: Hurricane-32 <rodrigorimo@hotmail.com> Co-authored-by: Iwwww <mike.yolgin@gmail.com> Co-authored-by: JBP <weblate@1peer1boom.nl> Co-authored-by: Jonas Grubbauer <nicjontrickshots@gmail.com> Co-authored-by: Kamil Warczek <kamilwarczek@gmail.com> Co-authored-by: Kovács Ádám <kovaszftw@gmail.com> Co-authored-by: Mehmet Numan Çam <mncam051@gmail.com> Co-authored-by: Polly Julien <julien.polly@laposte.net> Co-authored-by: Rastislav Simcisko <21sd95@gmail.com> Co-authored-by: Samet Güzeldemirci <s.g52@gmx.de> Co-authored-by: Shawn <xiaxinx@gmail.com> Co-authored-by: Stan P <g97d6liib@mozmail.com> Co-authored-by: T.Nikolaou <tnikolaou@users.noreply.hosted.weblate.org> Co-authored-by: TheGothian <github@dreamstate.nu> Co-authored-by: fmis13 <fmis13@disroot.org> Co-authored-by: pyccl <changcongliang@163.com> Co-authored-by: vytautas <immichtranslation.a03gn@simplelogin.com> Co-authored-by: waclaw66 <waclaw66@seznam.cz> Co-authored-by: xxzp3 <oliver@bastholm.dk> Co-authored-by: 李奕寯 <eugenelego88@gmail.com> Co-authored-by: slamp <slaamp@gmail.com> Co-authored-by: Thariq Shanavas <thariqshanavas@gmail.com> Co-authored-by: yodatak <mryodatak@gmail.com> Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net> Co-authored-by: Terry Zhao <zhao.terryy@gmail.com> Co-authored-by: Ben <45583362+ben-basten@users.noreply.github.com> Co-authored-by: mcarbonne <46689813+mcarbonne@users.noreply.github.com> Co-authored-by: Snowknight26 <Snowknight26@users.noreply.github.com> Co-authored-by: Joren Guillaume <guillaume.joren@gmail.com> Co-authored-by: gamescom15 <10470023+gamescom15@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Xuesong <amorphobia@users.noreply.github.com> Co-authored-by: Pablo Molina <gitju@pablomolina.me> Co-authored-by: Nicholas Flamy <30300649+NicholasFlamy@users.noreply.github.com> Co-authored-by: John Stef <john@johnstef.com> Co-authored-by: Lukas <lukas@lschaefer.xyz> Co-authored-by: Đức <facoder2k2@gmail.com> Co-authored-by: Ben <35833890+IMBeniamin@users.noreply.github.com> Co-authored-by: Lena Tauchner <48085877+Tiefseetauchner@users.noreply.github.com> Co-authored-by: weathondev <weathon.dev@gmail.com>
* add minimal devcontainer setup * fix Makefile & update doc * fix Makefile * add warning regarding devcontainer + add newline at EOF
This PR add a minimal devcontainer setup.
It allows to easily run tests/linter/formatting... when contributing :
make format-all
,make lint-all
,cd web && npm run lint
...What is still missing: