mirror of
https://git.proxmox.com/git/proxmox-perl-rs
synced 2025-08-11 15:33:24 +00:00
README: add note on version bumps
Since these packages are a bit "special", the way they should be bumped is now specified in the README. I hope the explanation is clear enough. Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
This commit is contained in:
parent
c7aab1b9b7
commit
8a35f2e4d5
28
README.md
28
README.md
@ -11,3 +11,31 @@ NOTE: You may need to adapt the perl version number in this path:
|
|||||||
```
|
```
|
||||||
|
|
||||||
Then just restart pvedaemon/pveproxy after running `make pve`.
|
Then just restart pvedaemon/pveproxy after running `make pve`.
|
||||||
|
|
||||||
|
# Version Bumps
|
||||||
|
|
||||||
|
## TL;DR
|
||||||
|
|
||||||
|
- Common *code* changes -> bump the *products*, *not* the common package.
|
||||||
|
- Common *package list* changes -> bump common AND products
|
||||||
|
(That's the `$(PERLMOD_PACKAGES)` list in `common/pkg/Makefile`)
|
||||||
|
- On breaking changes to the common code, both PVE and PMG should be bumped along with the common
|
||||||
|
package which should declare its `Depends`/`Breaks` accordingly.
|
||||||
|
|
||||||
|
## The `common` package.
|
||||||
|
|
||||||
|
This package only provides the "list" of packages the common code contains, but does not by itself
|
||||||
|
provide a *library*. In other words, this only provides a bunch of `.pm` files which cause whichever
|
||||||
|
product-specific library is available to be loaded.
|
||||||
|
|
||||||
|
The rust code in the common directory is compiled as part of the product libraries. Those libraries
|
||||||
|
actually provide both the product specific as well as the common perl "packages" via the library.
|
||||||
|
|
||||||
|
## The product packages.
|
||||||
|
|
||||||
|
These are the actual libraries. Their source code both "include" the `common` rust code by way of a
|
||||||
|
symlink (but when a source package is created, that symlink is replaced by a *copy* of the common
|
||||||
|
dir), so building them locally with `cargo build` should use the `common` code from git.
|
||||||
|
|
||||||
|
These provide the actual *functionality* the `common` package declares to exist (via its `.pm`
|
||||||
|
files), in addition to the product specific parts.
|
||||||
|
Loading…
Reference in New Issue
Block a user