diff --git a/CHANGELOG.md b/CHANGELOG.md index 69f63cf..ce17153 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,34 @@ +## [1.13.4] - 2026-05-27 + +* Changed + +* pkgmgr release now derives the distro-package name from existing + packaging metadata instead of the repository folder name. The lookup + order is packaging/debian/control Package field, then + packaging/arch/PKGBUILD pkgname value, then RPM spec Name field, then + folder basename as legacy fallback. Renaming a repository folder (for + example infinito-nexus to infinito-nexus-core) no longer silently + flips the debian/changelog top entry and the RPM changelog stanza to + a new identifier. Those keep matching the authoritative Package, + pkgname, or Name value in the packaging files, which is what apt, + pacman, and dnf index against. + +Added + +* RepoPaths gains a debian_control slot that is discovered alongside + debian_changelog under both packaging/debian (new layout) and debian + (legacy layout). +* pkgmgr.actions.release.package_name.resolve_package_name centralises + the priority chain and is unit-tested under + tests/unit/pkgmgr/actions/release/test_package_name.py. + +Fixed + +* dpkg-source --before-build no longer fails with the message about + source package having two conflicting values after a repo-folder + rename, because the changelog and control file stay in agreement. + + ## [1.13.3] - 2026-03-26 * CI pipelines now include automated security scanning (CodeQL, Docker lint), increasing detection of vulnerabilities and misconfigurations diff --git a/flake.nix b/flake.nix index 608f8ab..4ee3225 100644 --- a/flake.nix +++ b/flake.nix @@ -32,7 +32,7 @@ rec { pkgmgr = pyPkgs.buildPythonApplication { pname = "package-manager"; - version = "1.13.3"; + version = "1.13.4"; # Use the git repo as source src = ./.; diff --git a/packaging/arch/PKGBUILD b/packaging/arch/PKGBUILD index 95fd141..325c76a 100644 --- a/packaging/arch/PKGBUILD +++ b/packaging/arch/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Kevin Veen-Birkenbach pkgname=package-manager -pkgver=1.13.3 +pkgver=1.13.4 pkgrel=1 pkgdesc="Local-flake wrapper for Kevin's package-manager (Nix-based)." arch=('any') diff --git a/packaging/debian/changelog b/packaging/debian/changelog index 271fda1..53d261e 100644 --- a/packaging/debian/changelog +++ b/packaging/debian/changelog @@ -1,3 +1,35 @@ +package-manager (1.13.4-1) unstable; urgency=medium + + * Changed + +* pkgmgr release now derives the distro-package name from existing + packaging metadata instead of the repository folder name. The lookup + order is packaging/debian/control Package field, then + packaging/arch/PKGBUILD pkgname value, then RPM spec Name field, then + folder basename as legacy fallback. Renaming a repository folder (for + example infinito-nexus to infinito-nexus-core) no longer silently + flips the debian/changelog top entry and the RPM changelog stanza to + a new identifier. Those keep matching the authoritative Package, + pkgname, or Name value in the packaging files, which is what apt, + pacman, and dnf index against. + +Added + +* RepoPaths gains a debian_control slot that is discovered alongside + debian_changelog under both packaging/debian (new layout) and debian + (legacy layout). +* pkgmgr.actions.release.package_name.resolve_package_name centralises + the priority chain and is unit-tested under + tests/unit/pkgmgr/actions/release/test_package_name.py. + +Fixed + +* dpkg-source --before-build no longer fails with the message about + source package having two conflicting values after a repo-folder + rename, because the changelog and control file stay in agreement. + + -- Kevin Veen-Birkenbach Wed, 27 May 2026 20:32:39 +0200 + package-manager (1.13.3-1) unstable; urgency=medium * CI pipelines now include automated security scanning (CodeQL, Docker lint), increasing detection of vulnerabilities and misconfigurations diff --git a/packaging/fedora/package-manager.spec b/packaging/fedora/package-manager.spec index bd0741f..f274770 100644 --- a/packaging/fedora/package-manager.spec +++ b/packaging/fedora/package-manager.spec @@ -1,5 +1,5 @@ Name: package-manager -Version: 1.13.3 +Version: 1.13.4 Release: 1%{?dist} Summary: Wrapper that runs Kevin's package-manager via Nix flake @@ -74,6 +74,35 @@ echo ">>> package-manager removed. Nix itself was not removed." /usr/lib/package-manager/ %changelog +* Wed May 27 2026 Kevin Veen-Birkenbach - 1.13.4-1 +- Changed + +* pkgmgr release now derives the distro-package name from existing + packaging metadata instead of the repository folder name. The lookup + order is packaging/debian/control Package field, then + packaging/arch/PKGBUILD pkgname value, then RPM spec Name field, then + folder basename as legacy fallback. Renaming a repository folder (for + example infinito-nexus to infinito-nexus-core) no longer silently + flips the debian/changelog top entry and the RPM changelog stanza to + a new identifier. Those keep matching the authoritative Package, + pkgname, or Name value in the packaging files, which is what apt, + pacman, and dnf index against. + +Added + +* RepoPaths gains a debian_control slot that is discovered alongside + debian_changelog under both packaging/debian (new layout) and debian + (legacy layout). +* pkgmgr.actions.release.package_name.resolve_package_name centralises + the priority chain and is unit-tested under + tests/unit/pkgmgr/actions/release/test_package_name.py. + +Fixed + +* dpkg-source --before-build no longer fails with the message about + source package having two conflicting values after a repo-folder + rename, because the changelog and control file stay in agreement. + * Thu Mar 26 2026 Kevin Veen-Birkenbach - 1.13.3-1 - CI pipelines now include automated security scanning (CodeQL, Docker lint), increasing detection of vulnerabilities and misconfigurations * Workflow permissions were tightened and fixed, ensuring secure and reliable execution of reusable workflows diff --git a/pyproject.toml b/pyproject.toml index 3212a2d..18a1a39 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta" [project] name = "kpmx" -version = "1.13.3" +version = "1.13.4" description = "Kevin's package-manager tool (pkgmgr)" readme = "README.md" requires-python = ">=3.9"