]> git.gir.st - subscriptionfeed.git/log
subscriptionfeed.git
3 years agosecondary channel format
girst [Sun, 9 Aug 2020 10:17:38 +0000 (12:17 +0200)]
secondary channel format

reversed by omarroth on #invidious. his message:
The channel you sent me uses a different format. YouTube uses:
```json
{
  "80226972:0:embedded": {
    "2:0:string": "UC6Om9kAkl32dWlDSNlDS9Iw",
    "3:1:base64": {
      "2:0:string": "videos",
      "3:1:varint": 3,
      "4:2:varint": 0,
      "6:3:varint": 1,
      "7:4:varint": 1,
      "61:5:base64": {
        "1:0:embedded": {
          "2:1:embedded": {
            "1:0:base64": {
              "1:0:varint": 120
            }
          }
        }
      }
    }
  }
}
```

where `"1:0:varint": 120` is the offset into the channel.

3 years agoshow LIVE badge on subscription feed
girst [Sat, 8 Aug 2020 21:37:18 +0000 (23:37 +0200)]
show LIVE badge on subscription feed

3 years agoadd livestream detection for subscriptions
girst [Sat, 8 Aug 2020 21:13:35 +0000 (23:13 +0200)]
add livestream detection for subscriptions

note that we usually fetch get_video_info so fast that even for
unannounced live streams, isLive will be false (with isUpcoming true).

3 years agomake version closer to youtube
girst [Sat, 8 Aug 2020 18:54:00 +0000 (20:54 +0200)]
make version closer to youtube

don't think it makes a difference compat-wise (invidious only has
"2.<hardcoded-date>")

3 years agoremove stray end tag
girst [Sat, 8 Aug 2020 16:45:21 +0000 (18:45 +0200)]
remove stray end tag

3 years agomove search css into a stylesheet
girst [Sat, 8 Aug 2020 16:40:02 +0000 (18:40 +0200)]
move search css into a stylesheet

3 years agofix card macro behavriour w.r.t empty channel_id
girst [Sat, 8 Aug 2020 16:17:39 +0000 (18:17 +0200)]
fix card macro behavriour w.r.t empty channel_id

3 years agofix writing youtubedown (unicode chars)
girst [Fri, 7 Aug 2020 19:40:25 +0000 (21:40 +0200)]
fix writing youtubedown (unicode chars)

the cron job runs in LANG=C, so python defaults to ASCII encoding. also
redownload youtubedown if the on-disk size if 0 (e.g. due to this bug)

3 years agocorrect statement about idempotency of cronjobs
girst [Fri, 7 Aug 2020 19:22:20 +0000 (21:22 +0200)]
correct statement about idempotency of cronjobs

3 years agodisplay length on /feed/subscriptions and use new infocard renderer
girst [Fri, 7 Aug 2020 19:21:28 +0000 (21:21 +0200)]
display length on /feed/subscriptions and use new infocard renderer

3 years agoremove broken logging statement
girst [Fri, 7 Aug 2020 19:20:44 +0000 (21:20 +0200)]
remove broken logging statement

3 years agofetch length for new subscription videos
girst [Fri, 7 Aug 2020 19:19:19 +0000 (21:19 +0200)]
fetch length for new subscription videos

in the future, we'll also detect whether it's a livestream

3 years agoimplement video badge (for length)
girst [Fri, 7 Aug 2020 16:23:53 +0000 (18:23 +0200)]
implement video badge (for length)

3 years agomore innertube variants
girst [Fri, 7 Aug 2020 15:59:57 +0000 (17:59 +0200)]
more innertube variants

3 years agosupport playlist end-of-list
girst [Fri, 7 Aug 2020 15:27:25 +0000 (17:27 +0200)]
support playlist end-of-list

3 years agoadd playlist metadata
girst [Fri, 7 Aug 2020 15:11:38 +0000 (17:11 +0200)]
add playlist metadata

3 years agoRevert "useless youtube.com cargoculting"
girst [Fri, 7 Aug 2020 14:54:51 +0000 (16:54 +0200)]
Revert "useless youtube.com cargoculting"

This reverts commit d3b80d96aec748b19f08e8757ae847ce66b4df68.

