xchpst (0.8.6) stable

  * security: fix ineffective capability bounding set options.
    Thanks to Andras Korn
  * man: fix typos in option list for --caps-bs-keep|drop.
    Thanks to Andras Korn

 -- Andrew Bower <andrew@bower.uk>  Sun, 06 Sep 2026 15:33:04 +0100

xchpst (0.8.5) stable

  * set resource limits before dropping user

 -- Andrew Bower <andrew@bower.uk>  Sun, 12 Apr 2026 14:05:33 +0100

xchpst (0.8.4) stable

  * options, doc: reflect that -F, -I accepted into chpst upstream

 -- Andrew Bower <andrew@bower.uk>  Sat, 04 Apr 2026 15:40:48 +0100

xchpst (0.8.3) stable

  * private-tmp: create mounts as 01777
  * compat: restore gcc-12 support (avoid empty braces in initialiser)
  * emulation: remove fghack/pidns chpst help text

 -- Andrew Bower <andrew@bower.uk>  Mon, 30 Mar 2026 08:13:27 +0100

xchpst (0.8.2) stable

  * C23: fix -Wdiscarded-qualifiers in build with glibc 2.43

 -- Andrew Bower <andrew@bower.uk>  Sun, 22 Feb 2026 19:09:00 +0000

xchpst (0.8.1) stable; urgency=medium

  * add missing changelog

 -- Andrew Bower <andrew@bower.uk>  Fri, 13 Feb 2026 16:32:40 +0000

xchpst (0.8.0) unstable; urgency=medium

  * add --fghack and emulate daemontools fghack.
    Thanks to Carlos Eduardo for a substantial contribution in
    reviewing and improving this feature.
  * fork-join: fix reported return code from child
  * fork-join: convert SIGQUIT to SIGKILL
  * support optional option groups in config file
  * musl compat for Alpine builds (Thanks: Carlos Eduardo)
  * add --dev-null to modify behaviour of -0, -1 and -2
  * add --id-map option to control user ns mappings

 -- Andrew Bower <andrew@bower.uk>  Fri, 13 Feb 2026 16:15:52 +0000

xchpst (0.7.2) stable; urgency=medium

  * allow empty capability lists
  * fix wrap around in capabilities set for cap >= 32

 -- Andrew Bower <andrew@bower.uk>  Mon, 27 Oct 2025 06:38:58 +0000

xchpst (0.7.1) stable; urgency=medium

  * Fix anomalies in synthesised and overmounted root filesystem
    - set appropriate mount propagation flags
    - document stacked mounts under /run/user with --new-root --ro-home
    - rework new root fs and pivot sequence to allow
      + old root not to be repeated in hierarchy
      + procfs to be mounted with --user-ns --pid-ns
    - make recursive read-only remounting is effective
    - adopt network namespaces with relative path per 'ip netns' convention
    - change to original directory relative to new root
  * Apply code quality improvements from static analysis and emulation
  * Fix buffer overflow enumerating mounts under /
  * Deprecate xchpst -a, -r and -s short options not present in chpst in
    favour of new long versions.
  * Thanks to Carlos Eduardo for many contributions to this release

 -- Andrew Bower <andrew@bower.uk>  Sat, 20 Sep 2025 07:27:06 +0100

xchpst (0.7.0) unstable; urgency=medium

  * Improve emulation of tools from daemontools family suites.
    - fix regression in 0.4.0 on handling positional arguments
      (Thanks: Carlos Eduardo)
    - emulate s6-applyuidgid and setuidgid-fromenv (nosh)
    - elaborate on emulation features in man page
  * Extend '-U' option to set GIDLIST variable, following the
    example of the s6 and nosh suites. (Thanks: Carlos Eduardo)
  * Extend '-u' and '-U' options to look up user's supplementary
    groups when group not specified.
  * Do not do a reverse lookup of uid in password database.
  * Rework --new-root to clean up old root effectively, avoiding
    repeated fs hierarchy under /tmp or /run.
  * Move compat tools to install-extra make target and use symlinks.
  * Add NO_CAP make control to build with zero dependencies.
  * General fixes and improvements to man page.
  * Project moved to 'init-tools' workspace on GitLab forge.

 -- Andrew Bower <andrew@bower.uk>  Sat, 13 Sep 2025 07:45:00 +0100

