Skip to content

GIT-based or "*" version #28

@peter-lyons-kehl

Description

@peter-lyons-kehl

https://rhai.rs/book/start/install.html#admonition-use-latest-release-version and https://rhai.rs/book/start/install.html#admonition-use-latest-development-version are unfortunate, at least.
Neither works when publishing a (depending) crate to crates.io. The GIT-based-only way is easy to spot, but the "*" is less obvious/known. However, see https://doc.rust-lang.org/nightly/cargo/reference/specifying-dependencies.html#wildcard-requirements > "Note: crates.io does not allow bare * versions.".

Even worse, top level "*" will lead to incompatible changes if (ever) there are higher major versions. And, it can currently lead to less-obvious incompatibilities (even worse, potentially in runtime, since it's scripting....) with any old crates referencing old "0.*.*" versions - but those would not be mixed up if the user would specify "1.*" or (less error-prone) "1.18.*".

Please

  1. replace "*" with (more flexible, but more incompatibility-prone) "1.*" and/or (more robust) "1.18.0" (in which case add this file to a list of tasks to do when you release a minor version), and
  2. add a note that with a GIT-only-based dependency it can't be published to crates.io.

If that sounds OK, I'm willing to provide a PR.
Thank you (indeed) for Rhai.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions