]>
git.gir.st - subscriptionfeed.git/log
girst [Mon, 13 Jul 2020 13:41:01 +0000 (15:41 +0200)]
run websub more often
given that we only update channels that will run out in less than 12
hours, but only check every 24 hours, some channels will expire for up
to 12h per week. checking more often will also spread out the updates,
making the cronjob to finish faster.
girst [Mon, 13 Jul 2020 13:24:43 +0000 (15:24 +0200)]
subscription_manager: fix websub expired badge
girst [Mon, 13 Jul 2020 13:06:13 +0000 (15:06 +0200)]
use get_video_info for webhook uploads
girst [Mon, 13 Jul 2020 12:43:39 +0000 (14:43 +0200)]
document non-features, replace outdated 'usage' section
girst [Mon, 13 Jul 2020 12:03:35 +0000 (14:03 +0200)]
collaboratorInfoCardContentRenderer may have no subscriber count
girst [Tue, 30 Jun 2020 13:00:51 +0000 (15:00 +0200)]
fix pinned reddit video comments url
girst [Tue, 30 Jun 2020 11:51:13 +0000 (13:51 +0200)]
fix "available in ... countries"
girst [Sun, 28 Jun 2020 13:25:45 +0000 (15:25 +0200)]
fuck this. doesn't work with verical videos
girst [Sun, 28 Jun 2020 05:38:02 +0000 (07:38 +0200)]
webhooks: enforce signature checking, use channel_id from url path
girst [Sat, 27 Jun 2020 19:42:12 +0000 (21:42 +0200)]
fix /watch cards wrapping
girst [Sat, 27 Jun 2020 19:25:52 +0000 (21:25 +0200)]
use ?next in "log in or sign up" link
girst [Sat, 27 Jun 2020 19:01:58 +0000 (21:01 +0200)]
move upstream repo
gitea is overkill; gitweb works fine.
girst [Wed, 24 Jun 2020 12:01:10 +0000 (14:01 +0200)]
fix websub update being overzealous
updated all channels every day and getting 5 times the updates :|
girst [Tue, 23 Jun 2020 22:05:53 +0000 (00:05 +0200)]
use flexbox for card component
girst [Tue, 23 Jun 2020 20:30:07 +0000 (22:30 +0200)]
cleanup
girst [Tue, 23 Jun 2020 20:26:18 +0000 (22:26 +0200)]
webhook: simplify deleted-entry handling
girst [Mon, 22 Jun 2020 19:48:49 +0000 (21:48 +0200)]
tweak video's object-fit:cover *again*
girst [Mon, 22 Jun 2020 19:46:41 +0000 (21:46 +0200)]
add functional overview (preliminary)
girst [Fri, 19 Jun 2020 16:50:58 +0000 (18:50 +0200)]
implement websub hmac verification (not yet enforced)
only enforcing this once all current websub-subscriptions have expired
girst [Fri, 19 Jun 2020 15:01:37 +0000 (17:01 +0200)]
fix requests debugging if not within flask
girst [Fri, 19 Jun 2020 02:38:39 +0000 (04:38 +0200)]
fixup 72b1f8
girst [Wed, 17 Jun 2020 14:32:18 +0000 (16:32 +0200)]
fix exception and bad syntax
girst [Tue, 16 Jun 2020 16:17:46 +0000 (18:17 +0200)]
allow pinning and hiding reddit posts
girst [Tue, 16 Jun 2020 16:16:58 +0000 (18:16 +0200)]
don't assume video_id == post_id
girst [Tue, 16 Jun 2020 14:22:14 +0000 (16:22 +0200)]
split fetch_reddit into fetching and parsing blocks
girst [Tue, 16 Jun 2020 14:17:56 +0000 (16:17 +0200)]
token auth: don't 500 if user doesn't exist
girst [Tue, 16 Jun 2020 11:18:05 +0000 (13:18 +0200)]
load initial channel page ourselves
*way* faster
girst [Tue, 16 Jun 2020 11:08:53 +0000 (13:08 +0200)]
sometime playabilityStatus will have a messages array instead of a reason
girst [Mon, 15 Jun 2020 19:14:23 +0000 (21:14 +0200)]
implement shadowing invidious routes
girst [Mon, 15 Jun 2020 18:31:58 +0000 (20:31 +0200)]
implement fallback_route()
allows us to override minimalistic youtube routes with better invidious
routes and fall back to the minimalistic ones, if our invidious instance
is blocked.
girst [Mon, 15 Jun 2020 16:53:33 +0000 (18:53 +0200)]
don't double escape reddit submission titles
girst [Mon, 15 Jun 2020 16:46:32 +0000 (18:46 +0200)]
document dynamic blueprint loading
girst [Mon, 15 Jun 2020 16:44:20 +0000 (18:44 +0200)]
make token login persistent
when a user logs in using the ?token= method, we save their session in
a cookie, same as with regular login.
girst [Mon, 15 Jun 2020 16:18:37 +0000 (18:18 +0200)]
move subscription cronjobs into common/utils
in preparation for an eventually implemented job queue approach
girst [Mon, 15 Jun 2020 15:36:18 +0000 (17:36 +0200)]
raise error if config file not found, some comments
girst [Mon, 15 Jun 2020 14:15:02 +0000 (16:15 +0200)]
log api responses on error
girst [Sun, 14 Jun 2020 16:59:43 +0000 (18:59 +0200)]
use "prepared" query strings with requests
girst [Sun, 14 Jun 2020 16:15:53 +0000 (18:15 +0200)]
object-fit:cover for video poster
note that this only works because the video element has the exact
proportions of the video file.
girst [Sun, 14 Jun 2020 14:39:29 +0000 (16:39 +0200)]
/search using invidious api (very ugly)
girst [Sun, 14 Jun 2020 14:38:16 +0000 (16:38 +0200)]
stub out tombstones/deleted-entry support
girst [Sun, 14 Jun 2020 14:31:35 +0000 (16:31 +0200)]
use binary strings for cronjob error logging and other small fixes
girst [Sun, 14 Jun 2020 14:29:31 +0000 (16:29 +0200)]
more TODOs
girst [Sun, 14 Jun 2020 13:50:21 +0000 (15:50 +0200)]
fix metadata on completely unavailable videos
e.g. J2-6srITpKE: has metadata, but no 'availableCountries' key
girst [Sat, 13 Jun 2020 20:41:58 +0000 (22:41 +0200)]
add search bar (no impl yet)
girst [Sat, 13 Jun 2020 20:40:54 +0000 (22:40 +0200)]
fix currently-running livestream detection
girst [Sat, 13 Jun 2020 20:07:22 +0000 (22:07 +0200)]
harmonize layout; headerbar macro
girst [Fri, 12 Jun 2020 19:21:59 +0000 (21:21 +0200)]
rework fetch_reddit() params, support non-hot-ordering (undocumented)
girst [Fri, 12 Jun 2020 18:36:55 +0000 (20:36 +0200)]
fix livestream detection
isPostLiveDvr is not present if False.
girst [Fri, 12 Jun 2020 14:10:29 +0000 (16:10 +0200)]
don't hardcode welcome message for anonymous users
girst [Fri, 12 Jun 2020 13:57:59 +0000 (15:57 +0200)]
reddit footer: show all subscribed subreddits all the time
girst [Fri, 12 Jun 2020 11:18:39 +0000 (13:18 +0200)]
fix webhook error loggin m(
one. job.
girst [Fri, 12 Jun 2020 10:41:53 +0000 (12:41 +0200)]
tweak reddit template
girst [Fri, 12 Jun 2020 10:41:16 +0000 (12:41 +0200)]
temporary fix for utils/ config import
girst [Fri, 12 Jun 2020 10:40:35 +0000 (12:40 +0200)]
fix webhook config import
girst [Fri, 12 Jun 2020 10:39:29 +0000 (12:39 +0200)]
remove /r/ endpoints from youtube blueprint
those shadowed the actual reddit ones
girst [Thu, 11 Jun 2020 18:30:18 +0000 (20:30 +0200)]
remove superfluous imports
girst [Thu, 11 Jun 2020 18:28:07 +0000 (20:28 +0200)]
de-hardcode subreddit footer
girst [Thu, 11 Jun 2020 17:49:23 +0000 (19:49 +0200)]
provide guest user default subscriptions
girst [Thu, 11 Jun 2020 17:45:18 +0000 (19:45 +0200)]
make __main__.py less fragile
girst [Thu, 11 Jun 2020 17:43:02 +0000 (19:43 +0200)]
move youtube templates into blueprint
girst [Thu, 11 Jun 2020 17:49:57 +0000 (19:49 +0200)]
add reddit database tables
girst [Thu, 11 Jun 2020 17:32:58 +0000 (19:32 +0200)]
finish reddit blueprint
girst [Thu, 11 Jun 2020 16:56:22 +0000 (18:56 +0200)]
move reddit to seperate blueprint
needs cleanup
girst [Thu, 11 Jun 2020 12:39:35 +0000 (14:39 +0200)]
name main app 'app' again
stupid import! hardly ever seen such a useless error message
girst [Thu, 11 Jun 2020 12:18:57 +0000 (14:18 +0200)]
split app into blueprints - part 3: login/user module
girst [Thu, 11 Jun 2020 12:18:11 +0000 (14:18 +0200)]
split app into blueprints - part 2: __main__
girst [Thu, 11 Jun 2020 11:58:53 +0000 (13:58 +0200)]
split app into blueprints - part 1
moves everything into the youtube blueprint, except csrf and user
handling. those two will go into a common blueprint later.
girst [Thu, 11 Jun 2020 11:55:41 +0000 (13:55 +0200)]
more TODOs
girst [Thu, 11 Jun 2020 11:01:24 +0000 (13:01 +0200)]
refresh-cipher: enforce 1-row-maximum
girst [Thu, 11 Jun 2020 10:41:33 +0000 (12:41 +0200)]
fix sponsorblock off-by-two
m(
girst [Thu, 11 Jun 2020 10:40:52 +0000 (12:40 +0200)]
improve card handling, better is-livestream, better aspect-detection
girst [Tue, 9 Jun 2020 18:14:28 +0000 (20:14 +0200)]
update INSTALL somewhat
girst [Tue, 9 Jun 2020 17:59:55 +0000 (19:59 +0200)]
use semantic tag for main content
also unifies centering to use css. this makes cards left-aligned within
the container, but that's fine with me.
girst [Tue, 9 Jun 2020 17:56:06 +0000 (19:56 +0200)]
use tokens to identify users
in the future, tokens will be exirable by the user.
girst [Tue, 9 Jun 2020 17:21:40 +0000 (19:21 +0200)]
rewrite TODOs
girst [Tue, 9 Jun 2020 16:43:26 +0000 (18:43 +0200)]
Merge branch 'flask_login'
girst [Tue, 9 Jun 2020 16:40:28 +0000 (18:40 +0200)]
add helper utility for generating password hashes
girst [Tue, 9 Jun 2020 16:39:19 +0000 (18:39 +0200)]
schema for users table
girst [Tue, 9 Jun 2020 16:07:53 +0000 (18:07 +0200)]
move login form to a template; stub out registration
girst [Tue, 9 Jun 2020 15:56:31 +0000 (17:56 +0200)]
decorate all login-required routes, or allow guest user
girst [Tue, 9 Jun 2020 15:24:14 +0000 (17:24 +0200)]
use same flash message format as flask-login
or decoding will fail
girst [Tue, 9 Jun 2020 14:55:45 +0000 (16:55 +0200)]
speed up pull-subscriptions.py
girst [Tue, 9 Jun 2020 14:46:00 +0000 (16:46 +0200)]
move /subscription_manager to /manage/subscriptions, ...
... also some minor fixes:
- unsubscribing
- match channel ids (for subscribing) at any position (so one can paste
a full URL)
girst [Sun, 7 Jun 2020 12:24:55 +0000 (14:24 +0200)]
prevent hanging/looping with sponsorblock
given a sponsor time of e.g. [0,10.01], we might seek to 10.00 (seeking
isn't frame-perfect), which is still within the block-time, causing us
to loop between 10.00 and 10.01. 1sec is more than enough slack to avoid
this.
girst [Fri, 5 Jun 2020 18:28:44 +0000 (20:28 +0200)]
move flask secret_key to config.ini
girst [Fri, 5 Jun 2020 19:05:20 +0000 (21:05 +0200)]
initial version of user authentication using flask-login
girst [Fri, 5 Jun 2020 18:28:44 +0000 (20:28 +0200)]
move flask secret_key to config.ini
girst [Fri, 5 Jun 2020 17:55:51 +0000 (19:55 +0200)]
fix cipher refresh script m(
girst [Fri, 5 Jun 2020 14:15:53 +0000 (16:15 +0200)]
disable subtitles, as they raise CORS errors
subtitles aren't served with A-C-A-O header, so they fail. will have to
proxy :(
girst [Fri, 5 Jun 2020 13:30:21 +0000 (15:30 +0200)]
sponsorblock (first draft), links to invidious/youtube/show=*
sponsorblock not active by default, as it sends youtube ids to 3rd
party. requires cleanup, de-inlining, configurability.
girst [Fri, 5 Jun 2020 11:40:25 +0000 (13:40 +0200)]
better error messages on EXHAUSTED, fix invidious_url, minor cleanups
girst [Fri, 5 Jun 2020 11:38:54 +0000 (13:38 +0200)]
deduplicate info and endcards
girst [Fri, 5 Jun 2020 10:23:44 +0000 (12:23 +0200)]
switch to threaded workers, so in-memory-caching works
when using worker processes, each process is torn down after handling a
request, taking the cache with them.
girst [Thu, 4 Jun 2020 21:26:17 +0000 (23:26 +0200)]
show arrow on '.advanced' details/summary
makes it more obvious that it's clickable
girst [Thu, 4 Jun 2020 20:54:44 +0000 (22:54 +0200)]
video card: json button, consistent use of '.advanced' element
girst [Thu, 4 Jun 2020 19:22:56 +0000 (21:22 +0200)]
fix WEBSITE urls
introduced in cleanup changes
girst [Thu, 4 Jun 2020 19:10:59 +0000 (21:10 +0200)]
apply aspect ratio to video element
test videos: vertical video: Vn1-Jvnhz6U; 2:1: l06PlYNShpQ
object-fit *does* affect the video too :(
girst [Thu, 4 Jun 2020 18:20:36 +0000 (20:20 +0200)]
calculate exact aspect ratio
girst [Thu, 4 Jun 2020 15:35:38 +0000 (17:35 +0200)]
rework video error messages (/watch)
girst [Thu, 4 Jun 2020 13:58:58 +0000 (15:58 +0200)]
prevent big wall of whitelisted regions
if a video is available in most regions, show only blacklisted ones;
videos that are available in only a few will still show the list of
available regions.