@AdjectiveAlli @nexxeln@t3dotgg I remember when Spotify wasn't available too. Soundcloud is available but a lot of music is "unavailable in your country".
More context: This was in 2016, and at the time the bundling infra was already 4-5 years old. It is still ahead of its time even today!
The bundling infra works by bundling JS files together "automatically" (via ML) based on an amount of variables that is incomprehensible to humans, including user-specific things like location, language, thousands of concurrently running A/B tests, together with the usage of each individual JS module. Consider for example that you are rolling out a completely new news feed and you want to A/B test it, first with 1% of users but eventually with 50% of users. If you bundle the new code together with the old code all the data like load times will be skewed, or 99% of users might download code they don't use. This system optimized for all of these cases to keep bundle sizes down and eliminate variance in testing. It's amazing!
The way it generated bundles was by running once every 24 hours based on the latest set of production data. Relative paths were used as "ids" to identify a module. If the ids were unknown, it was assumed the file was new and wouldn't be bundled until 24 hours later. Removing one set of files and directing the bundler to another folder with the same layout would make the bundler think all files were new.
In response to this breakage the system was changed to rely on unique module ids (which we already had) instead of relative paths. There were tons of other improvements to this infra since.
Made a small project to get reminder emails of your favorite kindle highlights without sharing them with others. Made using typescript + Github Actions. Just fork/clone to setup for yourself.
https://t.co/2oZnTN7X7h
Email screenshot attached: