Skip to content

Instantly share code, notes, and snippets.

@Mark-Simulacrum Mark-Simulacrum/nll-migration-plan.md Secret

Last active Sep 11, 2019
Embed
What would you like to do?

Targets:

  • 1.40 release has NLL by default (released December 19th)
    • this is next release cycle, so landing in nightly ~September 26th

There are currently 1622 known crates which are broken by NLL.

Current plan:

  • Targeted fixes to most used root regressions
    • most roots are "old" (e.g., rustype 0.2.x branch, nalgebra 0.16.x branch)
    • URL and rusttype are other primary roots, both have patched versions in same major series
    • nalgebra, rusttype fixes are rolled out so next phase is cargo update PRs for GH repos
  • Publish a blog post
    • Announces timeline
    • Reiterates fixes for common problems
    • Asks users to run cargo update in repositories depending on rusttype, url, nalgebra to move to non-broken releases
  • Targeted push for the above
    • Open issues or PRs on repositories with fixes [cargo update can be automated]

Options for consideration:

  • Hard error on 2018 first
    • if 1.40 is target, then this buys us only a single cycle (unless we backport to beta)
  • hard error gradually on some errors
    • unknown impact, may not be worth it
  • exempt specific crates (by name?) temporarily
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.