Matthew James Sivak and Claude Opus 5.5
c0a1a6443a
LR-VIEW-ZOOM: choose the drag draft size from what the render costs ( #330 )
...
Review follow-up. "A GPU device exists" does not mean the GPU draws the
view: soft proofs and the HDR range render on the CPU, and a LUT profile,
refined masks or a photo past a GPU limit fall back per render. Those drags
had become full-size CPU renders.
region::DragScale now picks the draft size when a drag starts and keeps it
until the drag ends (no resolution jump mid-gesture): full size where the
GPU draws the view (not soft-proofed, no HDR range) and no earlier drag of
the same control on this photo went over the 16 ms slider budget at full
size; 0.6 otherwise. Full-size drafts are timed as they land (the first,
rebuilding stage caches, is left out; the median decides).
ViewSizes carries one `draft: Option<f32>` instead of a scale and a flag
that could disagree. Tests: DragScale unit tests (budget, lock, hostile
times) and headless drags for a remembered slow drag and a soft-proofed
drag, each checked to fail without its guard.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 17:27:24 +02:00
Matthew James Sivak and Claude Opus 5.5
7421407d25
LR-VIEW-ZOOM: full-size slider-drag drafts when the GPU renders ( #330 )
...
A slider drag rendered the loupe's whole frame at 0.6 of its size, so the
fit view went soft while dragging. On the GPU a canvas-sized frame takes a
few ms, so drags now render at full size there; the CPU keeps the 0.6 draft
(region::drag_scale, CPU_DRAFT_SCALE). The no-window path's canvas cap now
follows an explicit `drafting` flag instead of `scale < 1.0`, so a GPU drag
at 1:1 still never renders every pixel of the photo each frame.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 17:27:24 +02:00
Fabio Lussi and Claude Opus 5.5
15e308c3eb
Sort ties by file name, then id
...
Photos that tie on the sort key (equal ratings, one import batch, a
burst within a second) now sort by file name before id, in
Catalog::query, Recently Added and auto-stack. Split out of #641 .
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 17:26:13 +02:00
Jason Baldwin
6ec7044ebf
Merge slideshow-templates into slideshow-export (origin/main: batch 31; whats-new keeps main's Reliability entry, parity summary refreshed)
2026-10-11 17:18:12 +02:00
Jason Baldwin
54c1048b57
Merge slideshow-titles into slideshow-templates (origin/main: batch 31; open_session keeps both the slide templates dir and main's apple_photos_background, formats locales merged, whats-new keeps main's Reliability entry, parity summary refreshed)
2026-10-11 17:16:36 +02:00
Jason Baldwin
d485dc9011
Merge slideshow-overlays into slideshow-titles (origin/main: batch 31; whats-new keeps main's Reliability entry)
2026-10-11 17:14:04 +02:00
Jason Baldwin
b2036ba50d
Merge slideshow-composer into slideshow-overlays (origin/main: batch 31; whats-new keeps main's Reliability entry)
2026-10-11 17:12:42 +02:00
Jason Baldwin
2138175826
Merge slideshow-playback into slideshow-composer (origin/main: batch 31; locales merged keeping main's values, whats-new keeps main's Reliability entry, parity summary refreshed)
2026-10-11 17:11:12 +02:00
Jason Baldwin
d14a44630d
Merge origin/main into slideshow-playback (whats-new: batch 31's Reliability entry kept, Slideshow playback after it under 2026-10-11; parity summary refreshed)
2026-10-11 17:09:28 +02:00
Alfons Hoogervorst and Claude Sonnet 5.5
8c19c9f60a
LR-IMP-CAMERA-COVERAGE: Leica Q3 verified by a recorded check of 38 private DNGs (236 models verified)
...
All 38 files decode from sensor data and develop at full size (9520x6336 and
6336x9520) without error; mean CIE76 dE to the camera JPEG is 6.3-13.9 at 400 px.
The files are not committed and the evidence entry carries no path. Leica is now
14 verified / 47 unverified, the Leica bucket on a verified body 5% -> 21%; the
weighted shares (85% decode, 42% on a verified body) do not move.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-11 16:54:06 +02:00
Jason Baldwin
ccfff38548
Merge slideshow-templates into slideshow-export (origin/main: sidebar and slideshow_export modules side by side; whats-new and tracker summary)
2026-10-11 16:33:00 +02:00
Jason Baldwin
b061563383
Merge slideshow-titles into slideshow-templates (origin/main: headless sessions load main's SAM3 model and the slide templates; format-locale keys from both; whats-new and tracker summary)
2026-10-11 16:30:20 +02:00
Jason Baldwin
41c9cd3817
Merge slideshow-overlays into slideshow-titles (origin/main: title-screen RenderResult gains main's gpu_fallback field; tracker summary refreshed)
2026-10-11 16:27:59 +02:00
Jason Baldwin
56d78344c1
Merge slideshow-composer into slideshow-overlays (origin/main: watermark draws through the shared TextLayout with main's quarter-turn rotation, separate insets and preview floor scale; overlay watermark sanitizes insetX/insetY/rotation and maps legacy inset)
2026-10-11 16:26:40 +02:00
Jason Baldwin
efaa39b8b5
Merge slideshow-playback into slideshow-composer (origin/main: geocode + slideshow crates side by side in the manifests, locale keys from both, tracker summary refreshed)
2026-10-11 16:22:50 +02:00
Jason Baldwin
7b0fc19ebb
Merge origin/main into slideshow-playback (icons: Play/Pause beside grading and appearance icons; settings: Slideshow tab beside appearance cards; render: Slide and CompareRegion slots; tracker summary and whats-new)
2026-10-11 16:19:50 +02:00
dev-null-undefined and Claude
9e2f383166
LR-PROF-CAMERACOLOR: ILCE-7RM6 colour results — corrected counts
...
Co-Authored-By: Claude <noreply@anthropic.com >
2026-10-11 16:10:31 +02:00
dev-null-undefined and Claude
a90cdcd2f3
LR-PROF-CAMERACOLOR: ILCE-7RM6 colour results — per-file fit, no pooled profile
...
Co-Authored-By: Claude <noreply@anthropic.com >
2026-10-11 16:10:16 +02:00
dev-null-undefined
f4761b459c
LR-PROF-CAMERACOLOR: camera-JPEG colour fit accepts previews above 64 MP (ILCE-7RM6 full frame)
2026-10-11 16:09:43 +02:00
Claude
ea51574172
Merge batch 30 fixes
2026-10-11 13:37:49 +00:00
Claude
f01d3304e2
Batch 30: parity summary refreshed (cargo xtask parity --write)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01BKWB9TCnvzJHV6xMLAj2J4
2026-10-11 13:37:12 +00:00
Claude
45b174a781
Batch 30: one tracker row each for LR-PREF-DISPLAY / -PERFORMANCE / -PEOPLE (a rename-crossing merge doubled them)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01BKWB9TCnvzJHV6xMLAj2J4
2026-10-11 13:34:22 +00:00
Claude
4ebb934c56
Merge PR #677
...
On merge: the HDR histogram is applied in develop_reporting (#712 split develop), is skipped for
draft renders (a second render per drag tick), and HdrBins::bin clamps a hand-built split so it
can't underflow (test hdr_bins_with_any_split_stay_in_range).
2026-10-11 13:09:34 +00:00
Jason Baldwin
b0972e4488
Merge slideshow-templates into slideshow-export (origin/main: integration batch 26, #975 ; no conflicts)
2026-10-11 15:05:18 +02:00
Jason Baldwin
7e4ff5fddf
Merge slideshow-titles into slideshow-templates (origin/main: integration batch 26, #975 ; no conflicts)
2026-10-11 15:05:04 +02:00
Jason Baldwin
857c15f3b3
Merge slideshow-overlays into slideshow-titles (origin/main: integration batch 26, #975 ; no conflicts)
2026-10-11 15:05:04 +02:00
Jason Baldwin
29203d6eec
Merge slideshow-composer into slideshow-overlays (origin/main: integration batch 26, #975 ; no conflicts)
2026-10-11 15:05:04 +02:00
Jason Baldwin
ee8b56f1db
Merge slideshow-playback into slideshow-composer (origin/main: integration batch 26, #975 ; Cargo.lock: lightcraft-slideshow 0.6.0)
2026-10-11 15:05:04 +02:00
Jason Baldwin
8d692ed0a9
Merge origin/main into slideshow-playback (menus.rs ui_enabled: keep main's compare.set and this branch's slideshow.* arm)
2026-10-11 14:51:59 +02:00
Claude
9978dc739d
Merge PR #643
...
# Conflicts:
# crates/engine/src/export.rs
# crates/engine/src/tests_export.rs
# crates/mcp/src/headless.rs
# crates/mcp/src/tools.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/parity-checklist.md
# docs/whats-new.md
2026-10-11 12:43:20 +00:00
Claude
0d5f8b1ea4
Merge PR #879
...
# Conflicts:
# docs/whats-new.md
2026-10-11 12:42:19 +00:00
Claude
705c59cb42
Docs: PSD export is no longer an open file-write gap ( #953 ); the CLI help lists .psd
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01BKWB9TCnvzJHV6xMLAj2J4
2026-10-11 12:42:10 +00:00
Claude
6bc25940b8
Merge PR #780 (via claude/integrate-780)
2026-10-11 12:41:50 +00:00
Claude
255b23816d
LR-EXP-PSD: Edit In makes a copy of every selected photo and opens them all ( #920 )
...
photo.editExternal takes the selection (or ids, at most 50): each photo gets its own -Edit copy
stacked on its original, the copies are selected and returned in copies (path / id / original
still name the first). Photo ▸ Edit In opens each copy in the editor.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01BKWB9TCnvzJHV6xMLAj2J4
2026-10-11 12:40:58 +00:00
Claude
4a0d04b994
Merge PR #780
...
JPEG XL export via the pure-Rust jixel crate (robmdunn; fixes #247 ).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01BKWB9TCnvzJHV6xMLAj2J4
2026-10-11 12:40:55 +00:00
Claude
4ec3494733
Merge PR #434
...
On merge: Lightroom's default profiles (Adobe Standard, Adobe Color), named by nearly every sidecar,
give no camera-profile warning; other profiles still do (test default_lightroom_profiles_are_not_reported).
The import help string keeps main's onDeleted wording and gains warnings.
2026-10-11 12:38:16 +00:00
Claude
e4a248c91f
Merge PR #755
...
On merge: the quick preview path orients like the whole-file path (preview_orientation with the
raw's header prefix, so a portrait raw whose embedded JPEG carries no orientation is not sideways),
and its doc links point at preview_window.
2026-10-11 12:37:14 +00:00
Claude
37b26c56a3
Merge batch 29b ( #946 , #947 , #953 , #950 )
...
# Conflicts:
# Cargo.toml
# crates/engine/src/rename.rs
# 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
# crates/ui-egui/src/icons.rs
# crates/ui-egui/src/lib.rs
# crates/ui-egui/src/menubar.rs
# crates/ui-egui/src/menus.rs
# crates/ui-egui/src/panels/left.rs
# docs/whats-new.md
2026-10-11 12:08:44 +00:00
Claude
10ebeccdc8
Merge PR #950
...
# 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
# crates/ui-egui/src/lib.rs
# crates/ui-egui/src/panels/dialogs.rs
# crates/ui-egui/src/state.rs
# docs/parity-checklist.md
2026-10-11 12:06:31 +00:00
Claude
acdfa08f00
Merge branch 'claude/fix-922-denoise-toggle'
...
# Conflicts:
# docs/parity-checklist.md
2026-10-11 12:04:31 +00:00
Claude
b89fb8bbab
Merge branch 'claude/fix-942-cube-import-messages'
...
# Conflicts:
# docs/parity-checklist.md
2026-10-11 12:04:31 +00:00
Claude
e1016acc0f
Merge PR #953
...
# Conflicts:
# crates/codecs/src/lib.rs
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-11 12:03:58 +00:00
Claude
8c4898ec04
Merge PR #645
...
# Conflicts:
# crates/engine/src/media.rs
# crates/pipeline/src/finish.rs
# crates/pipeline/src/local.rs
2026-10-11 12:03:53 +00:00
Claude
59011d114f
Merge PR #617
...
# Conflicts:
# docs/parity-checklist.md
2026-10-11 12:03:31 +00:00
Claude
33686e6951
Merge PR #734
...
# Conflicts:
# ROADMAP.md
# crates/engine/src/media.rs
# crates/raw/tests/corpus.rs
# docs/parity-checklist.md
2026-10-11 12:03:15 +00:00
Claude
45a6a42ebf
Merge PR #947
...
# Conflicts:
# 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
2026-10-11 12:02:51 +00:00
Claude
a0e422ce4a
Merge PR #752
...
# Conflicts:
# crates/engine/src/cmd/develop.rs
# crates/engine/src/files.rs
# docs/mcp.md
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-11 12:02:46 +00:00
Claude
6b22c5ca25
Merge PR #789
...
# 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
# crates/ui-egui/src/control.rs
# crates/ui-egui/src/panels/left.rs
# docs/parity-checklist.md
2026-10-11 12:02:10 +00:00
Claude
76fc27a7bc
Merge PR #791
...
# Conflicts:
# Cargo.lock
# apps/lightcraft/src/main.rs
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-11 12:01:19 +00:00
Claude
c9d131bfbc
Merge PR #946
...
# Conflicts:
# crates/engine/src/library.rs
# 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
# crates/ui-egui/src/menus.rs
# crates/ui-egui/src/panels/settings.rs
# crates/ui-egui/src/state.rs
# docs/parity-checklist.md
# docs/whats-new.md
2026-10-11 12:01:18 +00:00