]> git.gir.st - subscriptionfeed.git/log
subscriptionfeed.git
3 years agouse requests for proxy endpoint
girst [Thu, 23 Jul 2020 12:23:33 +0000 (14:23 +0200)]
use requests for proxy endpoint

3 years agocreate video proxy endpoint
girst [Thu, 23 Jul 2020 12:18:26 +0000 (14:18 +0200)]
create video proxy endpoint

3 years agolog POST request data on internal errors
girst [Tue, 21 Jul 2020 12:55:24 +0000 (14:55 +0200)]
log POST request data on internal errors

3 years agoimprove default subtitle handling
girst [Tue, 21 Jul 2020 12:48:55 +0000 (14:48 +0200)]
improve default subtitle handling

was broken when autogenerated was available, due to sorted()

3 years agomake webhook a blueprint/standalone-hybrid
girst [Tue, 21 Jul 2020 10:53:27 +0000 (12:53 +0200)]
make webhook a blueprint/standalone-hybrid

3 years agocreate example blueprint to demo ease of extenability
girst [Tue, 21 Jul 2020 10:09:30 +0000 (12:09 +0200)]
create example blueprint to demo ease of extenability

3 years agoadd raw video id enpoint; make fallback_route return 404 if none available
girst [Tue, 21 Jul 2020 09:43:27 +0000 (11:43 +0200)]
add raw video id enpoint; make fallback_route return 404 if none available

also fix small usage error of fallback_route

3 years agomove main (non-translation) subtitles to the first slot
girst [Tue, 21 Jul 2020 09:21:53 +0000 (11:21 +0200)]
move main (non-translation) subtitles to the first slot

3 years agoawful hack to align last row of cards
girst [Mon, 20 Jul 2020 15:55:30 +0000 (17:55 +0200)]
awful hack to align last row of cards

3 years agomore useful date formatting
girst [Mon, 20 Jul 2020 15:34:48 +0000 (17:34 +0200)]
more useful date formatting

3 years agoRevert "use all muxed stream sources" for breaking edge-cases
girst [Mon, 20 Jul 2020 11:30:45 +0000 (13:30 +0200)]
Revert "use all muxed stream sources" for breaking edge-cases

specifically, geolocked video handling

This reverts commit e38be6698b853bcdeccfb2f664a276b6f669e4b4.

3 years agoadd subscribe button to channel page (TODO:invidious)
girst [Sun, 19 Jul 2020 18:46:51 +0000 (20:46 +0200)]
add subscribe button to channel page (TODO:invidious)

3 years agoredirect /embedded to /watch
girst [Sun, 19 Jul 2020 18:18:14 +0000 (20:18 +0200)]
redirect /embedded to /watch

for invidition compat

3 years agoupdate overview diagram
girst [Sat, 18 Jul 2020 22:31:00 +0000 (00:31 +0200)]
update overview diagram

3 years agomove test instance to subscriptions.gir.st:443
girst [Sat, 18 Jul 2020 17:16:39 +0000 (19:16 +0200)]
move test instance to subscriptions.gir.st:443

3 years agofix route fallback for /user (which has none)
girst [Sat, 18 Jul 2020 15:57:57 +0000 (17:57 +0200)]
fix route fallback for /user (which has none)

3 years agoclean up sub* managers
girst [Sat, 18 Jul 2020 15:46:57 +0000 (17:46 +0200)]
clean up sub* managers

3 years agoremove useless whitespace from emoji_link
girst [Sat, 18 Jul 2020 15:31:17 +0000 (17:31 +0200)]
remove useless whitespace from emoji_link

3 years agoremove now-unused reddit tables
girst [Sat, 18 Jul 2020 15:29:33 +0000 (17:29 +0200)]
remove now-unused reddit tables

3 years agoreddit: use emoji abstractions, pin to subscriptions instead
girst [Sat, 18 Jul 2020 15:29:01 +0000 (17:29 +0200)]
reddit: use emoji abstractions, pin to subscriptions instead

3 years agoabstract emoji buttons/links
girst [Sat, 18 Jul 2020 14:54:15 +0000 (16:54 +0200)]
abstract emoji buttons/links

3 years agoallow (un)pinning and (un)subscribing on /watch
girst [Sat, 18 Jul 2020 13:38:04 +0000 (15:38 +0200)]
allow (un)pinning and (un)subscribing on /watch

pinning also works now for videos yet not in the database

3 years agouse all muxed stream sources
girst [Sat, 18 Jul 2020 13:33:15 +0000 (15:33 +0200)]
use all muxed stream sources

