Skip to content

v0.4.0

Compare
Choose a tag to compare
@dyc3 dyc3 released this 31 Oct 14:19
· 522 commits to master since this release

What's Changed

  • fix some code style issues by @dyc3 in #855
  • fix crashing and burning if unloading a room fails by @dyc3 in #858
  • Better Config by @dyc3 in #849
  • update dockerignore by @dyc3 in #861
  • refactor: use redis a bit less by @dyc3 in #854
  • refactor Client into DirectClient and BalancerClient by @dyc3 in #856
  • Make using roommanager.getRoom harder to fuck up by @dyc3 in #863
  • hotfix for exceptions being thrown by @dyc3 in #865
  • fix remaining getroom calls by @dyc3 in #866
  • Add Load Balancer Prototype by @dyc3 in #857
  • add rust CI job by @dyc3 in #872
  • fix clippy lints by @dyc3 in #873
  • don't let getClientInfo throw exceptions by @dyc3 in #874
  • Balancer: refactor to use hyper instead of rocket by @dyc3 in #875
  • Balancer: add minimal reverse proxy by @dyc3 in #876
  • Stability fixes by @dyc3 in #877
  • Monolith: add support for balancer clients by @dyc3 in #880
  • fix e2e tests and misc other little things by @dyc3 in #883
  • Misc Balancer connection management stuff by @dyc3 in #884
  • update cypress to 12.8.1 by @dyc3 in #892
  • Add video queue exporting by @dyc3 in #886
  • add support for node 20 by @dyc3 in #894
  • Change default room visibility to unlisted by @GPery in #896
  • update vuetify to 3.3.3 by @dyc3 in #898
  • finish converting api endpoints to typescript by @dyc3 in #897
  • add postgres_table_ops by @dyc3 in #903
  • Optimize user list sync bandwidth and performance by @dyc3 in #902
  • Misc typescript conversions by @dyc3 in #900
  • convert usermanager to typescript by @dyc3 in #907
  • fix some errors and logging by @dyc3 in #909
  • improve missing token error by @dyc3 in #910
  • fix rooms not being saved to the database by @dyc3 in #911
  • Allow logging in with username and password by @dyc3 in #908
  • Make email optional when registering by @dyc3 in #912
  • fix new clients not getting auth tokens by @dyc3 in #914
  • Allow signed in users to own temporary rooms by @dyc3 in #915
  • adjust how usernames are generated from discord profiles by @dyc3 in #916
  • update dependencies by @dyc3 in #917
  • adjust behavior around kicking clients for errors by @dyc3 in #922
  • Playback Speed by @dyc3 in #825
  • add counter for logs by @dyc3 in #923
  • fix db mode not having an effect in production environments by @dyc3 in #924
  • hotfix by @dyc3 in #925
  • fix an edge case when claiming rooms by @dyc3 in #929
  • include current video in exported queue by @dyc3 in #930
  • fix room owner not getting persisted by @dyc3 in #932
  • Update deployment docs by @dyc3 in #933
  • fix user roles not getting loaded properly by @dyc3 in #937
  • fix 936 by @dyc3 in #938
  • fix youtube video slowly scrolling out of view in full screen mode with great comedic timing by @dyc3 in #940
  • fix chat being positioned weirdly by @dyc3 in #943
  • fix discord login by @dyc3 in #945
  • fix a couple lints, reenable some tests by @dyc3 in #946
  • db model refactor by @dyc3 in #934
  • Finish converting storage module to typescript by @dyc3 in #947
  • fix cachedvideo migration so it always works by @dyc3 in #948
  • Automatically save the current queue when the room is unloaded, and have the option to restore it by @dyc3 in #949
  • hotfix for migration by @dyc3 in #950
  • add devcontainer config by @dyc3 in #951
  • adjust metrics by @dyc3 in #954
  • kinda sorta improve ott-common jank by @dyc3 in #957
  • hotfix by @dyc3 in #959
  • Add room setting to control queue restore behavior by @dyc3 in #956
  • Add vote skipping by @dyc3 in #960
  • limit how fast clients send player status updates by @dyc3 in #961
  • update jest and fix flaky tests (hopefully) by @dyc3 in #962
  • fix 963 by @dyc3 in #964
  • fix migration by @dyc3 in #965
  • fix users not appearing in the user list, fixes #966 by @dyc3 in #967
  • hotfix to stop leaking auth tokens to other users by @dyc3 in #968
  • Minor refactor to the join process by @dyc3 in #969
  • tweak video caching by @dyc3 in #971
  • Add a parser for m3u8 files, and switch away from video.js to use plyr by @dyc3 in #918
  • add captions support to direct and hls video by @dyc3 in #972
  • Add a kick button by @dyc3 in #973
  • update vite to 4.4.2 by @dyc3 in #974
  • ott-common improvements by @dyc3 in #975
  • make ott-server an esmodule and fix imports by @dyc3 in #976
  • update deploy docs by @dyc3 in #981
  • fix imports by @dyc3 in #982
  • better logging for redis client errors by @dyc3 in #983
  • fix redis subscriber by @dyc3 in #984
  • make playback e2e test more robust by @dyc3 in #985
  • misc typescript strictness improvements by @dyc3 in #987
  • add patch package by @dyc3 in #990
  • upgrade redis to v4 by @dyc3 in #992
  • Bump openssl from 0.10.51 to 0.10.55 by @dependabot in #941
  • Bump semver from 5.7.1 to 5.7.2 by @dependabot in #986
  • Role Name Localization by @cjrkoa in #978
  • end support for node 16 by @dyc3 in #993
  • Experimental Peertube support by @dyc3 in #994
  • fix bad auth tokens from crashing the server by @dyc3 in #995
  • upgrade typescript to 5.1.6 by @dyc3 in #997
  • force clients to wait for their auth token before connecting by @dyc3 in #998
  • Add sound effects for chat messages by @dyc3 in #999
  • set up configuration stuff for deploying on flyio by @dyc3 in #1002
  • make the balancer configurable by @dyc3 in #1003
  • balancer: room list endpoint, gossip by @dyc3 in #1005
  • balancer: fix client disconnects not being sent to monoliths by @dyc3 in #1004
  • add deploy config for ott-balancer-staging by @dyc3 in #1006
  • disable accepting gossip messages because it breaks things for mysterious reasons by @dyc3 in #1008
  • balancer: don't follow redirects for http requests by @dyc3 in #1009
  • add config stuff for production deployment on fly by @dyc3 in #1011
  • add fly migration scripts by @dyc3 in #1013
  • minor announcement toast improvements by @dyc3 in #1014
  • Bump word-wrap from 1.2.3 to 1.2.4 by @dependabot in #1015
  • add support for subpath hosting via the OTT_BASE_URL environment variable by @dyc3 in #1000
  • add config option to enable/disable video services by @dyc3 in #1016
  • Add automated account recovery via email verification by @dyc3 in #1017
  • fix trust proxy setting for fly deployment by @dyc3 in #1018
  • fix job runner so that it actually works by @dyc3 in #1019
  • actually fix clients not receiving messages from balancers for real by @dyc3 in #1020
  • reenable gossip code by @dyc3 in #1021
  • add init message to M2B protocol and implement it by @dyc3 in #1022
  • misc balancer fixes by @dyc3 in #1023
  • balancer: add cli args for setting the log level by @dyc3 in #1024
  • docs: discord login setup by @dyc3 in #1025
  • convert some more bits to typescript by @dyc3 in #1026
  • minor e2e test improvements by @dyc3 in #1027
  • balancer: disconnect all clients when the monolith they are connected to disconnects by @dyc3 in #1028
  • fix backup script so rclone doesn't run out of memory by @dyc3 in #1029
  • Very experimental pluto tv support by @dyc3 in #953
  • prevent vimeo player from escaping bounding box by @dyc3 in #1033
  • Avoid using ts-node for prod deployment by @dyc3 in #1034
  • Fix progress slider on videos with irregular lengths by @daichuanwu21 in #1031
  • batch pluto calls by @dyc3 in #1037
  • log job by @dyc3 in #1039
  • very minor memory optimizations by @dyc3 in #1040
  • refactor: ffprobe running strategies by @dyc3 in #1041
  • fix mass-adding non-cachable videos from a list of video urls by @dyc3 in #1042
  • fix #1044 by @dyc3 in #1045
  • adjust logging by @dyc3 in #1046
  • redis bandwidth optimizations by @dyc3 in #1048
  • fix buffer indicators not appearing by @dyc3 in #1050
  • fix PlyrPlayer from stopping playback when transitioning from one video to the next by @dyc3 in #1049
  • add theme tester page to preview themes easier by @dyc3 in #1051
  • misc theme fixes by @dyc3 in #1053
  • add greenslate theme by @dyc3 in #1052
  • add strawberry theme by @dyc3 in #1054
  • client: add preload="auto" to PlyrPlayer by @dyc3 in #1055
  • add a warning when the client hasn't buffered enough of the video to play from the current timestamp by @dyc3 in #1057
  • tweak the buffer warning banner to be a little smaller and show a loading indicator by @dyc3 in #1058
  • hls: give some better errors by @dyc3 in #1059
  • vimeo: misc player visual fixes by @dyc3 in #1062
  • fix "play next" and "play last" not working, fixes #1060 by @dyc3 in #1063
  • refactor: minor type annotations by @dyc3 in #1064
  • refactor: make balancers connect to monoliths instead of the other way around by @dyc3 in #1065
  • balancer: fix router rules by @dyc3 in #1066
  • adjust add preview response caching by @dyc3 in #1067
  • balancer: minor tweaks to proxy_request by @dyc3 in #1069
  • remove usage of redis for conveying room state by @dyc3 in #1074
  • Lazy load room state from redis instead of on startup. by @dyc3 in #1075
  • set up 2 new crates for testing the load balancer by @dyc3 in #1077
  • Bump webpki from 0.22.0 to 0.22.1 by @dependabot in #1078
  • add prototype balancer testing harness by @dyc3 in #1079
  • harness: add prototype emulated monoliths and discovery provider by @dyc3 in #1081
  • docs and misc docker compose fixes by @dyc3 in #1083
  • balancer: faster monolith discovery by @dyc3 in #1084
  • remove benchmarks folder by @dyc3 in #1086
  • balancer: make harness use random ports for harness discoverer by @dyc3 in #1088
  • balancer: fix monolith discovery not removing monoliths when told to by @dyc3 in #1087
  • add prototype emulated clients by @dyc3 in #1089
  • harness: add WebsocketSender trait by @dyc3 in #1091
  • harness: add http mocking to emulated monoliths by @dyc3 in #1093
  • harness: add MockService for mocking monolith http by @dyc3 in #1096
  • balancer: add some integration tests by @dyc3 in #1097
  • ci: update vue config to maybe get cypress to work more often by @dyc3 in #1098
  • another possible fix for flaky component tests by @dyc3 in #1104
  • add un/load_room to emulated monoliths by @dyc3 in #1105
  • Disconnect clients when monolith connection is severed by @cjrkoa in #1092
  • add typeshare by @dyc3 in #1103
  • Add git commit hash to client builds by @dyc3 in #1107
  • add a harness test for #1076 by @dyc3 in #1106
  • balancer: fix room load/client join race condition by @dyc3 in #1102
  • add config options to disable room creation by @dyc3 in #1111
  • add a close button to the video buffer warning banner by @dyc3 in #1113
  • attempt to make route_ws_to_correct_monolith_race less flaky by @dyc3 in #1114
  • fix a typo in load epoch check by @dyc3 in #1115
  • allow balancers to unload rooms by @dyc3 in #1119

New Contributors

Full Changelog: v0.3.0...v0.4.0