NetterSilver and Claude Haiku 5.5
0d2c77c258
Fix Assisted Culling bursts that cross midnight at month end ( #2095 )
...
Found while testing crates/engine/src/cmd/cull.rs:17-20 (secs, used by the burst grouping at cull.rs:45)
Co-authored-by: Claude Haiku 5.5 <noreply@anthropic.com >
2026-10-17 18:38:33 -06:00
aiongg
7b934ca2b2
Sidecars: write XMP only beside an existing local original
2026-10-16 17:57:30 +00:00
aiongg
346681561a
Lightroom import: follow catalog paths only on this computer or the catalog's share
2026-10-16 17:44:52 +00:00
Brandon Thomas
9ddb8d1824
Merge PR #1663 (rebased)
...
# Conflicts:
# crates/ui-egui/locales/de.json
# crates/ui-egui/locales/es.json
# crates/ui-egui/locales/fr.json
# crates/ui-egui/locales/ja.json
# crates/ui-egui/locales/pt-br.json
# crates/ui-egui/locales/ru.json
# crates/ui-egui/locales/uk.json
# crates/ui-egui/locales/zh-hans.json
# crates/ui-egui/locales/zh-hant.json
2026-10-15 03:40:17 -04:00
Brandon Thomas and Claude Opus 5.5
2179473536
Merge PR #1663
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 03:24:51 -04:00
Brandon Thomas and Claude Opus 5.5
00dced3dae
Batch 39: #1829 's straight brush lines carry pen pressure as the author merged them with #1033 (the whole masks.rs from the PR head)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 03:07:35 -04:00
Brandon Thomas
fd80e4eb2f
Merge PR #1829 (updated head)
2026-10-15 03:01:12 -04:00
Brandon Thomas
809259a37d
Merge PR #1829 (rebased)
...
# Conflicts:
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-15 02:32:15 -04:00
Michael Anderson
fc6719d1db
Merge remote-tracking branch 'upstream/main' into feat/brush-shift-click
...
# Conflicts:
# docs/whats-new.md
2026-10-15 01:07:50 -05:00
Brandon Thomas and Claude Opus 5.5
a39e85da72
Merge PR #1829
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 02:00:02 -04:00
Michael Anderson
a77eafb32a
Merge remote-tracking branch 'upstream/main' into feat/brush-shift-click
...
# Conflicts:
# docs/whats-new.md
2026-10-15 00:54:23 -05:00
Brandon Thomas
e4519aa710
Merge PR #1487 (rebased)
...
# Conflicts:
# docs/parity-checklist.md
2026-10-15 01:43:02 -04:00
Brandon Thomas and Claude Opus 5.5
b5733c7649
Merge PR #1487
...
Resolved against rb-base-36: Scanned keeps the base's rewrite flag next to magic and tag; Exif keeps the Panasonic lens fallback; locale catalogs merged (one duplicate key dropped).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 01:42:11 -04:00
Brandon Thomas and Claude Opus 5.5
3c489dc408
Batch 37: the print commands ( #1215 ) take the Result that Session::targets returns since #1773
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 00:56:44 -04:00
Brandon Thomas
9ca113defa
Merge PR #1135 (rebased)
...
# Conflicts:
# xtask/src/main.rs
2026-10-15 00:53:45 -04:00
Brandon Thomas
8591cdfa6b
Merge PR #1469 (rebased)
...
# Conflicts:
# crates/engine/src/lib.rs
# docs/parity-checklist.md
2026-10-15 00:52:33 -04:00
Brandon Thomas
b3012745d5
Merge PR #1215 (rebased)
...
# Conflicts:
# docs/gaps.md
# docs/parity-checklist.md
2026-10-15 00:52:31 -04:00
Brandon Thomas
8b73a2ec2f
Merge PR #1138 (rebased)
...
# Conflicts:
# docs/gaps.md
2026-10-15 00:52:30 -04:00
Brandon Thomas
12eab11cf5
Merge PR #1469
...
# Conflicts:
# crates/engine/src/cmd/preset_files.rs
# crates/engine/src/tests_import.rs
# docs/parity-checklist.md
# docs/xmp-interop.md
2026-10-15 00:50:08 -04:00
Michael Anderson
dc562c654a
Merge remote-tracking branch 'upstream/main' into feat/brush-shift-click
...
# Conflicts:
# crates/engine/src/cmd/masks.rs
# crates/ui-egui/src/panels/detail.rs
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-14 23:45:14 -05:00
Brandon Thomas and Claude Opus 5.5
2475cf5e32
Merge PR #1773
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 00:31:26 -04:00
Brandon Thomas
b29a1a8cc2
Merge PR #1215
...
# Conflicts:
# crates/engine/src/lib.rs
# crates/engine/src/pdf.rs
# crates/ui-egui/src/lib.rs
# crates/ui-egui/src/menus.rs
# crates/ui-egui/src/panels/dialogs.rs
# crates/ui-egui/src/state.rs
# docs/gaps.md
# docs/parity-checklist.md
2026-10-15 00:22:08 -04:00
Brandon Thomas
e6b2e6eefb
Merge PR #1138
...
# Conflicts:
# crates/catalog/src/lib.rs
# crates/catalog/src/query.rs
# crates/engine/src/cmd/library.rs
# crates/ui-egui/src/tests_keywording.rs
# docs/gaps.md
2026-10-14 23:46:16 -04:00
Brandon Thomas
9ca3cd0926
Merge PR #1135
...
# Conflicts:
# Cargo.lock
# Cargo.toml
# README.md
# crates/raw/Cargo.toml
# crates/ui-egui/src/theme.rs
# xtask/src/main.rs
2026-10-14 23:23:18 -04:00
Brandon Thomas and Claude Opus 5.5
211255770f
Batch 36: #1510 's rename follows the optional name #1665 gave person_from; #1780 's test sets #974 's preview_checked; rustfmt
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-14 22:35:34 -04:00
Brandon Thomas
4660e7079e
Merge PR #1820
...
# Conflicts:
# crates/ui-egui/src/lib.rs
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-14 22:33:18 -04:00
Brandon Thomas
2fd769963e
Merge PR #1549
...
# Conflicts:
# crates/engine/src/tests_merge.rs
# crates/ui-egui/locales/de-formats.json
# crates/ui-egui/locales/es-formats.json
# crates/ui-egui/locales/fr-formats.json
# crates/ui-egui/locales/ja-formats.json
# crates/ui-egui/locales/pt-br-formats.json
# crates/ui-egui/locales/ru-formats.json
# crates/ui-egui/locales/uk-formats.json
# crates/ui-egui/locales/zh-hans-formats.json
# crates/ui-egui/locales/zh-hant-formats.json
# docs/merge.md
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-14 22:33:16 -04:00
Brandon Thomas
f306bff0dc
Merge PR #1556
...
# Conflicts:
# docs/parity-checklist.md
2026-10-14 22:33:12 -04:00
Brandon Thomas
87f0abbdb0
Merge PR #1547
...
# Conflicts:
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-14 22:33:11 -04:00
Brandon Thomas
f8d1585c6f
Merge PR #1510
...
# Conflicts:
# crates/ui-egui/locales/de-formats.json
# crates/ui-egui/locales/es-formats.json
# crates/ui-egui/locales/fr-formats.json
# crates/ui-egui/locales/ja-formats.json
# crates/ui-egui/locales/pt-br-formats.json
# crates/ui-egui/locales/ru-formats.json
# crates/ui-egui/locales/uk-formats.json
# crates/ui-egui/locales/zh-hans-formats.json
# crates/ui-egui/locales/zh-hant-formats.json
# crates/ui-egui/src/lib.rs
# docs/parity-checklist.md
2026-10-14 22:33:10 -04:00
Brandon Thomas
43f9d51207
Merge PR #1656
...
# Conflicts:
# crates/engine/src/library.rs
# crates/engine/src/tests_library.rs
# crates/ui-egui/src/menubar.rs
# docs/parity-checklist.md
2026-10-14 22:32:53 -04:00
Brandon Thomas
65f51751a1
Merge PR #1637
2026-10-14 22:32:52 -04:00
Brandon Thomas
3698f76c40
Merge PR #1601
...
# Conflicts:
# crates/ui-egui/src/headless.rs
# crates/ui-egui/src/lib.rs
# crates/ui-egui/src/state.rs
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-14 22:32:47 -04:00
Brandon Thomas
18db8588b9
Merge PR #1490
...
# Conflicts:
# docs/parity-checklist.md
# docs/ui-parity.md
2026-10-14 22:32:25 -04:00
Brandon Thomas
f03c4529c2
Merge PR #1818
...
# Conflicts:
# crates/ui-egui/locales/de.json
# crates/ui-egui/locales/es.json
# crates/ui-egui/locales/fr.json
# crates/ui-egui/locales/ja.json
# crates/ui-egui/locales/pt-br.json
# crates/ui-egui/locales/ru.json
# crates/ui-egui/locales/uk.json
# crates/ui-egui/locales/zh-hans.json
# crates/ui-egui/locales/zh-hant.json
# docs/whats-new.md
2026-10-14 22:32:01 -04:00
Brandon Thomas
bbf8fc0f0b
Merge PR #1813
2026-10-14 22:31:57 -04:00
Brandon Thomas
213b09a2e9
Merge PR #1804
2026-10-14 22:31:55 -04:00
Brandon Thomas
6dab4bdc1b
Merge PR #1793
2026-10-14 22:31:47 -04:00
Brandon Thomas
b476affb6b
Merge PR #1780
...
# Conflicts:
# docs/whats-new.md
2026-10-14 22:31:43 -04:00
Brandon Thomas
f815f88958
Merge PR #1772
...
# Conflicts:
# crates/engine/src/tests_xmp.rs
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-14 22:29:50 -04:00
Brandon Thomas
e2f6555220
Merge PR #1750
2026-10-14 22:29:42 -04:00
Brandon Thomas
a8f0f5d60b
Merge PR #1715
...
# Conflicts:
# docs/gaps.md
# docs/parity-checklist.md
# docs/target-app-parity.md
2026-10-14 22:29:33 -04:00
Brandon Thomas
28a6d97434
Merge PR #1062
...
# Conflicts:
# docs/parity-checklist.md
2026-10-14 21:58:37 -04:00
Brandon Thomas
e0ed8c0270
Merge PR #1033
...
# Conflicts:
# docs/gaps.md
# docs/parity-checklist.md
2026-10-14 21:58:33 -04:00
Brandon Thomas
0bef63b6eb
Merge PR #974
...
# Conflicts:
# crates/engine/src/cmd/mod.rs
# 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/fr-formats.json
# crates/ui-egui/locales/fr.json
# crates/ui-egui/locales/ja-formats.json
# crates/ui-egui/locales/ja.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/uk-formats.json
# crates/ui-egui/locales/uk.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/mcp.md
# docs/parity-checklist.md
2026-10-14 21:55:01 -04:00
Brandon Thomas
8735468e81
Merge PR #966
...
# Conflicts:
# crates/engine/src/tests.rs
2026-10-14 21:54:57 -04:00
Michael Anderson
e5c6e17bdb
LR-MASK-BRUSH: Shift-click draws a straight brush stroke from the last one
...
A Shift-click with the brush paints a straight line from where the last stroke ended, tapering size, feather and flow when they changed in between, as one undo step. mask.brushStroke takes connect: true for it.
2026-10-14 19:11:34 -05:00
Jason Baldwin
70a12af9a2
LR-IMP-LOCAL: browsing a Local folder keeps or picks the active photo ( #1447 )
...
library.browse (engine and the UI's background read) switched the source to the
folder without touching the selection, so the previous view's photo stayed
active: Photo Grid marked nothing, and Detail, the histogram and the info
showed a photo the folder doesn't hold. Browsing now follows library.source's
rule through a shared Session::keep_active_in_view: the active photo stays when
the folder shows it, else the folder's first photo becomes active (also as the
background read's batches arrive).
2026-10-15 00:57:42 +02:00
Jason Baldwin
5c5370fc9b
LR-LIB-REMOVE-ALBUM: removing a photo from an album keeps it in its folder ( fixes #1805 )
...
In an album the Delete key ran photo.delete, which moved the photo to
Recently Deleted, so it also left its folder views. It now removes the
selection from the album only (album.removePhotos), as in Lightroom; in a
smart album it changes nothing. Photo > Remove from Album shows in normal
albums with the Delete key; Photo > Delete Photo still deletes from the
library. album.removePhotos defaults to the album on screen and returns
{removed, album}.
2026-10-15 00:54:17 +02:00
NetterSilver and Claude Haiku 5.5
072bcfeaf1
Fix crop.rotateAspect turning a zero-size crop into a NaN rect
...
Found while testing crates/engine/src/cmd/develop.rs:676 (crop.rotateAspect); also crates/geom/src/lib.rs:180 (Rect::fit_aspect)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-15 00:31:45 +02:00