WithoutPants
1e04deb3d4
Data layer restructuring ( #997 )
...
* Move query builders to sqlite package
* Add transaction system
* Wrap model resolvers in transaction
* Add error return value for StringSliceToIntSlice
* Update/refactor mutation resolvers
* Convert query builders
* Remove unused join types
* Add stash id unit tests
* Use WAL journal mode
2021-01-18 12:23:20 +11:00
bnkai
defb23aaa2
Fix vtt sprite generation ( issue #1033 ) ( #1035 )
2021-01-14 12:53:42 +11:00
bnkai
1882b44951
Strip file extension from scene title when scanning ( #1022 )
2021-01-07 11:38:30 +11:00
InfiniteTF
d50238cf41
Various bugfixes for scene tagger ( #1014 )
...
* Tagger fixes
* Validate stash-box endpoint pattern
2020-12-28 13:28:29 +11:00
InfiniteTF
e84c92355e
Fix integer overflow for scene size on 32bit systems ( #994 )
...
* Fix integer overflow for scene size on 32bit systems
* Cast to double in sqlite to prevent potential overflow
* Add migration to reset scene sizes and scan logic to repopulate if empty
2020-12-22 10:29:53 +11:00
WithoutPants
aadbcaeec2
Organised flag ( #988 )
...
* Add organized boolean to scene model (#729 )
* Add organized button to scene page
* Add flag to galleries and images
* Import/export changes
* Make organized flag not null
* Ignore organized scenes for autotag
Co-authored-by: com1234 <com1234@notarealemail.com>
2020-12-18 08:06:49 +11:00
aGlkZGVu
fad64ba126
Implement user customizable menu items ( #974 )
2020-12-09 11:59:09 +11:00
WithoutPants
1d910419d1
Replace natural_sort with third party call ( #964 )
2020-11-27 08:01:36 +11:00
JoeSmithStarkers
e3eb550a7d
Parallel scanning/generation, and combined scanning/preview/sprite ( #820 )
...
* Implement parallel scanning and generation, and combined scanning/preview/sprite generation.
* Added UI component for preview/sprite generation during scan, and configurable number of parallel tasks.
* Add v050 changelog entry
2020-11-25 12:45:10 +11:00
WithoutPants
0a098b1d63
Selective scan ( #940 )
2020-11-16 09:20:04 +11:00
WithoutPants
c74f145224
Only set stash from env if not set ( #937 )
2020-11-12 10:05:09 +11:00
WithoutPants
beb84b8e94
Fix image memory issue ( #935 )
...
* Return slim images from mutations
* Fix potential memory leaks
2020-11-10 20:19:13 +11:00
WithoutPants
5f482b7b8a
Handle zip file modification ( #877 )
...
* Rescan zip if updating mod time
* Use inequality for mod time comparison
* Add sort by file_mod_time (fixes #469 )
2020-11-05 10:26:51 +11:00
WithoutPants
cbfd9e82b7
Fix image clean ( #913 )
...
* Use correct regex when cleaning images
* Clarify video exclusion pattern heading
2020-11-03 09:34:53 +11:00
WithoutPants
8e75a8fff5
Add selection and export for all list pages ( #873 )
...
* Include studios in movie export
* Generalise cards
* Add selection and export for movies
* Refactor gallery card
* Refactor export dialogs
* Add performer selection and export
* Add selection and export for studios
* Add selection and export of tags
* Include movie scenes and gallery images
2020-10-31 09:41:12 +11:00
JoeSmithStarkers
47468fe122
Cache generated regex for each path ( #891 )
2020-10-26 15:57:58 +11:00
JoeSmithStarkers
71c814c116
Added streaming quality options ( #790 )
2020-10-22 15:02:27 +11:00
WithoutPants
872bb70f6e
Fix scan issue when encountering invalid symlinks ( #871 )
...
* Implement fixed symwalk algorithm
* Remove dependency
2020-10-20 17:00:23 +11:00
WithoutPants
8eda72ad89
Image improvements ( #847 )
...
* Fix image performer filtering
* Add performer images tab
* Add studio images tab
* Rename interface
* Add tag images tab
* Add path filtering for images
* Show image stats on stats page
* Fix incorrect scan counts after timeout
* Add gallery filters
* Relax scene gallery selector
2020-10-20 10:11:15 +11:00
InfiniteTF
482f8cbd92
Fix clean and scan bugs ( #846 )
2020-10-14 10:51:36 +11:00
WithoutPants
aca2c7c5f4
Images section ( #813 )
...
* Add new configuration options
* Refactor scan/clean
* Schema changes
* Add details to galleries
* Remove redundant code
* Refine thumbnail generation
* Gallery overhaul
* Don't allow modifying zip gallery images
* Show gallery card overlays
* Hide zoom slider when not in grid mode
2020-10-13 10:12:46 +11:00
WithoutPants
98dda782aa
Prevent invalid date tag in video file from aborting scan ( #836 )
...
* Give more context when ffprobe fails
* Suppress JSONTime unmarshal error
* Tidy scan logging
2020-10-11 12:02:41 +11:00
WithoutPants
8866670e53
Add partial import functionality ( #812 )
2020-09-20 18:36:02 +10:00
WithoutPants
03d4826c85
Selective export ( #770 )
2020-09-15 17:28:53 +10:00
InfiniteTF
03f5e1a442
Config for stash-box instances ( #748 )
2020-09-14 17:13:35 +10:00
InfiniteTF
5d9cc09fca
Allow updating tag name capitalization ( #781 )
2020-09-02 10:30:37 +10:00
bnkai
b437425a41
Add cbz to supported extensions as gallery ( #774 )
2020-08-31 14:21:49 +10:00
JoeSmithStarkers
85aa1d8790
Replace os.Rename with util.SafeMove to allow cross device moving to not fail. ( #745 )
...
Fixed annoyingly noisy transcoding progress log messages.
Fixed minor minor issue with directories than are named "blah.mp4" being detected as files to be scanned.
2020-08-21 17:57:07 +10:00
InfiniteTF
ecf745162f
Upgrade doublestar to v2.0.1 ( #742 )
2020-08-17 12:06:40 +10:00
JoeSmithStarkers
ecc42e4e24
Preview generation fallback ( #725 )
...
* Added preview generation fallback feature.
When a preview generation fails (often for wmv/avi files), the new code tries with less stricted (no xerror) and more time consuming options (slow+fast seek).
Fix a minor issue when stash downloads ffmpeg/ffprobe, but doesn't re-detect their paths.
2020-08-17 09:21:58 +10:00
WithoutPants
a39666467e
Fix import performers/movies/studios with no image ( #732 )
2020-08-14 09:40:25 +10:00
WithoutPants
0ffefa6e16
Add plugin tasks ( #651 )
2020-08-08 12:05:35 +10:00
WithoutPants
0874852fa8
Improve oshash collision detection and logging ( #713 )
...
* Log colliding file when setting hash
* Check for existing using both hashes
2020-08-08 11:22:25 +10:00
WithoutPants
5992ff8706
Add oshash support ( #667 )
2020-08-06 11:21:14 +10:00
bnkai
4373f9bf01
Add cdp support for xpath scrapers ( #625 )
...
Co-authored-by: WithoutPants <53250216+WithoutPants@users.noreply.github.com>
2020-08-04 10:42:40 +10:00
InfiniteTF
116f61b6bf
Fix potential sprite generation segfault ( #685 )
2020-07-24 09:20:34 +10:00
WithoutPants
a2341f0819
Allow customisation of preview generation ( #673 )
...
* Add generate-specific options
* Include no-cache in preview response
2020-07-23 12:51:35 +10:00
WithoutPants
37be146a9d
Transcode stream refactor ( #609 )
...
* Remove forceMkv and forceHEVC
* Add HLS support and refactor
* Add new streaming endpoints
2020-07-23 11:56:08 +10:00
WithoutPants
2b9215702e
Refactor xpath scraper code. Add fixed and map ( #616 )
...
* Refactor xpath scraper code
* Make post-process a list
* Add map post-process action
* Add fixed xpath values
* Refactor scrapers into cache
* Refactor into mapped config
* Trim test html
2020-07-21 14:06:25 +10:00
WithoutPants
c104c6d075
Generate content for specific scenes ( #672 )
...
* Add UI dialog for scene(s)
* Move preview preset to config
2020-07-19 11:59:18 +10:00
bnkai
ec2bcc7a74
Scan for files with ALLCAPS extensions ( #650 )
2020-07-11 17:22:36 +10:00
WithoutPants
e9141b5dfc
Fix tag query performance problems ( #657 )
...
* Fix sql tracing
* Disable query by marker count
* Disable unit test
2020-07-09 08:42:07 +10:00
WithoutPants
244ae54f3f
Add grid view, image to tag ( #641 )
...
* Add grid view for tags
* Add tag page
* Import/export tags
* Add tag name uniqueness checks
* Fix styling on missing marker previews
* Add trace loglevel
* Add SQL trace
* Add filter options for tags
* Add tag sort by options
* Add tag page keyboard shortcuts
2020-07-07 10:35:43 +10:00
WithoutPants
7a74658a73
Move image blobs into separate tables ( #618 )
...
* Scene cover fallback to database
* Fix panic if studio not found
* Fix movie studio not being imported/exported
2020-06-23 09:19:19 +10:00
WithoutPants
77a5b1d814
Add custom served folders ( #620 )
2020-06-21 22:25:13 +10:00
WithoutPants
d3ababf0a1
Gallery list improvement ( #622 )
...
* Add grid view to galleries
* Show scene in gallery card
* Add is missing scene gallery filter
* Don't store galleries with no images
2020-06-21 21:43:57 +10:00
WithoutPants
96e6e16507
Parent studios ( #595 )
...
* Refactor getMultiCriterionClause
Co-authored-by: Anon247 <61889302+Anon247@users.noreply.github.com>
2020-06-15 21:34:39 +10:00
InfiniteTF
4ec6d62e01
Selectable wall preview type ( #510 )
...
* Add optional image preview generation
* Add setting for video preview encoding preset
2020-05-27 09:33:49 +10:00
bnkai
ccd75731b7
Change scrape matching (studio, movies, tag, performers) to case insensitive ( #556 )
...
* Change scrape matching (studio, movies, tag, performers) to case insensitive
* * fix collate order
* * make filename parser findbyname calls case insensitive
* * add unit testing for Tags GetFindbyName/s
2020-05-24 16:19:22 +10:00
WithoutPants
fde02425ab
Make auto tagger matching more flexible ( #534 )
2020-05-13 17:32:39 +10:00
bnkai
bd45daacf3
Add a cache for gallery thumbnails ( #496 )
2020-05-11 17:20:08 +10:00
WithoutPants
3d22d5a742
Refactor build ( #493 )
...
* Add lint/format checks to build
* Make travis get full repo to get tags
* Run packr2 once in cross-compile
* Fix quotes in package.json
* Fix linting issues
* Formatting
* Fix vet issue
* Fix go lint issues
* Show start of each platform compilation
* Add validate target
* Set gitattributes for go fmt and mod vendor
* Fix tag name
* Add fmt-ui target
2020-04-29 12:13:08 +10:00
WithoutPants
309f7047b0
Add parser support for 3-letter month ( #500 )
2020-04-26 16:29:53 +10:00
WithoutPants
5923917e6c
Clean missing galleries ( #489 )
...
* Clean missing galleries
* Refactor matchFile
2020-04-25 09:32:55 +10:00
bnkai
9b1518beae
Export performance optimization ( #475 )
...
* recreate metadata path if needed, before exporting data
2020-04-24 12:52:21 +10:00
WithoutPants
ba09bfa64a
Include scene o-counter in import/export ( #488 )
...
* Include o-counter in import/export
* Fix scene card o-counter display
2020-04-23 09:14:58 +10:00
WithoutPants
eee7adfb85
Add Studio to movie and fix movie schema ( #458 )
...
* Add movie migration
* Update server and UI code for type changes
* Add studio to movies
* Movie blobs to end
* Document movie duration
* Add filtering on movie studio
2020-04-22 11:22:14 +10:00
WithoutPants
91d842ed47
Delete marker preview on marker change or delete ( #446 )
2020-04-10 08:39:41 +10:00
bnkai
d5617307f1
Add detection of container/video_codec/audio_codec compatibility for live file streaming or transcoding ( #384 )
...
* add forceMKV, forceHEVC config options
* drop audio stream instead of trying to transcode for ffmpeg unsupported/unknown audio codecs
2020-04-10 08:38:34 +10:00
WithoutPants
15e7756d33
Replace basic auth with cookie authentication ( #440 )
...
* Add logout functionality and button
* Make session age configurable
2020-04-08 12:51:12 +10:00
WithoutPants
b3e8d1e8dd
Add scene rating to scene filename parser ( #432 )
...
* Fix scene parser display issues in 2.5
* Dropdown menu presentation improvements
* Fix refresh on parser apply
* Ignore line endings on scss files
2020-04-05 07:59:57 +10:00
hiddenpants255
494b794228
Add gender support for performer ( #371 )
...
Co-authored-by: HiddenPants255 <>
Co-authored-by: WithoutPants <53250216+WithoutPants@users.noreply.github.com>
2020-04-01 09:36:38 +11:00
WithoutPants
abf2b49803
Configurable scraper user agent string ( #409 )
...
* Add debug scrape option.
Co-authored-by: HiddenPants255 <>
2020-03-21 08:55:15 +11:00
bnkai
9dacad70a1
Autoassociate galleries to scenes when scanning ( #405 )
2020-03-19 12:36:00 +11:00
WithoutPants
3de6955a9e
Generate cover image ( #376 )
...
* Make mutating metadata ops mutation
* Implement scene generate screenshot
* Remove fetch policy on metadata mutations
* Port UI changes to v2.5
* Set generated image in database
2020-03-12 08:34:04 +11:00
caustico
5fb8bbf768
Movies Section ( #338 )
...
Co-authored-by: WithoutPants <53250216+WithoutPants@users.noreply.github.com>
2020-03-10 14:28:15 +11:00
Infinite
3a0420b79e
Change i18n to just use single language setting
2020-03-01 21:04:37 +01:00
Infinite
0fdde7726b
i18n
2020-03-01 21:04:37 +01:00
twotobinary
776727140f
fix(middleware): set baseURL to external host if provided ( #369 )
2020-02-17 14:01:02 +11:00
InfiniteTF
6a6e8d8875
Change thumbnail default size and resize algorithm ( #336 )
...
* Change thumbnail resize algorithm and add size parameter
* Height -> Width
* Change default size from 100px to 200px
* Height -> width
2020-01-31 17:19:15 -05:00
WithoutPants
c83eb098bc
Allow path separator in scene filename parser pattern ( #327 )
...
* Allow path in filename parser
* Fix helper text re escaping {} characters
2020-01-24 22:34:01 -05:00
bnkai
fed7311d9c
Add timeout to neededGenerate function ( #324 )
...
* Add timeout to neededGenerate function
* * verbose and cosmetic fixes
2020-01-21 22:54:38 -05:00
WithoutPants
600862c0bb
Autotag no longer overwrites studio ( #312 )
2020-01-09 13:40:23 -05:00
Stash Dev
f8aa0433a3
Fix scene covers not importing correctly
2020-01-06 15:18:06 -08:00
WithoutPants
488cd5575d
Use arg for regex queries ( #311 )
2020-01-06 13:02:25 -05:00
Stash Dev
653406efd1
Added support for import / export of scene cover images
2019-12-31 14:38:49 -08:00
Stash Dev
9a51c586db
Fix incorrect sprites
...
The step size was being cast to an int which made the time lose precision and would offset sprite images incorrectly
2019-12-31 09:14:52 -08:00
bnkai
52dd0197ee
Added exclude patterns support for Clean Task ( #274 )
...
* Added exclude patterns support for Clean Task
* Added test file
* Refactoring and cosmetic fixes
* * Replace Match with MatchString
2019-12-23 21:06:07 -05:00
bnkai
0714cbfa34
Add exclude file from scan feature ( #253 )
...
* Added exclude file from scan feature
* Abort exclusion instead of panicking when pattern isn't valid
* Added UI configuration for exclude patterns
* * cosmetic fixes
* changed behavior of exclude function to continue and ignore invalide regex patterns
* added some more tests (windows networks and continue after regex error)
2019-12-17 09:26:16 -05:00
WithoutPants
da3e91193c
Allow uploading of custom scene covers ( #262 )
...
* Refactor common code
* Further refactoring
* Add UI support for changing scene cover image
* Add backend support for changing scene screenshot
2019-12-13 15:40:58 -05:00
WithoutPants
c05496a724
Make scene metadata from file metadata optional ( #259 )
2019-12-13 01:18:02 -05:00
WithoutPants
12c7faab4e
Scene ui improvements ( #232 )
...
* Move duration and resolution to overlay
* Improve display of portrait videos
* Condense filter controls
* Add performer images to scene tags
* Add studio overlay to scene cards
* Fade out scene overlays on hover
* CSS grid tweaks
* Align overlay to bottom of video preview
* Fix opacity value
* Fix performer thumbnails
* Show studio overlay on mouseover
* Correct display colour for display mode buttons
* Add scene zoom slider
* Add show studio as text option
* Move select all/none to more button
2019-12-05 12:24:22 -05:00
WithoutPants
1704d3771f
Add scene auto-tagging from filename ( #204 )
...
* Add auto tagging for performers, studios and tags
* Fix scene title logging
* Fix golang 1.11 compile error
* Improve regex pattern. Only log when added
* Remove paging from parse query
* Add integration test
* Fix prefix detection on paths
2019-12-01 11:18:44 -05:00
WithoutPants
8493c013e7
Loop and autostart flags. Save interface options ( #230 )
2019-11-28 20:41:17 -05:00
StashAppDev
7c97e36af8
Config should be read from cwd before user profile ( #225 )
...
fixes #219
2019-11-26 13:11:42 -08:00
WithoutPants
2a02e5a65d
Add test and integration tests to the Makefile ( #222 )
...
* Add unit and integration test to make file
* Add gitattributes for go.mod/go.sum files
* Always run integration tests
* Removed redundant call. Clarified targets
2019-11-24 21:10:16 -05:00
WithoutPants
17247060b6
Generic performer scrapers ( #203 )
...
* Generalise scraper API
* Add script performer scraper
* Fixes from testing
* Add context to scrapers and generalise
* Add scraping performer from URL
* Add error handling
* Move log to debug
* Add supported scrape types
2019-11-18 21:49:05 -05:00
WithoutPants
23657408de
Refresh config when paths change ( #217 )
2019-11-17 16:42:24 -05:00
WithoutPants
6dcb270471
Close database after migrating. Add reset errors ( #215 )
2019-11-17 16:39:33 -05:00
WithoutPants
9e8d7bb26f
Fix panic on import with existing scene ( #205 )
2019-11-15 16:34:00 -05:00
bnkai
5c0ec39db1
Calculate and print job totals for scan and generate tasks ( #188 )
...
* Calculate and print job totals for scan and generate tasks
* Cosmetic print fixes
2019-11-15 12:23:58 -05:00
Stash Dev
7416a8237d
Fixed a race condition in running_streams.go
2019-11-07 13:34:32 -08:00
WithoutPants
84bee2eb60
Performers, Tags and Studio from scene filename ( #174 )
...
* Make regex matching case-insensitive
* Port filename parser code to backend
* Add performers to scene filename parser UI
* Finish porting parser to backend
* Add performer, studio and tag parsing
* Hide fields not being parsed
* Don't query for empty performer/studio/tag
* Use exact matches
* Fix panic
* Fix arrays changed false positive. Fix layout
2019-11-07 07:49:08 -05:00
WithoutPants
c0911f1626
Stop tasks and show task progress ( #181 )
...
* Add job status to tasks page
* Add support for stopping task
* Show progress of some tasks
2019-11-06 23:35:04 -05:00
WithoutPants
d1ea2fffa5
Add configurable transcode sizes ( #178 )
2019-11-04 16:38:33 -05:00
WithoutPants
fee2de5547
Use custom.css is same path as config file ( #175 )
2019-11-04 16:32:52 -05:00
bnkai
1d46cb8a76
Check if scenes are in the library when cleaning ( #169 )
2019-10-30 09:39:44 -04:00
WithoutPants
564786f968
Add logging options ( #154 )
...
* Add various log options
* Remove logFormat. Add UI for log config
* Fix UI boolean flags
2019-10-24 20:13:44 -04:00
Leopere
d7271d75fc
Merge pull request #109 from WithoutPants/optional_performer_image
...
Generate performer checksum from name instead of image. Use default performer image
2019-10-24 15:35:26 -04:00
WithoutPants
1eb50fab33
Unify common code between delete and clean
2019-10-24 18:18:53 +11:00