Commit Graph
4486 Commits
Author SHA1 Message Date
aiongg 0fa59f8846 Merge track r3-t05
# Conflicts:
#	crates/ui-egui/locales/cs-formats.json
#	crates/ui-egui/locales/cs.json
#	crates/ui-egui/locales/de-formats.json
#	crates/ui-egui/locales/de.json
#	crates/ui-egui/locales/es-formats.json
#	crates/ui-egui/locales/es.json
#	crates/ui-egui/locales/fi-formats.json
#	crates/ui-egui/locales/fi.json
#	crates/ui-egui/locales/fr-formats.json
#	crates/ui-egui/locales/fr.json
#	crates/ui-egui/locales/id-formats.json
#	crates/ui-egui/locales/id.json
#	crates/ui-egui/locales/it-formats.json
#	crates/ui-egui/locales/it.json
#	crates/ui-egui/locales/ja-formats.json
#	crates/ui-egui/locales/ja.json
#	crates/ui-egui/locales/ka-formats.json
#	crates/ui-egui/locales/ka.json
#	crates/ui-egui/locales/pl-formats.json
#	crates/ui-egui/locales/pl.json
#	crates/ui-egui/locales/pt-br-formats.json
#	crates/ui-egui/locales/pt-br.json
#	crates/ui-egui/locales/ru-formats.json
#	crates/ui-egui/locales/ru.json
#	crates/ui-egui/locales/sv-formats.json
#	crates/ui-egui/locales/sv.json
#	crates/ui-egui/locales/uk-formats.json
#	crates/ui-egui/locales/uk.json
#	crates/ui-egui/locales/vi-formats.json
#	crates/ui-egui/locales/vi.json
#	crates/ui-egui/locales/zh-hans-formats.json
#	crates/ui-egui/locales/zh-hans.json
#	crates/ui-egui/locales/zh-hant-formats.json
#	crates/ui-egui/locales/zh-hant.json
#	docs/gaps.md
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-31 02:30:12 +00:00
aiongg 5e56e9536b Merge track r3-t04
# Conflicts:
#	docs/gaps.md
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-31 02:30:01 +00:00
aiongg 67b636329a Merge track r3-t03
# Conflicts:
#	crates/ui-egui/src/tests/drop_import.rs
#	crates/ui-egui/tests/it/main.rs
#	docs/gaps.md
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-31 02:29:52 +00:00
aiongg 46982a5c4f Merge track r3-t02
# Conflicts:
#	docs/gaps.md
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-31 02:29:22 +00:00
aiongg 3b64cb937e Merge track r3-t01 2026-10-31 02:29:11 +00:00
aiongg 90c97d38c3 Integration: cargo fmt 2026-10-31 02:22:05 +00:00
aiongg c1ce177f0f Integration: cargo fmt 2026-10-31 02:19:24 +00:00
aiongg ec3cada711 Integration: #2890 re-export preset_lzw_note for the grid context menu 2026-10-31 02:19:19 +00:00
aiongg 02be9051c8 Integration: #2237 drop duplicate ru key 'Thumbnail size' (main already has it) 2026-10-31 02:18:25 +00:00
aiongg e0f8e09431 Merge PR #3409: Issue #3405: Auto Import waits for an import that starts during its listing 2026-10-31 02:12:00 +00:00
aiongg 1e0289cb37 Merge PR #3403: LRC-LIB-CATALOG-SWITCH: files waiting for a library wait for a running import instead of being dropped
crates/ui-egui/src/dialogs/settings/libraries.rs: can_switch_library keeps both refusals (folder.move pick pending, files waiting to import).
docs/whats-new.md: the PR's entry added under the 2026-10-30 heading.
2026-10-31 02:12:00 +00:00
aiongg e235ac71e2 Merge PR #3375: LR-IMP-FORMATS: a Samsung panorama JPEG with its SEF trailer imports
docs/whats-new.md: the PR's 2026-10-30 section added above main's sections.
2026-10-31 02:11:48 +00:00
aiongg 9b5a339ac5 Merge PR #3325: LRC-LIB-FOLDERS: Move Folder To… asks for the destination without freezing the window
crates/ui-egui/src/panels/left/folders.rs: main's built-in-place guard around Rename and Move kept; the Move item is the PR's move_folder_item inside it.
docs/parity-checklist.md: the PR's edits to its rows applied to main's rows.
docs/whats-new.md: the PR's entry added under the 2026-10-29 heading.
2026-10-31 02:11:38 +00:00
aiongg d8f45ed5a5 Merge PR #3322: LRC-LIB-CATALOG-SWITCH: a library missing at launch is reported instead of being made anew with demo photos
docs/parity-checklist.md: the PR's edit to the LRC-LIB-CATALOG-SWITCH row applied to main's row.
docs/whats-new.md: the PR's 2026-10-29 section added above main's sections.
2026-10-31 02:11:23 +00:00
aiongg e619c977b9 Merge PR #3276: LRC-LIB-FOLDERS: the home folder and Local's built-in places can't be renamed or moved
docs/parity-checklist.md: header keeps main's newer date plus the PR's item; the PR's edit to the LRC-LIB-FOLDERS row applied to main's row; revision rows union, newest first.
docs/whats-new.md: the PR's 2026-10-28 section added above 2026-10-27.
2026-10-31 02:11:01 +00:00
aiongg c034f5bc52 Merge PR #2848: LRC-SS-LAYOUT: the Slideshow settings page no longer moves when the slide preview finishes rendering
docs/whats-new.md, docs/parity-checklist.md: both sides kept; header keeps the newer date.
2026-10-31 02:10:51 +00:00
aiongg 42e1685b3a Merge PR #3367: Reject multiple GPX document roots 2026-10-31 02:10:50 +00:00
aiongg 6e95095c51 Merge PR #3297: Issue #3251: People card badge shows the full photo count 2026-10-31 02:10:50 +00:00
aiongg 8f9e146217 Merge PR #3286: FACES: a person's page finds its look-alikes in seconds, not minutes
docs/whats-new.md, docs/parity-checklist.md: both sides kept; header keeps the newer date.
2026-10-31 02:10:50 +00:00
aiongg 3af32798f3 Merge PR #2821: LR-META-LOCATION: reject malformed typed GPS coordinates
crates/engine/src/cmd/library.rs: kept main's split; the PR's parse_gps changes and tests are ported to crates/engine/src/cmd/library/gps.rs.
docs/gaps.md, docs/parity-checklist.md: both sides kept (header items, rows, LR-META-LOCATION note).
2026-10-31 02:10:49 +00:00
aiongg a1ef1bf5fd Merge PR #3176: LR-IMP-ADD-DIALOG: an import's probe opens each file once
docs/whats-new.md: the PR's entry added under the 2026-10-27 heading after main's entry.
2026-10-31 02:10:38 +00:00
aiongg b3ddfefa5d Merge PR #3141: Issue #2589: a reference app import never creates a photo already in Recently Deleted
crates/engine/src/import/job.rs: union of the imports (main's Seen, reusable_probes, sidecars_of plus the PR's FileFacts); the sidecar read uses main's batched found_sidecar and the PR's skip for duplicates with a known capture time.
2026-10-31 02:10:23 +00:00
aiongg bfb9572eb1 Merge PR #2529: LR-MAP-TRACKLOG: Decode XML character references in GPX
docs/gaps.md, docs/whats-new.md, docs/parity-checklist.md: both sides' header items, entries and rows kept.
2026-10-31 02:10:14 +00:00
aiongg 9d4de0518a Merge PR #2979: LRC-LIB-CATALOG-SWITCH: a library's catalog.snap or folder given at launch opens that library
docs/parity-checklist.md: header keeps main's newer date plus the PR's item; revision rows union.
2026-10-31 02:10:05 +00:00
aiongg 5a7a1b2ad9 Merge PR #2964: LR-IMP-ADD-DIALOG: handle rename sequence exhaustion
crates/engine/src/import.rs, cmd/library.rs: main split these files; kept main's side here and ported the PR's hunks to import/job.rs, cmd/library/import.rs and cmd/library/specs.rs (module doc stays in import.rs).
docs: headers keep main's newer date plus the PR's item; the PR's row additions applied to main's rows; revision rows and What's New entries kept, one heading per date.
2026-10-31 02:09:36 +00:00
aiongg 7cd07ce61e Merge PR #3410: Issue #3406: Auto Import says when it can't read the watched folder 2026-10-31 02:09:28 +00:00
aiongg 0ebcca0a82 Merge PR #3392: LRC-LIB-MISSING: settling waits for the Missing Photos count, which can't panic on spawn 2026-10-31 02:09:27 +00:00
aiongg 9c471f3934 Merge PR #3383: PERF-SMART: a File path rule over a non-ASCII path folds case in stack buffers instead of allocating two strings per photo 2026-10-31 02:09:27 +00:00
aiongg dc946d9876 Merge PR #3265: LR-BEHAV-ACCESS: the grid's Thumbnail size reads as a slider
crates/ui-egui/tests/it/main.rs: all mod lines kept. docs: both sides kept; header keeps the newer date.
2026-10-31 02:09:27 +00:00
aiongg 69eaf50db9 Merge PR #3262: LR-BEHAV-ACCESS: the photo in Detail is named with its file name
crates/ui-egui/tests/it/main.rs: all mod lines kept. docs: both sides kept; header keeps the newer date.
2026-10-31 02:09:11 +00:00
aiongg 13b2534f80 Merge PR #3221: LR-VIEW-PHOTOGRID: the grid's empty view names Import Photos' shortcut as the keymap has it
docs/whats-new.md, docs/parity-checklist.md: both sides' entries; header keeps the newer date.
2026-10-31 02:08:54 +00:00
aiongg 193b01c99d Merge PR #3396: LR-EXP-DIM: export sizes keep the pixels typed (#3300)
docs/whats-new.md: keep both entries, newest first
2026-10-31 02:08:40 +00:00
aiongg 2b30e3d6e6 Merge PR #2954: LR-IMP-ADD-DIALOG: an import checks its probes and looks up sidecars several at a time
docs/parity-checklist.md: header keeps main's date plus the PR's item; the LR-IMP-ADD-DIALOG row keeps main's text and gets the PR's sentence; revision rows union.
docs/whats-new.md: both entries kept.
2026-10-31 02:08:40 +00:00
aiongg e2d750ca0e Merge PR #3212: LR-BEHAV-ACCESS: a date header in the photo grid is named with the text it shows
crates/ui-egui/tests/it/main.rs: both mod lines kept. docs/whats-new.md, docs/parity-checklist.md: both sides' entries, header and LR-BEHAV-ACCESS row combined.
2026-10-31 02:08:33 +00:00
aiongg 6d0902182c Merge PR #3281: Develop exports from a source at least twice the output size 2026-10-31 02:08:31 +00:00
aiongg 06a94d2d7f Merge PR #3015: Never crash: an oversize export size is an error, not a multiply overflow
crates/engine/src/media.rs: main moved render_now and export_job to media/session.rs; the two size checks ported there
crates/engine/src/tests_export.rs: the test is appended to tests/export.rs
2026-10-31 02:08:30 +00:00
aiongg 1459ca3472 Merge PR #3230: Issue #3228: the hard-link originals test holds under SeBackupPrivilege (Git Bash, the CI gate) 2026-10-31 02:08:22 +00:00
aiongg 82ba9ee4f9 Merge PR #2796: docs: gap 9 — the CI gate runs the tests on Linux x64; macOS, Windows and the GPU tests still don't
ROADMAP.md: header keeps main's text plus the gap 9 phrase; item 7 keeps the #329 link, item 8 from the PR; revision rows union
docs/gaps.md: header keeps main's text plus the gap 9 phrase; row 8 keeps the #329 link, row 9 from the PR
2026-10-31 02:08:21 +00:00
aiongg fc5278641b Merge PR #2858: LRC-LIB-LIBFOLDERS: Don't ask again when moving photos is kept only when the move started
docs/parity-checklist.md: header keeps main's newer date plus the PR's item; revision rows are the union.
2026-10-31 02:08:19 +00:00
aiongg 9577b6fabc Merge PR #2825: LR-LIB-ALBUM: album commands skip photos the library lacks and record nothing when they add nothing
crates/engine/src/tests.rs: both test modules. docs: union.
2026-10-31 02:08:18 +00:00
aiongg 6b99e96207 Merge PR #3209: LR-BEHAV-ACCESS: the sidebar's disclosure triangles name their row
docs/whats-new.md: both entries kept under their dates. docs/parity-checklist.md: header and revision rows carry both sides.
2026-10-31 02:08:16 +00:00
aiongg 540f3b5609 Merge PR #2823: LR-BEHAV-DRAGDROP: a right-click on a text field while photos are carried opens no menu
Integration (verdict fix, PR #2808 in the batch): kept one set_carrying and one frame.rs call; carrying is pub(crate); only the text_field.rs hunk plus tests and docs come from this PR.
crates/ui-egui/src/widgets.rs: kept HEAD's doc comment and pub(crate) fn carrying. crates/ui-egui/src/tests.rs: both test modules. docs: union.
2026-10-31 02:08:11 +00:00
aiongg 1765d19c20 Merge PR #2890: Export: note when LZW is picked for TIFF, 16-bit ZIP size test (#2882)
crates/engine/src/export.rs: main moved the code to export/; the 16-bit ZIP size test ported to export/tests.rs
crates/ui-egui/src/panels/dialogs.rs: main moved the dialog to dialogs.rs and dialogs/export.rs; the LZW note helpers, preset hover hint and tests ported there
crates/ui-egui/src/panels/grid.rs: calls crate::dialogs::preset_lzw_note
The doc comment of export_dialog_params stays directly above that function (review fix)
2026-10-31 02:08:09 +00:00
aiongg 42fbec83dc Merge PR #2725: LRC-LIB-CATALOG-LOCK: quitting on macOS removes the lock's owner note 2026-10-31 02:08:09 +00:00
aiongg cc2c3fc754 Merge PR #2714: Never crash: History is bounded on load and by every op that sets it (#2579 item 8) 2026-10-31 02:08:09 +00:00
aiongg b18753a79c Merge PR #3121: PERF-CATALOG: a smart album's per-photo test stops storing an answer nothing can read 2026-10-31 02:08:07 +00:00
aiongg 83c40514b4 Merge PR #2764: LR-VIEW-PHOTOGRID: a thumbnail that can't be read is tried again only when its photo changes (#2682) 2026-10-31 02:08:07 +00:00
aiongg 8f7873c1b5 Merge PR #2648: Never crash: the work gate's byte count saturates instead of overflowing (#2576) 2026-10-31 02:08:07 +00:00
aiongg d227bf11fb Merge PR #3411: i18n(it): panel and tab group menus, update check, rules, import and retouch labels
it.json: union of keys
2026-10-31 02:08:07 +00:00
aiongg cc4855b3a2 Merge PR #2607: LR-IMP-FORMATS: GIF and BMP sizes from the header; a canvas the file can't fill is refused (#2553) 2026-10-31 02:08:06 +00:00