| MENU-HELP-HELP: on macOS Check for Updates… is in the app menu, and Help opens with LightCraft Help (⇧⌘?) | open | 0.00 | 0 | +135 −20 | nledford (PR #3202) | 2026-10-28 |
| LR-BEHAV-LOCALE: the Edit menu drops its 18-row Language submenu; Settings has the choice | open | 0.00 | 0 | +98 −67 | nledford (PR #3201) | 2026-10-28 |
| MENU-BAR: shortcut hints on macOS list modifiers in the menu bar's order (⇧⌘I, not ⌘⇧I) | open | 0.00 | 0 | +40 −18 | nledford (PR #3200) | 2026-10-28 |
| Issue #3191: write the DNG WhiteLevel as LONG, never RATIONAL | open | 0.00 | 0 | +100 −8 | Livia-Rasp (PR #3199) | 2026-10-28 |
| CI: satisfy Rust 1.95 Clippy checks | open | 0.00 | 0 | +3 −5 | thebiguno (PR #3198) | 2026-10-28 |
| Issue #3191: encode DNG WhiteLevel tag as LONG instead of RATIONAL | open | 0.00 | 0 | +19 −7 | kk376 (PR #3197) | 2026-10-28 |
| MENU-BAR: the macOS menu bar keeps every row when two rows run the same command | open | 0.00 | 0 | +141 −49 | nledford (PR #3196) | 2026-10-28 |
| LR-MASK-BRUSH: preserve Lightroom brush feathering and erasures | open | 0.00 | 0 | +133 −8 | thebiguno (PR #3194) | 2026-10-28 |
| Bump winit for Wayland gestures and drag-and-drop support | open | 0.00 | 0 | +1 −1 | benevolentbot (PR #3192) | 2026-10-28 |
| Drop the sign from slider text that rounds to zero | open | 0.00 | 0 | +15 −0 | Silvertree2010 (PR #3188) | 2026-10-28 |
| Hidden entries: folder walks read no extra metadata on macOS; auto-import skips hidden files (follow-up to #3045) | open | 0.00 | 0 | +125 −22 | THEtheChad (PR #3185) | 2026-10-28 |
| Disarm color picking when adding mask components | open | 0.00 | 0 | +26 −0 | TheGalitube (PR #3182) | 2026-10-28 |
| LR-BEHAV-SIDEBAR-KEYS: the keys' model for the left sidebar: the mode, its cursor and its ring (no caller yet) | open | 0.00 | 0 | +1685 −19 | nledford (PR #3179) | 2026-10-28 |
| LR-IMP-ADD-DIALOG: an import's probe opens each file once | open | 0.00 | 0 | +36 −6 | nledford (PR #3176) | 2026-10-28 |
| MENU-APP-UPDATES: --no-update-check skips the startup update check | open | 0.00 | 0 | +101 −21 | nledford (PR #3171) | 2026-10-28 |
| LRC-LIB-DUPLICATES: Find Duplicates (exact copies and same-picture-saved-again, no AI model) | open | 0.00 | 0 | +902 −15 | sm18lr88 (PR #3169) | 2026-10-28 |
| LR-BEHAV-DIALOGS: a one-line prompt that's refused stays open and says why | open | 0.00 | 0 | +160 −4 | nledford (PR #3167) | 2026-10-28 |
| LRC-LIB-LIBFOLDERS: a folder made with New Folder on Disk… appears in Folders at once | open | 0.00 | 0 | +624 −55 | nledford (PR #3166) | 2026-10-28 |
| Reject signed list indexes in indexed develop control ids | open | 0.00 | 0 | +15 −0 | Silvertree2010 (PR #3165) | 2026-10-28 |
| LR-UI-TRACK-SHADE: grey slider tracks show which way they take the photo | open | 0.00 | 0 | +1183 −286 | OneSlips (PR #3164) | 2026-10-28 |
| LR-UI-TOOL-ROW: tools in a row under the histogram, histogram fixed above the scrolling panel | open | 0.00 | 0 | +1191 −268 | OneSlips (PR #3158) | 2026-10-28 |
| LRC-LIB-FILTERBAR: every filter change goes through one step that leaves out what the source shown owns | open | 0.00 | 0 | +566 −265 | nledford (PR #3157) | 2026-10-28 |
| LR-BEHAV-TEXTFIELD: an edit in progress is saved however its field is left, except Esc | open | 0.00 | 0 | +1170 −135 | nledford (PR #3156) | 2026-10-28 |
| LR-UI-DENSE-ROWS: one-line slider rows with a fitted, right-aligned name column | open | 0.00 | 0 | +1002 −247 | OneSlips (PR #3155) | 2026-10-28 |
| Issue #1588: one bad Lightroom record costs that record, not the import | open | 0.00 | 0 | +1089 −193 | THEtheChad (PR #3152) | 2026-10-28 |
| LR-BEHAV-BG-TASKS: every other job says how it ended (stacked on #3150) | open | 0.00 | 0 | +1686 −222 | nledford (PR #3151) | 2026-10-28 |
| LR-BEHAV-BG-TASKS: exports and imports say how they ended (stacked on #1711) | open | 0.00 | 0 | +1380 −132 | nledford (PR #3150) | 2026-10-28 |
| Issue #3056: Paste Selected Settings pastes crop and Remove left out of the copy | open | 0.00 | 0 | +550 −57 | THEtheChad (PR #3148) | 2026-10-28 |
| i18n(ru): 217 strings the Russian catalog was missing | open | 0.00 | 0 | +218 −1 | JaffarSk24 (PR #3147) | 2026-10-28 |
| LR-BEHAV-LOCALE: the desktop app starts in the system's language | open | 0.00 | 0 | +43 −9 | JaffarSk24 (PR #3146) | 2026-10-28 |
| Issue #2165: a Lightroom collection that can't nest goes under the nearest set instead of failing the import | open | 0.00 | 0 | +336 −6 | THEtheChad (PR #3145) | 2026-10-28 |
| LR-EDIT-OPTICS-PROFILE: enable Sony ILCE-7M3 embedded distortion correction (rebase of #1384) | open | 0.00 | 0 | +548 −21 | janickm (PR #3144) | 2026-10-28 |
| Issue #3114: Lightroom catalogs import into libraries on exFAT drives | open | 0.00 | 0 | +445 −46 | THEtheChad (PR #3143) | 2026-10-28 |
| Issue #2589: a Lightroom import says where each catalog photo went | open | 0.00 | 0 | +995 −141 | THEtheChad (PR #3142) | 2026-10-28 |
| Issue #2589: a Lightroom import never creates a photo already in Recently Deleted | open | 0.00 | 0 | +403 −18 | THEtheChad (PR #3141) | 2026-10-28 |
| Add GFX100S II to the spectral camera matrix table | open | 0.00 | 0 | +10 −1 | eliets2 (PR #3139) | 2026-10-28 |
| LR-PROF-CAMERACOLOR: align CR3 calibration through resolved lens profiles | open | 0.00 | 0 | +990 −210 | r3d42-git (PR #3138) | 2026-10-28 |
| LR-IMP-LOCAL: update capture time on reload and auto-reload changed files in local folders | open | 0.00 | 0 | +465 −45 | Berschi (PR #3137) | 2026-10-28 |
| LR-CI: fix Rust 1.95 lints and standard-font menu hints | open | 0.00 | 0 | +171 −164 | r3d42-git (PR #3136) | 2026-10-28 |
| fix(meta): cap Rational and SRational tag rows at 16 values like every array (#3133) | open | 0.00 | 0 | +16 −2 | rahul05ranjan (PR #3135) | 2026-10-28 |
| fix(meta): read the DateTime offset with unsigned_abs (#3132) | open | 0.00 | 0 | +16 −2 | rahul05ranjan (PR #3134) | 2026-10-28 |
| Issue #3071: rayon's global pool and the ad-hoc worker threads have names | open | 0.00 | 0 | +128 −9 | THEtheChad (PR #3126) | 2026-10-28 |
| LC-003: reject non-Unicode CLI arguments without panicking | open | 0.00 | 0 | +47 −1 | DAnaeto (PR #3124) | 2026-10-28 |
| LC-001: stop commands after failed imports | open | 0.00 | 0 | +264 −8 | DAnaeto (PR #3123) | 2026-10-28 |
| LC-002: reject non-object script parameters | open | 0.00 | 0 | +31 −1 | DAnaeto (PR #3122) | 2026-10-28 |
| PERF-CATALOG: a smart album's per-photo test stops storing an answer nothing can read | open | 0.00 | 0 | +4 −2 | nledford (PR #3121) | 2026-10-28 |
| Issue #3063: a test settle that times out fails with what was still busy; settle is must_use | open | 0.00 | 0 | +837 −721 | THEtheChad (PR #3120) | 2026-10-28 |
| Issue #3072: memory sizing honours cgroup limits (containers, CI runners, systemd scopes) | open | 0.00 | 0 | +903 −20 | THEtheChad (PR #3118) | 2026-10-28 |
| Issue #3068: GPU device creation gives up after a time limit instead of hanging | open | 0.00 | 0 | +463 −18 | THEtheChad (PR #3117) | 2026-10-28 |
| LR-EXP-TYPE: transparent sources keep their alpha in PNG, TIFF and WebP exports (#2976) | open | 0.00 | 0 | +759 −41 | Peaperfish (PR #3116) | 2026-10-28 |
| LR-BEHAV-MULTISELECT: batch keyword delete and move look keywords up by level instead of scanning the selection (stacked on #2757) | open | 0.00 | 0 | +906 −62 | nledford (PR #3115) | 2026-10-28 |
| Issue #3067: ui-egui test apps render on two workers, not six (peak −22 %) | open | 0.00 | 0 | +39 −2 | THEtheChad (PR #3113) | 2026-10-28 |
| xtask: ai-bench measures face recognition on LFW | open | 0.00 | 0 | +1827 −1 | sm18lr88 (PR #3112) | 2026-10-28 |
| xtask: ai-bench measures face detection on WIDER FACE validation | open | 0.00 | 0 | +1134 −1 | sm18lr88 (PR #3110) | 2026-10-28 |
| AI masking with SAM 3, startup model pre-loading & Sony a6400 lens support | open | 0.00 | 0 | +1428 −173 | LeoCanta42 (PR #3109) | 2026-10-28 |
| LR-EXP-QUALITY: a JPEG size limit reports the quality it settled on and warns when tight (#3033) | open | 0.00 | 0 | +201 −25 | benluiwj (PR #3105) | 2026-10-28 |
| Issue #3066: each ui-egui test app's caches are sized for its test's share of memory | open | 0.00 | 0 | +475 −13 | THEtheChad (PR #3100) | 2026-10-28 |
| Issue #3070: the CLI's refused-connection tests use a free port, not 18437 | open | 0.00 | 0 | +23 −8 | THEtheChad (PR #3098) | 2026-10-28 |
| Cr3 white level saturation | open | 0.00 | 0 | +393 −39 | jensgoemaere (PR #3097) | 2026-10-28 |
| Issue #3064: tests stop asserting on wall-clock time; their deadlines stretch with LIGHTCRAFT_TIME_SCALE | open | 0.00 | 0 | +959 −145 | THEtheChad (PR #3096) | 2026-10-28 |
| LRC-LIB-KEYWORDS, LRC-LIB-LIBFOLDERS: undo and redo carry what a keyword, person or folder step did to the filter (stacked on #3157) | open | 0.00 | 0 | +1227 −270 | nledford (PR #3093) | 2026-10-28 |
| faces: YuNet looks at photos up to 1024 px in their own shape, not 640 x 640 | open | 0.00 | 0 | +496 −97 | sm18lr88 (PR #3092) | 2026-10-28 |
| LR-MASK-OBJECTS: Settings can remove the SAM 3 model, with its size on the button | open | 0.00 | 0 | +262 −6 | sm18lr88 (PR #3091) | 2026-10-28 |
| Issue #3065: the settings test puts the memory budget back as it found it, one budget-changing test at a time | open | 0.00 | 0 | +115 −7 | THEtheChad (PR #3088) | 2026-10-28 |
| Issue #1939: propose shared wgpu compatibility fork for OCLP Macs | open | 0.00 | 0 | +146 −49 | ITJamie (PR #3087) | 2026-10-28 |
| Issue #3059: plain cargo test runs at most 4 tests at once; xtask keeps its RAM-aware count | open | 0.00 | 0 | +730 −82 | THEtheChad (PR #3086) | 2026-10-28 |
| CI: simplify conditions flagged by Clippy | open | 0.00 | 0 | +3 −5 | ITJamie (PR #3085) | 2026-10-28 |
| Issue #3062: testkit deadline helpers and a test watchdog; the unbounded test waits get a limit | open | 0.00 | 0 | +702 −35 | THEtheChad (PR #3083) | 2026-10-28 |
| Issue #3058: cargo xtask test runs the tests under ci's caps and slot, and can keep going | open | 0.00 | 0 | +600 −81 | THEtheChad (PR #3079) | 2026-10-28 |
| Issue #3069: --connect resends a command that crossed the app's idle-close notice | open | 0.00 | 0 | +231 −70 | THEtheChad (PR #3076) | 2026-10-28 |
| LR-EDIT-OPTICS-PROFILE: the lens database downloads by itself on first run, the library is looked up, Optics names the profile | open | 0.00 | 0 | +1814 −94 | OneSlips (PR #3073) | 2026-10-28 |
| LR-META-XMP: reject invalid GPS subdivisions | open | 0.00 | 0 | +609 −54 | ronibalthazar (PR #3054) | 2026-10-28 |
| web: Import and Export through a page's own storage (window.craftStorage) | open | 0.00 | 0 | +116 −4 | hayone1 (PR #3047) | 2026-10-28 |
| chore(deps): bump the cargo-dependencies group across 1 directory with 6 updates | open | 0.00 | 0 | +383 −43 | app/dependabot (PR #3043) | 2026-10-28 |
| Windows: declare the gvfs test path only where it is used | open | 0.00 | 0 | +1 −0 | eliets2 (PR #3042) | 2026-10-28 |
| LR-PREF-GENERAL: honor Detail startup view for launch files | open | 0.00 | 0 | +150 −11 | ronibalthazar (PR #3041) | 2026-10-28 |
| macOS: declare the UI languages so the open and save panels are translated | open | 0.00 | 0 | +23 −0 | Atalantis (PR #3038) | 2026-10-28 |
| i18n(it): launch library chooser, Lightroom import destination and new settings | open | 0.00 | 0 | +42 −0 | fabiodalez-dev (PR #3035) | 2026-10-28 |
| LR-PREF-INTERFACE: Settings › Interface size, Auto or 50–300% | open | 0.00 | 0 | +161 −4 | abdallah-shehawey (PR #3034) | 2026-10-28 |
| KEY-INFO, LR-BEHAV-PANEL-RESIZE: panels come back as they were (closing a tool, pressing a panel key again) | open | 0.00 | 0 | +309 −13 | OneSlips (PR #3031) | 2026-10-28 |
| LR-BEHAV-MULTISELECT: click selection as in Lightroom Classic (frame click selects alone, Shift/Ctrl keep the active photo) | open | 0.00 | 0 | +412 −35 | OneSlips (PR #3030) | 2026-10-28 |
| LR-PROF-CAMERACOLOR: docs count 9 bundled camera profiles, not 5 | open | 0.00 | 0 | +7 −6 | Peaperfish (PR #3027) | 2026-10-28 |
| LRC-LIB-PEOPLE: Start the face scan's progress over in another library (#2995) | open | 0.00 | 0 | +27 −0 | endthestart (PR #3024) | 2026-10-28 |
| LR-MASK-OBJECTS: recover from SAM worker accept errors | open | 0.00 | 0 | +152 −33 | ronibalthazar (PR #3023) | 2026-10-28 |
| LR-BEHAV-WINDOW: remember where the window was, not only its size (#2967) | open | 0.00 | 0 | +98 −19 | emmertex (PR #3019) | 2026-10-28 |
| perf(catalog): box Photo::embedded_lens (~240 MB less per 1M photos) | open | 0.00 | 0 | +37 −22 | emmertex (PR #3018) | 2026-10-28 |
| LR-IMP-FORMATS: decode AVIF on import (pure-Rust AV1 decoder) | open | 0.00 | 0 | +918 −5 | emmertex (PR #3017) | 2026-10-28 |
| LRC-LIB-LIBFOLDERS: a date folder inside the library can be renamed | open | 0.00 | 0 | +36 −2 | emmertex (PR #3016) | 2026-10-28 |
| Never crash: an oversize export size is an error, not a multiply overflow | open | 0.00 | 0 | +34 −1 | emmertex (PR #3015) | 2026-10-28 |
| MENU-CTX-GRID: the photo menu's rows, built from the menu bar's model | open | 0.00 | 0 | +1225 −53 | nledford (PR #3014) | 2026-10-28 |
| LR-EDIT-OPTICS-PROFILE: lens profiles for compact cameras with a built-in lens | open | 0.00 | 0 | +147 −3 | emmertex (PR #3013) | 2026-10-28 |
| #2361: lens corrections crop inside the corrected photo | open | 0.00 | 0 | +57 −7 | emmertex (PR #3012) | 2026-10-28 |
| security(codecs): refuse decodes with no pixels; checked JPEG sample counts | open | 0.00 | 0 | +80 −3 | emmertex (PR #3011) | 2026-10-28 |
| #366: SAM 3 mirrors accept a local folder; tokenizer files pinned | open | 0.00 | 0 | +149 −13 | emmertex (PR #3010) | 2026-10-28 |
| LR-MERGE-HDRPANO: a repeated identical HDR merge reuses the verified output | open | 0.00 | 0 | +125 −21 | emmertex (PR #3009) | 2026-10-28 |
| security(raster): fallible image allocation; no panic on empty images or zip_map size mismatch | open | 0.00 | 0 | +142 −9 | emmertex (PR #3008) | 2026-10-28 |
| Never crash: CR2 slice widths that overflow are an error; XMP attribute unescape in one pass | open | 0.00 | 0 | +61 −9 | emmertex (PR #3007) | 2026-10-28 |
| CLI-HOSTILE: render --set refuses inf / NaN instead of dropping the value | open | 0.00 | 0 | +9 −1 | emmertex (PR #3006) | 2026-10-28 |
| fix(gpu): LR-BEHAV-GPU: bounded blur work per pixel so large radii can't trigger a GPU reset | open | 0.00 | 0 | +79 −5 | emmertex (PR #3005) | 2026-10-28 |
| LR-IMP-FORMATS: decode compressed Samsung SRW (32770, 32772, 32773) | open | 0.00 | 0 | +628 −13 | emmertex (PR #3004) | 2026-10-28 |