We're upgrading our icons to Font Awesome 6!

Sorry for the frustration, we try to make these updates easy and provide months of time to get them done — but there’s always a trade-off. If we kept remappings indefinitely we’d already have multiple layers of them from V4 → V5 → V6 and this would be debt that would require its own understanding and maintenance. If we did this for every piece of code Discourse would be much larger and more difficult to understand and work with.

Yes, which is why we provide deprecation warnings and instructions for updating. We aren’t just updating a file and passing on all the work — every time we make an update like this we have to write documentation, warning systems, and update hundreds of themes, theme components, and plugins ourselves. For Ember updates our engineers have come up with entirely new systems to make legacy customizations possible at all.

Even much larger software companies update their APIs in breaking ways. I’ve needed to update our Google Fonts component at least 2 times due to API changes, and Google is worth something like two trillion dollars. Every authentication service we integrate with for log-in has required us to update due to API changes.

If you don’t have the time for occasional maintenance then I’d recommend reducing the amount of customization as much as possible. If you use off-the-shelf themes/components/plugins for Discourse then most of the time we’ll update them for free.

You can also avoid updating Discourse, but everything always changes and you’d eventually face new security issues or browser compatibility issues. Every option has costs and trade-offs.

9 Likes