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

error[E0635]: unknown feature proc_macro_span_shrink #5517

Open
stumbles opened this issue Feb 1, 2024 · 3 comments
Open

error[E0635]: unknown feature proc_macro_span_shrink #5517

stumbles opened this issue Feb 1, 2024 · 3 comments

Comments

@stumbles
Copy link

stumbles commented Feb 1, 2024

Steps to reproduce:
List the minimal actions needed to reproduce the behaviour.

  1. ... install rust-1.75.0
  2. ... compile influxdb-2.7.5
  3. ...

Expected behaviour:
compile without error

Actual behaviour:

Flux module is the main module {"modroot": "/root/go/pkg/mod/github.com/influxdata/flux@v0.194.5"}
Executing cargo build {"dir": "/root/go/pkg/mod/github.com/influxdata/flux@v0.194.5/libflux", "target": "x86_64-unknown-linux-gnu"}
warning: virtual workspace defaulting to resolver = "1" despite one or more workspace members being on edition 2021 which implies resolver = "2"
note: to keep the current resolver, specify workspace.resolver = "1" in the workspace root's manifest
note: to use the edition 2021 resolver, specify workspace.resolver = "2" in the workspace root's manifest
note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
Compiling proc-macro2 v1.0.56
error[E0422]: cannot find struct, variant or union type LineColumn in crate proc_macro
--> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.56/src/wrapper.rs:475:33
|
475 | let proc_macro::LineColumn { line, column } = s.start();
| ^^^^^^^^^^ not found in proc_macro
|
help: consider importing this struct through its public re-export
|
1 + use crate::LineColumn;
|
help: if you import LineColumn, refer to it directly
|
475 - let proc_macro::LineColumn { line, column } = s.start();
475 + let LineColumn { line, column } = s.start();
|

error[E0422]: cannot find struct, variant or union type LineColumn in crate proc_macro
--> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.56/src/wrapper.rs:489:33
|
489 | let proc_macro::LineColumn { line, column } = s.end();
| ^^^^^^^^^^ not found in proc_macro
|
help: consider importing this struct through its public re-export
|
1 + use crate::LineColumn;
|
help: if you import LineColumn, refer to it directly
|
489 - let proc_macro::LineColumn { line, column } = s.end();
489 + let LineColumn { line, column } = s.end();
|

error[E0635]: unknown feature proc_macro_span_shrink
--> /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.56/src/lib.rs:92:30
|
92 | feature(proc_macro_span, proc_macro_span_shrink)
| ^^^^^^^^^^^^^^^^^^^^^^

Some errors have detailed explanations: E0422, E0635.
For more information about an error, try rustc --explain E0422.
error: could not compile proc-macro2 (lib) due to 3 previous errors
Error installing library {"name": "flux", "error": "exit status 101"}
/usr/src/influxdb-2.7.5/scripts/pkg-config.sh: exit status 1
make: *** [GNUmakefile:84: bin/linux/influxd] Error 1

Using these variables;
export GOPROXY="https://proxy.golang.org"
export GOSUMDB="sum.golang.org"
export GOFLAGS="-trimpath -mod=readonly -modcacherw"
export LDFLAGS=""
export RUSTFLAGS='-A hidden_glob_reexports'

PATH="$(go env GOPATH)/bin:$PATH" make -j1 VERSION=$VERSION COMMIT=$COMMIT INFLUXDB_SHA=$COMMIT &&

@TimB87
Copy link

TimB87 commented Dec 3, 2024

I get the same build failure from the last 2.7.11 tarball.

@mgattozzi
Copy link

This is an issue that's fixed with proc-macro 1.0.60+
rust-lang/rust#113152

It's a dependency that needs to be updated over in the flux repo:

flux/libflux/Cargo.lock

Lines 991 to 998 in d452b50

[[package]]
name = "proc-macro2"
version = "1.0.56"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435"
dependencies = [
"unicode-ident",
]

Note that the repo uses Rust 1.72.0 which is why the issue probably has not been experienced

channel = "1.72"

@mgattozzi
Copy link

Since this is relevant to the flux repo I will transfer the issue there

@mgattozzi mgattozzi transferred this issue from influxdata/influxdb Dec 6, 2024
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

No branches or pull requests

3 participants