Skip to content

Track proc-macro-error2 future-incompatibility warning #42

Description

@DCjanus

Summary

cargo test currently records a future-incompatibility warning from an indirect dependency:

cang-jie
└── jieba-rs 0.9.0
    └── include-flate 0.3.3
        └── include-flate-codegen 0.3.3
            └── proc-macro-error2 2.0.1

The warning is emitted when proc-macro-error2 is compiled:

warning[E0365]: extern crate `proc_macro` is private and cannot be re-exported

This is currently only a warning, but Rust marks it as future-incompatible, so a future compiler release may turn it into a hard error.

Current upstream status

As of now, proc-macro-error2 latest is still 2.0.1, so there is no released fix to pick up.

How to reproduce

Run a command that needs to compile the dependency chain, for example:

cargo test --workspace

If the warning has already been recorded by Cargo, inspect it with:

cargo report future-incompatibilities --id 1

Follow-up

  • Track the upstream proc-macro-error2 fix.
  • Once a fixed version is released, check whether a normal dependency refresh is enough for cang-jie.
  • If the warning becomes a hard error before then, consider a temporary workaround such as pinning the Rust toolchain or patching the dependency.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions