## stashapp/stash — v0.30.1…v0.31.0

_177+ commits._

### Features
- **Add keyboard shortcut "d d" to delete scene (#6755)** (fe2a8eb)
- **[CI] add vips-heif (#6765)** (af07fea)
- **Add mutex to repositoryCache for thread safety (#6741)** (8af2cfe)
- **[hwaccel] add envvar for /dev/dri device (#6728)** (3dbb0fc)
- **[ci] add macos bundle (#6727)** (11f9e7a)
- **Add GitHub Sponsors and forum links to about section (#6718)** (7a18b53)
- **Feature: Add StashID guid consideration into select boxes (#6709)** (4167224)
- **Add option to ignore zip contents during clean (#6700)** (93fbb4b)
- **Keep tag/entity select input focused after creating a new item (#6697)** (f7b66c7)
- **add {phash} argument to queryURLParameters (#6701)** (679f49e)
- **Add stash ids to performer merge dialog (#6688)** (b2179cd)
- **feat: add image details to search filter (#6673)** (c2e80d2)
- **add patching for scene-specs-overlay (#6684)** (7872029)
- **Add parent tag hierarchy support to tag tagger (#6620)** (b4fab0a)
- **Add folder criteria to scenes, images and galleries and sidebars (#6636)** (717f968)
- **New: Add From Clipboard to Set Image (#6637)** (fbf91b2)
- **feat: Add .stashignore support for gitignore-style scan exclusions (#6485)** (cd09802)
- **Add Selective generate (#6621)** (1457ad5)
- **Add basename and parent_folders fields to Folder graphql interface (#6494)** (d8448ba)
- **Add sidebar to Tag list (#6610)** (ead0c7f)
- **FR: Add Missing is-missing Filter Options Across all Object Types (#6565)** (b77abd6)
- **Add sidebar to images list (#6607)** (ed58d18)
- **Add sidebar to scene markers list (#6603)** (5734ee4)
- **Backend support for image custom fields (#6598)** (86abe7b)
- **Backend support for Group custom fields (#6596)** (ca5178f)
- **Backend support for gallery custom fields (#6592)** (47dcdd4)
- **Add group scene count filter (#6593)** (8438062)
- **Feature Request: Add organized flag to studios (#6303)** (3dc8623)
- **Scene custom field backend support (#6584)** (e289199)
- **Add sidebar to group list (#6573)** (bede849)
- **Bugfix: AVIF Image PHash Support (#6556)** (7aa7276)
- **Tag custom fields support for backend (#6546)** (b278525)
- **Future support for filtering tags list by current filter on Performers page (#6091)** (f629191)
- **Studio custom fields backend support (#6156)** (9eda7c2)
- **feat: auto-remove duplicate aliases (#6514)** (ed0fb53)
- **FR: Add Generate Task to Galleries (#6442)** (b76edff)
- **add cover check (#6542)** (badf9ec)
- **Add latest scene sort for performers and studios. (#6501)** (6f5a7d1)
- **FR: Add Interfaces to Destroy File Database Entries (#6437)** (2c8e7d7)
- **Feature: Add "Troubleshooting Mode" (#6343)** (bef4e3f)
- **Add non-binary gender icon and colour transgender icons (#6489)** (d7d7530)
- **Add Invert Selection feature to list toolbars (#6491)** (211f069)

### Fixes
- **Fix lightbox not reading scale-up setting from config (#6743)** (1e0b990)
- **Fix: Remove padFuzzyDate From Performer (#6757)** (020c242)
- **Fix 'not equals' custom field to include unset objects (#6742)** (c861d39)
- **Fix tagger modal issues (#6736)** (c9d0afe)
- **Fix incorrect where clause for gallery parent folder filter (#6737)** (2bb1df8)
- **[ui] Fix Tag Modal cutting off (#6734)** (865c50d)
- **fix: correct typos in GraphQL schema (#6679)** (8d1aeed)
- **fix: support string-based fingerprints in hashes filter (#6654)** (300e7ed)
- **Fix infinite re-render loop in gallery image list (#6651)** (ae5d065)
- **Fix preview scrubber scaling on smaller sizes (#6640)** (f7da374)
- **Fix gallery image list styling** (b9baa7e)
- **Fix new panic in IsFsPathCaseSensitive: Use filepath operations to check for file system case sensitivity (#6635)** (99a0d01)
- **Fix stale browser-cached thumbnails after file content changes during scan. (#6622)** (52bd939)
- **Fix datepicker button border radius in input groups (#6630)** (b8dff73)
- **Fix edit modal not opening inside gallery view (#6629)** (bc75d47)
- **Fix caption handling during scan and check before correcting path (#6634)** (681ccbf)
- **Fix: Custom Field Filtering (#6614)** (c874bd5)
- **Fix panic when library path has trailing path separator (#6619)** (c7e1c3d)
- **update logs and fix UNIQUE constraint failure (#6617)** (3b8f6bd)
- **Fix missing folder corruption during scanning (#6608)** (e52ac14)
- **Fix capitalization in custom localisation heading [skip-ci] (#6606)** (c9f0dba)
- **Fix missing message id changes from #6600** (cf04e85)
- **Fix misclicks resulting in navigating to new page during selection (#6599)** (410dd27)
- **Fix scene player scrubber when custom sprite size used (#6597)** (aff6db1)
- **Fix panic in IsFsPathCaseSensitive (#6589)** (b653e91)
- **Fix marker form start time not being set when abLoop disabled** (0164d7a)
- **Quick fix for front page card styling (#6553)** (8dec195)
- **Fix duplicate file detection in zip archives (#6493)** (2a5b59a)

### Backend
- **Codeberg weblate translation update (#6767)** (2da8074)
- **Update changelog** (b709224)
- **Clear search results and states from taggers when source changes (#6766)** (0d9ad38)
- **Exclude source objects from destination select and vice versa in merge dialogs (#6764)** (a4b0a7a)
- **guard heatmap display on interactive_speed (#6746)** (e755b2c)
- **Allow unicode characters when stripping filenames for json export (#6748)** (48ba26e)
- **Show stash-box name in studio/performer tagger (#6759)** (0a4b427)
- **Use StashIDPill for displaying the scraped stash ID (#6761)** (86188e5)
- **Refactor README.md for better clarity and structure** (eeee081)
- **Exclude zip folders when browsing scenes and galleries (#6740)** (fd480c5)
- **Update changelog** (2e48dbf)
- **Show studio name if studio image not set on detail pages (#6716)** (87eabf0)
- **Match exact tag names for batch tagger and show exact matches first for query (#6739)** (b4c7ad4)
- **FR: Auto Tag Confirmation Modal (#6735)** (e0f2c8e)
- **Expand folder select hierarchy based on initial selected folder (#6738)** (c503442)
- **Maintain sub-folders selection when reselecting folder in filter** (feb4346)
- **fetch full depth of git history for compiler (#6726)** (b11be48)
- **remove phasher target from bundle (#6717) [skip ci]** (c832e1a)
- **Remove phasher from build target [skip ci]** (ee9a852)
- **[CI] ensure artifacts have +x bit set (#6715)** (640d62c)
- **Update changelog** (58cf630)
- **Lint + build update and retooling (#6638)** (79b6cb6)
- **Make tagger views consistent (#6713)** (18eda31)
- **Make hover volume configurable (#6712)** (5fd0d7b)
- **Replace "Source" with "Combined" in merge dialogs (#6711)** (c583e88)
- **Make gallery/scene association during scan more consistent (#6705)** (8f3188f)
- **Focus search field when clicking on scraper menu (#6704)** (b471341)
- **Replace tag list view with tag list table (#6703)** (208c19a)
- **Update changelog** (b76dd08)
- **Update weblate translations (#6698)** (63b1132)
- **Changelog v0.31 (#6692)** (b4dd7e3)
- **Don't read stashignore files in zip files (#6693)** (de6c0ba)
- **Sort performers and studios by scenes file size (#6642)** (f7b04fb)
- **Convert career length fields to dates (#6682)** (f3c8e7a)
- **Treat bad network path error as non-existing folder during folder rename check (#6680)** (e851d8d)
- **Refactor bulk edit dialogs (#6647)** (b8bd895)
- **Show scene resolution and duration in tagger (#6663)** (490fa3e)
- **Show the stash box for each stash ID in the scene merge dialog (#6656)** (69a49c9)
- **Use StashIDPill in the performer modal dialog (#6655)** (cacaf36)
- **Disable links on wall items when selecting (#6649)** (74a8f2e)
- **Allow stash path to non-existing directory (#6644)** (697c66a)
- **Use ffmpeg as a general fallback when generating phash (#6641)** (69e781b)
- **Skip scanning zip contents when fingerprint is unchanged (#6633)** (7847956)
- **Wrap CleanCaptions with database. Refactor AssociateCaptions.** (09e2b2b)
- **Update capitalization for sprite generation heading (#6623)** (b46fbb2)
- **Update minimatch and ajv dependencies (#6609)** (660feab)
- **Show unsupported filter criteria in filter tags (#6604)** (c522e54)
- **FR: Custom Fields Frontend (#6601)** (01d351c)
- **FR: Tags Tagger (#6559)** (0103fe4)
- **Rename checksum and hash fields (#6600)** (14105a2)
- **[Feature] Reveal file in system file manager from file info panel (#6587)** (9a1b1fb)
- **Custom sprite generation (#6588)** (076032f)
- **Include blobs in backup  (#6586)** (c15e6a5)
- **Skip directory after deleting it during generated files clean (#6590)** (8bc4107)
- **FR: Change Career Length to Career Start and Career End (#6449)** (adaadee)
- **Performer image rewrite (#6566)** (b1f3bbe)
- **Only use infinite scrolling where there are more items than can be displayed (#6575)** (c8a8154)
- **Default card width before container width is calculated (#6574)** (3ae3ea6)
- **Make recommendation row width selector more specific.** (6ef599e)
- **Feature: Scene Duplicate Filter (#6344)** (d1479ca)
- **FR: Change Identify Settings to Use Gender Checkboxes (#6557)** (26db935)
- **Merge tag values dialog (#6552)** (5628fbc)
- **Remove unused stash-box fingerprint queries (#6561)** (5cf41c8)
- **Revamp studio list with sidebar (#6549)** (d64b3b7)
- **Revamp performer list with sidebar (#6547)** (2b38361)
- **Revamp gallery list with sidebar (#6157)** (b5de30a)
- **Refactor scraper package (#6495)** (88eb463)
- **Added loop feature for markers + AB prefill  (#6510)** (cf5d60f)
- **Image count added to gallery data fragment (#6527)** (fe85b1e)
- **Refactor file scanning and handling logic (#6498)** (d252a41)
- **Feature: Stash ID Count Filter (#6347)** (244d70e)
- **Bump lodash-es from 4.17.21 to 4.17.23 in /ui/v2.5 (#6511)** (b8c5e15)
- **Image phash generation (#6497)** (a055003)
- **make ImageCard patchable for plugin extensibility (#6470)** (6bb2214)
- **Revert stashIDCriterionHandler changes. Reimplement stashIDsCriterionHandler to not use stringCriterionHandler (#6496)** (5b3785f)
- **Implement stash_ids_endpoint for the SceneFilterType (#6401)** (ed3a239)

### Docs
- **docs:update links for custom CSS and themes in Interface.md (#6581)** (fc31823)
- **docs: standardize letter casing in settings page (#6548)** (07b4830)
- **docs: add warning emojis to important notes across multiple documentation files (#6531)** (0e54a5c)
- **docs: add missing patchable components and library (#6517)** (09044b9)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/stashapp/stash?utm_source=github-action)._