Skip to content

Commit cb772ad

Browse files
committed
Merge branch 'main' of https://github.com/immich-app/immich into feat/inline-offline-check
2 parents eb3a705 + 128d653 commit cb772ad

File tree

151 files changed

+2074
-978
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

151 files changed

+2074
-978
lines changed

.github/workflows/test.yml

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -246,25 +246,30 @@ jobs:
246246
run: npm run check
247247
if: ${{ !cancelled() }}
248248

249-
medium-tests-server:
249+
server-medium-tests:
250250
name: Medium Tests (Server)
251251
needs: pre-job
252252
if: ${{ needs.pre-job.outputs.should_run_server == 'true' }}
253-
runs-on: mich
253+
runs-on: ubuntu-latest
254+
defaults:
255+
run:
256+
working-directory: ./server
254257

255258
steps:
256259
- name: Checkout code
257260
uses: actions/checkout@v4
261+
262+
- name: Setup Node
263+
uses: actions/setup-node@v4
258264
with:
259-
submodules: 'recursive'
265+
node-version-file: './server/.nvmrc'
260266

261-
- name: Production build
262-
if: ${{ !cancelled() }}
263-
run: docker compose -f e2e/docker-compose.yml build
267+
- name: Run npm install
268+
run: npm ci
264269

265270
- name: Run medium tests
271+
run: npm run test:medium
266272
if: ${{ !cancelled() }}
267-
run: make test-medium
268273

269274
e2e-tests-server-cli:
270275
name: End-to-End Tests (Server & CLI)

cli/package-lock.json

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cli/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@immich/cli",
3-
"version": "2.2.50",
3+
"version": "2.2.51",
44
"description": "Command Line Interface (CLI) for Immich",
55
"type": "module",
66
"exports": "./dist/index.js",

docs/docs/FAQ.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ Make sure to [set your reverse proxy](/docs/administration/reverse-proxy/) to al
9797
Also, check the disk space of your reverse proxy.
9898
In some cases, proxies cache requests to disk before passing them on, and if disk space runs out, the request fails.
9999

100-
If you are using Cloudflare Tunnel, please know that they set a maxiumum filesize of 100 MB that cannot be changed.
100+
If you are using Cloudflare Tunnel, please know that they set a maximum filesize of 100 MB that cannot be changed.
101101
At times, files larger than this may work, potentially up to 1 GB. However, the official limit is 100 MB.
102102
If you are having issues, we recommend switching to a different network deployment.
103103

@@ -170,7 +170,7 @@ If you aren't able to or prefer not to mount Samba on the host (such as Windows
170170
Below is an example in the `docker-compose.yml`.
171171

172172
Change your username, password, local IP, and share name, and see below where the line `- originals:/usr/src/app/originals`,
173-
corrolates to the section where the volume `originals` was created. You can call this whatever you like, and map it to the docker container as you like.
173+
correlates to the section where the volume `originals` was created. You can call this whatever you like, and map it to the docker container as you like.
174174
For example you could change `originals:` to `Photos:`, and change `- originals:/usr/src/app/originals` to `Photos:/usr/src/app/photos`.
175175

