Skip to content

Add library sync optimization and expand date range - #50

Merged
Majorfi merged 8 commits into
mainfrom
develop
May 28, 2026
Merged

Add library sync optimization and expand date range#50
Majorfi merged 8 commits into
mainfrom
develop

Conversation

@Majorfi

@Majorfi Majorfi commented May 28, 2026

Copy link
Copy Markdown
Owner

Summary

Adds intelligent library sync that skips redundant syncs when another user already has access, expands date filtering to support pre-2000 dates, and clarifies DATA_DIR configuration for Docker vs binary execution.

What changed

  • Skip redundant library sync in multi-user scenarios when another user already has permissions
  • Extend date filter range to support dates before 2000
  • Add iOS PWA icons and fix webmanifest description punctuation
  • Clarify DATA_DIR usage in documentation for Docker and binary deployments
  • Add comprehensive test coverage for sync and database changes

Risks

  • Sync logic changes affect multi-user scenarios; requires testing with shared libraries to ensure redundant syncs are properly skipped
  • Date range expansion for pre-2000 dates could have edge cases with historical calendar systems or data validation
  • PWA icon changes should be verified across iOS versions for proper display

Test plan

  1. Multi-user sync: Create shared library, verify second user's sync is skipped when first user already synced\n2. Date filter: Test filtering with dates spanning 1900-2000, verify UI and query behavior\n3. PWA: Test iOS device to confirm icons display correctly in home screen and splash screens\n4. Review documentation update for clarity with both Docker and binary deployment scenarios

Docs impact

Update deployment/configuration documentation to clarify DATA_DIR handling differences between Docker containerized execution and standalone binary execution

Breaking changes

None

Majorfi and others added 8 commits May 28, 2026 14:16
When a user lacks library access permissions (403 from Immich API), check if any other user in the account has access before syncing. If another user has access, skip the sync to avoid redundant API calls and reduce load on shared library permissions.

This caches the access state and retries the API call if it was previously denied, allowing for permission changes to take effect on the next sync cycle.

Change-Type: feature
Scope: sync
Change the DateRangeFilterGroup calendar's minimum selectable year from 2000 to 1900, allowing users to filter assets with dates prior to the year 2000.

Change-Type: feature
Scope: date-filter
Updated the description to include a period at the end.
Extend date range to support pre-2000 dates
Skip redundant library sync when other user has access
Add detailed explanation in .env.example that DATA_DIR is only relevant when running the backend binary directly. In Docker deployments, the data directory inside the container is always /data, mapped via BACKEND_DATA_VOLUME. Comment out DATA_DIR to prevent accidental misconfiguration in Docker environments.

Change-Type: docs
Scope: config
@Majorfi
Majorfi merged commit c9f670f into main May 28, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants