taler-deployment

Deployment scripts and configuration files
Log | Files | Refs | README

commit b64aebfbfff617427cd629f68ad90f5df9338f42
parent 981219adb2927d80c4f9181400291c5d304520b8
Author: Florian Dold <dold@taler.net>
Date:   Thu,  3 Sep 2026 01:41:59 +0200

packaging: build libmicrohttpd for Noble

Diffstat:
Apackaging/ng/README-libmicrohttpd.md | 58++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mpackaging/ng/README.md | 19+++++++++++++++----
Mpackaging/ng/buildscripts/buildlib.py | 17+++++++++++++++--
Apackaging/ng/buildscripts/debian-overlay | 14++++++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/README.md | 10++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/changelog | 926+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/control | 56++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/copyright | 157+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/libmicrohttpd-dev.install | 6++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/libmicrohttpd12t64.install | 1+
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/libmicrohttpd12t64.symbols | 84+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/not-installed | 1+
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/patches/disable_tls_tests.patch | 24++++++++++++++++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/patches/series | 1+
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/rules | 7+++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/salsa-ci.yml | 4++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/source/format | 1+
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/tests/build | 31+++++++++++++++++++++++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/tests/control | 10++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/tests/upstream-tests | 20++++++++++++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/upstream/metadata | 4++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/upstream/signing-key.asc | 180+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Apackaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/watch | 3+++
Mpackaging/ng/buildscripts/package_config.py | 10+++++++++-
Mpackaging/ng/distros/debian-trixie.Dockerfile | 2+-
Mpackaging/ng/distros/ubuntu-noble.Dockerfile | 2+-
Mpackaging/ng/packages.toml | 14+++++++++++++-
Mpackaging/ng/taler-pkg | 8++++++--
Mpackaging/ng/testing/test_build_grouping.py | 89+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mpackaging/ng/testing/test_buildlib.py | 29+++++++++++++++++++++++++++++
Mpackaging/ng/testing/test_package_config.py | 33+++++++++++++++++++++++++++++++++
31 files changed, 1809 insertions(+), 12 deletions(-)

