Remove deprecated graphql fields (#4064)

* Remove deprecated list*Scrapers queries
* Remove other deprecated query resolvers
* Remove deprecated config fields
* Remove deprecated gallery fields
* Remove deprecated image fields
* Remove deprecated movie fields
* Remove deprecated performer fields
* Document scrape function issue
* Remove deprecated studio fields
* Remove deprecated scan input fields
* Remove deprecated scene fields
* Remove deprecated fields from filters
* Remove scene.file_mod_time
This commit is contained in:
WithoutPants
2023-10-17 11:59:35 +11:00
committed by GitHub
parent a9ab1fcca7
commit b6714fafba
66 changed files with 101 additions and 1223 deletions

View File

@@ -42,9 +42,6 @@ fragment ConfigGeneralData on ConfigGeneralResult {
excludes
imageExcludes
customPerformerImageLocation
scraperUserAgent
scraperCertCheck
scraperCDPPath
stashBoxes {
name
endpoint
@@ -139,8 +136,6 @@ fragment ScraperSourceData on ScraperSource {
fragment ConfigDefaultSettingsData on ConfigDefaultSettingsResult {
scan {
useFileMetadata
stripFileExtension
scanGenerateCovers
scanGeneratePreviews
scanGenerateImagePreviews

View File

@@ -20,6 +20,5 @@ fragment MovieData on Movie {
scenes {
id
title
path
}
}

View File

@@ -1,6 +1,5 @@
fragment PerformerData on Performer {
id
checksum
name
disambiguation
url

View File

@@ -1,3 +0,0 @@
query ScrapeFreeonesPerformers($q: String!) {
scrapeFreeonesPerformerList(query: $q)
}

View File

@@ -1,5 +1,5 @@
query ListPerformerScrapers {
listPerformerScrapers {
listScrapers(types: [PERFORMER]) {
id
name
performer {
@@ -10,7 +10,7 @@ query ListPerformerScrapers {
}
query ListSceneScrapers {
listSceneScrapers {
listScrapers(types: [SCENE]) {
id
name
scene {
@@ -21,7 +21,7 @@ query ListSceneScrapers {
}
query ListGalleryScrapers {
listGalleryScrapers {
listScrapers(types: [GALLERY]) {
id
name
gallery {
@@ -32,7 +32,7 @@ query ListGalleryScrapers {
}
query ListMovieScrapers {
listMovieScrapers {
listScrapers(types: [MOVIE]) {
id
name
movie {

View File

@@ -109,14 +109,6 @@ type Query {
"List available scrapers"
listScrapers(types: [ScrapeContentType!]!): [Scraper!]!
listPerformerScrapers: [Scraper!]!
@deprecated(reason: "Use listScrapers(types: [PERFORMER])")
listSceneScrapers: [Scraper!]!
@deprecated(reason: "Use listScrapers(types: [SCENE])")
listGalleryScrapers: [Scraper!]!
@deprecated(reason: "Use listScrapers(types: [GALLERY])")
listMovieScrapers: [Scraper!]!
@deprecated(reason: "Use listScrapers(types: [MOVIE])")
"Scrape for a single scene"
scrapeSingleScene(
@@ -170,27 +162,6 @@ type Query {
"Scrapes a complete movie record based on a URL"
scrapeMovieURL(url: String!): ScrapedMovie
"Scrape a list of performers based on name"
scrapePerformerList(scraper_id: ID!, query: String!): [ScrapedPerformer!]!
@deprecated(reason: "use scrapeSinglePerformer")
"Scrapes a complete performer record based on a scrapePerformerList result"
scrapePerformer(
scraper_id: ID!
scraped_performer: ScrapedPerformerInput!
): ScrapedPerformer @deprecated(reason: "use scrapeSinglePerformer")
"Scrapes a complete scene record based on an existing scene"
scrapeScene(scraper_id: ID!, scene: SceneUpdateInput!): ScrapedScene
@deprecated(reason: "use scrapeSingleScene")
"Scrapes a complete gallery record based on an existing gallery"
scrapeGallery(scraper_id: ID!, gallery: GalleryUpdateInput!): ScrapedGallery
@deprecated(reason: "use scrapeSingleGallery")
"Scrape a list of performers from a query"
scrapeFreeonesPerformerList(query: String!): [String!]!
@deprecated(
reason: "use scrapeSinglePerformer with scraper_id = builtin_freeones"
)
# Plugins
"List loaded plugins"
plugins: [Plugin!]
@@ -228,8 +199,7 @@ type Query {
allMovies: [Movie!]!
allTags: [Tag!]!
# @deprecated
allPerformers: [Performer!]!
allPerformers: [Performer!]! @deprecated(reason: "Use findPerformers instead")
# Get everything with minimal metadata

View File

@@ -139,8 +139,6 @@ input ConfigGeneralInput {
password: String
"Maximum session cookie age"
maxSessionAge: Int
"Comma separated list of proxies to allow traffic from"
trustedProxies: [String!] @deprecated(reason: "no longer supported")
"Name of the log file"
logFile: String
"Whether to also output to stderr"
@@ -165,21 +163,6 @@ input ConfigGeneralInput {
imageExcludes: [String!]
"Custom Performer Image Location"
customPerformerImageLocation: String
"Scraper user agent string"
scraperUserAgent: String
@deprecated(
reason: "use mutation ConfigureScraping(input: ConfigScrapingInput) instead"
)
"Scraper CDP path. Path to chrome executable or remote address"
scraperCDPPath: String
@deprecated(
reason: "use mutation ConfigureScraping(input: ConfigScrapingInput) instead"
)
"Whether the scraper should check for invalid certificates"
scraperCertCheck: Boolean
@deprecated(
reason: "use mutation ConfigureScraping(input: ConfigScrapingInput) instead"
)
"Stash-box instances used for tagging"
stashBoxes: [StashBoxInput!]
"Python path - resolved using path if unset"
@@ -269,8 +252,6 @@ type ConfigGeneralResult {
password: String!
"Maximum session cookie age"
maxSessionAge: Int!
"Comma separated list of proxies to allow traffic from"
trustedProxies: [String!] @deprecated(reason: "no longer supported")
"Name of the log file"
logFile: String
"Whether to also output to stderr"
@@ -295,15 +276,6 @@ type ConfigGeneralResult {
imageExcludes: [String!]!
"Custom Performer Image Location"
customPerformerImageLocation: String
"Scraper user agent string"
scraperUserAgent: String
@deprecated(reason: "use ConfigResult.scraping instead")
"Scraper CDP path. Path to chrome executable or remote address"
scraperCDPPath: String
@deprecated(reason: "use ConfigResult.scraping instead")
"Whether the scraper should check for invalid certificates"
scraperCertCheck: Boolean!
@deprecated(reason: "use ConfigResult.scraping instead")
"Stash-box instances used for tagging"
stashBoxes: [StashBox!]!
"Python path - resolved using path if unset"
@@ -388,9 +360,6 @@ input ConfigInterfaceInput {
"Interface language"
language: String
"Slideshow Delay"
slideshowDelay: Int @deprecated(reason: "Use imageLightbox.slideshowDelay")
imageLightbox: ConfigImageLightboxInput
"Set to true to disable creating new objects via the dropdown menus"
@@ -461,15 +430,10 @@ type ConfigInterfaceResult {
"Interface language"
language: String
"Slideshow Delay"
slideshowDelay: Int @deprecated(reason: "Use imageLightbox.slideshowDelay")
imageLightbox: ConfigImageLightboxResult!
"Fields are true if creating via dropdown menus are disabled"
disableDropdownCreate: ConfigDisableDropdownCreate!
disabledDropdownCreate: ConfigDisableDropdownCreate!
@deprecated(reason: "Use disableDropdownCreate")
"Handy Connection Key"
handyKey: String

View File

@@ -98,8 +98,6 @@ input PerformerFilterType {
country: StringCriterionInput
"Filter by eye color"
eye_color: StringCriterionInput
"Filter by height"
height: StringCriterionInput @deprecated(reason: "Use height_cm instead")
"Filter by height in cm"
height_cm: IntCriterionInput
"Filter by measurements"
@@ -135,13 +133,7 @@ input PerformerFilterType {
"Filter by o count"
o_counter: IntCriterionInput
"Filter by StashID"
stash_id: StringCriterionInput
@deprecated(reason: "Use stash_id_endpoint instead")
"Filter by StashID"
stash_id_endpoint: StashIDCriterionInput
"Filter by rating"
rating: IntCriterionInput
@deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: IntCriterionInput
"Filter by url"
@@ -169,8 +161,6 @@ input PerformerFilterType {
}
input SceneMarkerFilterType {
"Filter to only include scene markers with this tag"
tag_id: ID @deprecated(reason: "use tags filter instead")
"Filter to only include scene markers with these tags"
tags: HierarchicalMultiCriterionInput
"Filter to only include scene markers attached to a scene with these tags"
@@ -212,9 +202,6 @@ input SceneFilterType {
path: StringCriterionInput
"Filter by file count"
file_count: IntCriterionInput
"Filter by rating"
rating: IntCriterionInput
@deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: IntCriterionInput
"Filter by organized"
@@ -256,9 +243,6 @@ input SceneFilterType {
"Filter by performer count"
performer_count: IntCriterionInput
"Filter by StashID"
stash_id: StringCriterionInput
@deprecated(reason: "Use stash_id_endpoint instead")
"Filter by StashID"
stash_id_endpoint: StashIDCriterionInput
"Filter by url"
url: StringCriterionInput
@@ -289,9 +273,6 @@ input MovieFilterType {
"Filter by duration (in seconds)"
duration: IntCriterionInput
"Filter by rating"
rating: IntCriterionInput
@deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: IntCriterionInput
"Filter to only include movies with this studio"
@@ -320,15 +301,9 @@ input StudioFilterType {
"Filter to only include studios with this parent studio"
parents: MultiCriterionInput
"Filter by StashID"
stash_id: StringCriterionInput
@deprecated(reason: "Use stash_id_endpoint instead")
"Filter by StashID"
stash_id_endpoint: StashIDCriterionInput
"Filter to only include studios missing this property"
is_missing: String
"Filter by rating"
rating: IntCriterionInput
@deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: IntCriterionInput
"Filter by scene count"
@@ -368,9 +343,6 @@ input GalleryFilterType {
is_missing: String
"Filter to include/exclude galleries that were created from zip"
is_zip: Boolean
"Filter by rating"
rating: IntCriterionInput
@deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: IntCriterionInput
"Filter by organized"
@@ -476,9 +448,6 @@ input ImageFilterType {
path: StringCriterionInput
"Filter by file count"
file_count: IntCriterionInput
"Filter by rating"
rating: IntCriterionInput
@deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: IntCriterionInput
"Filter by date"

View File

@@ -1,21 +1,16 @@
"Gallery type"
type Gallery {
id: ID!
checksum: String! @deprecated(reason: "Use files.fingerprints")
path: String @deprecated(reason: "Use files.path")
title: String
url: String @deprecated(reason: "Use urls")
urls: [String!]!
date: String
details: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
organized: Boolean!
created_at: Time!
updated_at: Time!
file_mod_time: Time @deprecated(reason: "Use files.mod_time")
files: [GalleryFile!]!
folder: Folder
@@ -27,8 +22,6 @@ type Gallery {
tags: [Tag!]!
performers: [Performer!]!
"The images in the gallery"
images: [Image!]! @deprecated(reason: "Use findImages")
cover: Image
}
@@ -38,8 +31,6 @@ input GalleryCreateInput {
urls: [String!]
date: String
details: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
organized: Boolean
@@ -57,8 +48,6 @@ input GalleryUpdateInput {
urls: [String!]
date: String
details: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
organized: Boolean
@@ -77,8 +66,6 @@ input BulkGalleryUpdateInput {
urls: BulkUpdateStrings
date: String
details: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
organized: Boolean

View File

@@ -1,9 +1,6 @@
type Image {
id: ID!
checksum: String @deprecated(reason: "Use files.fingerprints")
title: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
url: String @deprecated(reason: "Use urls")
@@ -11,13 +8,9 @@ type Image {
date: String
o_counter: Int
organized: Boolean!
path: String! @deprecated(reason: "Use files.path")
created_at: Time!
updated_at: Time!
file_mod_time: Time @deprecated(reason: "Use files.mod_time")
file: ImageFileType! @deprecated(reason: "Use visual_files")
files: [ImageFile!]! @deprecated(reason: "Use visual_files")
visual_files: [VisualFile!]!
paths: ImagePathsType! # Resolver
@@ -44,8 +37,6 @@ input ImageUpdateInput {
clientMutationId: String
id: ID!
title: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
organized: Boolean
@@ -65,8 +56,6 @@ input BulkImageUpdateInput {
clientMutationId: String
ids: [ID!]
title: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
organized: Boolean

View File

@@ -75,19 +75,6 @@ input ScanMetaDataFilterInput {
input ScanMetadataInput {
paths: [String!]
# useFileMetadata is deprecated with the new file management system
# if this functionality is desired, then we can make a built in scraper instead.
"Set name, date, details from metadata (if present)"
useFileMetadata: Boolean @deprecated(reason: "Not implemented")
# stripFileExtension is deprecated since we no longer set the title from the
# filename - it is automatically returned if the object has no title. If this
# functionality is desired, then we could make this an option to not include
# the extension in the auto-generated title.
"Strip file extension from title"
stripFileExtension: Boolean @deprecated(reason: "Not implemented")
"Generate covers during scan"
scanGenerateCovers: Boolean
"Generate previews during scan"
@@ -108,10 +95,6 @@ input ScanMetadataInput {
}
type ScanMetadataOptions {
"Set name, date, details from metadata (if present)"
useFileMetadata: Boolean! @deprecated(reason: "Not implemented")
"Strip file extension from title"
stripFileExtension: Boolean! @deprecated(reason: "Not implemented")
"Generate covers during scan"
scanGenerateCovers: Boolean!
"Generate previews during scan"

View File

@@ -1,13 +1,10 @@
type Movie {
id: ID!
name: String!
checksum: String! @deprecated(reason: "MD5 hash of name, use name directly")
aliases: String
"Duration in seconds"
duration: Int
date: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
studio: Studio
@@ -29,8 +26,6 @@ input MovieCreateInput {
"Duration in seconds"
duration: Int
date: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
studio_id: ID
@@ -49,8 +44,6 @@ input MovieUpdateInput {
aliases: String
duration: Int
date: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
studio_id: ID
@@ -66,8 +59,6 @@ input MovieUpdateInput {
input BulkMovieUpdateInput {
clientMutationId: String
ids: [ID!]
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
studio_id: ID

View File

@@ -14,7 +14,6 @@ enum CircumisedEnum {
type Performer {
id: ID!
checksum: String @deprecated(reason: "Not used")
name: String!
disambiguation: String
url: String
@@ -25,7 +24,6 @@ type Performer {
ethnicity: String
country: String
eye_color: String
height: String @deprecated(reason: "Use height_cm")
height_cm: Int
measurements: String
fake_tits: String
@@ -34,7 +32,6 @@ type Performer {
career_length: String
tattoos: String
piercings: String
aliases: String @deprecated(reason: "Use alias_list")
alias_list: [String!]!
favorite: Boolean!
tags: [Tag!]!
@@ -49,8 +46,6 @@ type Performer {
o_counter: Int # Resolver
scenes: [Scene!]!
stash_ids: [StashID!]!
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
details: String
@@ -71,8 +66,6 @@ input PerformerCreateInput {
ethnicity: String
country: String
eye_color: String
# height must be parsable into an integer
height: String @deprecated(reason: "Use height_cm")
height_cm: Int
measurements: String
fake_tits: String
@@ -81,7 +74,6 @@ input PerformerCreateInput {
career_length: String
tattoos: String
piercings: String
aliases: String @deprecated(reason: "Use alias_list")
alias_list: [String!]
twitter: String
instagram: String
@@ -90,8 +82,6 @@ input PerformerCreateInput {
"This should be a URL or a base64 encoded data URL"
image: String
stash_ids: [StashIDInput!]
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
details: String
@@ -111,8 +101,6 @@ input PerformerUpdateInput {
ethnicity: String
country: String
eye_color: String
# height must be parsable into an integer
height: String @deprecated(reason: "Use height_cm")
height_cm: Int
measurements: String
fake_tits: String
@@ -121,7 +109,6 @@ input PerformerUpdateInput {
career_length: String
tattoos: String
piercings: String
aliases: String @deprecated(reason: "Use alias_list")
alias_list: [String!]
twitter: String
instagram: String
@@ -130,8 +117,6 @@ input PerformerUpdateInput {
"This should be a URL or a base64 encoded data URL"
image: String
stash_ids: [StashIDInput!]
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
details: String
@@ -156,8 +141,6 @@ input BulkPerformerUpdateInput {
ethnicity: String
country: String
eye_color: String
# height must be parsable into an integer
height: String @deprecated(reason: "Use height_cm")
height_cm: Int
measurements: String
fake_tits: String
@@ -166,14 +149,11 @@ input BulkPerformerUpdateInput {
career_length: String
tattoos: String
piercings: String
aliases: String @deprecated(reason: "Use alias_list")
alias_list: BulkUpdateStrings
twitter: String
instagram: String
favorite: Boolean
tag_ids: BulkUpdateIds
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
details: String

View File

@@ -15,7 +15,6 @@ type ScenePathsType {
stream: String # Resolver
webp: String # Resolver
vtt: String # Resolver
chapters_vtt: String @deprecated
sprite: String # Resolver
funscript: String # Resolver
interactive_heatmap: String # Resolver
@@ -34,8 +33,6 @@ type VideoCaption {
type Scene {
id: ID!
checksum: String @deprecated(reason: "Use files.fingerprints")
oshash: String @deprecated(reason: "Use files.fingerprints")
title: String
code: String
details: String
@@ -43,20 +40,15 @@ type Scene {
url: String @deprecated(reason: "Use urls")
urls: [String!]!
date: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
organized: Boolean!
o_counter: Int
path: String! @deprecated(reason: "Use files.path")
phash: String @deprecated(reason: "Use files.fingerprints")
interactive: Boolean!
interactive_speed: Int
captions: [VideoCaption!]
created_at: Time!
updated_at: Time!
file_mod_time: Time
"The last time play count was updated"
last_played_at: Time
"The time index a scene was left at"
@@ -66,7 +58,6 @@ type Scene {
"The number ot times a scene has been played"
play_count: Int
file: SceneFileType! @deprecated(reason: "Use files")
files: [VideoFile!]!
paths: ScenePathsType! # Resolver
scene_markers: [SceneMarker!]!
@@ -94,8 +85,6 @@ input SceneCreateInput {
url: String @deprecated(reason: "Use urls")
urls: [String!]
date: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
organized: Boolean
@@ -126,8 +115,6 @@ input SceneUpdateInput {
url: String @deprecated(reason: "Use urls")
urls: [String!]
date: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
o_counter: Int
@@ -172,8 +159,6 @@ input BulkSceneUpdateInput {
url: String @deprecated(reason: "Use urls")
urls: BulkUpdateStrings
date: String
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
organized: Boolean

View File

@@ -1,7 +1,6 @@
type Studio {
id: ID!
name: String!
checksum: String! @deprecated(reason: "MD5 hash of name, use name directly")
url: String
parent_studio: Studio
child_studios: [Studio!]!
@@ -15,8 +14,6 @@ type Studio {
performer_count(depth: Int): Int! # Resolver
movie_count(depth: Int): Int! # Resolver
stash_ids: [StashID!]!
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
details: String
@@ -32,8 +29,6 @@ input StudioCreateInput {
"This should be a URL or a base64 encoded data URL"
image: String
stash_ids: [StashIDInput!]
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
details: String
@@ -49,8 +44,6 @@ input StudioUpdateInput {
"This should be a URL or a base64 encoded data URL"
image: String
stash_ids: [StashIDInput!]
# rating expressed as 1-5
rating: Int @deprecated(reason: "Use 1-100 range with rating100")
# rating expressed as 1-100
rating100: Int
details: String