might allow falling back when a stream is broken

3 years agoproxy and fixup subtitles
girst [Fri, 17 Jul 2020 21:22:10 +0000 (23:22 +0200)]
proxy and fixup subtitles

proxying is necessary, because youtube doesn't send CORS headers. we
don't either, since we expect the consumer of the timedtext-proxy to
only be us ourselves. if someone wants to use it externally (e.g. as an
api), they'd have to add cors headers.

thanks goes out to perflyst[m] on #invidious for checking that
youtube's timedtext endpoint is "safe" for us to use.

3 years agopaper over reddit exceptions
girst [Fri, 17 Jul 2020 16:15:06 +0000 (18:15 +0200)]
paper over reddit exceptions

this may return a html-response with tracking-javascript (e.g. "Our CDN
was unable to reach our servers")!

3 years agoprioritize channel name element's width over details element's
girst [Fri, 17 Jul 2020 16:08:12 +0000 (18:08 +0200)]
prioritize channel name element's width over details element's

3 years agowebhook: only ask get_video_info if necessary (REVERTME)
girst [Fri, 17 Jul 2020 16:00:39 +0000 (18:00 +0200)]
webhook: only ask get_video_info if necessary (REVERTME)

maybe revert later to get more useful info from g_v_i (e.g. livestream
start date) to display on /feed/subscriptions

3 years ago/watch: trim time from published date
girst [Fri, 17 Jul 2020 15:59:38 +0000 (17:59 +0200)]
/watch: trim time from published date

3 years agoreturn bytes (not str) from fetch_xml()
girst [Fri, 17 Jul 2020 11:34:10 +0000 (13:34 +0200)]
return bytes (not str) from fetch_xml()

broke pull-subs logging when it choked on an unrelated error
Traceback (most recent call last):
  File "/opt/yt/app/common/utils.py", line 151, in <module>
    pull_subscriptions(verbosity, force, limit)
  File "/opt/yt/app/common/utils.py", line 44, in pull_subscriptions
    pull_feed(feed_id, feed_type, conn, verbose)
  File "/opt/yt/app/common/utils.py", line 67, in pull_feed
    f.write(xmlfeed + b"\n")
TypeError: must be str, not bytes

3 years agofix temporary logging not showing up
girst [Thu, 16 Jul 2020 22:34:29 +0000 (00:34 +0200)]
fix temporary logging not showing up

3 years agofix livestream start time metadata
girst [Thu, 16 Jul 2020 22:33:29 +0000 (00:33 +0200)]
fix livestream start time metadata

not exactly sure where this came up due to insufficient logging :/

3 years agorun websub more often
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.

3 years agosubscription_manager: fix websub expired badge
girst [Mon, 13 Jul 2020 13:24:43 +0000 (15:24 +0200)]
subscription_manager: fix websub expired badge

3 years agouse get_video_info for webhook uploads
girst [Mon, 13 Jul 2020 13:06:13 +0000 (15:06 +0200)]
use get_video_info for webhook uploads

3 years agodocument non-features, replace outdated 'usage' section
girst [Mon, 13 Jul 2020 12:43:39 +0000 (14:43 +0200)]
document non-features, replace outdated 'usage' section

3 years agocollaboratorInfoCardContentRenderer may have no subscriber count
girst [Mon, 13 Jul 2020 12:03:35 +0000 (14:03 +0200)]
collaboratorInfoCardContentRenderer may have no subscriber count

3 years agofix pinned reddit video comments url
girst [Tue, 30 Jun 2020 13:00:51 +0000 (15:00 +0200)]
fix pinned reddit video comments url

3 years agofix "available in ... countries"
girst [Tue, 30 Jun 2020 11:51:13 +0000 (13:51 +0200)]
fix "available in ... countries"

3 years agofuck this. doesn't work with verical videos
girst [Sun, 28 Jun 2020 13:25:45 +0000 (15:25 +0200)]
fuck this. doesn't work with verical videos

3 years agowebhooks: enforce signature checking, use channel_id from url path
girst [Sun, 28 Jun 2020 05:38:02 +0000 (07:38 +0200)]
webhooks: enforce signature checking, use channel_id from url path

3 years agofix /watch cards wrapping
girst [Sat, 27 Jun 2020 19:42:12 +0000 (21:42 +0200)]
fix /watch cards wrapping

3 years agouse ?next in "log in or sign up" link
girst [Sat, 27 Jun 2020 19:25:52 +0000 (21:25 +0200)]
use ?next in "log in or sign up" link

3 years agomove upstream repo
girst [Sat, 27 Jun 2020 19:01:58 +0000 (21:01 +0200)]
move upstream repo

gitea is overkill; gitweb works fine.

3 years agofix websub update being overzealous
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 :|

3 years agouse flexbox for card component
girst [Tue, 23 Jun 2020 22:05:53 +0000 (00:05 +0200)]
use flexbox for card component

3 years agocleanup
girst [Tue, 23 Jun 2020 20:30:07 +0000 (22:30 +0200)]
cleanup

3 years agowebhook: simplify deleted-entry handling
girst [Tue, 23 Jun 2020 20:26:18 +0000 (22:26 +0200)]
webhook: simplify deleted-entry handling

3 years agotweak video's object-fit:cover *again*
girst [Mon, 22 Jun 2020 19:48:49 +0000 (21:48 +0200)]
tweak video's object-fit:cover *again*

3 years agoadd functional overview (preliminary)
girst [Mon, 22 Jun 2020 19:46:41 +0000 (21:46 +0200)]
add functional overview (preliminary)

3 years agoimplement websub hmac verification (not yet enforced)
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

3 years agofix requests debugging if not within flask
girst [Fri, 19 Jun 2020 15:01:37 +0000 (17:01 +0200)]
fix requests debugging if not within flask

3 years agofixup 72b1f8
girst [Fri, 19 Jun 2020 02:38:39 +0000 (04:38 +0200)]
fixup 72b1f8

3 years agofix exception and bad syntax
girst [Wed, 17 Jun 2020 14:32:18 +0000 (16:32 +0200)]
fix exception and bad syntax

3 years agoallow pinning and hiding reddit posts
girst [Tue, 16 Jun 2020 16:17:46 +0000 (18:17 +0200)]
allow pinning and hiding reddit posts

3 years agodon't assume video_id == post_id
girst [Tue, 16 Jun 2020 16:16:58 +0000 (18:16 +0200)]
don't assume video_id == post_id

3 years agosplit fetch_reddit into fetching and parsing blocks
girst [Tue, 16 Jun 2020 14:22:14 +0000 (16:22 +0200)]
split fetch_reddit into fetching and parsing blocks

3 years agotoken auth: don't 500 if user doesn't exist
girst [Tue, 16 Jun 2020 14:17:56 +0000 (16:17 +0200)]
token auth: don't 500 if user doesn't exist

3 years agoload initial channel page ourselves
girst [Tue, 16 Jun 2020 11:18:05 +0000 (13:18 +0200)]
load initial channel page ourselves

*way* faster

3 years agosometime playabilityStatus will have a messages array instead of a reason
girst [Tue, 16 Jun 2020 11:08:53 +0000 (13:08 +0200)]
sometime playabilityStatus will have a messages array instead of a reason

3 years agoimplement shadowing invidious routes
girst [Mon, 15 Jun 2020 19:14:23 +0000 (21:14 +0200)]
implement shadowing invidious routes

3 years agoimplement fallback_route()
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.

3 years agodon't double escape reddit submission titles
girst [Mon, 15 Jun 2020 16:53:33 +0000 (18:53 +0200)]
don't double escape reddit submission titles

3 years agodocument dynamic blueprint loading
girst [Mon, 15 Jun 2020 16:46:32 +0000 (18:46 +0200)]
document dynamic blueprint loading

3 years agomake token login persistent
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.

3 years agomove subscription cronjobs into common/utils
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

3 years agoraise error if config file not found, some comments
girst [Mon, 15 Jun 2020 15:36:18 +0000 (17:36 +0200)]
raise error if config file not found, some comments

3 years agolog api responses on error
girst [Mon, 15 Jun 2020 14:15:02 +0000 (16:15 +0200)]
log api responses on error

3 years agouse "prepared" query strings with requests
girst [Sun, 14 Jun 2020 16:59:43 +0000 (18:59 +0200)]
use "prepared" query strings with requests

3 years agoobject-fit:cover for video poster
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.

3 years ago/search using invidious api (very ugly)
girst [Sun, 14 Jun 2020 14:39:29 +0000 (16:39 +0200)]
/search using invidious api (very ugly)

3 years agostub out tombstones/deleted-entry support
girst [Sun, 14 Jun 2020 14:38:16 +0000 (16:38 +0200)]
stub out tombstones/deleted-entry support

3 years agouse binary strings for cronjob error logging and other small fixes
girst [Sun, 14 Jun 2020 14:31:35 +0000 (16:31 +0200)]
use binary strings for cronjob error logging and other small fixes

3 years agomore TODOs
girst [Sun, 14 Jun 2020 14:29:31 +0000 (16:29 +0200)]
more TODOs

3 years agofix metadata on completely unavailable videos
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

3 years agoadd search bar (no impl yet)
girst [Sat, 13 Jun 2020 20:41:58 +0000 (22:41 +0200)]
add search bar (no impl yet)

3 years agofix currently-running livestream detection
girst [Sat, 13 Jun 2020 20:40:54 +0000 (22:40 +0200)]
fix currently-running livestream detection

3 years agoharmonize layout; headerbar macro
girst [Sat, 13 Jun 2020 20:07:22 +0000 (22:07 +0200)]
harmonize layout; headerbar macro

3 years agorework fetch_reddit() params, support non-hot-ordering (undocumented)
girst [Fri, 12 Jun 2020 19:21:59 +0000 (21:21 +0200)]
rework fetch_reddit() params, support non-hot-ordering (undocumented)

3 years agofix livestream detection
girst [Fri, 12 Jun 2020 18:36:55 +0000 (20:36 +0200)]
fix livestream detection

isPostLiveDvr is not present if False.

3 years agodon't hardcode welcome message for anonymous users
girst [Fri, 12 Jun 2020 14:10:29 +0000 (16:10 +0200)]
don't hardcode welcome message for anonymous users

3 years agoreddit footer: show all subscribed subreddits all the time
girst [Fri, 12 Jun 2020 13:57:59 +0000 (15:57 +0200)]
reddit footer: show all subscribed subreddits all the time

3 years agofix webhook error loggin m(
girst [Fri, 12 Jun 2020 11:18:39 +0000 (13:18 +0200)]
fix webhook error loggin m(

one. job.

3 years agotweak reddit template
girst [Fri, 12 Jun 2020 10:41:53 +0000 (12:41 +0200)]
tweak reddit template

3 years agotemporary fix for utils/ config import
girst [Fri, 12 Jun 2020 10:41:16 +0000 (12:41 +0200)]
temporary fix for utils/ config import

3 years agofix webhook config import
girst [Fri, 12 Jun 2020 10:40:35 +0000 (12:40 +0200)]
fix webhook config import

3 years agoremove /r/ endpoints from youtube blueprint
girst [Fri, 12 Jun 2020 10:39:29 +0000 (12:39 +0200)]
remove /r/ endpoints from youtube blueprint

those shadowed the actual reddit ones

3 years agoremove superfluous imports
girst [Thu, 11 Jun 2020 18:30:18 +0000 (20:30 +0200)]
remove superfluous imports

3 years agode-hardcode subreddit footer
girst [Thu, 11 Jun 2020 18:28:07 +0000 (20:28 +0200)]
de-hardcode subreddit footer

3 years agoprovide guest user default subscriptions
girst [Thu, 11 Jun 2020 17:49:23 +0000 (19:49 +0200)]
provide guest user default subscriptions

3 years agomake __main__.py less fragile
girst [Thu, 11 Jun 2020 17:45:18 +0000 (19:45 +0200)]
make __main__.py less fragile

3 years agomove youtube templates into blueprint
girst [Thu, 11 Jun 2020 17:43:02 +0000 (19:43 +0200)]
move youtube templates into blueprint

3 years agoadd reddit database tables
girst [Thu, 11 Jun 2020 17:49:57 +0000 (19:49 +0200)]
add reddit database tables

3 years agofinish reddit blueprint
girst [Thu, 11 Jun 2020 17:32:58 +0000 (19:32 +0200)]
finish reddit blueprint

3 years agomove reddit to seperate blueprint
girst [Thu, 11 Jun 2020 16:56:22 +0000 (18:56 +0200)]
move reddit to seperate blueprint

needs cleanup

3 years agoname main app 'app' again
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

3 years agosplit app into blueprints - part 3: login/user module
girst [Thu, 11 Jun 2020 12:18:57 +0000 (14:18 +0200)]
split app into blueprints - part 3: login/user module

3 years agosplit app into blueprints - part 2: __main__
girst [Thu, 11 Jun 2020 12:18:11 +0000 (14:18 +0200)]
split app into blueprints - part 2: __main__

3 years agosplit app into blueprints - part 1
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.

3 years agomore TODOs
girst [Thu, 11 Jun 2020 11:55:41 +0000 (13:55 +0200)]
more TODOs

3 years agorefresh-cipher: enforce 1-row-maximum
girst [Thu, 11 Jun 2020 11:01:24 +0000 (13:01 +0200)]
refresh-cipher: enforce 1-row-maximum

Imprint / Impressum