Commit graph

56 commits

Author SHA1 Message Date
DarkCat09 3e13001835
CSS: fix <pre> wrap, add dark theme, colored log 2024-05-28 13:52:16 +04:00
DarkCat09 312a688c89
Frontend: proxy checkbox 2024-05-28 13:27:53 +04:00
DarkCat09 9071017dbf
Refactor: unify YDL object and proxy cfg field
This would allow to add sites much simplier
or even drop the ydl_fn_keys.
Main purpose of the refactoring is a code cleanup.
2024-05-28 13:21:23 +04:00
DarkCat09 7a75805423
Add SoundCloud 2024-05-28 11:10:50 +04:00
DarkCat09 f8e214d0a2
Makefile: clean 2024-05-28 11:10:38 +04:00
DarkCat09 e2330a15c4
Cleanup Makefile, add Caddy 2024-05-28 10:34:01 +04:00
DarkCat09 9b5b09011e
Add dev server Caddyfile 2024-05-28 10:33:42 +04:00
DarkCat09 1e1fe6dd16
Config: use None if no proxy specified 2024-05-28 09:09:59 +04:00
DarkCat09 21dbc8659d
Fix exception handler in test
`{err:r}` -> `{err!r}`
2024-05-28 09:05:42 +04:00
DarkCat09 3e955b2d8f
Update deps 2024-05-28 09:03:26 +04:00
DarkCat09 288d21e489
Note about track number 2024-05-24 22:01:07 +04:00
DarkCat09 d8f0172e95
Sanitize filenames 2024-05-24 21:28:32 +04:00
DarkCat09 c8e2f1fa1c
Edit license notice template 2024-05-09 20:45:20 +04:00
DarkCat09 97a37e3dbf
Config for nginx & openrc 2024-05-09 20:45:06 +04:00
DarkCat09 2d0e424b5b
Fix [frontend]: websocket URL 2024-05-09 20:36:45 +04:00
DarkCat09 03458db829
Fix: cover.download()
- resp.read returns nothing, contents are already in resp.data
- add mime type safety check
2024-05-09 18:33:13 +04:00
DarkCat09 38cc43b84f
Add cover downloader, add cfg.save_{lyrics,cover} (mainly for testing) 2024-05-09 18:05:39 +04:00
DarkCat09 60497cf29d
Remove asyncio's debug=True 2024-05-08 14:14:24 +04:00
DarkCat09 45e5bcee27
Fix: del playlist_items parameter only when set
This code sometimes had raised KeyError
2024-05-08 13:54:56 +04:00
DarkCat09 5444969027
Update frontend for YDL logging 2024-05-08 13:53:02 +04:00
DarkCat09 247bf65439
Add YDL logging, change schema 2024-05-08 13:52:36 +04:00
DarkCat09 8720ea07fd
Fix [CSS]: display playlist items in a column 2024-05-06 21:15:23 +04:00
DarkCat09 d0ed29e685
Optimize extract_info: no process=True for YouTube
For YT, processing separate videos greatly increases extract_info time,
but unnecessary when obtaining only track title.

For Yandex, processing is much faster, and we NEED it to get title.
2024-05-06 21:07:19 +04:00
DarkCat09 1eb1e2c827
Working frontend!! No download progress yet, and no cool CSS 2024-05-06 21:01:53 +04:00
DarkCat09 474c24e05a
Lyrics: switch to multiple search engines
Brave sometimes ratelimits SearXNG server
2024-05-06 20:34:03 +04:00
DarkCat09 0b0759fb3b
Lyrics: add irrelevant results filtering
Small note on how it works, copied from
raise_on_irrelevant_result() docstring:

Raises ValueError
if no words from track title are present in search result track title
and no words from artist name are present in search result artist name
2024-05-06 20:31:42 +04:00
DarkCat09 62ebecc87f
Remove path_length config option
I've misunderstood the FS limits, 255 is for filename, not path.
Path is limited only by libc, it's 4096.
The default outtmpl in musicdlp contains slashes, so it's a path.
But YDL considers it to be a filename, so the whole
outtmpl formatting result is trimmed to path_length.
Do we really need this? I think there are no "malicious" long-named tracks :)
2024-05-06 19:43:32 +04:00
DarkCat09 e1ef74cc1c
Simpliest frontend UI 2024-05-05 19:44:37 +04:00
DarkCat09 44fc039ac9
Refactor: merge ydl_wrap with ydl_pool.Downloader, add callbacks 2024-05-05 19:24:52 +04:00
DarkCat09 e9c55a67d3
JSON schema v0.0.2 2024-05-05 19:04:18 +04:00
DarkCat09 96be306b2b
More config options (tmpl, yt_proxy) + notes 2024-05-04 10:34:18 +04:00
DarkCat09 0cbb9d424e
Lyrics: change search engine for more relevant results 2024-05-03 20:57:43 +04:00
DarkCat09 df242e833f
Config, cookies 2024-05-03 20:57:20 +04:00
DarkCat09 93c5ea3b18
Code cleanup
(there was an attempt to redirect yt-dlp stdout)
2024-05-03 20:10:42 +04:00
DarkCat09 2b47b002e6
Working WS server, yt-dlp objects "pool", async wrappers 2024-05-03 18:42:53 +04:00
DarkCat09 53a00570e7
Multiple artists support 2024-05-03 18:38:11 +04:00
DarkCat09 77127d3476
Fix: keep connection 2024-05-03 14:39:29 +04:00
DarkCat09 26312a655b
WS server template 2024-05-02 17:18:27 +04:00
DarkCat09 464b65232b
Test: post-processors 2024-05-02 16:00:21 +04:00
DarkCat09 38abaa9bba
Format: unused import 2024-04-28 14:08:28 +04:00
DarkCat09 c354aeb183
Fix tests after moving PoolManager to shared module 2024-04-28 14:07:30 +04:00
DarkCat09 ab93124337
shared -> http_pool 2024-04-28 14:06:20 +04:00
DarkCat09 80a7d2bde5
id3pp: add genre (TCON) 2024-04-28 14:02:07 +04:00
DarkCat09 7669127826
Fix id3pp: try..catch for lyrics, file.save() 2024-04-28 14:00:54 +04:00
DarkCat09 3a25d86b4f
Shared http pool, lyrics in ID3TagsPP 2024-04-28 13:44:53 +04:00
DarkCat09 4d83b238e4
Unify ID3 post-processor, move add_tags() code into run() 2024-04-28 13:30:21 +04:00
DarkCat09 0f9798efbf
Move Python configs to root 2024-04-28 13:14:12 +04:00
DarkCat09 4865506dd3
Fix makefile: .PHONY, @cmd to disable echoing, cd && cmd 2024-04-28 13:12:00 +04:00
DarkCat09 1fa4d3e8e5
Makefile stub + make test 2024-04-28 13:06:34 +04:00
DarkCat09 daae22ea0e
Split frontend and backend 2024-04-28 12:55:45 +04:00