-
Notifications
You must be signed in to change notification settings - Fork 901
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use different versions of lib crate to enforce stability guarantee #3841
Comments
I think removing the version gating outweigh the 2 first cons. |
I think it's a nice idea. But I have some questions. |
Basically yes, but we may backport some new important features if it does not require much work.
We must use the same version of rustc-ap-* crates in both the stable and nightly rustfmt-lib crates, so yes, we will support the new syntax in the stable lib as well. With respect to the stable, every version update will be the patch update (e.g. 2.0.1 -> 2.0.2). |
The maintenance burden will be huge and backporting might be difficult and involve a lot of conflict resolution. I am wondering, what use case this approach is trying to fulfill? |
We will use a different schema for version management and stability enforcement. cc #4128. |
Once #1583 gets resolved, we will be able to use different versions of the lib crate to enforce the stability guarantee.
I am thinking of something like the following:
In Cargo.toml, we add two versions of rustfmt-lib as dependencies
and in rustfmt-bin, we call one of them depending on the configuration
In the above example, we use 2.0.x as the stable releases and 2.y.z. as the nightly releases.
Pros and cons I am aware of:
The text was updated successfully, but these errors were encountered: