Changes from 1.21.99.1 to 1.21.99.2
- audit: add -d to audit packages in a specified directory
- bug fix: fix upgrade with symlinks becoming directories
- debug: implement debug flags to allow to cherrypick the debug flags to print
- check: remove -B and -r options
- compression: allow to defined the number of threads to use with zstd and xz
- curl: update to 8.9.0
- http: add support for HTTP_PROXY_AUTH
- periodic: remove compat_vars
- info: fix json formatted output
- manpages: lots of fixes and improvements
- install/upgrade: now removed packaages are printed at the bottom of the list of changes
- using -r <repo> now always enable the repository specified
- periodic: provide a mechanism to ignore jails via prefix matching
- upgrade: allow the used to ignore options changes in the triggers to reinstall a package
- lock/unlock: fix batch operations
- osversion: fix confusing message
- new attempt at better handling vital during upgrades
- sqlite: update to 3.46.0
Changes:
- bulk: Major changes for incremental build with PKG_NO_VERSION_FOR_DEPS=yes
o Off-by-default for now
o Poudriere will no longer force rebuild all reverse dependencies when a
dependency is updated.
o It will now only rebuild a port if pkg-upgrade(8) would automatically
reinstall it. Cases such as changed dep libraries, options, ABI.
o dependencies will be generated into the .pkg files without a
version. You may see "-(null)" in some places that is expected.
o Remote fetching will look for both versioned and unversioned
dependencies that satisfy the current port build request.
o A recursive rebuild *will be done* if the involved packages in the
set have versioned dependencies, until all packages involved use
the new unversioned dependency.
o Setting PKG_NO_VERSION_FOR_DEPS back to no will recursively rebuild
all packages back to the previous behavior with versioned deps.
o PORTREVISION chases are critical to do in cases like language
updates (ruby,perl,python,etc) or <static> library updates.
o Shared library version updates still require their port consumers to be
rebuilt to link to the new shared library. Porters are not used to
always PORTREVISION chasing when doing this, and it is not always
practical. Because of this Poudriere will now "inspect" shared
library consuming packages *during the build* before deciding if
they need to be rebuilt. There is likely a lot of room for
optimization here to avoid Poudriere rechecking packages every
build; currently a scale of seconds per package. Some metadata
tracking in Ports would help improve this too. More work needs to
be done still to improve the reporting and display of this process
in the queue and web interface. Currently they just get marked
"ignored" after being checked.
o https://github.com/freebsd/poudriere/issues/822 (link to generate
notification for interested people)
- bulk: -S was removed. The new PKG_NO_VERSION_FOR_DEPS feature
replaces it and will become default after public testing
- Support MAX_EXECUTION_TIME_$pkgbase in poudriere.conf
- image: Use gptboot.efi in place of loader.efi to support bootme and bootonce
- image: Enable space optimisation and disable minfree on read-only firmware images
- image: Set a GPT label for EFI partition
- image: Generate the upgrade image too
Pet portclippy(1) and fix stage-qa issues.
-- Changes (from NEWS) --
Features:
* Add version test macro for PackageKitQt
Bugfixes:
* offline: Make sure we allow for interactive authorization
* Allow Transaction::setHints before the transaction has started
* Fix check for PackageKit D-Bus specs
* Add missing info enum values
This does not fix all timeout failures on server start, but
reduces the amount of failed start attempts during a poudriere run
a lot.
I consider this as a workaround, not a real fix.
PR: 279496
Approved by: maintainer
It displays messages related to conversion from ancient pkg_* tools to
pkg. But support of the former ended with FreeBSD 9 and ports
framework doesn't support them either.
Reviewed by: bapt
Differential Revision: https://reviews.freebsd.org/D44902
Major Changes:
- jail: Fix pkgbase jail creation
Syntax is now: -m pkgbase=latest -U https://url...
- image: Fix setting hostname when crossbuilding images
- Support overlays by using PKGCATEGORY rather than CATEGORIES
- testport/bulk -i: Fix for recent motd and root shell changes
- testport/bulk -i: Support ${INTERACTIVE_SHELL} (sh or csh)
- New test framework changes / 77 new tests (36 pkgbuild tests)
- More shell builtins, a lot of framework updates, runtime asserts,
some form of stack traces on errors
- cpdup support for copy_file_range(2)
- bulk: Add MUTUALLY_EXCLUSIVE_BUILD_PACKAGES (prevent rust+gcc+llvm
building concurrently)
- bulk build queue major rework
- package fetch fixes for ABI
- jail -l: Show __FreeBSD_version
- bulk: Add FORCE_REBUILD_PACKAGES to allow rebuilding packges like
pkg more easily
- Web: Show git hash and overlays
- Major process handling changes. No longer using pids for tracking;
now using internal jobs identifiers
- Blacklist/MOVED FLAVOR handling fixes
- Subpackages - some fixes but incremental build remains broken
- jail -c -m allbsd: removed
- ports -d: -y added to not ask for confirmation
- testport: don't delete /compat/linux
- bulk/testport: -S removed - this was a hack. The functionality you
actually want is coming in the next -devel update. See #822 on
github
- Allow PREFIX/poudriere.d/ports to be a symlink
- QEMU error msg improvement
- jail: use make.conf in jail creation
Changes:
- fix database path handling for rootdir
- revert a change in vital/lock handling in the solver cause
some vital packages to never be upgraded.
Changes since latest 1.20.0
- new event PKG_EVENT_PKG_ERRNO
- add: only generates .pkgsave when really needed
- repo:
* remove the ability to create v1 repository format
* remove ability to produce meta.{pkg,txz} unused since 1.13
* replace packagesite.pkg with data.pkg (new extensible format)
* keep producing packagesite.pkg for backward compatibility
* local repository information is now located in
/var/dbv/repos/<reponame/*
- support job cancellation (packagekit support)
- update bundle code to latest versions:
* libcurl
* sqlite
* lua
* libucl
- plist keywords:
- new @override_prefix
- new @var key value (able to expand %%key%%)
- scripts:
* new variable PKG_ISCHROOTED for script to be aware if being run
bia pkg -c
- update:
* prevents concurrent pkg update to compete
- pkgbase:
* .snap now comes after .alpha in versionning
- key:
* new subcommand to be able to generate signature keys
- signatures:
* add support ECDSA and EdDSA for all its signature mechanism
- elfhints:
* pkg now supports elfhints of any byte-order on FreeBSD
- solver:
* prevent directly in the solver the ability to remove vital or
locked packages
PR: 277978
Exp-run: antoine
Changes from 1.20.99.11 to 1.20.99.12
- ECC signature: plenty of fixes
- plist now have a "@var key value" to deal with %%KEY%% variables
- upgrade sqlite to latest version
And remove it from individual ports. Use WRK_ENV in custom build
commands where necessary.
FreeBSD make(1) includes /usr/share/mk/sys.mk and that includes
/etc/make.conf if it exists. This happens when you run make in a port
directory but it also happens when the upstream build system uses make.
This commit disables make.conf inclusion in the latter case because
users can define variables like CFLAGS in make.conf that override ports
framework variables and this can cause problems that are difficult to
diagnose.
If there are any build customisations made through make.conf that stop
working because of this commit then they should be made available by the
ports tree through some mechanism, e.g. an option in a port.
Some ports were picking up variables from Poudriere make.conf and
required fixes:
- astro/wmspaceweather x11-clocks/wmcalclock: Add OPSYS to MAKE_ENV.
- games/zhlt: Add ARCH to MAKE_ENV.
- graphics/tachyon: Upstream ARCH is not ports tree ARCH.
Set ALL_TARGET=bsd so upstream ARCH is defined correctly.
Enable multi-threading support while here.
PR: 277455
Exp-run by: antoine
portupgrade fails with an error "undefined method `exists?' for File:Class"
if used with Ruby 3.2+ (seems it removed alias "exists?" for method "exist?").
Fix it. Bump PORTREVISION.