3 years agouseless youtube.com cargoculting
girst [Fri, 7 Aug 2020 14:54:23 +0000 (16:54 +0200)]
useless youtube.com cargoculting

tried to reduce error ajax responses, but has no effect.

3 years agotone down channel search
girst [Fri, 7 Aug 2020 14:53:32 +0000 (16:53 +0200)]
tone down channel search

3 years agoadd /user and /c redirects for dangerous blueprint
girst [Fri, 7 Aug 2020 14:52:48 +0000 (16:52 +0200)]
add /user and /c redirects for dangerous blueprint

3 years agoadd /c/<username> route (alias for /user/)
girst [Fri, 7 Aug 2020 11:19:35 +0000 (13:19 +0200)]
add /c/<username> route (alias for /user/)

3 years agoimplement channel search
girst [Fri, 7 Aug 2020 11:15:38 +0000 (13:15 +0200)]
implement channel search

3 years agoretry browse_ajax twice on error
girst [Fri, 7 Aug 2020 10:57:04 +0000 (12:57 +0200)]
retry browse_ajax twice on error

3 years agoadd has_more, cleanup, test for error-alerts
girst [Fri, 7 Aug 2020 10:49:29 +0000 (12:49 +0200)]
add has_more, cleanup, test for error-alerts

3 years agodangerous.channel/playlist: parse extra messages
girst [Thu, 6 Aug 2020 21:02:12 +0000 (23:02 +0200)]
dangerous.channel/playlist: parse extra messages

3 years agomove innertube stuff out of dangerous
girst [Thu, 6 Aug 2020 20:59:14 +0000 (22:59 +0200)]
move innertube stuff out of dangerous

3 years agosearch results: fix channel without subscriber count, add spelling info
girst [Thu, 6 Aug 2020 20:38:33 +0000 (22:38 +0200)]
search results: fix channel without subscriber count, add spelling info

3 years agoimplement channel and playlist endpoints using innertube
girst [Thu, 6 Aug 2020 20:01:36 +0000 (22:01 +0200)]
implement channel and playlist endpoints using innertube

ZERO testing regarding whether this can get us banned!

3 years agoimplement search params
girst [Tue, 4 Aug 2020 22:58:59 +0000 (00:58 +0200)]
implement search params

