discord-api-types icon indicating copy to clipboard operation
discord-api-types copied to clipboard

Eventual versioning changes for discord-api-types

Open vladfrangu opened this issue 1 year ago • 0 comments

The versioning system for discord-api-types will change (eventually)!

First off, if you're reading this, hi, didn't expect you to. This is a short PSA that in the (hopefully near) future the versioning system for discord-api-types will change

What's changing and, most importantly, why?

Currently, discord-api-types uses the 0ver versioning system (find out more here: https://0ver.org/). This has worked mostly fine for a long time (and changing it to full semver made no sense since we'd have effectively the same versioning troubles between them).

However, as time has shown several times due to the nature of Discord's API, such a versioning system doesn't fully work. As such we are changing it...ish.

The new versioning system will follow the format: @discord-api-types/v<api version>@1.<major/minor>.<patch>. That means, if you plan on creating an interface that uses the api v10 of Discord's api, you could now install @discord-api-types/v10 (or the discord-api-types metapackage). That said, these packages will respect semver too (to a degree, it will always stay at major version 1), however certain major / breaking changes might not be represented as such (Discord doesn't do it, so why should we... 🤣). We will document this on our website as well as in a markdown file at the root of the repository.

Wait, scoped packages? Yes. The discord-api-types package itself will now be just a meta package re-exporting all versions in it. This also means you will now be able to fine tune which package you install, resulting in smaller installs size (yes, I, too, see the fact discord-api-types takes up like 3MB installed.)

vladfrangu avatar Aug 05 '22 20:08 vladfrangu