diff --git a/packaging/ng/README-libmicrohttpd.md b/packaging/ng/README-libmicrohttpd.md @@ -0,0 +1,58 @@ +# libmicrohttpd packaging + +## Why Taler packages libmicrohttpd + +Ubuntu 24.04 (Noble) provides `libmicrohttpd-dev` version +`1.0.0-2.1ubuntu2`. The corresponding runtime package is named +`libmicrohttpd12t64`; the `t64` suffix denotes Ubuntu's 64-bit `time_t` ABI +transition and does not indicate a newer libmicrohttpd API version. + +The current Taler Exchange packaging requires `libmicrohttpd-dev (>= 1.0.1)`. +That minimum must not be relaxed merely to use Noble's package. Version 1.0.1 +contains an upstream fix for `MHD_queue_response()`: while the daemon is +shutting down, the function returns `MHD_NO` instead of incorrectly reporting +success with `MHD_YES`. Taler's HTTP code calls `MHD_queue_response()` +extensively and needs its result to state reliably whether a response was +queued. The upstream change is +[commit 09fa10e9](https://git.gnunet.org/gnunet/libmicrohttpd/commit/09fa10e988e93ac6f7b8d906db0e1a98e8d48192.html). + +Because Noble cannot satisfy the declared minimum, this repository builds GNU +libmicrohttpd 1.0.10 before GNUnet and the Exchange. Version 1.0.10 is a newer +stable release containing the required fix. The generated Noble packages are +`libmicrohttpd12t64` and `libmicrohttpd-dev`, with version +`1.0.10-0+noble`; this version takes precedence over Noble's 1.0.0 packages in +the local build repository. + +The same locally built package is used for Debian Trixie. Keeping both build +targets on one MHD version avoids distro-specific behavior in this security- +and correctness-sensitive HTTP path. + +## How it is packaged + +The source is taken from the `v1.0.10` tag of the libmicrohttpd repository +configured in `packages.toml`. Upstream does not carry the Debian packaging +used here, so the `debian-overlay` builder copies +`buildscripts/debian-overlays/libmicrohttpd/debian/` into the checked-out +source tree before installing build dependencies and invoking +`dpkg-buildpackage`. It refuses to replace an existing `debian/` directory. + +The overlay is based on the Debian packaging tag `debian/1.0.10-1` from +<https://salsa.debian.org/debian/libmicrohttpd.git>. The distro builder images +deliberately do not install their native `libmicrohttpd-dev`; subsequent GNUnet +and Exchange builds resolve the development package from the local package +repository instead. + +## Updating libmicrohttpd + +The package has `auto_upgrade = false` because its source tag and Debian +overlay must be updated and reviewed together. To update it: + +1. Select the new upstream source tag in `packages.toml`. +2. Refresh the overlay from the corresponding Debian packaging revision. +3. Review `debian/control`, patches, install manifests, and the shared-library + symbols file for ABI or package-name changes. +4. Build and test the MHD package on every supported distribution and + architecture before rebuilding GNUnet and the Exchange. + +An explicitly named `taler-pkg upgrade libmicrohttpd` may update the configured +tag; the default bulk upgrade intentionally skips it. diff --git a/packaging/ng/README.md b/packaging/ng/README.md @@ -54,7 +54,9 @@ Also contains a `Packages.xz` metadata file generated by `dpkg-scanpackages` so that this folder can be directly consumed as a trusted package source. * `packages.toml`: Repository, package, version, builder, and dependency configuration. -* `buildscripts/*`: Build scripts used during the package build steps. +* `buildscripts/*`: Build scripts used during the package build steps. A + `debian-overlay` builder copies tracked Debian packaging onto an upstream + source tree before building it. * `distros/*`: Files for building for a specific distro. * `server-side/`: Server repository topology and initialization notes. @@ -63,9 +65,11 @@ so that this folder can be directly consumed as a trusted package source. `packages.toml` is the single source of truth. A repository entry defines its URL and default builder. A package entry selects a repository and tag, and may -also define `debian_path`, `dependencies`, `enabled`, or override `builder`. -Missing paths and dependency lists default to empty, packages default to -enabled, and builders default to `generic`. +also define `debian_path`, `dependencies`, `enabled`, `auto_upgrade`, or +override `builder`. Missing paths and dependency lists default to empty, +packages default to enabled and eligible for automatic upgrades, and builders +default to `generic`. Set `auto_upgrade = false` when separately maintained +packaging metadata must be reviewed together with each source update. ```toml [repositories."typescript-core"] @@ -220,6 +224,13 @@ newer than the newest candidate is left alone, which is what happens to packages pinned to a dev tag when running without `--dev`. Unsupported tag syntax is also left alone. +Packages with `auto_upgrade = false` are skipped by a default upgrade, but can +still be upgraded when named explicitly. `libmicrohttpd` uses this setting: to +update it, first refresh and review its tracked Debian overlay from the +corresponding Debian packaging tag, then name it explicitly or edit its tag in +`packages.toml`. See `README-libmicrohttpd.md` for the version requirement and +packaging rationale. + Packages sharing a repository are updated independently. Passing package names to `upgrade` can intentionally leave packages from one repository on different tags. diff --git a/packaging/ng/buildscripts/buildlib.py b/packaging/ng/buildscripts/buildlib.py @@ -13,6 +13,7 @@ from pathlib import Path from package_config import ConfigError, load_config PKGDIR = Path("/pkgdir") +OVERLAYDIR = Path("/buildscripts/debian-overlays") def run_cmd(cmd, shell=False, cwd=None, env=None): @@ -98,11 +99,21 @@ def _validate_group(config, package_names, expected_builder): repository_url, tag, builder = keys.pop() if builder != expected_builder: raise ConfigError(f"expected builder {expected_builder!r}, got {builder!r}") - if expected_builder == "generic" and len(packages) != 1: - raise ConfigError("the generic builder accepts exactly one package") + if expected_builder != "pnpm-workspace" and len(packages) != 1: + raise ConfigError(f"the {expected_builder} builder accepts exactly one package") return packages, repository_url, tag +def _apply_debian_overlay(package, package_path): + overlay = OVERLAYDIR / package.name / "debian" + target = package_path / "debian" + if not overlay.is_dir(): + raise ConfigError(f"missing Debian overlay for {package.name}: {overlay}") + if target.exists(): + raise ConfigError(f"refusing to replace existing Debian packaging: {target}") + shutil.copytree(overlay, target) + + def _install_build_dependencies(source_dir, package_paths): tool = "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" controls = [str(package_path / "debian" / "control") for package_path in package_paths] @@ -240,6 +251,8 @@ def build_packages(codename, arch, package_names, expected_builder): run_cmd(["./bootstrap"], cwd=source_dir) package_paths = [source_dir / package.debian_path for package in packages] + if expected_builder == "debian-overlay": + _apply_debian_overlay(packages[0], package_paths[0]) for package, package_path in zip(packages, package_paths): control = package_path / "debian" / "control" if not control.is_file(): diff --git a/packaging/ng/buildscripts/debian-overlay b/packaging/ng/buildscripts/debian-overlay @@ -0,0 +1,14 @@ +#!/usr/bin/env python3 + +# This file is in the public domain. + +import sys +from pathlib import Path + +sys.path.insert(0, str(Path(__file__).resolve().parent)) + +from buildlib import main + + +if __name__ == "__main__": + main("debian-overlay") diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/README.md b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/README.md @@ -0,0 +1,10 @@ +# libmicrohttpd Debian packaging overlay + +The `debian/` directory is copied from the Debian libmicrohttpd packaging tag +`debian/1.0.10-1` in +<https://salsa.debian.org/debian/libmicrohttpd.git>. The package source itself +is cloned from the GNU libmicrohttpd repository configured in `packages.toml`. + +When updating libmicrohttpd, review and update this overlay together with the +source tag. The package has `auto_upgrade = false` to prevent an unattended +source bump from using stale packaging metadata. diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/changelog b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/changelog @@ -0,0 +1,926 @@ +libmicrohttpd (1.0.10-1) unstable; urgency=medium + + * [931dd89] New upstream version 1.0.10 + * [d73ac5d] d/copyright: update for new upstream releases + * [0b97a3d] d/patches/: refresh + + -- Florian Ernst <florian@debian.org> Sat, 08 Aug 2026 12:20:16 +0200 + +libmicrohttpd (1.0.9-1) unstable; urgency=medium + + * [b5c394b] New upstream version 1.0.9 + + -- Florian Ernst <florian@debian.org> Fri, 31 Jul 2026 19:17:03 +0200 + +libmicrohttpd (1.0.8-1) unstable; urgency=medium + + * [6ce9fa1] New upstream version 1.0.8 + * [568c475] d/patches/adjust-MHD_VERSION-to-match-current-release.patch: + obsolete + * [568c3f5] d/copyright: update for new upstream release + + -- Florian Ernst <florian@debian.org> Fri, 31 Jul 2026 16:11:38 +0200 + +libmicrohttpd (1.0.7-1) unstable; urgency=medium + + * [ada7e89] New upstream version 1.0.7 + * [c413adb] d/patches/: adjust MHD_VERSION to match current release + + -- Florian Ernst <florian@debian.org> Tue, 28 Jul 2026 14:58:10 +0200 + +libmicrohttpd (1.0.6-1) unstable; urgency=medium + + * [db36f6d] New upstream version 1.0.6 + + -- Florian Ernst <florian@debian.org> Thu, 09 Jul 2026 15:50:44 +0200 + +libmicrohttpd (1.0.5-1) unstable; urgency=medium + + * [e859f7d] New upstream version 1.0.5 + * [1a74af8] d/patches/test_mhd_version.patch: obsolete with 1.0.5, so + dropped + * [a58ee30] d/copyright: update upstream copyright years + + -- Florian Ernst <florian@debian.org> Thu, 16 Apr 2026 16:48:32 +0200 + +libmicrohttpd (1.0.4-2) unstable; urgency=medium + + * [dbd3bf7] d/patches/disable_tls_tests.patch: Disable some tests + that fail on Debian infrastructure but succeed locally + + -- Florian Ernst <florian@debian.org> Wed, 15 Apr 2026 18:30:19 +0200 + +libmicrohttpd (1.0.4-1) unstable; urgency=medium + + * [01c086e] New upstream version 1.0.4 + * [08b12c4] d/patches/test_mhd_version.patch: Fix MHD_VERSION for 1.0.4 + release + + -- Florian Ernst <florian@debian.org> Wed, 15 Apr 2026 16:31:54 +0200 + +libmicrohttpd (1.0.3-1) unstable; urgency=medium + + * [8eaf79a] New upstream version 1.0.3 + * [3188c64] d/copyright: adjust for new upstream release + * [8ee8bd5] d/patches/: removed as all patches are part of upstream + * [9300cf9] d/libmicrohttpd12t64.symbols: add new upstream symbol + * [3c6c48d] d/control: drop now-obsolete fields Priority and RRR + * [cfbc67b] d/control: Standards-Version: 4.7.4 (no further changes + required) + + -- Florian Ernst <florian@debian.org> Fri, 03 Apr 2026 14:16:10 +0200 + +libmicrohttpd (1.0.2-2) unstable; urgency=medium + + * [9a51c41] add d/patches/test_get_close_for_curl_8.16.patch to fix FTBFS + with curl 8.16. + Thanks to "Evgeny Grin (Karlson2k)" <k2k@narod.ru> (Closes: #1115154) + + -- Florian Ernst <florian@debian.org> Mon, 22 Sep 2025 20:06:25 +0200 + +libmicrohttpd (1.0.2-1) unstable; urgency=medium + + * Uploading to unstable after the release + + -- Florian Ernst <florian@debian.org> Thu, 21 Aug 2025 18:43:42 +0200 + +libmicrohttpd (1.0.2-1~exp1) experimental; urgency=medium + + * [665b899] New upstream version 1.0.2 + * [8cac46e] d/patches: drop completely, now all part of upstream + * [9a08879] d/copyright: update upstream years + + -- Florian Ernst <florian@debian.org> Thu, 17 Jul 2025 18:38:50 +0200 + +libmicrohttpd (1.0.1-4) unstable; urgency=medium + + * [b6555f4] d/patches/FTBFS_testcurl_tricky_url.patch: use upstream patch. + Thanks to "Evgeny Grin (Karlson2k)" <k2k@narod.ru> (Closes: #1101232) + + -- Florian Ernst <florian@debian.org> Sat, 12 Apr 2025 12:40:36 +0200 + +libmicrohttpd (1.0.1-3) unstable; urgency=medium + + * [18b0c78] d/tests/upstream-tests: add to enable upstream tests CI + (Closes: #1101399) + * [1c80aee] disable upstream's testcurl test_tricky_url due to curl changes. + Thanks to Daniel Stenberg (bagder) (Closes: #1101232) + * [4ff857b] d/copyright: update debian years + * [15b3bf3] d/control: Standards-Version: 4.7.2 (no changes required) + + -- Florian Ernst <florian@debian.org> Wed, 02 Apr 2025 15:06:22 +0200 + +libmicrohttpd (1.0.1-2) unstable; urgency=medium + + * [7ed5d20] d/libmicrohttpd12t64.lintian-overrides: drop, not needed since + lintian 2.118.0 + * [5b1d4ed] d/rules: testsuite now passes on all archs, so drop special + handling + * [3114b97] d/rules: move not installing of *.la files to d/not-installed + * [a75d23d] d/tests/control: pkg-config -> pkconf + * [b1b3bb7] d/patches/adapted_test_for_GNU_Hurd.patch: added from upstream + * [60051f3] d/copyright: redo from scratch + * [dbbcce0] d/control: drop B-D on socat and zzuf. + These are only used with explicitly setting --enable-heavy-tests + anyways which should not be done with standard package builds. + * [49f80d0] d/control: Standards-Version: 4.7.0 (no changes required) + + -- Florian Ernst <florian@debian.org> Sat, 24 Aug 2024 13:13:06 +0200 + +libmicrohttpd (1.0.1-1) unstable; urgency=medium + + * [bb2aeec] New upstream version 1.0.1 + * [80d4aa2] d/control: Generalize hurd-i386 into hurd-any. + Thanks to Samuel Thibault <sthibault@debian.org> in commit 2485038 + * [621a1e7] d/{control,copyright}: new maintainer (Closes: #1073993) + * [56761eb] d/control: readd Vcs-* fields pointing to Salsa + * [e68f578] d/libmicrohttpd12t64.symbols: fix symbols added in 0.9.75 (i.e. + stable) + * [6d10697] d/control: Build-Depends: pkg-config => pkgconf + * [f069e7f] d/patches/manpage_add_library_description.patch: fix mdoc + warning + * [f8b1fe8] d/salsa-ci.yml: added + * [522e2d5] d/libmicrohttpd12t64.symbols: add symbols added ever since + 0.9.75 + * [028c6ee] d/control: drop redundant Section and streamline M-A + capitalization + + -- Florian Ernst <florian@debian.org> Wed, 24 Jul 2024 17:01:14 +0200 + +libmicrohttpd (1.0.0-2.1) unstable; urgency=medium + + * Non-maintainer upload. + * Rename libraries for 64-bit time_t transition. Closes: #1063129 + + -- Benjamin Drung <bdrung@debian.org> Fri, 01 Mar 2024 12:21:57 +0000 + +libmicrohttpd (1.0.0-2) sid; urgency=medium + + * Uploading to sid. + * Orphaning package. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 07 Feb 2024 06:48:47 +0100 + +libmicrohttpd (1.0.0-1) sid; urgency=medium + + * Uploading to sid. + * Merging upstream version 1.0.0. + * Updating years in copyright for 2024. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 03 Feb 2024 06:32:37 +0100 + +libmicrohttpd (0.9.77-3) sid; urgency=medium + + * Uploading to sid. + * Shortening package long-description for libmicrohttpd-dev. + * Generalizing debhelper install files. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 24 Jun 2023 16:06:09 +0200 + +libmicrohttpd (0.9.77-2) sid; urgency=medium + + * Uploading to sid. + * Uploading without changes after bookworm release. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sun, 11 Jun 2023 14:24:03 +0200 + +libmicrohttpd (0.9.77-1) experimental; urgency=medium + + * Uploading to experimental. + * Merging upstream version 0.9.77. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 03 Jun 2023 01:56:31 +0200 + +libmicrohttpd (0.9.76-1) experimental; urgency=medium + + * Uploading to experimental. + * Merging upstream version 0.9.76. + * Removing PostProcessor-DoS.patch, included upstream. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Fri, 03 Mar 2023 14:55:39 +0100 + +libmicrohttpd (0.9.75-6) sid; urgency=high + + * Uploading to sid. + * Adding patch from libmicrohttpd 0.9.76 to fix a parser bug that could + be used to crash servers using the MHD_PostProcessor [CVE-2023-27371]. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Fri, 03 Mar 2023 14:51:24 +0100 + +libmicrohttpd (0.9.75-5) sid; urgency=medium + + * Uploading to sid. + * Releasing debian version 0.9.75-4. + * Updating to standards version 4.6.2. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Mon, 30 Jan 2023 17:30:27 +0100 + +libmicrohttpd (0.9.75-4) sid; urgency=medium + + * Uploading to sid. + * Updating packaging copyright for 2022. + * Updating to standards version 4.6.1. + * Adding version mangling in watch file. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Thu, 14 Jul 2022 19:29:43 +0200 + +libmicrohttpd (0.9.75-3) sid; urgency=medium + + * Uploading to sid. + * Running test targets on hppa with hard-fail again as it should have + been fixed upstream. + * Avoid failing test targets on sparc64, needs fixes upstream. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 29 Dec 2021 19:37:31 +0100 + +libmicrohttpd (0.9.75-2) sid; urgency=medium + + * Uploading to sid. + * Correcting watch file. + * Running test targets on hurd-i386 with hard-fail again as it has been + fixed upstream. + * Updating libmicrohttpd12.symbols for current upstream version. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 29 Dec 2021 15:24:03 +0100 + +libmicrohttpd (0.9.75-1) sid; urgency=medium + + * Uploading to sid. + * Merging upstream version 0.9.75. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Mon, 27 Dec 2021 18:22:57 +0100 + +libmicrohttpd (0.9.73-4) sid; urgency=medium + + * Uploading to sid. + * Removing examples for now, fixing multi-arch issues (Closes: #993980). + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 13 Oct 2021 18:32:29 +0200 + +libmicrohttpd (0.9.73-3) sid; urgency=medium + + * Uploading to sid. + * Updating to standards version 4.6.0. + * Simplifying test overrides in rules. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 09 Oct 2021 10:24:32 +0200 + +libmicrohttpd (0.9.73-2) sid; urgency=medium + + * Uploading to sid. + * Updating watch file. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sun, 15 Aug 2021 17:53:10 +0200 + +libmicrohttpd (0.9.73-1) experimental; urgency=medium + + * Uploading to experimental. + * Merging upstream version 0.9.73. + * Updating years in copyright for 2021. + * Correcting mixup with Bertrands firstname in previous changelog entry. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sun, 02 May 2021 15:14:38 +0200 + +libmicrohttpd (0.9.72-3) experimental; urgency=medium + + * Uploading to experimental. + * Consolidating my email address. + * Fixing indenting in package description. + * Sorting control fields. + * Repeating section in every package block of control for consistency. + * Updating upstream-name in copyright. + * Removing superfluous license in copyright. + * Updating source in copyright. + * Correcting formating of copyright lists. + * Updating copyright for 2021. + * Shortening libmicrohttpd-dev debhelper install lines. + * Shortening dh_auto_install override. + * Wrap-and-sorting debian files. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 27 Feb 2021 07:08:58 +0100 + +libmicrohttpd (0.9.72-2) sid; urgency=medium + + * Uploading to sid. + * New maintainer, thank you Bertrand for all your work. + * Updating vcs fields. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 27 Feb 2021 06:47:48 +0100 + +libmicrohttpd (0.9.72-1) unstable; urgency=medium + + [ Gianfranco Costamagna ] + * Make tests cross-friendly (Closes: #964790) + + [ Bertrand Marc ] + * New upstream version 0.9.72 (Closes: #980301). + * Add Evgeny Grin's new gpg key to upstream/signing-key.asc. + * Annotate test dependencies with <!nocheck>, thanks to Helmut Grohne + (Closes: #981790). + * Standards-version: 4.5.1, no changes needed. + * Add symbol MHD_create_response_from_pipe in debian/libmicrohttpd12.symbols. + + -- Bertrand Marc <bmarc@debian.org> Wed, 10 Feb 2021 16:55:59 +0100 + +libmicrohttpd (0.9.71-1) unstable; urgency=medium + + * Make libmicrohttpd12 and libmicrohttpd-dev multiarch: same. + * Fix day-of-week for changelog entry 0.2.0-1. + * Update debian/copyright. + * Add debian/upstream/metadata. + * Remove debian/patches/fix_parallel_tests.patch, included upstream. + * Add MHD_set_connection_value_n to libmicrohttpd12.symbols. + + -- Bertrand Marc <bmarc@debian.org> Sat, 04 Jul 2020 12:46:41 +0200 + +libmicrohttpd (0.9.70-1) unstable; urgency=medium + + [ Bertrand Marc ] + * New upstream version 0.9.70 (Closes: #956085). + * Move to debhelper-compat 13: + + debian/control: build depend on debhelper-compar (=13). + + debian/control: remove build dependency on dh-autoreconf. + + debian/rules: remove --with autoreconf. + + debian/rules: remove dh_install --fail-missing. + + remove debian/compat. + * Add a patch taken upstream to prevent parallel tests. + + [ Daniel Kahn Gillmor ] + * Standards-Version: 4.5.0, no changes needed. + * Rules-Requires-Root: no. + * Use https for pointers to upstream in debian/control and + debian/copyright. + * debian/changelog: drop trailing whitespace. + * Apply wrap-and-sort -as. This change makes future diffs easier to + read. + * libmicrohttpd-dev: drop dependency on libgcrypt-dev (Closes: #955448). + + -- Bertrand Marc <bmarc@debian.org> Thu, 18 Jun 2020 15:30:36 +0200 + +libmicrohttpd (0.9.66-1) unstable; urgency=medium + + * New upstream version 0.9.66. + * debian/rules: dbgsym migration is over now, removing it. + * Standards-version: 4.4.0, no changes needed. + * Add 2 new symbols: MHD_get_connection_values_n and + MHD_lookup_connection_value_n. + + -- Bertrand Marc <bmarc@debian.org> Sun, 18 Aug 2019 09:24:35 +0200 + +libmicrohttpd (0.9.62-1) unstable; urgency=medium + + * New upstream version 0.9.62 + * Add 3 new symbols to libmicrohttpd12.symbols (preliminary implementation + for RFC 7616 support). + + -- Bertrand Marc <bmarc@debian.org> Sun, 09 Dec 2018 09:40:16 +0100 + +libmicrohttpd (0.9.61-1) unstable; urgency=medium + + * New upstream version 0.9.61. + * Remove the only patch, included upstream. + * Add one new symbol to debian/libmicrohttpd12.symbols. + * Update years in debian/copyright. + + -- Bertrand Marc <bmarc@debian.org> Sat, 01 Dec 2018 09:42:30 +0100 + +libmicrohttpd (0.9.60-1) unstable; urgency=medium + + * New upstream version 0.9.60. + * Move the package to salsa and update Vcs-browser and Vcs-git accordingly. + * Add a patch taken upstream to fix tests with curl (Closes: #913465). + * Update debian/watch to version 4. + * Standards-version: 4.2.1, no changes needed. + * Add one symbol and the Build-Depends-Package field to + libmicrohttp12.symbols. + + -- Bertrand Marc <bmarc@debian.org> Sat, 17 Nov 2018 11:01:54 +0100 + +libmicrohttpd (0.9.59-1) unstable; urgency=medium + + * New upstream version 0.9.59. + + -- Bertrand Marc <bmarc@debian.org> Sun, 25 Feb 2018 19:27:09 +0100 + +libmicrohttpd (0.9.58-1) unstable; urgency=medium + + * New upstream version 0.9.58 (Closes: #867785). + * Drop dependency on libgcrypt, not necessary anymore with GnuTLS>2.12.20 + (Closes: #883475). + * Drop 01-manpage.patch, applied upstream. + * Standards-version: 4.1.3. + + -- Bertrand Marc <bmarc@debian.org> Thu, 28 Dec 2017 18:48:15 +0100 + +libmicrohttpd (0.9.57-1) unstable; urgency=medium + + * New upstream version 0.9.57. + * Add a new symbol to debian/libmicrohttpd12.symbols. + * Use https instead of ftp in debian/watch. + * Standards-version: 4.1.2. + + -- Bertrand Marc <bmarc@debian.org> Sat, 02 Dec 2017 18:14:58 +0100 + +libmicrohttpd (0.9.55-1) unstable; urgency=medium + + * Add Evgeny Grin's key to debian/upstream/signing-key.asc. + * New upstream version 0.9.55 (Closes: #844146). + * Add 2 new symbols to libmicrohttpd12.symbols. + * debian/copyright: + + Use the https form of the copyright-format URL in debian/copyright. + + Add my @debian.org address. + + Add the new maintainer. + + Update the years. + * debian/control: update standards version to 4.0.0. + + -- Bertrand Marc <bmarc@debian.org> Tue, 27 Jun 2017 18:37:43 +0200 + +libmicrohttpd (0.9.51-1) unstable; urgency=medium + + * New upstream version 0.9.51. + * Enable all hardening flags as MHD handles untrusted data. + * Disable tests on hppa and hurd-i386 as they fail on these. + + -- Bertrand Marc <bmarc@debian.org> Thu, 01 Sep 2016 10:53:10 +0200 + +libmicrohttpd (0.9.50-3) unstable; urgency=medium + + * Remove build-dependency on socat on hurd-i386 as it is not available and + only used to enable tests at build time (Closes: #833028). + * Use my @debian.org address for the maintainer field. + + -- Bertrand Marc <bmarc@debian.org> Thu, 11 Aug 2016 22:55:29 +0200 + +libmicrohttpd (0.9.50-2) unstable; urgency=medium + + * Upload to unstable. + + -- Bertrand Marc <beberking@gmail.com> Sat, 23 Jul 2016 15:28:52 +0200 + +libmicrohttpd (0.9.50-1) experimental; urgency=medium + + * Imported Upstream version 0.9.50 (Closes: #813636). + * Stop building libmicrospdy, since upstream removed it: + + debian/control: remove libmicrospdy binary packages and remove + build-dependency on libssl-dev and zlib1g-dev. + + debian/copyright: remove src/microspdy/* files, the GPL3+ paragraph, + and the Files-excluded field. + + remove debian/libmicrospdy-dev.install, debian/libmicrospdy0.install and + debian/libmicrospdy0.symbols. + + debian/rules: remove libmicrospdy-dbg from dh_strip. + * Change soname version to libmicrohttpd12: + + debian/control: update the binary package name. + + rename debian/libmicrohttpd10.install. + + rename and update debian/libmicrohttpd10.symbols. + + debian/rules: strip libmicrohttpd12. + * Migrate from a manual "-dbg" package to an automatic generated debug symbol + package: + + debian/control: remove libmicrohttpd-dbg. + + debian/rules: use --dbgsym-migration in override_dh_strip. + * Standards version 3.9.8: no changes needed. + * debian/control: use secure URIs in vcs-fields. + * Build-depend on libcurl4-gnutls-dev, socat and zzuf to enable more tests. + + -- Bertrand Marc <beberking@gmail.com> Sun, 19 Jun 2016 16:27:47 +0200 + +libmicrohttpd (0.9.44+dfsg-1) unstable; urgency=medium + + * Imported Upstream version 0.9.44+dfsg + * debian/copyright: + + update years and add the microspdy directory. + + add a license paragraph for GPL-3 and remove a useless sentence in the + LGPL paragraph. + * make libmicrospdy-dev break and replace libmicrohttpd-dev, as the latter + used to ship libmicrospdy.pc (Closes: #800922). + * Add missing dependencies for libmicrohttpd-dev and libmicrospdy-dev. + * Add 2 new symbols to libmicrohttpd10.symbols. + + -- Bertrand Marc <beberking@gmail.com> Mon, 05 Oct 2015 22:24:46 +0200 + +libmicrohttpd (0.9.42+dfsg-2) unstable; urgency=medium + + [ Martin Pitt ] + * debian/rules: Run the test suite and make it fatal on non-kfreebsd, where + it's known to fail (Closes: #797154). + * Add compile/link/run autopkgtest for libmicrohttpd-dev (Closes: #797157). + + [ Bertrand Marc ] + * Build-depend on libssl-dev and zlib-dev to enable libmicrospdy. + * Put libmicrospdy into separate packages (libmicrosdpy0, -dbg and -dev) and + create libmicrospdy0.symbols. + * Upload to unstable. + + -- Bertrand Marc <beberking@gmail.com> Sun, 06 Sep 2015 17:40:18 +0200 + +libmicrohttpd (0.9.42+dfsg-1) experimental; urgency=medium + + * Update upstream signing key. Remove debian/source/include-binaries as + the upstream signing key is now ascii armored. + * Imported Upstream version 0.9.42+dfsg. + * Add two new symbols from 0.9.38 and 0.9.39 in libmicrohttpd10.symbols. + * Add a build-dependency on pkg-config to avoid an error with autoreconf. + * Standards version 3.9.6: no changes needed. + * Add debian/libmicrohttpd-dev.examples to install upstream examples + (Closes: #793743). + + -- Bertrand Marc <beberking@gmail.com> Wed, 05 Aug 2015 11:57:55 +0200 + +libmicrohttpd (0.9.37+dfsg-1) unstable; urgency=medium + + * Exclude non-free src/datadir/spdy-draft.txt (Closes: #745404) from + debian/copyright and update debian/watch to mangle the debian version. + * Imported Upstream version 0.9.37+dfsg. + * Remove 02-hiding_symbols.patch: manual hiding of symbols is not necessary + anymore as visibility is set when needed. + * Add two new symbols from 0.9.35 in libmicrohttpd10.symbols. + * Build depend on libgnutls28-dev instead of libgnutls-dev (Closes: #753115). + * debian/control: make libmicrohttpd10 pre-depend on ${misc:Pre-Depends} + instead of multi-arch. + + -- Bertrand Marc <beberking@gmail.com> Thu, 10 Jul 2014 11:30:01 +0200 + +libmicrohttpd (0.9.33-1) unstable; urgency=medium + + [ Bertrand Marc ] + * Imported Upstream version 0.9.33 + * Make uscan check the archive signature: + + add the upstream key to debian/upstream-signing-key.pgp. + + add the binary key to debian/source/include-binaries. + + add pgpsigurlmangle to debian/watch. + * Hide uneeded exported symbols according to microhttpd.h and EXPORT.sym. + This fixes building on kfreebsd (Closes: #733184). + + cherry pick 02-hiding_symbols from upstream svn. + + remove every unwanted symbols from libmicrohttpd10.symbols. + * Standards version 3.9.5: + + remove dependency on dpkg (>= 1.15.4) | install-info. + + [ Ivo De Decker ] + * Add missing build-dep on texinfo. + + -- Ivo De Decker <ivo.dedecker@ugent.be> Wed, 01 Jan 2014 16:58:30 +0100 + +libmicrohttpd (0.9.32-1) unstable; urgency=medium + + * Imported Upstream version 0.9.32 + + Fix CVE-2013-7038 and CVE-2013-7039 (Closes: #731933). + * debian/libmicrohttpd10.symbols: + + remove 2 unused symbols. + + add a new one from 0.9.30. + + add 2 new ones from 0.9.32. + * Refresh the only patch. + * debian/rules: remove an old cleaning rule after install. + + -- Bertrand Marc <beberking@gmail.com> Wed, 11 Dec 2013 17:30:36 +0100 + +libmicrohttpd (0.9.27-2) unstable; urgency=low + + * Disable the test suite, as it fails on kfreebsd. + * Remove useless debian/source/options. + * debian/control: update Vcs-git and Vcs-browser to use anonscm.debian.org + instead of git.debian.org. + + -- Bertrand Marc <beberking@gmail.com> Wed, 17 Jul 2013 18:20:03 +0200 + +libmicrohttpd (0.9.27-1) unstable; urgency=low + + * Move the git repository to collab-maint. + * Imported Upstream version 0.9.27 + * debian/rules: remove useless override_dh_builddeb. + * Add a symbols file for libmicrohttpd. + * Enable the test suite. + * debian/control: extend long descriptions with key features. + * Migrate debian/copyright to standard format 1.0. + * Standards version 3.9.4. + + -- Bertrand Marc <beberking@gmail.com> Sun, 19 May 2013 20:23:09 +0200 + +libmicrohttpd (0.9.20-1) unstable; urgency=low + + * debian/control: add Vcs-Git and Vcs-browser fields. + * Imported Upstream version 0.9.20. + * debian/control: remove duplicate field "section". + + -- Bertrand Marc <beberking@gmail.com> Sun, 24 Jun 2012 12:24:02 +0200 + +libmicrohttpd (0.9.19-3) unstable; urgency=low + + * New maintainer (Closes: #660445). + * Upload to unstable. + * Standards version 3.9.3. + * Add a dependency on dpkg (>= 1.15.4) | install-info for extract, + see Policy section 12.2. + * Add debian/watch. + * Move to autoreconf: + + build-depends on autoconf, automake, dh-autoreconf. + + debian/rules: use dh --with autoreconf. + + -- Bertrand Marc <beberking@gmail.com> Sat, 14 Apr 2012 18:25:48 +0200 + +libmicrohttpd (0.9.19-2) experimental; urgency=low + + * Orphaning package. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sun, 19 Feb 2012 09:16:33 +0000 + +libmicrohttpd (0.9.19-1) experimental; urgency=low + + * Merging upstream version 0.9.19 (Closes: #660012). + * Updating package to debhelper version 9. + * Updating years in copyright file. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 15 Feb 2012 22:19:26 +0100 + +libmicrohttpd (0.9.17-1) experimental; urgency=low + + * Merging upstream version 0.9.17. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sun, 20 Nov 2011 10:05:35 +0100 + +libmicrohttpd (0.9.15-1) experimental; urgency=low + + * Using compression level 9 also for binary packages. + * Merging upstream version 0.9.15. + * Sorting overrides in rules alphabetically. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Thu, 03 Nov 2011 11:12:17 +0100 + +libmicrohttpd (0.9.14-1) experimental; urgency=low + + * Merging upstream version 0.9.14. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Mon, 12 Sep 2011 11:22:21 +0200 + +libmicrohttpd (0.9.13-1) experimental; urgency=low + + * Merging upstream version 0.9.13. + * Updating maintainer and uploaders fields. + * Removing vcs fields. + * Removing references to my old email address. + * Removing changelog entry for 0.9.1-1 which was a version not + uploaded to the archive. + * Updating to standards version 3.9.2. + * Updating package long-descriptions. + * Updating years in copyright file. + * Making packaging distribution neutral. + * Compacting copyright file. + * Removing leading slash from debhelper install files. + * Rediffing manpage.patch. + * Adding libgcrypt to build-depends for https support. + * Adding libgnutls to build-depends for ssl support. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Fri, 09 Sep 2011 16:05:44 +0200 + +libmicrohttpd (0.9.3-1) experimental; urgency=low + + * Merging upstream version 0.9.3. + * Removing README.source. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Tue, 30 Nov 2010 22:00:20 +0100 + +libmicrohttpd (0.9.2-1) experimental; urgency=low + + * Merging upstream version 0.9.2. + * Updating to debhelper version 8. + * Switching to source format 3.0 (quilt). + * Using newer autotools handing in rules. + * Dropping old dpkg depends. + * Rediffing manpage patch. + * Updating packaging for soname major version 10. + * Updating copyright file (Closes: #600864). + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sun, 21 Nov 2010 11:44:08 +0100 + +libmicrohttpd (0.9.0-1) experimental; urgency=low + + * Updating standards version to 3.9.0. + * Merging upstream version 0.9.0. + * Updating packaging for soname bump. + * Updating package to standards version 3.9.1. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Fri, 06 Aug 2010 16:46:45 +0200 + +libmicrohttpd (0.4.6-1) unstable; urgency=medium + + * Merging upstream version 0.4.6: + - fixes ssl on big-endian. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 13 Mar 2010 10:43:45 +0100 + +libmicrohttpd (0.4.5-1) unstable; urgency=low + + * Adding explicit source version 1.0 until switch to 3.0. + * Updating year in copyright file. + * Updating to standards 3.8.4. + * Merging upstream version 0.4.5. + * Updating year in copyright file. + * Changing dh call to more common scheme. + * Simplyfing libmicrohttpd-dev debhelper install file. + * Updating README.source. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sun, 21 Feb 2010 15:43:32 +0100 + +libmicrohttpd (0.4.4-1) unstable; urgency=low + + * Merging upstream version 0.4.4. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Mon, 09 Nov 2009 21:19:57 +0100 + +libmicrohttpd (0.4.3-1) unstable; urgency=low + + * Simplifying autotools handling in rules. + * Merging upstream version 0.4.3. + * Making build-depends on quilt versioned. + * Disabling test suite. + * Adding depends to dpkg and install-info to libmicrohttpd-dev. + * Dropping the .la file. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Fri, 06 Nov 2009 13:56:41 +0100 + +libmicrohttpd (0.4.2-4) unstable; urgency=low + + * Removing not required sourcedir parameter from dh_install override. + * Updating to standards version 3.8.3. + * Adding maintainer homepage field to control. + * Marking maintainer homepage field to be also included in binary + packages and changelog. + * Adding README.source. + * Updating upstream homepage location. + * Moving maintainer homepage from control to copyright. + * Updating README.source. + * Bumping versioned build-depends on debhelper. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Mon, 21 Sep 2009 21:25:37 +0200 + +libmicrohttpd (0.4.2-3) unstable; urgency=low + + * Removing accidentally imported (useless) removal of po files in + clean. + * Updating maintainer field. + * Updating vcs fields. + * Polishing rules file. + * Removing shlibs file. + * Sorting depends. + * Adding patch to fix bad what-is entry in manpage. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Mon, 10 Aug 2009 21:01:41 +0200 + +libmicrohttpd (0.4.2-2) unstable; urgency=low + + * Minimizing rules file. + * Updating package to standards version 3.8.2. + * Adding misc depends. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 29 Jul 2009 23:27:30 +0200 + +libmicrohttpd (0.4.2-1) unstable; urgency=low + + * Merging upstream version 0.4.2. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Mon, 18 May 2009 12:41:53 +0200 + +libmicrohttpd (0.4.1-1) unstable; urgency=low + + * Merging upstream version 0.4.1. + * Using correct rfc-2822 date formats in changelog. + * Updating section of the debug package. + * Tidy rules file. + * Updating package to standards 3.8.1. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Mon, 11 May 2009 18:41:51 +0200 + +libmicrohttpd (0.4.0a-2) unstable; urgency=medium + + * Adjusting package to new soname (Closes: #519203). + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 18 Mar 2009 20:07:00 +0100 + +libmicrohttpd (0.4.0a-1) unstable; urgency=low + + * Merging upstream version 0.4.0a. + * Adding new pkg-config files to libmicrohttpd-dev. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 25 Feb 2009 15:12:00 +0100 + +libmicrohttpd (0.4.0-1) unstable; urgency=low + + * Merging upstream version 0.4.0. + * Updating year in copyright file. + * Updating shlibs file. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 25 Feb 2009 15:07:00 +0100 + +libmicrohttpd (0.4.0~pre1-2) unstable; urgency=low + + * Removing Arnaud from uploaders, he is MIA (Closes: #513169). + * Updating rules to current state of the art. + * Updating shlibs file. + * Updating year in copyright file. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Thu, 05 Feb 2009 01:05:00 +0100 + +libmicrohttpd (0.4.0~pre1-1) unstable; urgency=low + + * Merging upstream version 0.4.0~pre1. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 22 Nov 2008 15:26:00 +0100 + +libmicrohttpd (0.4.0~pre0-2) unstable; urgency=low + + * Replacing obsolete dh_clean -k with dh_prep. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 15 Nov 2008 07:56:00 +0100 + +libmicrohttpd (0.4.0~pre0-1) experimental; urgency=low + + * Updating vcs fields in control file. + * Merging upstream version 0.4.0~pre0. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sun, 14 Sep 2008 12:59:00 +0200 + +libmicrohttpd (0.3.1-1) unstable; urgency=low + + * Updating rules file. + * Bumping shlibs. + * Merging upstream version 0.3.1. + * Updating to standards 3.8.0. + * Updatingto debhelper 7. + * Correcting indenting in copyright file. + * Reordering compiler flags in configure call. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Thu, 12 Jun 2008 00:49:00 +0200 + +libmicrohttpd (0.3.0-1) unstable; urgency=low + + * Updating package to soname 4. + * Generalizing man files in libmicrohttpd-dev install file. + * Adding info page to libmicrohttpd-dev install file. + * Merging upstream version 0.3.0. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Mon, 14 Apr 2008 11:16:00 +0200 + +libmicrohttpd (0.2.3-1) unstable; urgency=medium + + * Updating shlibs file. + * Merging upstream version 0.2.3. + * Reordering rules file. + * Rewrapping copyright file. + * Updating vcs fields in control file. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 12 Apr 2008 20:17:00 +0200 + +libmicrohttpd (0.2.2-1) unstable; urgency=low + + * New upstream release. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Tue, 01 Apr 2008 17:11:00 +0200 + +libmicrohttpd (0.2.1-2) unstable; urgency=low + + * Adding vcs fields in control. + * Rewriting copyright in machine-interpretable format. + * Removing watch file. + * Bumping shlibs to 0.2.1. + * Rewritten rules. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Tue, 26 Feb 2008 10:26:00 +0100 + +libmicrohttpd (0.2.1-1) unstable; urgency=low + + * New upstream release. + * Bumped to debhelper 6. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 02 Feb 2008 18:40:00 +0100 + +libmicrohttpd (0.2.0-1) unstable; urgency=low + + * New upstream release: + - Bumps soname. + * Bumped to new policy. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Sat, 20 Oct 2007 22:15:00 +0100 + +libmicrohttpd (0.1.1-1) unstable; urgency=low + + * New upstream release. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Fri, 19 Oct 2007 21:56:00 +0200 + +libmicrohttpd (0.1.0-2) unstable; urgency=low + + * Adding debug package. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Wed, 26 Sep 2007 10:52:00 +0200 + +libmicrohttpd (0.1.0-1) unstable; urgency=low + + * New upstream release: + - Bumps soname to 2. + - Changed license to LGPL 2.1 (since version 0.0.2 though). + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Fri, 14 Sep 2007 11:36:00 +0200 + +libmicrohttpd (0.0.0-1) unstable; urgency=low + + * Initial release. + + -- Daniel Baumann <daniel.baumann@progress-linux.org> Tue, 14 Aug 2007 18:53:00 +0200 diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/control b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/control @@ -0,0 +1,56 @@ +Source: libmicrohttpd +Section: libs +Maintainer: Florian Ernst <florian@debian.org> +Build-Depends: dpkg-dev (>= 1.22.5), + autoconf, + automake, + debhelper-compat (= 13), + libcurl4-gnutls-dev <!nocheck>, + libgnutls28-dev, + pkgconf, + texinfo, +Standards-Version: 4.7.4 +Homepage: https://www.gnu.org/software/libmicrohttpd/ +Vcs-Git: https://salsa.debian.org/debian/libmicrohttpd.git +Vcs-Browser: https://salsa.debian.org/debian/libmicrohttpd + +Package: libmicrohttpd-dev +Section: libdevel +Architecture: any +Multi-Arch: same +Depends: + libgnutls28-dev, + libmicrohttpd12t64 (= ${binary:Version}), + ${misc:Depends}, +Description: library embedding HTTP server functionality (development) + GNU libmicrohttpd is a small C library that is supposed to make it easy to run + an HTTP server as part of another application. + . + This package contains the development files. + +Package: libmicrohttpd12t64 +Provides: ${t64:Provides} +Replaces: libmicrohttpd12 +Breaks: libmicrohttpd12 (<< ${source:Version}) +Architecture: any +Multi-Arch: same +Pre-Depends: + ${misc:Pre-Depends}, +Depends: + ${misc:Depends}, + ${shlibs:Depends}, +Description: library embedding HTTP server functionality + GNU libmicrohttpd is a small C library that is supposed to make it easy to run + an HTTP server as part of another application. Key features that distinguish + GNU Libmicrohttpd from other projects are: + . + * C library: fast and small + * API is simple, expressive and fully reentrant + * Implementation is HTTP 1.1 compliant + * HTTP server can listen on multiple ports + * Four different threading models (select, poll, pthread, thread pool) + * Support for IPv6 + * Support for SHOUTcast + * Support for incremental processing of POST data (optional) + * Support for basic and digest authentication (optional) + * Support for SSL3 and TLS diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/copyright b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/copyright @@ -0,0 +1,157 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: GNU Libmicrohttpd +Upstream-Contact: Christian Grothoff <christian@grothoff.org>, Evgeny Grin (Karlson2k) <k2k@narod.ru> +Source: https://ftp.gnu.org/gnu/libmicrohttpd/ + +Files: * +Copyright: 2006-2026 Christian Grothoff <christian@grothoff.org> + 2007-2026 Evgeny Grin (Karlson2k) <k2k@narod.ru> + 2007-2022 Daniel Pittman <depittman@gmail.com> + 2017-2020 Silvio Clecio <silvioprog@gmail.com> + 2019 ng0 + 2021 David Gausmann +License: LGPL-2.1+ + +Files: src/microhttpd/test_* + src/testcurl/* + src/testzzuf/test_basic_auth.c + src/testzzuf/test_digest_auth.c + src/testzzuf/test_get_args.c + src/testzzuf/test_get.c + src/testzzuf/test_get_chunked_ext.c + src/testzzuf/test_pipelined.c +Copyright: 2007-2026 Christian Grothoff <christian@grothoff.org> + 2014-2025 Evgeny Grin (Karlson2k) <k2k@narod.ru> +License: GPL-2+ + +Files: src/microhttpd/test_helpers.h + src/microhttpd/test_mhd_version.c + src/testcurl/https/tls_test_keys.h + src/testcurl/mhd_has_in_name.h + src/testcurl/mhd_has_param.h +Copyright: 2016-2023 Evgeny Grin (Karlson2k) <k2k@narod.ru> +License: LGPL-2.1+ + +Files: configure.ac + src/microhttpd/test_postprocessor.c + src/microhttpd/test_postprocessor_md.c + src/microhttpd/test_shutdown_select.c + src/microhttpd/test_upgrade.c + src/testcurl/https/test_empty_response.c + src/testcurl/https/test_https_get.c + src/testcurl/https/test_https_get_iovec.c + src/testcurl/https/test_https_sni.c + src/testcurl/test_concurrent_stop.c + src/testcurl/test_process_arguments.c +Copyright: 2007-2020 Christian Grothoff <christian@grothoff.org> + 2014-2023 Evgeny Grin (Karlson2k) <k2k@narod.ru> + 2021 David Gausmann +License: GPL-3+ + +Files: src/tools/perf_replies.c +Copyright: 2023 Evgeny Grin (Karlson2k) +License: BSD-2-Clause + +Files: src/microhttpd/test_response_entries.c + contrib/ci/version.sh + contrib/oss-fuzz/build.sh + contrib/oss-fuzz/make_seed_corpus.sh + contrib/run-option-matrix.sh +Copyright: NONE +License: public-domain + This code is in the public domain; do with it what you wish. + +Files: m4/mhd_* +Copyright: 2016-2023 Karlson2k (Evgeny Grin) <k2k@narod.ru> +License: FSFAP + +Files: doc/* +Copyright: 2007-2021 Christian Grothoff <christian@grothoff.org> + 2008 Sebastian Gerhardt <sebgerhardt@gmx.net> +License: GFDL-1.3+ + +Files: debian/* +Copyright: 2007-2024 Daniel Baumann <daniel.baumann@progress-linux.org> + 2012-2020 Bertrand Marc <bmarc@debian.org> + 2024-2026 Florian Ernst <florian@debian.org> +License: LGPL-2.1+ + +License: LGPL-2.1+ + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + . + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + The complete text of the GNU Library General Public License + can be found in /usr/share/common-licenses/LGPL-2.1 file. + +License: GPL-2+ + This library is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 2, or (at your + option) any later version. + . + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + . + The complete text of the GNU General Public License + can be found in /usr/share/common-licenses/GPL-2 file. + +License: GPL-3+ + This library is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + . + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + . + The complete text of the GNU General Public License + can be found in /usr/share/common-licenses/GPL-3 file. + +License: BSD-2-Clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice unmodified, this list of conditions and the following + disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: FSFAP + Copying and distribution of this file, with or without modification, are + permitted in any medium without royalty provided the copyright notice + and this notice are preserved. This file is offered as-is, without any + warranty. + +License: GFDL-1.3+ + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + . + The complete text of the GNU Free Documentation License + can be found in /usr/share/common-licenses/GFDL-1.3 file. diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/libmicrohttpd-dev.install b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/libmicrohttpd-dev.install @@ -0,0 +1,6 @@ +usr/include +usr/lib/*/*.a +usr/lib/*/*.so +usr/lib/*/pkgconfig +usr/share/info +usr/share/man diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/libmicrohttpd12t64.install b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/libmicrohttpd12t64.install @@ -0,0 +1 @@ +usr/lib/*/*.so.* diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/libmicrohttpd12t64.symbols b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/libmicrohttpd12t64.symbols @@ -0,0 +1,84 @@ +libmicrohttpd.so.12 libmicrohttpd12t64 #MINVER# +* Build-Depends-Package: libmicrohttp-dev + MHD_add_connection@Base 0.9.50 + MHD_add_response_footer@Base 0.9.50 + MHD_add_response_header@Base 0.9.50 + MHD_basic_auth_get_username_password3@Base 1.0.0 + MHD_basic_auth_get_username_password@Base 0.9.50 + MHD_create_post_processor@Base 0.9.50 + MHD_create_response_empty@Base 1.0.0 + MHD_create_response_for_upgrade@Base 0.9.52 + MHD_create_response_from_buffer@Base 0.9.50 + MHD_create_response_from_buffer_copy@Base 1.0.0 + MHD_create_response_from_buffer_static@Base 1.0.0 + MHD_create_response_from_buffer_with_free_callback@Base 0.9.61 + MHD_create_response_from_buffer_with_free_callback_cls@Base 0.9.75 + MHD_create_response_from_callback@Base 0.9.50 + MHD_create_response_from_data@Base 0.9.50 + MHD_create_response_from_fd64@Base 0.9.50 + MHD_create_response_from_fd@Base 0.9.50 + MHD_create_response_from_fd_at_offset64@Base 0.9.50 + MHD_create_response_from_fd_at_offset@Base 0.9.50 + MHD_create_response_from_iovec@Base 0.9.75 + MHD_create_response_from_pipe@Base 0.9.72 + MHD_del_response_header@Base 0.9.50 + MHD_destroy_post_processor@Base 0.9.50 + MHD_destroy_response@Base 0.9.50 + MHD_digest_auth_calc_userdigest@Base 1.0.0 + MHD_digest_auth_calc_userhash@Base 1.0.0 + MHD_digest_auth_calc_userhash_hex@Base 1.0.0 + MHD_digest_auth_check2@Base 0.9.62 + MHD_digest_auth_check3@Base 1.0.0 + MHD_digest_auth_check@Base 0.9.50 + MHD_digest_auth_check_digest2@Base 0.9.62 + MHD_digest_auth_check_digest3@Base 1.0.0 + MHD_digest_auth_check_digest@Base 0.9.60 + MHD_digest_auth_get_request_info3@Base 1.0.0 + MHD_digest_auth_get_username3@Base 1.0.0 + MHD_digest_auth_get_username@Base 0.9.50 + MHD_digest_get_hash_size@Base 1.0.0 + MHD_free@Base 0.9.56 + MHD_get_connection_URI_path_n@Base 1.0.3 + MHD_get_connection_info@Base 0.9.50 + MHD_get_connection_values@Base 0.9.50 + MHD_get_connection_values_n@Base 0.9.64 + MHD_get_daemon_info@Base 0.9.50 + MHD_get_fdset2@Base 0.9.50 + MHD_get_fdset@Base 0.9.50 + MHD_get_reason_phrase_for@Base 0.9.50 + MHD_get_reason_phrase_len_for@Base 0.9.75 + MHD_get_response_header@Base 0.9.50 + MHD_get_response_headers@Base 0.9.50 + MHD_get_timeout64@Base 1.0.0 + MHD_get_timeout64s@Base 1.0.0 + MHD_get_timeout@Base 0.9.50 + MHD_get_timeout_i@Base 1.0.0 + MHD_get_version@Base 0.9.50 + MHD_get_version_bin@Base 0.9.77 + MHD_http_unescape@Base 0.9.50 + MHD_is_feature_supported@Base 0.9.50 + MHD_lookup_connection_value@Base 0.9.50 + MHD_lookup_connection_value_n@Base 0.9.64 + MHD_post_process@Base 0.9.50 + MHD_queue_auth_fail_response2@Base 0.9.62 + MHD_queue_auth_fail_response@Base 0.9.50 + MHD_queue_auth_required_response3@Base 1.0.0 + MHD_queue_basic_auth_fail_response@Base 0.9.50 + MHD_queue_basic_auth_required_response3@Base 1.0.0 + MHD_queue_response@Base 0.9.50 + MHD_quiesce_daemon@Base 0.9.50 + MHD_resume_connection@Base 0.9.50 + MHD_run@Base 0.9.50 + MHD_run_from_select2@Base 1.0.0 + MHD_run_from_select@Base 0.9.50 + MHD_run_wait@Base 0.9.75 + MHD_set_connection_option@Base 0.9.50 + MHD_set_connection_value@Base 0.9.50 + MHD_set_connection_value_n@Base 0.9.71 + MHD_set_panic_func@Base 0.9.50 + MHD_set_response_options@Base 0.9.50 + MHD_start_daemon@Base 0.9.50 + MHD_start_daemon_va@Base 0.9.50 + MHD_stop_daemon@Base 0.9.50 + MHD_suspend_connection@Base 0.9.50 + MHD_upgrade_action@Base 0.9.52 diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/not-installed b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/not-installed @@ -0,0 +1 @@ +usr/lib/*/*.la diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/patches/disable_tls_tests.patch b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/patches/disable_tls_tests.patch @@ -0,0 +1,24 @@ +From: Florian Ernst <florian@debian.org> +Date: Tue, 28 Jul 2026 14:50:01 +0200 +Subject: Disable tests that fail on Debian infrastructure but succeed locally + +Origin: vendor +Last-Update: 2026-04-15 +Forwarded: not-needed +--- + src/microhttpd/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/microhttpd/Makefile.am b/src/microhttpd/Makefile.am +index 318d0c0..4e1c127 100644 +--- a/src/microhttpd/Makefile.am ++++ b/src/microhttpd/Makefile.am +@@ -271,7 +271,7 @@ if USE_THREADS + check_PROGRAMS += test_upgrade test_upgrade_large test_upgrade_vlarge + if ENABLE_HTTPS + if USE_UPGRADE_TLS_TESTS +-check_PROGRAMS += test_upgrade_tls test_upgrade_large_tls test_upgrade_vlarge_tls ++check_PROGRAMS += test_upgrade_tls + endif + endif + endif diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/patches/series b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/patches/series @@ -0,0 +1 @@ +disable_tls_tests.patch diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/rules b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/rules @@ -0,0 +1,7 @@ +#!/usr/bin/make -f + +# Enabling all hardening flags as MHD handles untrusted data +export DEB_BUILD_MAINT_OPTIONS = hardening=+all + +%: + dh ${@} diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/salsa-ci.yml b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/salsa-ci.yml @@ -0,0 +1,4 @@ +--- +include: + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/source/format b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/tests/build b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/tests/build @@ -0,0 +1,31 @@ +#!/bin/sh +# autopkgtest check: Builds a small application against libmicrohttpd, checking +# if it compiles, links and runs successfully. +# Author: Martin Pitt <mpitt@debian.org> + +set -e + +if [ -n "${DEB_HOST_GNU_TYPE:-}" ]; then + CROSS_COMPILE=${DEB_HOST_GNU_TYPE}- +else + CROSS_COMPILE= +fi + +WORKDIR=$(mktemp -d) +trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM +cd $WORKDIR +cat <<EOF > build_test.c +#include <microhttpd.h> +int main(int argc, char** argv) { + struct MHD_Daemon *d; + d = MHD_start_daemon (MHD_USE_DEBUG, 1234, NULL, NULL, NULL, "<html />", MHD_OPTION_END); + if (d != NULL) + MHD_stop_daemon (d); + return 0; +} +EOF +${CROSS_COMPILE}gcc `${CROSS_COMPILE}pkg-config --cflags libmicrohttpd` -o build_test build_test.c `${CROSS_COMPILE}pkg-config --libs libmicrohttpd` +echo "build: OK" +[ -x build_test ] +./build_test +echo "run: OK" diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/tests/control b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/tests/control @@ -0,0 +1,10 @@ +Tests: build +Depends: + build-essential, + libmicrohttpd-dev, + pkgconf, + +Tests: upstream-tests +Depends: + @builddeps@, +Restrictions: allow-stderr diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/tests/upstream-tests b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/tests/upstream-tests @@ -0,0 +1,20 @@ +#!/bin/sh +set -e + +if [ -n "${DEB_HOST_GNU_TYPE:-}" ]; then + CROSS_COMPILE=${DEB_HOST_GNU_TYPE}- +else + CROSS_COMPILE= +fi + +WORKDIR="$(mktemp -d)" +trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM +cp -a . "$WORKDIR" +cd "$WORKDIR" + +dh_update_autotools_config +dh_autoreconf +dh_auto_configure +echo "configure: OK" +dh_auto_test +echo "test: OK" diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/upstream/metadata b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/upstream/metadata @@ -0,0 +1,4 @@ +Bug-Submit: https://bugs.gnunet.org/set_project.php?project_id=10 +Documentation: https://www.gnu.org/software/libmicrohttpd/manual/libmicrohttpd.html +Repository: git.gnunet.org/libmicrohttpd.git +Repository-Browse: https://git.gnunet.org/libmicrohttpd.git diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/upstream/signing-key.asc b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/upstream/signing-key.asc @@ -0,0 +1,180 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1 + +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 +=rMsi +-----END PGP PUBLIC KEY BLOCK----- +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +wPrLVO8bzT8BmZMfBq4X7cprAe5YaDMVDprK +=bqww +-----END PGP PUBLIC KEY BLOCK----- +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +=jBzm +-----END PGP PUBLIC KEY BLOCK----- diff --git a/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/watch b/packaging/ng/buildscripts/debian-overlays/libmicrohttpd/debian/watch @@ -0,0 +1,3 @@ +version=4 +opts="pgpmode=auto, uversionmangle=s/-w32-bin//" \ +https://ftp.gnu.org/gnu/libmicrohttpd/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@ diff --git a/packaging/ng/buildscripts/package_config.py b/packaging/ng/buildscripts/package_config.py @@ -15,7 +15,7 @@ class ConfigError(ValueError): pass -SUPPORTED_BUILDERS = {"generic", "pnpm-workspace"} +SUPPORTED_BUILDERS = {"debian-overlay", "generic", "pnpm-workspace"} @dataclass(frozen=True) @@ -33,6 +33,7 @@ class PackageConfig: debian_path: str = "" dependencies: tuple[str, ...] = () enabled: bool = True + auto_upgrade: bool = True builder: str | None = None @@ -109,6 +110,7 @@ def parse_config(data) -> PackagingConfig: "debian_path", "dependencies", "enabled", + "auto_upgrade", "builder", }, description, @@ -126,6 +128,9 @@ def parse_config(data) -> PackagingConfig: enabled = package.get("enabled", True) if not isinstance(enabled, bool): raise ConfigError(f"{description}.enabled must be a boolean") + auto_upgrade = package.get("auto_upgrade", True) + if not isinstance(auto_upgrade, bool): + raise ConfigError(f"{description}.auto_upgrade must be a boolean") builder = package.get("builder") if builder is not None and (not isinstance(builder, str) or not builder): raise ConfigError(f"{description}.builder must be a non-empty string") @@ -138,6 +143,7 @@ def parse_config(data) -> PackagingConfig: debian_path=_optional_string(package, "debian_path", "", description), dependencies=tuple(dependencies), enabled=enabled, + auto_upgrade=auto_upgrade, builder=builder, ) @@ -219,6 +225,8 @@ def serialize_config(config: PackagingConfig) -> str: ) if package.builder is not None: lines.append(f"builder = {_toml_string(package.builder)}") + if not package.auto_upgrade: + lines.append("auto_upgrade = false") lines.append("") return "\n".join(lines) diff --git a/packaging/ng/distros/debian-trixie.Dockerfile b/packaging/ng/distros/debian-trixie.Dockerfile @@ -16,7 +16,7 @@ RUN \ apt-get -y install \ rustup \ build-essential zip jq python3 python3-pip nodejs npm \ - autoconf automake libtool libltdl-dev libmicrohttpd-dev \ + autoconf automake libtool libltdl-dev \ libpq-dev libsqlite3-dev libunistring-dev libqrencode-dev libgcrypt-dev \ libsodium-dev libargon2-dev libjansson-dev libgmp-dev texinfo pkgconf \ zlib1g-dev libopus-dev libextractor-dev libnss3-dev libcurl4-gnutls-dev autopoint \ diff --git a/packaging/ng/distros/ubuntu-noble.Dockerfile b/packaging/ng/distros/ubuntu-noble.Dockerfile @@ -19,7 +19,7 @@ RUN \ apt-get -y install \ rustup \ build-essential zip jq python3 python3-pip nodejs npm \ - autoconf automake libtool libltdl-dev libmicrohttpd-dev \ + autoconf automake libtool libltdl-dev \ libpq-dev libsqlite3-dev libunistring-dev libqrencode-dev libgcrypt-dev \ libsodium-dev libargon2-dev libjansson-dev libgmp-dev texinfo pkgconf \ zlib1g-dev libopus-dev libextractor-dev libnss3-dev libcurl4-gnutls-dev \ diff --git a/packaging/ng/packages.toml b/packaging/ng/packages.toml @@ -29,6 +29,10 @@ builder = "generic" url = "git://git.taler.net/libeufin.git" builder = "generic" +[repositories."libmicrohttpd"] +url = "git://git.taler.net/libmicrohttpd" +builder = "debian-overlay" + [repositories."paivana"] url = "git://git.taler.net/paivana.git" builder = "generic" @@ -123,7 +127,7 @@ enabled = true repository = "gnunet" tag = "v0.28.1-dev.6" debian_path = "" -dependencies = [] +dependencies = ["libmicrohttpd"] enabled = true [packages."libeufin"] @@ -140,6 +144,14 @@ debian_path = "packages/libeufin-bank-webui" dependencies = [] enabled = true +[packages."libmicrohttpd"] +repository = "libmicrohttpd" +tag = "v1.0.10" +debian_path = "" +dependencies = [] +enabled = true +auto_upgrade = false + [packages."paivana-httpd"] repository = "paivana" tag = "v1.6.7" diff --git a/packaging/ng/taler-pkg b/packaging/ng/taler-pkg @@ -179,8 +179,8 @@ def component_group_key(component): package = config.packages[component] repository = config.repository_for(package) builder = config.builder_for(package) - if builder == "generic": - # Generic builds are deliberately isolated even when repositories match. + if builder != "pnpm-workspace": + # Single-package builders are deliberately isolated even when repositories match. return repository.url, package.tag, builder, component return repository.url, package.tag, builder, "" @@ -830,6 +830,7 @@ def print_latest(cfg): def upgrade(cfg): """Upgrade package tags to the latest tag from their repositories.""" names = cfg.components + explicitly_selected = bool(names) if not names: names = sorted(config.packages) unknown = sorted(set(names) - set(config.packages)) @@ -841,6 +842,9 @@ def upgrade(cfg): updated_packages = dict(config.packages) for name in names: package = config.packages[name] + if not package.auto_upgrade and not explicitly_selected: + print(f" {name} {package.tag} (automatic upgrades disabled)") + continue giturl = config.repository_for(package).url if giturl not in remote_tags: remote_tags[giturl] = list_remote_tags(giturl) diff --git a/packaging/ng/testing/test_build_grouping.py b/packaging/ng/testing/test_build_grouping.py @@ -20,8 +20,15 @@ SPEC = importlib.util.spec_from_loader(LOADER.name, LOADER) TALER_PKG = importlib.util.module_from_spec(SPEC) LOADER.exec_module(TALER_PKG) +from package_config import parse_config # noqa: E402 + class BuildGroupingTests(unittest.TestCase): + def test_libmicrohttpd_is_built_before_gnunet(self): + buildorder = TALER_PKG.buildsort(TALER_PKG.components) + + self.assertLess(buildorder.index("libmicrohttpd"), buildorder.index("gnunet")) + def test_typescript_packages_share_one_group(self): buildorder = TALER_PKG.buildsort(TALER_PKG.components) typescript_packages = { @@ -62,6 +69,32 @@ class BuildGroupingTests(unittest.TestCase): self.assertEqual([["anastasis"], ["anastasis-gtk"]], groups) + def test_non_workspace_packages_remain_isolated(self): + original = TALER_PKG.config + TALER_PKG.config = parse_config( + { + "repositories": { + "overlay": { + "url": "git://example.test/overlay.git", + "builder": "debian-overlay", + } + }, + "packages": { + "overlay-one": {"repository": "overlay", "tag": "v1.0.0"}, + "overlay-two": {"repository": "overlay", "tag": "v1.0.0"}, + }, + } + ) + try: + selected = {"overlay-one", "overlay-two"} + groups = TALER_PKG.group_components( + selected, TALER_PKG.buildsort(sorted(selected)) + ) + finally: + TALER_PKG.config = original + + self.assertEqual([["overlay-one"], ["overlay-two"]], groups) + def test_upgrade_queries_a_shared_repository_once(self): arguments = SimpleNamespace( components=["taler-wallet-cli", "taler-harness"], @@ -80,6 +113,62 @@ class BuildGroupingTests(unittest.TestCase): list_remote_tags.assert_called_once() + def test_default_upgrade_skips_pinned_packages(self): + original = TALER_PKG.config + TALER_PKG.config = parse_config( + { + "repositories": {"repo": {"url": "git://example.test/repo.git"}}, + "packages": { + "pinned": { + "repository": "repo", + "tag": "v1.0.0", + "auto_upgrade": False, + } + }, + } + ) + arguments = SimpleNamespace(components=[], dev=False, dry=True) + try: + with ( + patch.object(TALER_PKG, "list_remote_tags") as list_remote_tags, + patch("sys.stdout", new_callable=StringIO) as stdout, + ): + TALER_PKG.upgrade(arguments) + finally: + TALER_PKG.config = original + + list_remote_tags.assert_not_called() + self.assertIn("automatic upgrades disabled", stdout.getvalue()) + + def test_explicit_upgrade_includes_pinned_packages(self): + original = TALER_PKG.config + TALER_PKG.config = parse_config( + { + "repositories": {"repo": {"url": "git://example.test/repo.git"}}, + "packages": { + "pinned": { + "repository": "repo", + "tag": "v1.0.0", + "auto_upgrade": False, + } + }, + } + ) + arguments = SimpleNamespace(components=["pinned"], dev=False, dry=True) + try: + with ( + patch.object( + TALER_PKG, "list_remote_tags", return_value=["v1.0.1"] + ) as list_remote_tags, + patch("sys.stdout", new_callable=StringIO) as stdout, + ): + TALER_PKG.upgrade(arguments) + finally: + TALER_PKG.config = original + + list_remote_tags.assert_called_once() + self.assertIn("pinned v1.0.0 -> v1.0.1", stdout.getvalue()) + if __name__ == "__main__": unittest.main() diff --git a/packaging/ng/testing/test_buildlib.py b/packaging/ng/testing/test_buildlib.py @@ -56,6 +56,35 @@ class BuildLibraryTests(unittest.TestCase): with self.assertRaisesRegex(ConfigError, "same repository, tag, and builder"): buildlib._validate_group(config, ["one", "two"], "pnpm-workspace") + def test_debian_overlay_is_copied_without_replacing_packaging(self): + config = parse_config( + { + "repositories": { + "repo": { + "url": "git://example.test/repo.git", + "builder": "debian-overlay", + } + }, + "packages": {"one": {"repository": "repo", "tag": "v1.0.0"}}, + } + ) + package = config.packages["one"] + + with tempfile.TemporaryDirectory() as temporary_directory: + root = Path(temporary_directory) + overlay_root = root / "overlays" + overlay = overlay_root / "one" / "debian" + overlay.mkdir(parents=True) + (overlay / "control").write_text("Source: one\n") + source = root / "source" + source.mkdir() + + with patch.object(buildlib, "OVERLAYDIR", overlay_root): + buildlib._apply_debian_overlay(package, source) + self.assertEqual("Source: one\n", (source / "debian/control").read_text()) + with self.assertRaisesRegex(ConfigError, "refusing to replace"): + buildlib._apply_debian_overlay(package, source) + def test_failed_validation_does_not_publish_artifacts_or_markers(self): config = parse_config( { diff --git a/packaging/ng/testing/test_package_config.py b/packaging/ng/testing/test_package_config.py @@ -53,8 +53,41 @@ class PackageConfigTests(unittest.TestCase): self.assertEqual("", library.debian_path) self.assertEqual((), library.dependencies) self.assertTrue(library.enabled) + self.assertTrue(library.auto_upgrade) self.assertEqual("pnpm-workspace", config.builder_for(library)) + def test_auto_upgrade_can_be_disabled(self): + data = { + **VALID_CONFIG, + "packages": { + **VALID_CONFIG["packages"], + "library": { + **VALID_CONFIG["packages"]["library"], + "auto_upgrade": False, + }, + }, + } + + config = parse_config(data) + + self.assertFalse(config.packages["library"].auto_upgrade) + self.assertIn("auto_upgrade = false", serialize_config(config)) + + def test_rejects_non_boolean_auto_upgrade(self): + data = { + **VALID_CONFIG, + "packages": { + **VALID_CONFIG["packages"], + "library": { + **VALID_CONFIG["packages"]["library"], + "auto_upgrade": "no", + }, + }, + } + + with self.assertRaisesRegex(ConfigError, "auto_upgrade must be a boolean"): + parse_config(data) + def test_package_builder_override(self): data = { **VALID_CONFIG,