Version of package = Version of documentation != Version of `project.toml`

I have a question about versioning. On GitHub, I can add a version number to my release of the master branch. This will then become the version of the package and the version of the documentation that Documenter.jl creates. Correct?

Then, there is project.toml where I can enter a version number manually. Arguably, the version from project.toml should be identical with the version of my latest release of the master branch. And I have to keep track of this myself, correct?

Does that mean the following: before I create a release on GitHub to version vX.Y.Z, I should add version = "vX.Y.Z" manually to the project.toml, and then push it to the master branch?

Working out the exact process for this is WIP, see

https://github.com/JuliaLang/Pkg.jl/issues/849

https://github.com/JuliaLang/Pkg.jl/issues/351

In the meantime, I think the best course is to just omit the version from the project file.

One option is to

but otherwise you have to update it. This consistency is actually checked now when you register a package.

1 Like

So the two options are:

  1. omit the version entry in projec.toml, or
  2. update project.toml first, and then release.

Correct.

Do these suggestions still hold? Because from https://github.com/JuliaRegistries/Registrator.jl I understand that the version field of Project.toml must be set; so option 2 seems the only viable.

I agree. With the new Registrator, you set the version field in the project.toml to the desired version.