Commit graph

21 commits

Author SHA1 Message Date
885bc2b711
Copy database_upgrader Migrator from Etiquette. 2021-03-31 15:59:23 -07:00
b2115f88be Add better indexes and delete redundant ones. 2020-10-02 11:22:47 -07:00
4f6080859a Synchronize Etiquette and YCDL. 2020-09-22 02:59:17 -07:00
e5910c55f2 Rename database column download to state. 2020-09-04 15:55:48 -07:00
3f3eda58b1 Move logging basicconfig effort to frontmost application layer. 2020-08-12 11:17:10 -07:00
5f38dea3b3 Rename argparse arguments to just --from, --to. 2020-08-12 10:25:09 -07:00
59eab3f997 Rename directory -> download_directory; add queuefile_extension. 2020-08-10 05:46:18 -07:00
d137f9a889 Don't use executescript, add explicit begins.
Today I discovered that the sqlite3 library executescript function
automatically, non-optionally performs a commit before running
the input script. I want to control transactions manually so the
database doesn't get left in a broken state.
2020-08-08 18:56:11 -07:00
41c6a344fa Catch ChannelNotFound exception while updating db. 2020-07-20 19:04:27 -07:00
4fe4ed9cb5 Database version 5. Store uploads_playlist id in database.
I am trying to cut down the API cost of refreshing all channels.
I hoped to find and endpoint that would give me videos from
multiple playlists at once, but Youtube doesn't seem to support
that. Next best option is to at least store the ID of the uploads
playlist, saving 2 api points each.
2020-07-01 16:09:11 -07:00
3c432c51f0 Add database user_version check to merge_db. 2020-07-01 16:00:09 -07:00
f2e8aeb568 Improve these docstrings. 2020-07-01 15:47:27 -07:00
d0f041c694 Let database upgrader functions take actual ycdldb, not plain sql.
Like Etiquette. This gives us access to the ycdl methods rather
than being limited to just sql operations.
2020-07-01 15:47:15 -07:00
6919f39e81 Rearrange upgraders in ascending order. 2020-07-01 15:25:29 -07:00
55d0bb463c Add utility merge_db.py. 2020-05-21 17:33:59 -07:00
2f5ec40b89 Big: Object-oriented channels & videos, match Etiquette structure.
- Channels and videos are now objects instead of just dictionaries.
- Copied Etiquette's use of cachemanager mixin to cache those objects.
- Copied Etiquette's use of sql_ methods.
- Copied Etiquette's use of namespaced javascript.
- Copied Etiquette's use of config file.
- Redid video_card css to use grid, better on mobile.
- Improved usage of URL parameters with class=merge_class.
- Wrote some actual content on readme.
2020-04-05 18:59:16 -07:00
81b864ec19 main should return args.func(args) value. 2020-02-08 17:20:27 -08:00
78ce6a6f41 Add views column and some other database changes.
And various other changes which have been sitting here for too long.
2020-01-06 22:07:25 -08:00
1c69a2aa59 Personal changes. 2020-01-06 22:01:23 -08:00
f1f12423b1 Changes
- Add thumbnails to the card (dynamically loaded)
- Add button for embedding the video
- Store video duration in db (use update script)
- Separate links for filter views with and without query.
2018-12-17 19:17:53 -08:00
ba1961349c It's been a while 2017-10-08 21:39:07 -07:00