Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rl-next: Fix and support markdown frontmatter syntax #9573

Merged
merged 3 commits into from
Dec 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions doc/manual/rl-next/hash-format-nix32.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
synopsis: Rename hash format `base32` to `nix32`
prs: #9452
description: {
prs: 9452
---

Hash format `base32` was renamed to `nix32` since it used a special nix-specific character set for
[Base32](https://en.wikipedia.org/wiki/Base32).
Expand Down
9 changes: 4 additions & 5 deletions doc/manual/rl-next/mounted-ssh-store.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
---
synopsis: Mounted SSH Store
issues: #7890
prs: #7912
description: {
issues: 7890
prs: 7912
---

Introduced the store [`mounted-ssh-ng://`](@docroot@/command-ref/new-cli/nix3-help-stores.md).
This store allows full access to a Nix store on a remote machine and additionally requires that the store be mounted in the local filesystem.

}
11 changes: 5 additions & 6 deletions doc/manual/rl-next/nix-config-show.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
synopsis: `nix config show`
issues: #7672
prs: #9477
description: {
---
synopsis: Rename to `nix config show`
issues: 7672
prs: 9477
---

`nix show-config` was renamed to `nix config show`, and `nix doctor` was renamed to `nix config check`, to be more consistent with the rest of the command-line interface.

}
9 changes: 3 additions & 6 deletions doc/manual/rl-next/nix-env-json-drv-path.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
---
synopsis: Fix `nix-env --query --drv-path --json`
prs: #9257
description: {
prs: 9257
---

Fixed a bug where `nix-env --query` ignored `--drv-path` when `--json` was set.

}


6 changes: 3 additions & 3 deletions doc/manual/rl-next/nix-hash-convert.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
synopsis: Add `nix hash convert`
prs: #9452
description: {
prs: 9452
---

New [`nix hash convert`](https://github.com/NixOS/nix/issues/8876) sub command with a fast track
to stabilization! Examples:
Expand Down Expand Up @@ -44,4 +45,3 @@ The following commands are still available but will emit a deprecation warning.
- `nix hash to-base64 $hash1 $hash2`: Use `nix hash convert --to base64 $hash1 $hash2` instead.
- `nix hash to-sri $hash1 $hash2`: : Use `nix hash convert --to sri $hash1 $hash2`
or even just `nix hash convert $hash1 $hash2` instead.
}
9 changes: 4 additions & 5 deletions doc/manual/rl-next/source-positions-in-errors.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
---
synopsis: Source locations are printed more consistently in errors
issues: #561
prs: #9555
description: {
issues: 561
prs: 9555
---

Source location information is now included in error messages more
consistently. Given this code:
Expand Down Expand Up @@ -39,5 +40,3 @@ error:

error: value is a set while a string was expected
```

}
9 changes: 4 additions & 5 deletions doc/manual/src/contributing/hacking.md
Original file line number Diff line number Diff line change
Expand Up @@ -257,17 +257,16 @@ User-visible changes should come with a release note.
Here's what a complete entry looks like. The file name is not incorporated in the document.

```
---
synopsis: Basically a title
issues: #1234
prs: #1238
description: {
issues: 1234
prs: 1238
---

Here's one or more paragraphs that describe the change.

- It's markdown
- Add references to the manual using @docroot@

}
```

Significant changes should add the following header, which moves them to the top.
Expand Down
7 changes: 6 additions & 1 deletion flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@
"--enable-internal-api-docs"
];

changelog-d = pkgs.buildPackages.changelog-d;
changelog-d = pkgs.buildPackages.callPackage ./misc/changelog-d.nix { };

nativeBuildDeps =
[
Expand Down Expand Up @@ -691,6 +691,11 @@
perlBindings = self.hydraJobs.perlBindings.${system};
installTests = self.hydraJobs.installTests.${system};
nixpkgsLibTests = self.hydraJobs.tests.nixpkgsLibTests.${system};
rl-next =
let pkgs = nixpkgsFor.${system}.native;
in pkgs.buildPackages.runCommand "test-rl-next-release-notes" { } ''
LANG=C.UTF-8 ${(commonDeps { inherit pkgs; }).changelog-d}/bin/changelog-d ${./doc/manual/rl-next} >$out
'';
} // (lib.optionalAttrs (builtins.elem system linux64BitSystems)) {
dockerImage = self.hydraJobs.dockerImage.${system};
});
Expand Down
31 changes: 31 additions & 0 deletions misc/changelog-d.cabal.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{ mkDerivation, aeson, base, bytestring, cabal-install-parsers
, Cabal-syntax, containers, directory, filepath, frontmatter
, generic-lens-lite, lib, mtl, optparse-applicative, parsec, pretty
, regex-applicative, text, pkgs
}:
let rev = "f30f6969e9cd8b56242309639d58acea21c99d06";
in
mkDerivation {
pname = "changelog-d";
version = "0.1";
src = pkgs.fetchurl {
name = "changelog-d-${rev}.tar.gz";
url = "https://codeberg.org/roberth/changelog-d/archive/${rev}.tar.gz";
hash = "sha256-8a2+i5u7YoszAgd5OIEW0eYUcP8yfhtoOIhLJkylYJ4=";
} // { inherit rev; };
isLibrary = false;
isExecutable = true;
libraryHaskellDepends = [
aeson base bytestring cabal-install-parsers Cabal-syntax containers
directory filepath frontmatter generic-lens-lite mtl parsec pretty
regex-applicative text
];
executableHaskellDepends = [
base bytestring Cabal-syntax directory filepath
optparse-applicative
];
doHaddock = false;
description = "Concatenate changelog entries into a single one";
license = lib.licenses.gpl3Plus;
mainProgram = "changelog-d";
}
31 changes: 31 additions & 0 deletions misc/changelog-d.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Taken temporarily from <nixpkgs/pkgs/by-name/ch/changelog-d/package.nix>
{
callPackage,
lib,
haskell,
haskellPackages,
}:

let
hsPkg = haskellPackages.callPackage ./changelog-d.cabal.nix { };

addCompletions = haskellPackages.generateOptparseApplicativeCompletions ["changelog-d"];

haskellModifications =
lib.flip lib.pipe [
addCompletions
haskell.lib.justStaticExecutables
];

mkDerivationOverrides = finalAttrs: oldAttrs: {

version = oldAttrs.version + "-git-${lib.strings.substring 0 7 oldAttrs.src.rev}";

meta = oldAttrs.meta // {
homepage = "https://codeberg.org/roberth/changelog-d";
maintainers = [ lib.maintainers.roberth ];
};

};
in
(haskellModifications hsPkg).overrideAttrs mkDerivationOverrides
Loading