#2974·Rocket

Cannot build due to error in devise_core 2.1

Author: erwinwolffCreated Oct 30, 2025Updated Nov 6, 2025
Labelstriage

Rocket Version

0.5.1

Operating System

Windows x64 platform

Rust Toolchain Version

rustc 1.93.0-nightly (292be5c7c 2025-10-29)

What happened?

Could not compile rocket deps: Compiling devise_core v0.2.1 Compiling ref-cast v1.0.25 Compiling toml_datetime v0.6.11 Compiling serde_spanned v0.6.9 Compiling rocket_codegen v0.4.11 Compiling stable-pattern v0.1.0 Compiling either v1.15.0 Compiling toml_write v0.1.2 error[E0557]: feature has been removed --> C:\Users\\xxx.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\devise_core-0.2.1\src\lib.rs:2:12 | 2 | #![feature(concat_idents)] | ^^^^^^^^^^^^^ feature has been removed | = note: removed in 1.90.0; see https://github.com/rust-lang/rust/pull/142704 for more information = note: use the ${concat(..)} metavariable expression instead

error: cannot find macro concat_idents in this scope --> C:\Users\\xx.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\devise_core-0.2.1\src\generator.rs:29:39 | 29 | $(self.$vec.push(Box::new(concat_idents!(default_, $get_f)));)* | ^^^^^^^^^^^^^ ... 193 | / mappers! { 194 | | (map_struct, try_map_struct, struct_mapper): Struct, struct_mappers, 195 | | (map_enum, try_map_enum, enum_mapper): Enum, enum_mappers, 196 | | (map_variant, try_map_variant, variant_mapper): Variant, variant_mappers, 197 | | (map_fields, try_map_fields, fields_mapper): Fields, fields_mappers, 198 | | (map_field, try_map_field, field_mapper): Field, field_mappers 199 | | } | |_____- in this macro invocation | = note: this error originates in the macro mappers (in Nightly builds, run with -Z macro-backtrace for more info)

Compiling state v0.6.0 Compiling base64 v0.13.1 Compiling winnow v0.7.13 Compiling futures v0.3.31 Compiling rocket_http v0.4.11 Compiling hyper v0.14.32 Compiling rust-embed-impl v5.9.0 Compiling uncased v0.9.10 For more information about this error, try rustc --explain E0557. Compiling pear v0.2.9 error: could not compile devise_core (lib) due to 2 previous errors warning: build failed, waiting for other jobs to finish... error[E0520]: to_string specializes an item from a parent impl, but that item is not marked default --> C:\Users\\xx.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\rocket_http-0.4.11\src\raw_str.rs:406:5 | 406 | fn to_string(&self) -> String { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: parent implementation is in crate alloc

For more information about this error, try rustc --explain E0520. error: could not compile rocket_http (lib) due to 1 previous error

Test Case

rust
Any rocket codebase

Log Output

bash
Compiling devise_core v0.2.1
   Compiling ref-cast v1.0.25
   Compiling toml_datetime v0.6.11
   Compiling serde_spanned v0.6.9
   Compiling rocket_codegen v0.4.11
   Compiling stable-pattern v0.1.0
   Compiling either v1.15.0
   Compiling toml_write v0.1.2
error[E0557]: feature has been removed
 --> C:\Users\\\xxx\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\devise_core-0.2.1\src\lib.rs:2:12
  |
2 | #![feature(concat_idents)]
  |            ^^^^^^^^^^^^^ feature has been removed
  |
  = note: removed in 1.90.0; see <https://github.com/rust-lang/rust/pull/142704> for more information
  = note: use the `${concat(..)}` metavariable expression instead

error: cannot find macro `concat_idents` in this scope
   --> C:\Users\\\xx\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\devise_core-0.2.1\src\generator.rs:29:39
    |
 29 |               $(self.$vec.push(Box::new(concat_idents!(default_, $get_f)));)*
    |                                         ^^^^^^^^^^^^^
...
193 | /     mappers! {
194 | |         (map_struct, try_map_struct, struct_mapper): Struct, struct_mappers,
195 | |         (map_enum, try_map_enum, enum_mapper): Enum, enum_mappers,
196 | |         (map_variant, try_map_variant, variant_mapper): Variant, variant_mappers,
197 | |         (map_fields, try_map_fields, fields_mapper): Fields, fields_mappers,
198 | |         (map_field, try_map_field, field_mapper): Field, field_mappers
199 | |     }
    | |_____- in this macro invocation
    |
    = note: this error originates in the macro `mappers` (in Nightly builds, run with -Z macro-backtrace for more info)

   Compiling state v0.6.0
   Compiling base64 v0.13.1
   Compiling winnow v0.7.13
   Compiling futures v0.3.31
   Compiling rocket_http v0.4.11
   Compiling hyper v0.14.32
   Compiling rust-embed-impl v5.9.0
   Compiling uncased v0.9.10
For more information about this error, try `rustc --explain E0557`.
   Compiling pear v0.2.9
error: could not compile `devise_core` (lib) due to 2 previous errors
warning: build failed, waiting for other jobs to finish...
error[E0520]: `to_string` specializes an item from a parent `impl`, but that item is not marked `default`
   --> C:\Users\\\xx\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\rocket_http-0.4.11\src\raw_str.rs:406:5
    |
406 |     fn to_string(&self) -> String {
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: parent implementation is in crate `alloc`

For more information about this error, try `rustc --explain E0520`.
error: could not compile `rocket_http` (lib) due to 1 previous error

Additional Context

No response

System Checks

  • My bug report relates to functionality.
  • I have tested against the latest Rocket release or a recent git commit.
  • I have tested against the latest stable rustc toolchain.
  • I was unable to find this issue previously reported.