Skip to content
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

Depends on deprecated and to-be-removed rustc-serialize feature #251

Closed
RalfJung opened this issue Dec 20, 2024 · 5 comments · Fixed by #252
Closed

Depends on deprecated and to-be-removed rustc-serialize feature #251

RalfJung opened this issue Dec 20, 2024 · 5 comments · Fixed by #252

Comments

@RalfJung
Copy link

RalfJung commented Dec 20, 2024

The old rustc-serialize infrastructure is deprecated and will potentially be removed from the compiler (see rust-lang/rust#134301). This repo has a dependency on rustc-test which seems unmaintained (no release in 4 years) and which uses this deprecated infrastructure. You should already be seeing warnings that this will break in a future version of rustc, and if rust-lang/rust#134272 is merged into the compiler, that future version will come soon. So please let us know if there's any trouble with migrating away from the old rustc-serialize feature.

@kornelski
Copy link
Contributor

We use it to auto-generate 344950 integration tests.

I've seen the warnings, but AFAIK there's no replacement, and no chance of Cargo getting a proper testing framework anytime soon, so I'm planning to keep using the bad dependency until it completely breaks.

@RalfJung
Copy link
Author

rustc-test has hardly any users. In a crater run, this repo is literally the only one on all of crates.io that broke due to rustc-test. So it's not clear what kind of a replacement you are looking for, but clearly the rest of the ecosystem is doing fine without rustc-test. (Looking at reverse dependencies, I noticed there's also markup5ever_rcdom, also maintained by you, but that has been migrated away recently in servo/html5ever#528.)

The regular "test" crate has loooong been ported away from the old rustc-serialize infrastructure. It would likely not be too hard to also do that with this unmaintained fork. Do you even need the JSON functionality?

But as usual when you pick up a dependency, if they become unmaintained you have to figure out a solution. I'd be happy to wait a bit with landing that rustc change to give this crate a chance to migrate, but there's no point in that if you don't plan to do anything until you are forced to. 🤷

@RalfJung
Copy link
Author

Would you accept a patch similar to servo/html5ever#528 ?

@kornelski
Copy link
Contributor

The servo change doesn't look as bad as I feared. I'll give it a try.

kornelski added a commit that referenced this issue Dec 22, 2024
@RalfJung
Copy link
Author

Thanks a lot :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants