Merge pull request #460 from Nezreka/fix/disable-beatport-features

Hide Beatport tab temporarily
This commit is contained in:
BoulderBadgeDad 2026-05-01 11:57:58 -07:00 committed by GitHub
commit 8c8a1c05eb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 7 additions and 1 deletions

View file

@ -874,7 +874,12 @@
<button class="sync-tab-button" data-tab="youtube">
<span class="tab-icon youtube-icon"></span> YouTube
</button>
<button class="sync-tab-button" data-tab="beatport">
<!-- Beatport tab hidden: Beatport added Cloudflare Turnstile to all
public pages and locked their official OAuth API behind partner
registration. No working server-side scrape or auth path right now.
Tab content + backend endpoints are kept intact for fast revival
once a workaround is found. -->
<button class="sync-tab-button" data-tab="beatport" style="display: none;">
<span class="tab-icon beatport-icon"></span> Beatport
</button>
<button class="sync-tab-button" data-tab="import-file">

View file

@ -3453,6 +3453,7 @@ const WHATS_NEW = {
{ title: 'Search Endpoints Lifted to core/search', desc: 'internal — moved /api/search and /api/enhanced-search/* logic into core/search/ (cache, sources, library_check, stream, basic, orchestrator). 612 fewer lines in web_server.py, 94 new tests. no behavior change.' },
{ title: 'Automation Endpoints Lifted to core/automation', desc: 'internal — moved /api/automations/* CRUD + run + history routes, progress tracking helpers, and signal collection into core/automation/ (api, progress, signals). 383 fewer lines in web_server.py, 72 new tests. action handler registration stays put — those closures are tangled with feature implementations.' },
{ title: 'Clean Up slskd Dedup Orphans After Import', desc: 'slskd appends "_<timestamp>" to a download when the destination file already exists (e.g. retried partials, the same track in multiple playlists). the canonical file imported fine but the timestamp-suffixed siblings sat in the downloads folder forever. now they get pruned right after each successful import.', page: 'downloads' },
{ title: 'Beatport Tab Hidden Temporarily', desc: 'beatport rolled out cloudflare turnstile on every public page, so the scraper that powered the beatport tab now hits a bot challenge instead of html. their official oauth api is locked behind partner registration that isn\'t open to the public. hid the tab on sync until we find a workaround — backend endpoints are still in code so revival is a one-line html change.', page: 'sync' },
],
'2.4.0': [
// --- April 26, 2026 — Search & Artists unification + reorganize queue ---