Go to file
Wolfgang Bumiller f214bcb652 api-macro: drop unused dev-dependencies
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-01-02 14:25:09 +01:00
proxmox -dev bump for proxmox crate as well 2019-12-30 12:05:57 +01:00
proxmox-api more versioning fixups 2019-12-30 12:33:13 +01:00
proxmox-api-macro api-macro: drop unused dev-dependencies 2020-01-02 14:25:09 +01:00
proxmox-sortable-macro proxmox-sortable-macro: initial packaging 2019-12-20 09:39:45 +01:00
proxmox-sys sys: add a bunch of error helpers 2020-01-02 13:47:53 +01:00
proxmox-tools proxmox-tools: reference valgrind_request via git 2020-01-02 14:00:27 +01:00
.gitignore import Cargo.lock 2019-08-09 08:44:48 +02:00
Cargo.toml delete the old api macro stuff 2019-11-21 13:13:18 +01:00
Makefile run 'cargo fmt -- --check' in check target 2019-11-25 15:08:53 +01:00
README.rst readme: add cargo config for packaged crates 2020-01-02 14:07:12 +01:00
rust-toolchain update toolchain to stable 2019-11-08 11:51:21 +01:00
rustfmt.toml initial import, starting with vec & io helpers 2019-06-06 14:00:25 +02:00

Versioning
==========

Note that the following applies *per crate*, since each crate is its own debian package:

The first commit after a release should bump the version to the next patch level with a ``-dev.1``
suffix for the crate *and for the proxmox crate*, as well as all crates depending on it. For
instance, ``proxmox-api`` depends on ``proxmox-tools``, so bumpgin ``proxmox-tools`` to a new `dev`
version also requires bumping ``proxmox-api`` to a new dev version, since cargo requires
pre-release versions to be selected explicitly:

    First commit after release: 0.1.0 -> 0.1.1-dev.1
    Version bump commit: 0.1.1-dev.1 -> 0.1.1

It is unlikely that we'll need more than one .dev version, but it may be useful at some point, so
we'll include teh ``.1``.

When releasing a crate, the final commit should be the one stripping the ``-dev`` version and
updating the ``debian/changelog``.

Local (packaged) crates
=======================

To use locally installed, packaged crates instead of crates.io put the
following into ./.cargo/config (or point CARGO_HOME to a directory containing
such a config file)::

   [source]
   [source.debian-packages]
   directory = "/usr/share/cargo/registry"
   [source.crates-io]
   replace-with = "debian-packages"

This is akin to what happens when building with dh_cargo. Cargo.lock needs to
be deleted when switching between packaged crates and crates.io, since the
checksums are not compatible.