viable. This does not help with region locking, but at least allows
age restricted videos with no sign in, doesnt run any google scripts,
and does not run ads.
changelist:
-pseudo-random name colors
-layout fixes(moved chat after the video on the .pug. also disabled said
feature in fcyp.js)
-theme updates(tokebot flair, changed modflair, more compact layout,
unfucked cytube provided css (srsly, WTF calzoneman? Why?)
link decorations, made things moar unified)
-added image embedding, disabling fcyp image embed (nothing new from a
user standpoint, simply slowly stripping fcyp.js out)
-moved emote button to chatbar, added send button as well
-chatpaste & chatsmack functions allowing clickable usernames/
-fixed raw video controls
-ripped out chat processing logic from fcyp.js, it was breaking a lot of
shit and everything it did has been implemented by this update and moar
devnotes:
Biggest update yet, also made some good steps towards fully ripping
fcyp.js out completely. Played around with an image upload button. I
might have to setup a cors relay to get that working, I'll have to play
around more :p
graceful-fs was added at a time when channel state was stored in
flatfiles that could become corrupted if enough concurrent saves
occurred to hit the ulimit for maxfds (EMFILE). Saving channels this
way is no longer supported, so it shouldn't be an issue anymore.
The default timeout was removed from the HTTP module in node 13.x:
https://github.com/nodejs/node/pull/27558. I believe this is the most
likely cause of fd leaks when running under current node versions.
This reverts commit d678fa56d1. The
reference counter, flawed as it is, was masking far more issues than I
realized. It would require a more significant rearchitecture of the
code to remove it. Probably better to keep it and try to improve it for
now.
This was an old attempt at gracefully unloading channels that still had
pending callbacks. Its implementation was always flawed, and the number
of places where it was used is small enough to replace with
straightforward checks for whether the channel has been unloaded after
an asynchronous operation. Hopefully fixes the stuck 0 user channels
issue.