Skip to content

Commit aca7875

Browse files
iohk-bors[bot]jasagredoamesgen
authored
Merge #4307
4307: Implement the Consensus release process r=Jasagredo a=Jasagredo # Description Implement the Release process as agreed by the Consensus team. See [the ReleaseProcess document](./ouroboros-consensus/docs/ReleaseProcess.md) for more information. In particular, this creates: - symlinks for each folder into their appropriate `changelog.d` directory - two main CHANGELOG.md files, in `ouroboros-consensus` and `ouroboros-consensus-cardano` - updates the version number in some ledger-agnostic packages that were behind - configures `scriv` and provides a fork that understands the bare minimum of colon separated files, in particular of `.cabal` files. - updates the PR template - Provides a top level changelog that points to the others Closes #4306 Co-authored-by: Javier Sagredo <jasataco@gmail.com> Co-authored-by: Alexander Esgen <alexander.esgen@iohk.io> Co-authored-by: Javier Sagredo <javier.sagredo@iohk.io>
2 parents 959fa23 + fb3f6d5 commit aca7875

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+413
-7
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,11 @@ the PR to a particular issue, see
2222
- [ ] Commits have useful messages
2323
- [ ] The documentation has been properly updated
2424
- [ ] New tests are added if needed and existing tests are updated
25-
- [ ] If this branch changes Consensus and has any consequences for downstream repositories or end users, said changes must be documented in [`interface-CHANGELOG.md`](../ouroboros-consensus/docs/interface-CHANGELOG.md)
25+
- [ ] Any changes affecting Consensus packages must have an entry in the
26+
appropriate `changelog.d` directory created using
27+
[`scriv`](https://github.com/input-output-hk/scriv). If in doubt, see
28+
the [Consensus release
29+
process](../ouroboros-consensus/docs/ReleaseProcess.md).
2630
- [ ] If this branch changes Network and has any consequences for downstream repositories or end users, said changes must be documented in [`interface-CHANGELOG.md`](../docs/interface-CHANGELOG.md)
2731
- [ ] If serialization changes, user-facing consequences (e.g. replay from genesis) are confirmed to be intentional.
2832
- Pull Request

Consensus-CHANGELOG.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Consensus Changelog
2+
3+
The Consensus packages are organized in two bundles: the packages that are
4+
ledger-agnostic and the packages that are Cardano specific. For each of these
5+
bundles we keep a separate `CHANGELOG.md` file, and the version number of all
6+
the packages in each bundle moves in lockstep. We use symlinks to unify the
7+
`changelog.d` directory in each of the bundles.
8+
9+
The two Changelogs can be found here:
10+
- [ledger-agnostic bundle](./ouroboros-consensus/CHANGELOG.md)
11+
- [Cardano-specific bundle](./ouroboros-consensus-cardano/CHANGELOG.md)
12+
13+
If you have any doubts, please consult the [release
14+
process](./ouroboros-consensus/docs/ReleaseProcess.md).
15+
16+
In short:
17+
- To create a new changelog entry, navigate to the root of the package you want
18+
to create an entry for and run `scriv create`. This will create a template
19+
file in `./changelog.d` which you have to edit with the information of your
20+
entry.
21+
- When doing a release, `scriv collect` collects all the pending changelog
22+
entries and put them in the `CHANGELOG.md` file.

nix/pkgs.nix

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,7 @@ with pkgs; {
3131
inherit (ouroborosNetworkHaskellPackages) index-state;
3232
}).stylish-haskell.components.exes.stylish-haskell;
3333

34+
scriv = pkgs.callPackage ./scriv.nix { };
35+
3436
trace = builtins.trace;
3537
}

nix/scriv.nix

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# TODO remove once https://github.com/NixOS/nixpkgs/pull/212603 is in our nixpkgs pin
2+
3+
{ lib, python3, fetchFromGitHub }:
4+
5+
python3.pkgs.buildPythonApplication {
6+
pname = "scriv";
7+
version = "1.2.0-custom-iog";
8+
9+
src = fetchFromGitHub {
10+
owner = "input-output-hk";
11+
repo = "scriv";
12+
rev = "567a1aa3f6df77d1a531290f10a261ec6a49c75a";
13+
hash = "sha256-wpWDuZ3c8JJKVWPw9PHgcpneRWYjd/0z4oAIirPa0/E=";
14+
};
15+
16+
propagatedBuildInputs = [
17+
python3.pkgs.attrs
18+
python3.pkgs.click
19+
python3.pkgs.click-log
20+
python3.pkgs.jinja2
21+
python3.pkgs.requests
22+
] ++ lib.optionals (python3.pythonOlder "3.11") [ python3.pkgs.tomli ];
23+
24+
doCheck = false;
25+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# CHANGELOG
2+
3+
This package is part of a bundle of packages. Please consult `CHANGELOG.md` in
4+
the package `ouroboros-consensus-cardano` at the same version as this package to
5+
see the current changelog that applies also to this package.
6+
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../ouroboros-consensus-cardano/changelog.d

ouroboros-consensus-byron-test/ouroboros-consensus-byron-test.cabal

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ author: IOHK Engineering Team
1212
maintainer: operations@iohk.io
1313
category: Network
1414
build-type: Simple
15+
extra-source-files: CHANGELOG.md
1516

1617
source-repository head
1718
type: git
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# CHANGELOG
2+
3+
This package is part of a bundle of packages. Please consult `CHANGELOG.md` in
4+
the package `ouroboros-consensus-cardano` at the same version as this package to
5+
see the current changelog that applies also to this package.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../ouroboros-consensus-cardano/changelog.d

ouroboros-consensus-byron/ouroboros-consensus-byron.cabal

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ author: IOHK Engineering Team
1212
maintainer: operations@iohk.io
1313
category: Network
1414
build-type: Simple
15+
extra-source-files: CHANGELOG.md
1516

1617
source-repository head
1718
type: git

0 commit comments

Comments
 (0)