xchpst (0.6.2) stable; urgency=medium

  * only drop user before unshare with user namespaces
  * avoid macros within tbl cells to fix mandoc formatting

 -- Andrew Bower <andrew@bower.uk>  Fri, 11 Apr 2025 23:20:53 +0100

xchpst (0.6.1) stable; urgency=medium

  * add missing --limit-locks option
  * remove compat script example
  * tweak man page to avoid groff linting issues
  * add table comparing other tools' resource mapping options to man page

 -- Andrew Bower <andrew@bower.uk>  Fri, 21 Mar 2025 21:12:53 +0000

xchpst (0.6.0) unstable; urgency=medium

  * add --ro-home for read-only home directories
  * add --ro-etc for read-only config areas
  * add --hardlimit to augment chpst-style softlimit options
  * abort on failure to apply filesystem-related options
  * stop swamping terminal with full usage list on xchpst option error
  * extend man page
    - add table on option failure modes
    - add table with systemd option mappings

 -- Andrew Bower <andrew@bower.uk>  Fri, 21 Mar 2025 03:38:47 +0000

xchpst (0.5.0) unstable; urgency=medium

  * add --file to process an option file
  * add --oom for OOM score adjustment
  * extend rlimit options and handling
    - implement all currently-available rlimit options
    - add hard limit setting, delimited with ':'
    - accept '=' and 'infinity' as synonyms for 'unlimited'
  * normalise CPU and I/O scheduler option names
  * update man page, removing designation of interface as being provisional

 -- Andrew Bower <andrew@bower.uk>  Thu, 13 Mar 2025 21:28:03 +0000

xchpst (0.4.1) unstable; urgency=medium

  * place roots under subdirectory with fallback alternatives for /run
  * restore dropping user before unshare

 -- Andrew Bower <andrew@bower.uk>  Fri, 14 Feb 2025 23:54:20 +0000

xchpst (0.4.0) unstable; urgency=medium

  * Add directory pre-creation options
    - add --run-dir
    - add --state-dir
    - add --cache-dir
    - add --log-dir
    - add --app option to override pre-created directory name
  * Add --umask option
  * Add --login to set login environment and run shell if no command specified
  * Fix tracking of capabilities being present
  * Return options error 100 with --exit when appropriate.
    (Creates an option check mode)
  * Create necessary mount ns with pid ns
  * Move new roots to under /run/xchpst instead of /tmp
  * When running in chpst-emulation mode, only accept chpst options

 -- Andrew Bower <andrew@bower.uk>  Wed, 12 Feb 2025 20:19:56 +0000

xchpst (0.3.0) unstable; urgency=medium

  * Add new options
    - add --cpus
    - add --io-nice
    - add --uts-ns
  * Restore pre-C23 compat for gcc-12

 -- Andrew Bower <andrew@bower.uk>  Wed, 29 Jan 2025 21:31:36 +0000

xchpst (0.2.1) unstable; urgency=medium

  * Enable -Wextra and build cleanly therewith
  * Demote xchpst.fake to subdirectory, not installed

 -- Andrew Bower <andrew@bower.uk>  Tue, 07 Jan 2025 17:30:01 +0000

xchpst (0.2.0) unstable; urgency=medium

  * Add new options
    - add --no-new-privs
    - add --scheduler
    - add --protect-home
  * Provide xchpst.fake example to enable runscripts to use xchpst
    features when present and chpst features otherwise.
  * Fix minor issues

 -- Andrew Bower <andrew@bower.uk>  Sun, 05 Jan 2025 23:28:09 +0000

xchpst (0.1.0) unstable; urgency=medium

  * First release of xchpst (eXtended CHange Process STate) tool.
  * This is a freshly-written tool, backwards-compatible with chpst.
  * Versions numbered 0.x have an unstable user interface.
  * See the man page, xchpst (8), for documentation.

 -- Andrew Bower <andrew@bower.uk>  Sun, 29 Dec 2024 23:09:17 +0000
