Repository navigation
frameleaf-v1.2.3
What's improved
- Fresh installation. Start Frameleaf Library 1.2.3 with a new database. This version establishes the baseline for future upgrades. Databases created by 1.2.2 or earlier cannot be upgraded to 1.2.3.
- Library imports. More photo-library imports preserve ownership, ratings, albums and metadata. Unrated photos stay unrated.
- Desktop wallet. Frameleaf Desktop can read whether automatic AI credit top-up is enabled when it connects to a linked Library.
Jira issues resolved
- FL-1144: fix(import): hash in-place media once and check each batch concurrently
- FL-1144: fix(import): wait for in-flight media checks before rejecting a batch
- FL-1144: test(import): in-place verification reads the file once
- FL-1146: fix(import): Manager in-place imports check media with stat only
- FL-1146: feat(server): staged release after import, setup progress and pause
- FL-1146: feat(server): people and album counts for the completion window
- FL-1146: feat(web): setup bar after an Immich import and a completion window with confetti
- FL-1146: fix(i18n): setup bar strings do not name the previous app
- FL-1146: style(web): format the setup bar spec
- FL-1146: fix: setup review findings (pause, retry, polling, remount-stable fingerprint)
- FL-1146: test(web): setup bar resumes after a pause
- FL-1146: fix(server): a paused setup starts no library scan and cannot complete before the file check releases its stages
- FL-1149: Base shared Manager setup on fast import and current main
- FL-1149: Retain fast-setup pause and completion safeguards
- FL-1146: fix(server): setup does not complete while paused
- FL-1146: fix: keep polling before Manager starts setup; README fingerprint wording
- FL-1149: Share Manager setup authority and staged work across import sources
- FL-1149: Include upstream pause completion gate
- FL-1149: Retain upstream setup polling and fingerprint documentation
- FL-1149: Keep shared setup documentation within branding policy
- FL-1149: Integrate canonical library controller and verification
- FL-1149: Exercise prepared photo work in every Manager source flow
- FL-1146: fix(web): chosen-locale numbers, shared reduced-motion check and logical CSS in the setup bar
- FL-1146: fix(web): load the setup bar for administrators only, and the completion window when it opens
- FL-1149: Cover shared setup permissions and accessibility preferences
- FL-1149: Merge remote-tracking branch 'frameleaf/pr-799' into aj/FL-1149-common-manager-import-setup
- FL-1149: Merge remote-tracking branch 'frameleaf/main' into aj/FL-1149-common-manager-import-setup
- FL-1149: Merge remote-tracking branch 'frameleaf/pr-799' into aj/FL-1149-common-manager-import-setup
- FL-1101: Pin destination sessions for migration activation
- FL-1101: Merge commit '5cd9a12c7ba1e41a135f97b853ba58130c7df074' into aj/FL-1101-library-activation
- FL-1149: Keep setup warnings visible and report failed actions
- FL-1101: Bind activation reports and recover finalized import work
- FL-1149: Wait for every imported run stage before setup completion
- FL-1149: Merge remote-tracking branch 'frameleaf/main' into aj/FL-1149-common-manager-import-setup
- FL-1101: Merge commit 'dae7e49ef53bf58df7db0991ca1f8b1bdc7b5ccf' into aj/FL-1101-library-activation
- FL-1101: Add atomic activation evidence and transaction revalidation
- FL-1101: Capture PostgreSQL activation evidence schema
- FL-1101: Fence startup on retained library activation evidence
- FL-1101: Activate verified libraries with durable held-work recovery
- FL-1101: Bound pinned-session host failover and connection failure
- FL-1149: Respect disabled processing and failed imported stages
- FL-1101: Integrate reviewed shared Manager completion policy
- FL-1149: Fence queued work and scans behind the shared setup pause
- FL-1149: Integrate the merged Manager setup flow
- FL-1101: Integrate canonical Manager setup and pause recovery
- FL-1101: Keep protected source bindings out of import progress
- FL-1149: Publish committed setup changes and report held imports accurately
- FL-1101: Integrate reviewed common setup notifications and hold status
- FL-1101: Verify reviewed originals for in-place library adoption
- FL-1149: Typecheck shared setup fixtures and claim scans through the repository
- FL-1101: Complete activation test doubles and integrate shared type repairs
- FL-1101: Integrate the verified shared Server fixture repairs
- FL-1149: Fix partial AI completion copy and isolate setup fixtures
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101: Retain restricted imported accounts and compatible passwords
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101: Keep schema source authority unchanged for owner policy
- FL-1149: Assert complete Manager setup completion message
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101: Review original bytes before sealing import transfers
- FL-1149: Preserve Manager authority when an import marker is missing
- FL-1149: Cover standalone Manager setup isolation
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1101: Preserve signed filesystem timestamps in transfer plans
- FL-1149: Keep copied imports in the common Manager setup flow
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1101: Await source mutations in import preflight regressions
- FL-1149: #comment Fence managed import recovery with retained setup authority
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1149: #comment Keep setup recovery warnings accurate and visible
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1101: Retain generic owner provenance through partial restores
- FL-1101: #comment Capture owner provenance schema and verify recovery gates
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1149: #comment Retry safe work in the bound import setup run
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1149: #comment Type the shared retry fixtures and repository mock
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1148: Speed up full E2E and medium CI with isolated parallel suites (#800)
- FL-1101: #comment Share the verified Manager transfer runtime with Server
- FL-1149: #comment Keep managed imports held after complete selection loss
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-file-review' into aj/FL-1101-import-transfer-runtime
- FL-1149: #comment Recover frozen import work while Manager setup is paused
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-file-review' into aj/FL-1101-import-transfer-runtime
- FL-1149: #comment Preserve frozen import authority during recovery
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-file-review' into aj/FL-1101-import-transfer-runtime
- FL-1149: Wait for asynchronous CI observations
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-file-review' into aj/FL-1101-import-transfer-runtime
- FL-1149: Require exact Explore scroll restoration
- FL-1149, FL-1101: Merge branch 'aj/FL-1149-common-manager-import-setup' into aj/FL-1101-library-activation
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-activation' into aj/FL-1101-library-adoption
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-library-adoption' into aj/FL-1101-import-owner-policy
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-owner-policy' into aj/FL-1101-import-file-review
- FL-1101, FL-1101: Merge branch 'aj/FL-1101-import-file-review' into aj/FL-1101-import-transfer-runtime
- FL-1101: Merge pull request #808 from Frameleaf/aj/FL-1101-import-file-review
- FL-1157: Rewrite the Unraid listing around Frameleaf (#810)
- FL-1101: Merge pull request #809 from Frameleaf/aj/FL-1101-import-transfer-runtime
- FL-1101: Add recoverable common library import execution (#813)
- FL-1057: Map PhotoPrism records into the common library import (#814)
- FL-1162: feat(import): find Noodle Gallery installs and import their standard library data (#819)
- FL-1159: Wait for worker startup before CI fixture resets (#811)
- FL-1160: [FL-1160] Fix repository-wide code review findings (#812)
- FL-1100: Map Photoview snapshots into the common library import (#818)
- FL-1104: Map Lychee snapshots into the common library import (#820)
- FL-1165: fix: lock fork sensitive detections on import, honest import success card, unclipped toolbar band (#825)
- FL-1109: feat: FL-1109 map Ente exports to common library manifests (#823)
- FL-1102: feat: FL-1102 map Piwigo metadata and restricted library ownership (#824)
- FL-1106: Map PiGallery2 metadata and protected source files into library imports (#821)
- FL-1163: fix: FL-1163 refuse truncated SQLite import metadata and verifiers (#822)
- FL-1110: [FL-1110] Integrate photo-library import metadata adapters (#826)
- FL-1168: fix(queue): runs that finish early or never finish (#827)
- FL-1169: feat(server): reset migrations into one consolidated baseline (#828)
- FL-1110: [FL-1110] Preserve unrated imports and reject undated capture edits (#831)
- FL-1149: [FL-1149] Share Manager fencing across source database layouts (#832)
- FL-1171: fix: import setup no longer stalls; Activity shows busy jobs truthfully (#830)
- FL-1172: fix(queue): stop the job_queue catalogue convoy from failing jobs (#833)
- FL-1173: Read the current automatic top-up setting from Cloud (#834)
- FL-1167: fix: job screens agree about background work (#829)
- FL-1174: Prepare Library 1.2.3 as the migration baseline (#835)
- FL-1149: [FL-1149] Capture fenced SQLite sources for shared Manager imports (#836)
- FL-1149: [FL-1149] Share Manager source setup and recovery screens (#837)
- FL-1149: [FL-1149] Produce private bundles for the common library importer (#838)
- FL-1149: [FL-1149] Keep interrupted bundles attributable to import operations (#839)
- FL-1149: [FL-1149] Retain PhotoPrism account preferences during import (#841)
- FL-1175: Observe a full queue scan in the Manager import fence test (#842)
- FL-1149: [FL-1149] Share Manager port review across photo import sources (#843)
- FL-1149: [FL-1149] Qualify PhotoPrism passwords against the running source app (#844)
- FL-1149: [FL-1149] Qualify PhotoPrism login restrictions alongside password preservation (#845)
- FL-1149: [FL-1149] Preserve PhotoPrism manual labels as Frameleaf tags (#840)
- FL-1149: [FL-1149] Retain stacks and Live Photos in shared import bundles (#846)
- FL-1149: [FL-1149] Retain PhotoPrism account IDs for provider resolution (#847)
Source: a16c177
Build evidence: https://github.com/Frameleaf/frameleaf-app/actions/runs/41815819564
Use the attached version-matched installation files and release-manifest.json. Verify an image with: cosign verify --key cosign.pub @
Full Changelog: frameleaf-v1.2.2...frameleaf-v1.2.3