From 132c20872f6e162e0b7de14fa9d155f0e0206f49 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 14 May 2025 23:03:33 +0200 Subject: [PATCH] doc/manual: Render unreleased release notes on `master` This renders the rl-next notes when `officialRelease = false`, which corresponds to the case where we're not on a release branch. Previously we had disabled this behavior because changelog-d is somewhat of a heavy dependency, being the only Haskell package. However, we now have new circumstances that topple the tradeoff. - We render `master` docs to https://nix.dev/manual/nix/development/release-notes/rl-next.html - `.#manual` is a separate build now, so `nix build nix/foo` is not affected by the increased closure of build input outputs. Because of these factors, I believe adding this functionality back is more valuable, as we can use it to - Previous release notes - Showcase the upcoming release to the community --- doc/manual/package.nix | 30 ++++++++++++++++++++---------- packaging/components.nix | 1 + 2 files changed, 21 insertions(+), 10 deletions(-) diff --git a/doc/manual/package.nix b/doc/manual/package.nix index 8f5d0dfe1..af6d46a2a 100644 --- a/doc/manual/package.nix +++ b/doc/manual/package.nix @@ -11,6 +11,8 @@ python3, rsync, nix-cli, + changelog-d, + officialRelease, # Configuration Options @@ -44,16 +46,24 @@ mkMesonDerivation (finalAttrs: { ]; # Hack for sake of the dev shell - passthru.externalNativeBuildInputs = [ - meson - ninja - (lib.getBin lowdown-unsandboxed) - mdbook - mdbook-linkcheck - jq - python3 - rsync - ]; + passthru.externalNativeBuildInputs = + [ + meson + ninja + (lib.getBin lowdown-unsandboxed) + mdbook + mdbook-linkcheck + jq + python3 + rsync + changelog-d + ] + ++ lib.optionals (!officialRelease) [ + # When not an official release, we likely have changelog entries that have + # yet to be rendered. + # When released, these are rendered into a committed file to save a dependency. + changelog-d + ]; nativeBuildInputs = finalAttrs.passthru.externalNativeBuildInputs ++ [ nix-cli diff --git a/packaging/components.nix b/packaging/components.nix index 6351ac712..8e3c21b7d 100644 --- a/packaging/components.nix +++ b/packaging/components.nix @@ -211,6 +211,7 @@ in { version = baseVersion + versionSuffix; inherit versionSuffix; + inherit officialRelease; inherit maintainers; inherit filesetToSource;