Commit Graph
3656 Commits
Author SHA1 Message Date
francoisgnandClaude Opus 5.5 103ffb07ee Integration: one 2026-10-21 section in What's New (#2506 and #2502 each opened one)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 14:07:03 +03:00
francoisgn 59c5072687 Merge PR #2430 (updated head) 2026-10-23 12:47:48 +03:00
francoisgn b85243b42f Merge PR #2279 (updated head) 2026-10-23 12:47:48 +03:00
francoisgn 9ca3b6c7bc Merge PR #2255 (updated head)
# Conflicts:
#	contributors/people.toml
2026-10-23 12:47:48 +03:00
francoisgn 7680e38add Merge upstream/main (0.13.0, incl. #2494 as merged) 2026-10-23 12:47:10 +03:00
joblonfk001 fb39a00d80 fix(web): keep undecodable files out of the picker accept list
.avif has no AV1 decoder in any build and .heic/.heif only decode when
the codecs' heif feature is enabled, so listing them let web users pick
files import would immediately report as failed. accept_list() now mirrors
lightcraft_codecs::Format::Heif::can_decode() and never offers .avif.
EXTENSIONS itself is unchanged, so files on disk are still recognised and
imported-or-reported as before.
2026-10-23 08:54:08 +08:00
Brandon ThomasandClaude Opus 5.5 23e181283c Release 0.13.0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
v0.13.0
2026-10-22 20:06:09 -04:00
Dylan M. Taylor beb044bf35 Merge pull request #2494 from storytold/sonar-fix/path-cmd-hardening
security: validate CLI paths/args in dev tools (SonarCloud S2083/S8707/S8705)
2026-10-22 19:27:49 -04:00
Dylan M. Taylor ac2d7623e3 security: tighten readable/regular file checks in CLI tools 2026-10-22 19:18:41 -04:00
helgehelge123andClaude Opus 5.5 54df21cb08 LR-LIB-CULL: a gap past an hour shows its seconds, so its text reads back the same gap (#2275)
fmt_gap wrote whole minutes past an hour, which only drag values could hit
before; with the culling value fields taking any gap up to a day, a typed
3601 s showed as "1 h 0 min" and editing that text gave 3600 s. Past an hour it
now writes "1 h 0 min 1 s" when there are seconds left (the Auto-Stack slider
shares the formatter).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 23:37:01 +02:00
francoisgn 01f4f6c5b4 Merge PR #2620: corpus tests (Z 8 / Z 6II lens warp, Hasselblad TIFF preview) 2026-10-22 23:30:27 +03:00
francoisgnandClaude Opus 5.5 98189d5311 Corpus tests: the Z 8 / Z 6II profile tests pair through the lens warp; Hasselblad TIFF previews pass
Two corpus tests fail on main with the CC0 corpus present (they skip without it, so no CI
has run them):

- camera_preview::tests::corpus_z8_uses_the_bundled_profile / corpus_z6ii_…: the test fitted
  the camera look with `lens: None`. Since 1ee751ebd (Nikon's in-file distortion for the
  Z 6II and Z 8, the same day as the tests) the camera's JPEG is matched through that warp,
  which files.rs reads with `lens_geometry` and removes from the opcodes before binning the
  proxy. The test now does the same; the app path was right all along.
- corpus_raw_decodes: coverage-1639.fff has no JPEG and hands on its 8-bit RGB image as a
  baseline TIFF (`rgb_preview`, b5dc500c5); the test only accepted JPEG / JPEG XL previews.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 23:30:04 +03:00
Val Enfys 64ac2cb315 Merge branch 'main' into contributors/add-valenfys 2026-10-22 21:21:40 +01:00
francoisgnandClaude Opus 5.5 7d572918a4 Integration: tracker rows merged from each PR's own change; Frame Rate named for the thing (#1313 vs #2195)
- docs/parity-checklist.md, docs/gaps.md, docs/target-app-parity.md: rows two PRs both
  changed had been kept twice by the doc resolution. Each row is now upstream main's row
  plus every merged PR's own edit (3-way against the PR's merge base), so main's newer
  text is kept (LR-LIB-FLAG #1013, Lanczos-3 in LR-MERGE-HDR / -PANO, LR-EXP-DIM #1620,
  gaps 8 and 10) and the PRs' additions too; LR-BEHAV-LOCALE / -LOCALIZE take main's
  Georgian and #1846's Polish. `cargo xtask parity --write` refreshed the summary.
- #1313 added "Show Frame Rate", a switch; #2195 names switches for what they show
  (menubar::tests::toggles_are_named_for_the_thing_not_show): now "Frame Rate".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 23:19:10 +03:00
Brandon ThomasandClaude Opus 5.5 479a05a0be Release 0.12.0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
v0.12.0
2026-10-22 15:39:28 -04:00
francoisgn 997a13591a Merge PR #1603: LRC-LIB-KEYWORDS: the Keyword List marks a keyword that has
# Conflicts:
#	crates/ui-egui/locales/id-formats.json
#	crates/ui-egui/locales/pl-formats.json
#	crates/ui-egui/locales/sv-formats.json
#	docs/parity-checklist.md
2026-10-22 22:31:23 +03:00
francoisgn 5426e5ca66 Merge PR #2072: Export: add Thai glyph fallback only (#2052, partial)
# Conflicts:
#	docs/gaps.md
#	docs/parity-checklist.md
2026-10-22 22:31:16 +03:00
francoisgn 35eb26f6d4 Merge PR #1644: fix(gpu): no popup when renderer falls back from DX12 at pro 2026-10-22 22:31:16 +03:00
francoisgn dee97e5ff9 Merge PR #1499: Fix graphic watermark aspect/orientation and HDR JPEG file-s
# Conflicts:
#	docs/parity-checklist.md
2026-10-22 22:31:16 +03:00
francoisgn 50cc4e293c Merge PR #1464: Bump quick-xml to 0.41 (RUSTSEC-2026-0194, RUSTSEC-2026-0195 2026-10-22 22:31:16 +03:00
francoisgn 5b4c0e79c2 Merge PR #1976: GUM-3201: Reduce guided-filter coefficient allocations 2026-10-22 22:31:15 +03:00
francoisgn 7a6299b953 Merge PR #1859: Workspace rust-version is 1.95, what the workspace needs (#1 2026-10-22 22:31:15 +03:00
francoisgn db7ab1d7ea Merge PR #2255: Contributors: add my name for the About window
# Conflicts:
#	contributors/people.toml
2026-10-22 22:31:15 +03:00
francoisgn d81600cf1c Merge PR #2507: docs: fix four dead links in README.zh-hans.md 2026-10-22 22:31:15 +03:00
francoisgn bddbcd46d2 Merge PR #1385: Issue #1184: a pull request template 2026-10-22 22:31:15 +03:00
francoisgn 9578651eab Merge PR #2541: Make control-server timeout tests independent of client resc 2026-10-22 22:31:14 +03:00
francoisgn ef0e27a140 Merge PR #2494: security: validate CLI paths/args in dev tools (SonarCloud S 2026-10-22 22:31:14 +03:00
francoisgn b3c5b25b9a Merge PR #2302: Gap 9: cargo xtask ci on every PR (Linux x64); ci --quick; o
# Conflicts:
#	CLAUDE.md
#	docs/gaps.md
#	docs/target-app-parity.md
2026-10-22 22:31:14 +03:00
francoisgn 7710af915a Merge PR #1878: LR-MERGE-HDR: click the merge preview to zoom in, drag to pa
# Conflicts:
#	docs/parity-checklist.md
2026-10-22 22:31:04 +03:00
francoisgn d1bd96187c Merge PR #2542: Write exact 1/N EXIF ExposureTime for fast shutter speeds 2026-10-22 22:31:04 +03:00
francoisgn 3807e9d5ae Merge PR #2482: LR-MERGE-HDR: full-size alignment refinement and local align 2026-10-22 22:31:04 +03:00
francoisgn 6ed7741f6f Merge PR #2502: LRC-LIB-IMPORT: month names in date templates (%B January, %
# Conflicts:
#	docs/whats-new.md
2026-10-22 22:31:04 +03:00
francoisgn b20f55ba75 Merge PR #2503: LRC-LIB-MISSING: the availability worker sweeps a list of fi 2026-10-22 22:31:04 +03:00
francoisgn 84444aa458 Merge PR #2424: LRC-LIB-SMARTCOLL: the move engine for reordering smart albu 2026-10-22 22:31:03 +03:00
francoisgn 1938bc3845 Merge PR #2422: PERF-SMART: count every smart album once per pass, not once
# Conflicts:
#	docs/whats-new.md
2026-10-22 22:31:03 +03:00
francoisgn 51d3eceb0a Merge PR #2015: #1944: keyword.export refuses library originals and writes d 2026-10-22 22:31:03 +03:00
francoisgn 007047a3bb Merge PR #2205: LR-IMP-DRAGDROP: files dragged over the window show what a d
# Conflicts:
#	crates/ui-egui/locales/cs.json
#	crates/ui-egui/locales/de.json
#	crates/ui-egui/locales/es.json
#	crates/ui-egui/locales/fi.json
#	crates/ui-egui/locales/fr.json
#	crates/ui-egui/locales/id.json
#	crates/ui-egui/locales/it.json
#	crates/ui-egui/locales/ja.json
#	crates/ui-egui/locales/ka.json
#	crates/ui-egui/locales/pl.json
#	crates/ui-egui/locales/pt-br.json
#	crates/ui-egui/locales/ru.json
#	crates/ui-egui/locales/sv.json
#	crates/ui-egui/locales/uk.json
#	crates/ui-egui/locales/vi.json
#	crates/ui-egui/locales/zh-hans.json
#	crates/ui-egui/locales/zh-hant.json
#	crates/ui-egui/src/state.rs
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-22 22:30:24 +03:00
francoisgn e297b9ab7a Merge PR #1846: i18n(pl): finish the format messages, counts right for every
# Conflicts:
#	crates/ui-egui/locales/pl-formats.json
#	docs/localization-parity.md
#	docs/localization.md
#	docs/parity-checklist.md
2026-10-22 22:30:06 +03:00
francoisgn 77f313a0f2 Merge PR #2506: Edit Capture Time leaves a capture time it can't fully read
# Conflicts:
#	crates/ui-egui/src/lib.rs
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-22 22:29:19 +03:00
francoisgn 927e071873 Merge PR #2453: Web: the page title names the open photo and unsaved changes
# Conflicts:
#	docs/web.md
2026-10-22 22:28:50 +03:00
francoisgn cbedf7b5b1 Merge PR #2455: Web: lightcraft.command refuses params that aren't a JSON ob 2026-10-22 22:28:42 +03:00
francoisgn 4abb3bc860 Merge PR #2430: fix(web): import picker accept list misses many raw formats 2026-10-22 22:28:42 +03:00
francoisgn f2ffc34b14 Merge PR #2468: Print: Japanese photo and postcard paper sizes (L判・2L・KG・はがき
# Conflicts:
#	docs/gaps.md
#	docs/parity-checklist.md
2026-10-22 22:28:41 +03:00
francoisgn 139ff42984 Merge PR #1417: Edit in PhotoCraft: say why it didn't open; find PhotoCraft 2026-10-22 22:28:41 +03:00
francoisgn a52a709ef5 Merge PR #2279: LR-LIB-CULL: adjustable burst gap and similarity in Assisted
# Conflicts:
#	docs/parity-checklist.md
2026-10-22 22:28:41 +03:00
francoisgn cd6bc4be6f Merge PR #2513: KEY-GRID: show the cycle shortcut in the View menu (#2500)
# Conflicts:
#	docs/parity-checklist.md
2026-10-22 22:28:41 +03:00
francoisgn 1bbea3346f Merge PR #2345: feat(shortcuts): Lock Aspect Ratio as a listed row on A 2026-10-22 22:28:40 +03:00
francoisgn 4e75723da5 Merge PR #2327: #2312: culling goes on from a photo rated out of the view
# Conflicts:
#	docs/parity-checklist.md
#	docs/whats-new.md
2026-10-22 22:28:40 +03:00
francoisgn be5735abf4 Merge PR #2501: LR-VIEW-INFOOVERLAY: the info overlay clears the macOS windo 2026-10-22 22:28:40 +03:00
francoisgn b32b4383f5 Merge PR #1074: LR-VIEW-ZOOM: diagnostic overlays render zoom windows; soft
# Conflicts:
#	docs/gaps.md
#	docs/parity-checklist.md
#	docs/ui-parity.md
2026-10-22 22:28:28 +03:00