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

No warning for obsolete allocator syntax #47143

Closed
bfops opened this issue Jan 2, 2018 · 2 comments
Closed

No warning for obsolete allocator syntax #47143

bfops opened this issue Jan 2, 2018 · 2 comments
Labels
A-allocators Area: Custom and system allocators A-diagnostics Area: Messages for errors, warnings, and lints C-enhancement Category: An issue proposing an enhancement or a PR with one. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@bfops
Copy link
Contributor

bfops commented Jan 2, 2018

The syntax for changing allocators (e.g. opting out of jemalloc) changed in a July nightly (see #43277 and this discussion thread. Users of the old syntax don't get any warning or build breakage, they just get silently changed back to the default allocator because the old syntax doesn't work anymore. It's difficult for users to track down why their program's behavior has suddenly changed without knowing about this syntax change. Case in point: the linked discussion thread is about a jemalloc-specific bug that resurfaced after this change landed, which took a reasonable chunk of time to understand.

@juleskers
Copy link

juleskers commented Jan 3, 2018

As I've raised in the thread linked by bfops, I believe we have a documentation problem here.
Usually when existing API's are deprecated (even unstable ones), we warn on the old version, for easier migration.

@bfops did a respectable amount of detective-work in the linked thread: this is a direct result of rust-lang/rfcs/pull/1974, as implemented by @alexcrichton in #42727 (merged in commit 1685c92)
(to link all the relevant bits/people)

@estebank estebank added A-diagnostics Area: Messages for errors, warnings, and lints A-allocators Area: Custom and system allocators labels Jan 24, 2018
@XAMPPRocky XAMPPRocky added C-enhancement Category: An issue proposing an enhancement or a PR with one. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Apr 10, 2018
@SimonSapin
Copy link
Contributor

We sometimes have deprecation warnings when unstable APIs change, but as far as I know it’s not a requirement and not always done. There is ~zero compatibility guarantee for unstable features between different Nightly versions.

This particular feature has just been stabilized, so I’ll close this. Up to date docs are at:

If you’d like to discuss the meta policy around this or propose a change to it, I suggest opening a thread on https://internals.rust-lang.org/.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-allocators Area: Custom and system allocators A-diagnostics Area: Messages for errors, warnings, and lints C-enhancement Category: An issue proposing an enhancement or a PR with one. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

5 participants