176176
```diff

docs/docs/install/docker-compose.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ You can alternatively download these two files from your browser and move them t
3737
</CodeBlock>
3838

3939
- Populate `UPLOAD_LOCATION` with your preferred location for storing backup assets. It should be a new directory on the server with enough free space.
40-
- Consider changing `DB_PASSWORD` to a custom value. Postgres is not publically exposed, so this password is only used for local authentication.
40+
- Consider changing `DB_PASSWORD` to a custom value. Postgres is not publicly exposed, so this password is only used for local authentication.
4141
To avoid issues with Docker parsing this value, it is best to use only the characters `A-Za-z0-9`. `pwgen` is a handy utility for this.
4242
- Set your timezone by uncommenting the `TZ=` line.
4343
- Populate custom database information if necessary.

docs/docs/install/truenas.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ The **CPU** value was specified in a different format with a default of `4000m`
198198
The **Memory** value was specified in a different format with a default of `8Gi` which is 8 GiB of RAM. The value was specified in bytes or a number with a measurement suffix. Examples: `129M`, `123Mi`, `1000000000`
199199
:::
200200

201-
Enable **GPU Configuration** options if you have a GPU that you will use for [Hardware Transcoding](/docs/features/hardware-transcoding) and/or [Hardware-Accelerated Machine Learning](/docs/features/ml-hardware-acceleration.md). More info: [GPU Passtrough Docs for TrueNAS Apps](https://www.truenas.com/docs/truenasapps/#gpu-passthrough)
201+
Enable **GPU Configuration** options if you have a GPU that you will use for [Hardware Transcoding](/docs/features/hardware-transcoding) and/or [Hardware-Accelerated Machine Learning](/docs/features/ml-hardware-acceleration.md). More info: [GPU Passthrough Docs for TrueNAS Apps](https://www.truenas.com/docs/truenasapps/#gpu-passthrough)
202202

203203
### Install
204204

docs/package-lock.json

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@
3636
},
3737
"devDependencies": {
3838
"@docusaurus/module-type-aliases": "~3.7.0",
39+
"@docusaurus/tsconfig": "^3.7.0",
40+
"@docusaurus/types": "^3.7.0",
3941
"prettier": "^3.2.4",
4042
"typescript": "^5.1.6"
4143
},

docs/src/components/community-guides.tsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,11 @@ const guides: CommunityGuidesProps[] = [
5353
description: 'How to configure an existing fail2ban installation to block incorrect login attempts.',
5454
url: 'https://github.com/immich-app/immich/discussions/3243#discussioncomment-6681948',
5555
},
56+
{
57+
title: 'Immich remote access with NordVPN Meshnet',
58+
description: 'Access Immich with an end-to-end encrypted connection.',
59+
url: 'https://meshnet.nordvpn.com/how-to/remote-files-media-access/immich-remote-access',
60+
},
5661
];
5762

5863
function CommunityGuide({ title, description, url }: CommunityGuidesProps): JSX.Element {

docs/src/components/version-switcher.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,13 @@ export default function VersionSwitcher(): JSX.Element {
2424
{ label: 'Next', url: 'https://main.preview.immich.app' },
2525
{ label: 'Latest', url: 'https://immich.app' },
2626
...archiveVersions,
27-
];
27+
].map(({ label, url }) => ({
28+
label,
29+
url: new URL(url),
30+
}));
2831
setVersions(allVersions);
2932

30-
const activeVersion = allVersions.find((version) => new URL(version.url).origin === window.location.origin);
33+
const activeVersion = allVersions.find((version) => version.url.origin === window.location.origin);
3134
if (activeVersion) {
3235
setLabel(activeVersion.label);
3336
}
@@ -49,7 +52,7 @@ export default function VersionSwitcher(): JSX.Element {
4952
mobile={windowSize === 'mobile'}
5053
items={versions.map(({ label, url }) => ({
5154
label,
52-
to: url + location.pathname + location.hash,
55+
to: new URL(location.pathname + location.search + location.hash, url).href,
5356
target: '_self',
5457
}))}
5558
/>

docs/static/archived-versions.json

Lines changed: 15 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
[
2+
{
3+
"label": "v1.127.0",
4+
"url": "https://v1.127.0.archive.immich.app"
5+
},
26
{
37
"label": "v1.126.1",
48
"url": "https://v1.126.1.archive.immich.app"
@@ -19,10 +23,6 @@
1923
"label": "v1.125.5",
2024
"url": "https://v1.125.5.archive.immich.app"
2125
},
22-
{
23-
"label": "v1.125.4",
24-
"url": "https://v1.125.4.archive.immich.app"
25-
},
2626
{
2727
"label": "v1.125.3",
2828
"url": "https://v1.125.3.archive.immich.app"
@@ -35,10 +35,6 @@
3535
"label": "v1.125.1",
3636
"url": "https://v1.125.1.archive.immich.app"
3737
},
38-
{
39-
"label": "v1.125.0",
40-
"url": "https://v1.125.0.archive.immich.app"
41-
},
4238
{
4339
"label": "v1.124.2",
4440
"url": "https://v1.124.2.archive.immich.app"
@@ -201,46 +197,46 @@
201197
},
202198
{
203199
"label": "v1.105.1",
204-
"url": "https://v1.105.1.archive.immich.app/"
200+
"url": "https://v1.105.1.archive.immich.app"
205201
},
206202
{
207203
"label": "v1.105.0",
208-
"url": "https://v1.105.0.archive.immich.app/"
204+
"url": "https://v1.105.0.archive.immich.app"
209205
},
210206
{
211207
"label": "v1.104.0",
212-
"url": "https://v1.104.0.archive.immich.app/"
208+
"url": "https://v1.104.0.archive.immich.app"
213209
},
214210
{
215211
"label": "v1.103.1",
216-
"url": "https://v1.103.1.archive.immich.app/"
212+
"url": "https://v1.103.1.archive.immich.app"
217213
},
218214
{
219215
"label": "v1.103.0",
220-
"url": "https://v1.103.0.archive.immich.app/"
216+
"url": "https://v1.103.0.archive.immich.app"
221217
},
222218
{
223219
"label": "v1.102.3",
224-
"url": "https://v1.102.3.archive.immich.app/"
220+
"url": "https://v1.102.3.archive.immich.app"
225221
},
226222
{
227223
"label": "v1.102.2",
228-
"url": "https://v1.102.2.archive.immich.app/"
224+
"url": "https://v1.102.2.archive.immich.app"
229225
},
230226
{
231227
"label": "v1.102.1",
232-
"url": "https://v1.102.1.archive.immich.app/"
228+
"url": "https://v1.102.1.archive.immich.app"
233229
},
234230
{
235231
"label": "v1.102.0",
236-
"url": "https://v1.102.0.archive.immich.app/"
232+
"url": "https://v1.102.0.archive.immich.app"
237233
},
238234
{
239235
"label": "v1.101.0",
240-
"url": "https://v1.101.0.archive.immich.app/"
236+
"url": "https://v1.101.0.archive.immich.app"
241237
},
242238
{
243239
"label": "v1.100.0",
244-
"url": "https://v1.100.0.archive.immich.app/"
240+
"url": "https://v1.100.0.archive.immich.app"
245241
}
246242
]

docs/tailwind.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ module.exports = {
55
preflight: false, // disable Tailwind's reset
66
},
77
content: ['./src/**/*.{js,jsx,ts,tsx}', './{docs,blog}/**/*.{md,mdx}'], // my markdown stuff is in ../docs, not /src
8-
darkMode: ['class', '[data-theme="dark"]'], // hooks into docusaurus' dark mode settigns
8+
darkMode: ['class', '[data-theme="dark"]'], // hooks into docusaurus' dark mode settings
99
theme: {
1010
extend: {
1111
colors: {

docs/tsconfig.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
{
22
// This file is not used in compilation. It is here just for a nice editor experience.
3-
"extends": "@tsconfig/docusaurus/tsconfig.json",
3+
"extends": "@docusaurus/tsconfig",
44

55
"compilerOptions": {
6-
"baseUrl": ".",
7-
"module": "Node16"
6+
"baseUrl": "."
87
}
98
}

e2e/package-lock.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

e2e/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "immich-e2e",
3-
"version": "1.126.1",
3+
"version": "1.127.0",
44
"description": "",
55
"main": "index.js",
66
"type": "module",

machine-learning/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "machine-learning"
3-
version = "1.126.1"
3+
version = "1.127.0"
44
description = ""
55
authors = ["Hau Tran <[email protected]>"]
66
readme = "README.md"

mobile/analysis_options.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ custom_lint:
6565
allowed:
6666
# required / wanted
6767
- lib/entities/*.entity.dart
68-
- lib/repositories/{album,asset,backup,database,etag,exif_info,user,timeline}.repository.dart
68+
- lib/repositories/{album,asset,backup,database,etag,exif_info,user,timeline,partner}.repository.dart
6969
- lib/infrastructure/entities/*.entity.dart
7070
- lib/infrastructure/repositories/{store,db}.repository.dart
7171
- lib/providers/infrastructure/db.provider.dart
@@ -75,18 +75,18 @@ custom_lint:
7575
- lib/pages/album/album_asset_selection.page.dart
7676
- lib/routing/router.dart
7777
- lib/services/immich_logger.service.dart # not really a service... more a util
78-
- lib/utils/{db,migration,renderlist_generator}.dart
78+
- lib/utils/{db,migration}.dart
7979
- lib/widgets/asset_grid/asset_grid_data_structure.dart
8080
- test/**.dart
8181
# refactor the remaining providers
82-
- lib/providers/{asset,authentication,db,partner,user}.provider.dart
83-
- lib/providers/{asset_viewer/render_list,backup/backup,search/all_motion_photos,search/recently_added_asset}.provider.dart
82+
- lib/providers/db.provider.dart
83+
- lib/providers/backup/backup.provider.dart
8484

8585
- import_rule_openapi:
8686
message: openapi must only be used through ApiRepositories
8787
restrict: package:openapi
8888
allowed:
89-
# requried / wanted
89+
# required / wanted
9090
- lib/repositories/*_api.repository.dart
9191
# acceptable exceptions for the time being
9292
- lib/entities/{album,asset,exif_info,user}.entity.dart # to convert DTOs to entities

mobile/android/fastlane/Fastfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@ platform :android do
3535
task: 'bundle',
3636
build_type: 'Release',
3737
properties: {
38-
"android.injected.version.code" => 184,
39-
"android.injected.version.name" => "1.126.1",
38+
"android.injected.version.code" => 185,
39+
"android.injected.version.name" => "1.127.0",
4040
}
4141
)
4242
upload_to_play_store(skip_upload_apk: true, skip_upload_images: true, skip_upload_screenshots: true, aab: '../build/app/outputs/bundle/release/app-release.aab')

0 commit comments

Comments
 (0)