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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions