fastn packaging: backward compatibility gaurantee #1818
amitu
started this conversation in
Ideas & RFCs
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
All packages published on fastn package manager get a backward compatibility guarantee.
If a package
foo
is ever published, all of its public members must forever remain public, with same signature etc. In other words, if I was ever able to import foo, and use it in my file, my code should compile with all future versions of foo (it may not look the same, but it will compile. To make sure it looks "acceptable", visual testing feature is also going to be added to our package manager repo). This validation will be done by the package manager, and any attempt to publish a package will fail unless this check succeeds.This means a package dependency in fastn can only specify
>= <date>
. The<date>
must be the first date on which all the symbols used in this package where found in the dependency.Our package repository keeps track of when any symbol was made first public. If a package is using any dependency, the appropriate date will be used as
>= <date>
in the lock file.Beta Was this translation helpful? Give feedback.
All reactions