sadly, pure-protobuf is a small 3rd-party dependency :(

3 years agoupdate welcome message
girst [Tue, 4 Aug 2020 19:34:34 +0000 (21:34 +0200)]
update welcome message

3 years agolog info/endcard/searchitems errors to file
girst [Tue, 4 Aug 2020 18:01:40 +0000 (20:01 +0200)]
log info/endcard/searchitems errors to file

3 years agobetter what-to-bold strategy in base.j2
girst [Tue, 4 Aug 2020 17:40:17 +0000 (19:40 +0200)]
better what-to-bold strategy in base.j2

3 years agomove parse_metadata to youtube blueprint
girst [Tue, 4 Aug 2020 17:16:45 +0000 (19:16 +0200)]
move parse_metadata to youtube blueprint

3 years agodon't show 'None' if not video age
girst [Tue, 4 Aug 2020 17:07:40 +0000 (19:07 +0200)]
don't show 'None' if not video age

3 years agoreformat innertube, wrapper for parse_*() -> prepare_*()
girst [Tue, 4 Aug 2020 17:02:16 +0000 (19:02 +0200)]
reformat innertube, wrapper for parse_*() -> prepare_*()

3 years agosplit metadata in essential and extended
girst [Tue, 4 Aug 2020 16:06:27 +0000 (18:06 +0200)]
split metadata in essential and extended

extended is only used by /watch, but essential also for
store_video_metadata(). this allows is to move parse_metadata() to
the youtube blueprint.

3 years ago/watch: use largest thumnail for channel cards
girst [Tue, 4 Aug 2020 11:20:01 +0000 (13:20 +0200)]
/watch: use largest thumnail for channel cards

3 years agofirst draft of non-invidious search (needs cleanup!)
girst [Tue, 4 Aug 2020 11:19:41 +0000 (13:19 +0200)]
first draft of non-invidious search (needs cleanup!)

3 years agomove innertube parsing into its own package, add searchresult parser
girst [Tue, 4 Aug 2020 11:12:02 +0000 (13:12 +0200)]
move innertube parsing into its own package, add searchresult parser

3 years agouse all muxed formats for reliability
girst [Tue, 4 Aug 2020 10:45:46 +0000 (12:45 +0200)]
use all muxed formats for reliability

sometimes, a muxed stream is broken (yet still returns 200OK, so can't
easily detect server side). when the browser tries to load the broken
stream and can't play it, it moves on to the next available one.
was able to reproduce with ytid Xs9rnAH3VAQ

3 years agodisplay name for playlist subscriptions in the manager
girst [Mon, 3 Aug 2020 08:50:46 +0000 (10:50 +0200)]
display name for playlist subscriptions in the manager

3 years agoWIP: subscribing to playlist
girst [Sun, 2 Aug 2020 21:56:19 +0000 (23:56 +0200)]
WIP: subscribing to playlist

this adds the possibility to subscribe to playlists. playlists don't
support websub, so they'll be updated via pull-sub only.

Note that pubsubhubbub.appspot.com pretends you can subscribe to the
'full' feeds, but then never send POSTs on update.

3 years agoreturn channel and playlist ids from parse_xml
girst [Sun, 2 Aug 2020 21:27:35 +0000 (23:27 +0200)]
return channel and playlist ids from parse_xml

needed for /user/<> endpoint's card infobar; later useful when
subscribing to playlists

3 years agoimplement /user/<nice_username> endpoint in youtube
girst [Sun, 2 Aug 2020 21:17:22 +0000 (23:17 +0200)]
implement /user/<nice_username> endpoint in youtube

turns out there's an undocumented xmlfeed endpoint we can use

3 years agofix subscribe button on Subscription Manager
girst [Thu, 30 Jul 2020 18:23:32 +0000 (20:23 +0200)]
fix subscribe button on Subscription Manager

3 years agoprevent linebreaks in cards
girst [Thu, 30 Jul 2020 18:13:15 +0000 (20:13 +0200)]
prevent linebreaks in cards

playlist endcards break between number and "videos" due to very
agressive flex sizing.

3 years agoremove stray html comment
girst [Thu, 30 Jul 2020 17:41:19 +0000 (19:41 +0200)]
remove stray html comment

3 years agobetter pagination
girst [Thu, 30 Jul 2020 17:28:27 +0000 (19:28 +0200)]
better pagination

3 years agoexample blueprint: show how to add a header item
girst [Thu, 30 Jul 2020 15:32:42 +0000 (17:32 +0200)]
example blueprint: show how to add a header item

3 years agomove search bar out of header, implement way to include links in headerbar
girst [Thu, 30 Jul 2020 15:16:14 +0000 (17:16 +0200)]
move search bar out of header, implement way to include links in headerbar

3 years agomove audio-only next to raw-video button
girst [Thu, 30 Jul 2020 15:13:04 +0000 (17:13 +0200)]
move audio-only next to raw-video button

3 years agosystemd units: put gunicorn config in /etc/yt
girst [Thu, 30 Jul 2020 11:36:58 +0000 (13:36 +0200)]
systemd units: put gunicorn config in /etc/yt

3 years agoswitch frontend to eventlet
girst [Thu, 30 Jul 2020 11:31:03 +0000 (13:31 +0200)]
switch frontend to eventlet

3 years agoless verbose welcome message
girst [Thu, 30 Jul 2020 09:01:14 +0000 (11:01 +0200)]
less verbose welcome message

3 years agotone down welcome message css
girst [Thu, 30 Jul 2020 08:59:42 +0000 (10:59 +0200)]
tone down welcome message css

3 years agoclean up README, add license notice
girst [Thu, 30 Jul 2020 08:46:25 +0000 (10:46 +0200)]
clean up README, add license notice

3 years agomake site R E S P O N S I V E (mobile friendly)
girst [Thu, 30 Jul 2020 07:54:32 +0000 (09:54 +0200)]
make site R E S P O N S I V E (mobile friendly)

3 years agoadd a way to print all routes in their order of precedence
girst [Thu, 30 Jul 2020 07:38:19 +0000 (09:38 +0200)]
add a way to print all routes in their order of precedence

3 years agofix running __main__
girst [Thu, 30 Jul 2020 07:37:49 +0000 (09:37 +0200)]
fix running __main__

3 years agoapply proxy to whole stream map (not just best-muxed)
girst [Thu, 30 Jul 2020 07:22:18 +0000 (09:22 +0200)]
apply proxy to whole stream map (not just best-muxed)

3 years agoimplement audio-only-mode, return all streams from g_v_i
girst [Thu, 30 Jul 2020 06:58:38 +0000 (08:58 +0200)]
implement audio-only-mode, return all streams from g_v_i

3 years agomake flash messages nicer
girst [Mon, 27 Jul 2020 10:08:16 +0000 (12:08 +0200)]
make flash messages nicer

3 years agoUGLY-HACKY: fallback image for card thumbnail
girst [Sat, 25 Jul 2020 18:12:18 +0000 (20:12 +0200)]
UGLY-HACKY: fallback image for card thumbnail

3 years agoremove unused file
girst [Sat, 25 Jul 2020 18:11:59 +0000 (20:11 +0200)]
remove unused file

3 years agoswitch to systemd units, redo INSTALL as markdown file
girst [Sat, 25 Jul 2020 16:35:15 +0000 (18:35 +0200)]
switch to systemd units, redo INSTALL as markdown file

3 years agobetter document standalone modules
girst [Sat, 25 Jul 2020 15:22:35 +0000 (17:22 +0200)]
better document standalone modules

3 years agore-format config.ini
girst [Sat, 25 Jul 2020 15:12:50 +0000 (17:12 +0200)]
re-format config.ini

3 years agoadd /websub route
girst [Sat, 25 Jul 2020 14:47:27 +0000 (16:47 +0200)]
add /websub route

useful for testing if the websub is running.

3 years agofix loading webhooks as frontend module, simplify startup.sh
girst [Sat, 25 Jul 2020 14:39:02 +0000 (16:39 +0200)]
fix loading webhooks as frontend module, simplify startup.sh

3 years agoport refresh-cipher to python (mostly, still calling youtubedown)
girst [Sat, 25 Jul 2020 14:28:36 +0000 (16:28 +0200)]
port refresh-cipher to python (mostly, still calling youtubedown)

3 years agodecouple reddit from common
girst [Sat, 25 Jul 2020 12:03:02 +0000 (14:03 +0200)]
decouple reddit from common

3 years agofix premiere video handling
girst [Fri, 24 Jul 2020 23:25:50 +0000 (01:25 +0200)]
fix premiere video handling

isLiveContent==False, isLive==True

3 years agodon't use proxy for videos that don't need it
girst [Fri, 24 Jul 2020 20:07:34 +0000 (22:07 +0200)]
don't use proxy for videos that don't need it

3 years agodocument proxy endpoint
girst [Fri, 24 Jul 2020 13:10:06 +0000 (15:10 +0200)]
document proxy endpoint

3 years agomake invidious_url point to HTML version (except show=raw)
girst [Fri, 24 Jul 2020 13:02:23 +0000 (15:02 +0200)]
make invidious_url point to HTML version (except show=raw)

3 years agouse proxy for geolocked videos (iff enabled)
girst [Fri, 24 Jul 2020 13:02:02 +0000 (15:02 +0200)]
use proxy for geolocked videos (iff enabled)

3 years agoremove superfluous headers
girst [Fri, 24 Jul 2020 12:38:34 +0000 (14:38 +0200)]
remove superfluous headers

3 years agouse whitelist for forwarded response headers
girst [Fri, 24 Jul 2020 12:37:47 +0000 (14:37 +0200)]
use whitelist for forwarded response headers

3 years agorequests_cache breaks videoproxy
girst [Fri, 24 Jul 2020 12:28:45 +0000 (14:28 +0200)]
requests_cache breaks videoproxy

streaming responses are fetched in full (and would fill up the cache)
see https://requests-cache.readthedocs.io/en/latest/user_guide.html

3 years agolet all templates inherit from a base template
girst [Thu, 23 Jul 2020 12:33:57 +0000 (14:33 +0200)]
let all templates inherit from a base template

also some minor html changes (emojibuttons, navigation, css, ...)

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

Imprint / Impressum