Commit Graph
4948 Commits
Author SHA1 Message Date
FredApps 1888e8708f Merge storytold/main into feat/windows-monitor-profile 2026-11-05 04:05:15 +01:00
JordyUSAandClaude Opus 5.5 c77770ee44 LR-VIEW-HISTOGRAM: the histogram and HDR settings flow between SDR and HDR (#1460)
Pressing HDR no longer swaps the layout in one frame. The SDR curve squeezes
into the HDR layout's SDR section as the HDR section and legend open, and
Visualize HDR and HDR Headroom slide open with it (LR-EDIT-HDR-MODE); turning
HDR off runs it back. An SDR edit never shows an HDR histogram.

The flow lives in its own module, panels/edit/hdr_flow.rs, with small hooks in
histogram.rs and sliders.rs.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-05 03:27:44 +01:00
김준호 5800e13109 LR-EXP-WATERMARK: decomposed Korean and Vietnamese export text draws whole (#3480) (#3489)
* LR-EXP-WATERMARK: decomposed Korean and Vietnamese export text draws whole (#3480)

Export text (contact-sheet captions, watermarks, slideshow overlays, print
page text) laid each char out as its own glyph. macOS often stores Korean
file names in NFD, so a caption for 제주도.jpg drew as loose jamo, and NFD
Vietnamese letters lost their stacked marks (#3277).

TextLayout::new now composes the text to NFC first (unicode-normalization,
MIT OR Apache-2.0). Every Hangul syllable and Vietnamese letter has a
composed form; sequences without one draw as before.

* LR-EXP-WATERMARK: CJK compatibility ideographs keep their code points in export text (#3480)

NFC maps each CJK compatibility ideograph (U+F900-U+FAFF, U+2F800-U+2FA1F)
to its unified form, so a name spelled with 塚 (U+FA10) would draw as 塚
(U+585A). Compose the text around them and keep those characters as they
are.

* LR-EXP-WATERMARK: export text already in NFC stays as it is (#3480)
2026-11-05 02:57:08 +01:00
Dylan M. Taylor 0b5e6c7a06 Pass the Linux signing key to the release workflow (#3759) 2026-11-04 17:45:13 -05:00
insideTheFluxandClaude Opus 5.5 a9f766bf60 Merge storytold/main into feat/windows-monitor-profile
Conflicts only in the docs' "Last updated" header lines (main's newer entries are at the front too): main's
line with this branch's entry kept in front.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CvoftP5JSqAEJ9t7FSczTs
2026-11-04 08:22:46 -08:00
FredApps ae7ac42a10 Merge pull request #3738 from FredApps/lens-db-log-2511
LR-EDIT-OPTICS-PROFILE: the log says where the lens database was read from and what it holds, and warns when it has no lenses
2026-11-04 16:03:50 +01:00
FredApps 08c9d59ae6 LR-EDIT-OPTICS-PROFILE: the no-lenses warning gives the counts; an unfinished download is logged at info (#2511) 2026-11-04 15:30:32 +01:00
FredApps 18b914b9ff LR-EDIT-OPTICS-PROFILE: the log says where the lens database was read from and what it holds, and warns when it has no lenses (#2511) 2026-11-04 14:44:54 +01:00
FredApps 79e900c120 Merge pull request #3073 from OneSlips/pr/lens-database-download
LR-EDIT-OPTICS-PROFILE: the lens database is offered on first launch and downloads on request, the library is looked up, Optics names the profile
2026-11-04 14:40:39 +01:00
FredApps 86092b330e LR-EDIT-OPTICS-PROFILE: merge main (#2676: unknown crop factors stay unknown; its lookup test expects the database source) 2026-11-04 14:00:53 +01:00
FredApps f30dd5e5f7 Merge pull request #2676 from r3d42-git/r3d/upstream-crop-factor-pr
LR-EDIT-OPTICS-PROFILE: preserve unknown crop factors in lens profiles
2026-11-04 13:58:07 +01:00
FredApps 5da455a3c5 LR-EDIT-OPTICS-PROFILE: merge main (#3144: ILCE-7M3 distortion, kept in the gaps and checklist rows) 2026-11-04 13:36:25 +01:00
FredApps ac55490414 Merge pull request #3144 from janickm/dev/janickm/a7m3-distortion
LR-EDIT-OPTICS-PROFILE: enable Sony ILCE-7M3 embedded distortion correction (rebase of #1384)
2026-11-04 13:35:27 +01:00
FredApps 9423635e8c LR-EDIT-OPTICS-PROFILE: merge main (#3550 took catalog format 10; EmbeddedLens.source moves to format 11) 2026-11-04 13:21:54 +01:00
FredApps b28661a260 Merge pull request #3550 from OneSlips/pr/mask-on-photo
LR-MASK-GEOMETRY: masks stay on the photo under lens corrections, Upright, Transform and Rotate
2026-11-04 13:18:28 +01:00
FredApps be6a90064f Merge remote-tracking branch 'origin/main' into pr-2676
# Conflicts:
#	crates/lensdb/src/lib.rs
2026-11-04 13:14:40 +01:00
FredApps fd8b0b236d Merge pull request #3697 from storytold/fix/sec-lensdb-profile-copies
security(lensdb): bound the names calibrations copy, read database files through the opened regular file
2026-11-04 13:07:16 +01:00
FredApps 0bcc31359e Merge remote-tracking branch 'origin/main' into pr-3073
# Conflicts:
#	docs/gaps.md
2026-11-04 12:52:35 +01:00
FredApps 5d97498ab7 Merge remote-tracking branch 'origin/main' into pr-3144
# Conflicts:
#	docs/raw-parity.md
2026-11-04 12:47:08 +01:00
FredApps b4757824ba Merge pull request #2733 from Enthendor/sigma-10-18-wide-end
LR-EDIT-OPTICS-PROFILE: Sigma 10-18 mm exception on the ILCE-6700
2026-11-04 12:46:48 +01:00
FredApps 1d37685923 Merge remote-tracking branch 'origin/main' into pr-3144
# Conflicts:
#	docs/whats-new.md
2026-11-04 12:45:09 +01:00
FredApps 32b00266f6 Merge pull request #3012 from emmertex/upstream-pr/lens-crop-inside
#2361: lens corrections crop inside the corrected photo
2026-11-04 12:43:59 +01:00
FredApps 61a8560c74 Merge remote-tracking branch 'origin/main' into pr-3550 2026-11-04 12:33:33 +01:00
FredApps 9439bf29e2 Merge remote-tracking branch 'origin/main' into pr-3073 2026-11-04 12:25:29 +01:00
FredApps ecbb77442c Merge remote-tracking branch 'origin/main' into pr-3697
# Conflicts:
#	crates/lensdb/src/tests.rs
2026-11-04 12:25:18 +01:00
FredApps f1ecfb724c Merge remote-tracking branch 'origin/main' into pr-2676 2026-11-04 12:23:28 +01:00
FredApps 483650c32b Merge pull request #3660 from eliets2/fix/issue-2249-nikon-z-400mm-f-4-5-z-tc-1-4x-lensfun-co
Issue #2249: a teleconverter combination never inherits the bare lens's profile
2026-11-04 12:23:14 +01:00
FredApps ca557c7d4e Merge remote-tracking branch 'origin/main' into pr-3550
# Conflicts:
#	docs/parity-checklist.md
2026-11-04 12:19:58 +01:00
FredApps 36b244286a Merge remote-tracking branch 'origin/main' into pr-3073
# Conflicts:
#	docs/gaps.md
2026-11-04 12:11:30 +01:00
FredApps 0852c21a9d Merge remote-tracking branch 'origin/main' into pr-3144
# Conflicts:
#	crates/engine/src/media/source.rs
#	docs/gaps.md
#	docs/parity-checklist.md
#	docs/raw-parity.md
#	docs/whats-new.md
2026-11-04 12:07:38 +01:00
FredApps 99a6728fd0 Merge remote-tracking branch 'origin/main' into pr-3012
# Conflicts:
#	docs/whats-new.md
2026-11-04 11:59:15 +01:00
FredApps 2a7fe1fb1e Merge remote-tracking branch 'origin/main' into pr-2676 2026-11-04 11:59:07 +01:00
FredApps c1a1896d30 Merge remote-tracking branch 'origin/main' into pr-2733 2026-11-04 11:59:02 +01:00
FredApps 1c1eec5179 security(lensdb): refuse a non-regular *.xml before opening it (opening a FIFO blocks)
The pathname is checked before File::open as well as the opened file after it: File::open on a FIFO blocks until a writer appears, so the post-open check alone never ran for one. Adds a unix regression test that hung before the fix.
2026-11-04 11:58:39 +01:00
FredApps 0a5a53c1da Merge remote-tracking branch 'origin/main' into pr-3697 2026-11-04 11:56:16 +01:00
FredApps c8887dabca Merge remote-tracking branch 'origin/main' into pr-3660
# Conflicts:
#	crates/lensdb/src/tests.rs
2026-11-04 11:55:19 +01:00
Dylan M. Taylor 4d42507bbc security(raster, segment): resample tall narrow images columns first (#3678) 2026-11-03 23:00:51 -05:00
Dylan M. Taylor 1c5cbce835 security(engine): the library folder is protected from folder.move however its path is spelled (#3676) 2026-11-03 23:00:31 -05:00
Dylan M. Taylor f618fc06a7 security: staging and probe files are created new, never written through an existing entry (#3673) 2026-11-03 22:59:41 -05:00
Dylan M. Taylor 7b80ffc32b engine: font paths the build embeds stay inside the asset checkout and print as one cargo line (#3670) 2026-11-03 22:59:11 -05:00
Dylan M. Taylor ab39f7dbbc web: a restore plans its writes first, each storage key once and within the file's bytes; workers are capped (#3669) 2026-11-03 22:58:42 -05:00
Dylan M. Taylor 00b020cf2f catalog: bound keyword list path expansion and index synonym merges (#3641)
* catalog: bound keyword list path expansion and index synonym merges

* address review: hold keyword list writer to the path budget the reader enforces

* address review: charge the emitted parent path in the keyword list writer
2026-11-03 22:51:11 -05:00
Dylan M. Taylor 9eb7b25e31 security(engine): sidecar copies, backups and version checks read regular files only (#3677)
* security(engine): sidecar copies, backups and version checks read regular files only

* address review: open the sidecar source and check the handle is the regular file that was checked
2026-11-03 22:50:49 -05:00
Dylan M. Taylor b0c4aa8cc8 security(raw): linear sparse planning, distinct-byte allocation bound, opcode list budget, ORF strip length (#3679)
* security(raw): linear sparse planning, distinct-byte allocation bound, opcode list budget, ORF strip length

* address review: zero opcode cost for no-op ops, compact the sparse plan buffer
2026-11-03 22:32:53 -05:00
Dylan M. Taylor f7e43a4a45 address review: charge name allocations and only kept calibrations to the copy budget 2026-11-03 23:58:25 +00:00
Dylan M. Taylor 03e03f382e security(tests): test fixture directories are created exclusively, never reused from a predictable name (#3721) 2026-11-03 17:49:04 -05:00
Dylan M. Taylor 5c96a70058 security(logging): a log message cannot begin a record of its own (#3720) 2026-11-03 17:48:44 -05:00
Dylan M. Taylor b2c1d7064a security(geocode): bound dataset reads, per-line fields, and the inflate error text (#3718) 2026-11-03 17:48:25 -05:00
Dylan M. Taylor a5803fe49f security(engine, faces): index repeated membership scans in photo move, keywords, import planning, sync and rename (#3709) 2026-11-03 17:48:05 -05:00
Dylan M. Taylor a93172c2f7 security(engine): Find Missing Photos hashes only regular files, no further than their size (#3704) 2026-11-03 17:47:46 -05:00