CI and images / lint (push) Successful in 3s
CI and images / extension-version (push) Successful in 3s
CI and images / frontend-build (push) Successful in 25s
CI and images / backend-lint-and-test (push) Successful in 32s
CI and images / integration (push) Successful in 2m27s
CI and images / sign-extension (push) Successful in 3s
CI and images / build-agent (push) Successful in 5s
CI and images / build-web (push) Successful in 1m48s
CI and images / smoke-web (push) Successful in 54s
CI and images / promote (push) Successful in 1s
Discord was the last focus platform still on gallery-dl. This adds the native path, mirrored from gallery-dl 1.32.13's discord extractor: - discord_client: API v10 with the user token and gallery-dl's request profile (dated Firefox UA, Referer). Walks a server, category, forum, channel or thread in gallery-dl's order and pages each channel newest-first. Files are attachments, then embeds, then forwards, numbered across the message. The resume cursor is <channel>:<before>. Text-only messages are not posts, since gallery-dl never made them. - discord_downloader: gallery-dl's on-disk layout, cleaned the way it cleans names on Linux (only `/` and control characters change), so existing files are skipped_disk rather than fetched again. Sidecars carry identity only. The message record keeps gallery-dl's keys, so parse_sidecar, derive_post_url and the drop grouping read it unchanged. - The ledger keys on the attachment id (or a hash of an embed's URL path), not the file's position, which an edit can renumber. Migration 0111. - DiscordIngester: token auth, body canary off (files-only drops are normal). Registered as native, verified by token, and serialised per-platform, since every source shares one user token. - ingest_core: optional `skip_feed` client seam (#4413). A tick's early-out on a multi-channel source now ends the quiet channel, not the whole walk. Clients without the seam behave as before. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LVjrnpQjRgHdvq95rASoiR
106 lines
3.2 KiB
Python
106 lines
3.2 KiB
Python
"""All ORM models. Import this module to make every model visible to Alembic."""
|
|
|
|
from .app_setting import AppSetting
|
|
from .artist import Artist
|
|
from .artist_membership_suggestion import ArtistMembershipSuggestion
|
|
from .artist_visit import ArtistVisit
|
|
from .backup_run import BackupRun
|
|
from .base import Base
|
|
from .character_prototype import CcipPrototypeState, CharacterPrototype
|
|
from .credential import Credential
|
|
from .discord_failed_media import DiscordFailedMedia
|
|
from .discord_seen_media import DiscordSeenMedia
|
|
from .download_event import DownloadEvent
|
|
from .external_link import ExternalLink
|
|
from .gpu_job import GpuJob
|
|
from .head_auto_apply_run import HeadAutoApplyRun
|
|
from .head_metric import HeadMetric
|
|
from .head_metrics_snapshot import HeadMetricsSnapshot
|
|
from .head_training_run import HeadTrainingRun
|
|
from .image_provenance import ImageProvenance
|
|
from .image_record import ImageRecord
|
|
from .image_region import ImageRegion
|
|
from .import_batch import ImportBatch
|
|
from .import_settings import ImportSettings
|
|
from .import_task import ImportTask
|
|
from .library_audit_run import LibraryAuditRun
|
|
from .membership_sync import MembershipSync
|
|
from .ml_settings import MLSettings
|
|
from .patreon_failed_media import PatreonFailedMedia
|
|
from .patreon_seen_media import PatreonSeenMedia
|
|
from .platform_membership import PlatformMembership
|
|
from .post import Post
|
|
from .post_association import PostAssociation
|
|
from .post_attachment import PostAttachment, attachment_download_url
|
|
from .presentation_review import PresentationReview
|
|
from .series_chapter import SeriesChapter
|
|
from .series_page import SeriesPage
|
|
from .series_suggestion import SeriesSuggestion
|
|
from .service_seen import ServiceSeen
|
|
from .source import Source
|
|
from .subscribestar_failed_media import SubscribeStarFailedMedia
|
|
from .subscribestar_seen_media import SubscribeStarSeenMedia
|
|
from .tag import Tag, TagKind, image_tag
|
|
from .tag_alias import TagAlias
|
|
from .tag_head import TagHead
|
|
from .tag_positive_confirmation import TagPositiveConfirmation
|
|
from .tag_suggestion_rejection import TagSuggestionRejection
|
|
from .task_run import TaskRun
|
|
from .worker_lane import WorkerLane
|
|
from .worker_lane_sample import WorkerLaneSample
|
|
|
|
__all__ = [
|
|
"Base",
|
|
"AppSetting",
|
|
"Artist",
|
|
"ArtistMembershipSuggestion",
|
|
"ArtistVisit",
|
|
"BackupRun",
|
|
"Source",
|
|
"Credential",
|
|
"DiscordFailedMedia",
|
|
"DiscordSeenMedia",
|
|
"PatreonFailedMedia",
|
|
"PatreonSeenMedia",
|
|
"SubscribeStarFailedMedia",
|
|
"SubscribeStarSeenMedia",
|
|
"Post",
|
|
"PostAssociation",
|
|
"PostAttachment",
|
|
"attachment_download_url",
|
|
"PresentationReview",
|
|
"SeriesChapter",
|
|
"SeriesPage",
|
|
"SeriesSuggestion",
|
|
"PlatformMembership",
|
|
"ServiceSeen",
|
|
"ImageRecord",
|
|
"ImageProvenance",
|
|
"ImageRegion",
|
|
"Tag",
|
|
"TagKind",
|
|
"image_tag",
|
|
"DownloadEvent",
|
|
"ExternalLink",
|
|
"GpuJob",
|
|
"ImportBatch",
|
|
"ImportTask",
|
|
"ImportSettings",
|
|
"LibraryAuditRun",
|
|
"MembershipSync",
|
|
"MLSettings",
|
|
"HeadAutoApplyRun",
|
|
"HeadMetric",
|
|
"HeadMetricsSnapshot",
|
|
"HeadTrainingRun",
|
|
"TagAlias",
|
|
"TagHead",
|
|
"CharacterPrototype",
|
|
"CcipPrototypeState",
|
|
"TagPositiveConfirmation",
|
|
"TagSuggestionRejection",
|
|
"TaskRun",
|
|
"WorkerLane",
|
|
"WorkerLaneSample",
|
|
]
|