rhai: Can't use older Rhai versions anymore
Related to #828 (the proposed solution to which I wanted to benchmark), there’s another issue with the breaking change (which is automatically used unless pinned due to semantic versioning of minor versions):
Even if I pin the rhai crate version, Rust will automatically pick the latest rhai_codegen version which is not compatible with older versions:
rhai v1.16.3
├── ahash v0.8.7
│ ├── cfg-if v1.0.0
│ ├── const-random v0.1.17
│ │ └── const-random-macro v0.1.16 (proc-macro)
│ │ ├── getrandom v0.2.12
│ │ │ ├── cfg-if v1.0.0
│ │ │ └── libc v0.2.153
│ │ ├── once_cell v1.19.0
│ │ └── tiny-keccak v2.0.2
│ │ └── crunchy v0.2.2
│ ├── getrandom v0.2.12
│ │ ├── cfg-if v1.0.0
│ │ └── libc v0.2.153
│ ├── once_cell v1.19.0
│ └── zerocopy v0.7.32
│ [build-dependencies]
│ └── version_check v0.9.4
├── bitflags v2.4.2
├── num-traits v0.2.17
│ [build-dependencies]
│ └── autocfg v1.1.0
├── once_cell v1.19.0
├── rhai_codegen v1.17.0 (proc-macro)
│ ├── proc-macro2 v1.0.78
│ │ └── unicode-ident v1.0.12
│ ├── quote v1.0.35
│ │ └── proc-macro2 v1.0.78 (*)
│ └── syn v2.0.48
│ ├── proc-macro2 v1.0.78 (*)
│ ├── quote v1.0.35 (*)
│ └── unicode-ident v1.0.12
├── serde v1.0.196
│ └── serde_derive v1.0.196 (proc-macro)
│ ├── proc-macro2 v1.0.78 (*)
│ ├── quote v1.0.35 (*)
│ └── syn v2.0.48 (*)
├── smallvec v1.13.1
│ └── serde v1.0.196 (*)
└── smartstring v1.0.1
├── serde v1.0.196 (*)
└── static_assertions v1.1.0
[build-dependencies]
├── autocfg v1.1.0
└── version_check v0.9.4
Pinning an older version of rhai_codegen doesn’t work either:
# cargo tree -v -p rhai
Updating crates.io index
error: failed to select a version for the requirement `rhai_codegen = "~1.16.0"`
candidate versions found which didn't match: 1.17.0, 1.6.0, 1.5.0, ...
location searched: crates.io index
required by package `foo v1.0.0 (/Users/egger/Desktop/Source/foo)`
perhaps a crate was updated and forgotten to be re-vendored?
About this issue
- Original URL
- State: closed
- Created 5 months ago
- Comments: 17
I plan to yank
rhai_codegen1.17.0 and put outrhai_codegen2.0.0.Rhai 1.17.0 should be bumped to 1.17.1 which locks to
rhai_codegen2.0.0.Yeah, one needs to know that
rhai_codegen1.6.0 needs to be used, which is not obvious or great. Ideallyrhaiwould depend on a fixed version ofrhai_codegenand not run into the same semver foul asrhaiitself.