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

Dependency contains code which will be rejected by a future version of Rust #2664

Closed
rhigman opened this issue Feb 25, 2022 · 3 comments
Closed

Comments

@rhigman
Copy link

rhigman commented Feb 25, 2022

Your issue may already be reported!
Please search on the Actix Web issue tracker before creating one.

Expected Behavior

Including actix-web as a project dependency should not result in any Clippy errors or warnings.

Current Behavior

Under rustc 1.59.0, in a project with actix-web 3.3.2 as a dependency, running cargo clippy -D warnings results in the following warning text:
warning: the following packages contain code that will be rejected by a future version of Rust: time-macros-impl v0.1.1.

time-macros-impl 0.1.1 is a dependency of time-macros 0.1.1, which is a dependency of time 0.2.22, which is a dependency of actix-web 3.3.2 (and actix-identity 0.3.1, actix-http 2.2.0, and cookie 0.14.2, which is used by actix-http 2.2.0). None of these time packages are used elsewhere in the project.

Upgrading to actix-web 3.3.3, the latest stable version, does not fix the issue as the time package dependencies are unchanged.

The latest unstable release candidate version, actix-web 4.0.0-rc3, uses a later version of the time package, which should not have the issue. However, it is not clear when this will become a stable release, or whether it is likely to be sooner than the release of the future version of Rust which will break the package.

Possible Solution

Please provide a stable release in which the time package is upgraded to a version which has resolved the issue with time-macros-impl 0.1.1 (it appears that this is fixed from time 0.2.26 onwards).

Steps to Reproduce (for bugs)

  1. Under rustc 1.59.0, in a project with actix-web 3.3.2 as a dependency, run cargo clippy -D warnings.
  2. Run cargo report future-incompatibilities for more detailed information.

Context

We have a project depending on actix-web (and other Actix packages, as listed above) which is in production with many daily users. We would like to keep it reliable by only using stable packages and by always moving to new Rust versions as soon as they are available. We wanted to alert you to this Clippy warning so that there is plenty of time to resolve the issue before the future Rust version makes it a breaking change.

Your Environment

  • Rust Version (I.e, output of rustc -V): rustc 1.59.0 (9d1b2106e 2022-02-23)
  • Actix Web Version: 3.3.2
@robjtede
Copy link
Member

This is fixed in v4 / master.

@rhigman
Copy link
Author

rhigman commented Feb 25, 2022

That's good - is there a timeline for a stable release of v4? As I said, we would prefer not to have to upgrade to an unstable version.

@robjtede
Copy link
Member

#2663

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

No branches or pull requests

2 participants