Major changes since 1.13:
- HTTP keep-alive in libfetch (imported from xbps)
- allow to backup shared libraries during upgrades
(a compat-libraries packages is created to keep track of it)
- better reproducible build support
- More variable exposed to configuration
exp-run by: antoine
Changelog v0.3.1 - Corona Extra
* Update StatusAPI calls to follow GitHub deprecation recommendation
* Update Bulma CSS to 0.8.1
* Switch CI from Tavis to GitHub Actions
* Updated yaml dependency to 2.2.8
* Update TLS config to Mozilla Intermediate configuration
Changes: https://github.com/freebsd/poudriere/wiki/release_notes_334
* Fix pkg 1.11 issue with devfs mount.
* testport / bulk -t: Set DEVELOPER in patch phase.
* Fix html with port named "latest".
* bulk: Fixed non-existent dependencies claiming to be MOVED
* Fix first-time setup issues with BASEFS.
* Minor perf improvements for builtins.
* Fix html with port named "latest".
* testport / bulk -t: Set DEVELOPER in patch phase.
* image: Make iso images bootable in UEFI
Changes since 1.13.99.5:
- When backing up libraries, create a package 'compat-libraries'
a4b64e6fin which the new libraries will be appended to and the version
bumped each time a new library is backed up.
- Fix a regression with sometimes makes some keywords being ignored
aka scripts not appended to the list of scripts)
- Fix ABI on DragonFly
- Fix fd being closed twice wen running shell scripts
WITH_DEBUG is a user facing variable. When a user wants to build a port
with debugging symbols enabled, they either set WITH_DEBUG globally, or
WITH_DEBUG_PORTS+=category/port.
Approved by: bapt
With hat: portmgr
Differential Revision: https://reviews.freebsd.org/D23940
- Fix regression in ABI detection (add regression tests about it)
- Fix regression concerning the timestamp of the packaged/installed file
(add regression tests about it)
* No longer warn for manpages installed under share/man [1]
* Remove code to combine comments and blank lines in a section [2]
* Remove code to combine comments and blank lines [3]
* USE_PYQT sets the necessary QT USES [4]
* Only warn on lack of INSTALLS_ICONS when USES=gnome is set [5]
* Check for files that have been patched multiple times [6]
PR: 240359 [2]
244480 [3]
240445 [4]
244039 [5]
243600 [6]
Submitted by: 0mp [1] [5]
vladimir.chukharev@gmail.com [4]
swills [6]
Differential Revision: D23896 [1]
Changes from 1.13.99.1 to 1.13.99.2
- Fix pkg fetch -o
- Implement a mechanism to autobackup libraries during upgrades (off by default)
- zsh-completion: disable repo update durign package retrival
- Improve documentation
- More variable are now expanded when reading the confirations files:
* OSNAME: FreeBSD
* RELEASE: 12.1
* ARCH: amd64
* VERSION_MAJOR (FreeBSD only)
* VERSION_MINOR (FreeBSD only)
- Remove the unused and inconsistent pkg create -n
- Add -t timestamp to pkg create to be able to specify the expected file timestamp
via command line.
- Refactor the pkg_create API and mark as deprecated the old functions
Changes from 1.13.99.0 to 1.13.99.1
- Do not create a .pkgnew file in case installing a configure file over
a non existing file
- Update linenoise to latest version
- Update picosat to latest version
- Implement HTTP keep-alive (imported from xbps)
- fix a regression concerning valid url: ssh://user@host:/ was not valid
anymore
Revert part of the patch that introduced the --try-broken option, it
caused problems in combination with -m.
Submitted by: Rudolf Cejka (cejkar at fit.vutbr.cz)
Approved by: antoine (implicit)
- when installing over a non tracked file (not owned by any package)
pkg now saves a copy of that file as .pkgsave
- Fix a chicken/egg problem with the meta being compressed and defining
the compression format. Now pkg repo will create a meta.conf file
uncompressed (it is small enough) and fallback on the old meta.txz.
Note that meta.txz is still created for backward compatibility.
- pkg repo now creates meta files in version 2 by default meaning the
digests.txz (this was only used with pkg up to 1.2).
Anyone using that version and willing to upgrade can do it via:
pkg bootstrap -f
- suppress version checking when -j is specified
- Alphabetically sort packages printed in the output of pkg commands to
ease readability
- pkg lock/unlock now allows multiple packages in arguments
- shell script can now print messages along with pkg-messages by writing
to ${PKG_MSGFD} file descriptor
- improve error reporting when parsing vuxml files
- lua script are now ready for prime time:
- sanboxed with capsicum on plateforms that support it
- rootdir native
- documented
- Fix pkg backup
- pkg now gives a hint about running pkg update -f in case of "size mismatch"
- scripts (lua and shell) can now determine if they are in the process of an
upgrade or an installation via a variable
- shell scripts are now fully documented
- keyword files are now documented
PR: 243564
exp-run by: antoine
- Document lua scripts
- Document shell scripts
- Document keywords ucl files
- Add a variable to both lua scripts and shell script to allow
the scripts to know they are actually being upgrading things
to non-world-writable directory.
Save this file in the user's home directory instead of in /tmp to prevent
a possible sym-link attack against the user.
PR: 233378
Submitted by: Robert Schulze
Approved by: antoine (implicit)
This option makes portmaster try to build ports that are marked as
BROKEN or IGNORE.
Passing this option implies the "-m -DTRYBROKEN" option.
The change is inspired by (but not based on) the patch suggested by
Walter Schwarzenfeld.
PR: 235793
Reported by: Yasuhiro KIMURA
Approved by: antoine (implicit)
- Add more regression test
- Improve consistency of the default ouput
- Give a hint about running pkg update -f in case of "size mismatch"
- Fix pkg backup since the sqlite syscall are overridden
The previous patch has not completely fixed the issue, according to some
reports (it did on my system and for my set of installed ports).
This version contains a further change suggested by Walter Schwarzenfeld.
Submitted by: Walter Schwarzenfeld
Approved by: antoine (implicit)
- lua scripts are now running in a capsicum sandbox
- lua scripts io.open function is now always opening relative to ROOTDIR
- expat vulnxml parser has been replaced by a yxml based one
- libucl has been update to the latest git version
- error reporting has been improved when parsing vuxml file
- shell script can now push message at the pkg-message level by writing
to the ${PKG_MSGFD} file descriptor:
echo "message for the user" >&${PKG_MSGFD}
There are build dependencies, that were compiled again and again even
though the latest version was already installed.
This fix is based on a patch suggested by Tatsuki Makino, with a small
change to better comply with the existing style used in this program.
An extended patch has been provided by Walter Schwarzenfeld, but in my
tests it did not make a difference. If further testing shows a need for
the additional commands suggested by Walter, I'll add them (or a variation)
in a follow-up commit.
PR: 241227, 242086, 243432
Submitted by: Tatsuki Makino
Approved by: antoine (implicit)
- When installing a file over a file that is not tracked by any
package, save the previous one as .pkgsave
- Fix a chicken/egg problem with the meta being compressed and defining
the compression format. Now pkg repo will create a meta.conf file
uncompressed (it is small enough) and fallback on the old meta.txz.
Note that meta.txz is still created for backward compatibility
- pkg repo now creates meta files in version 2 by default meaning the digests.txz
is not created anymore, it was only used up to pkg 1.2. anyone upgrading
from pkg 1.2 should first run pkg bootstrap -f to be on a recent version.
- pkg -r now first lookup under the rootdir for its ABI_FILE.
- suppress version checking when -j is specified
- Alphabetically sort packages printed in the output of pkg commands to ease readability
- pkg lock/unlock now allows multiple packages in arguments
Only add -L${NCURSESLIB} when ${NCURSESLIB} isn't /usr/lib to prevent linking with base libstdc++ on GCC architectures.
PR: 240707
Approved by: culot (maintainer)
portgrep is a fast parallel ports tree search utility, supporting both
predefined queries (by MAINTAINER, USES, etc.) and custom regex searches.
WWW: https://github.com/dmgk/portgrep
Changes: https://github.com/freebsd/poudriere/wiki/release_notes_333
- qemu: Add /usr/bin/wc and /usr/bin/head to HLINK_FILES.
- Show flavor in more messages.
- ports -l: Fix error when no ports trees exist yet.
- distclean: Remove empty directories when done.
- Allow overriding default nullfs paths with NULLFS_PATHS.
- Fix WRKDIR saving with FLAVOR'd origins
- Expand securelevel check to handle MUTABLE_BASE=schg and TMPFS_WRKDIR/TMPFS_LOCALBASE.
- testport -c: Fix make.conf not being respected for `make config`.
- image: warn if MFSROOT may be too large
- jail: Pass MAKEWORLDARGS during installworld too
- jail -c: Fix NO_LIB32 support
- jail -d: Don't confirm if the jail doesn't exist
- jail -i: Don't show ports tree info if not requested
* Pass MAKEWORLDARGS during installworld too
* bulk/testport: Initial support for ports OVERLAYS
* testport: Show log info on failure exit
* jail -d: Don't confirm if the jail doesn't exist
* jail -c: Fix NO_LIB32 support
* jail -i: Don't show ports tree info if not requested
* bulk: Compute queued stats after trimming ignored AND trimming queue.
* Various fixes and expansion of sh mapfile support
* Always export `LC_COLLATE=C`
- take maintainer, because status of old maintainer undefined
PR: 241899
Submitted by: Walter Schwarzenfeld <w.schwarzenfeld@utanet.at>
Reported by: p5B2E9A8F@t-online.de
Changelog v0.3.0 - Return of Slimer:
* Detect affected ports from list of changed/added files and not from CI message
* Use Status API URL from webhook to simplify configuration
* Support Ping Webhooks
* Removed Gitea support
* Updated bulma CSS to 0.8.0
* Updated yaml dependency to 2.2.4
* Git pushes with multiple commits were fixed
* Fix ssh warning about stdin and silence ssh call for ssh recipe
* Improve documentation for remote builder setup
* Documentation fixes
Since recently, libarchive is linked to libzstd, which itself uses threads
somehow, this make the build of pkg in mips unhappy.
Given libpkg is not threadsafe anyway just drop the __thread
PR: 240822
Reported by: tech-lists@zyxst.net and mandree
Discussed with: jhb
- updating: allow to use regular expession in AFFECTS: value
- updating: improve the exact matching for AFFECTS: values
- recommand using pkg bootstrap -f instead of pkg-static install -f to reinstall
pkg itself
- Add support for lua in package scripts (not documented yet)
- Add support for lua in keywords definition (not documented yet)
- Properly detect when base libarchive is linked to zstd and handle it. (needed
an upcoming change in base)
- Add a function tu lua script to append message at the run of the pkg process
along with other messages
- Add the missing warning about @unexec being deprecated for a while now in
pkg-plist
- Fix build with gmake
- Ensure pkg_shutdown properly reinitialize all the closed fd to -1.
- Do not crash when being passed an unsupported ABI
lang/gcc5 will expire in ~1 month. If someone still uses lang/gcc48
they should backport C++11 fix instead. QA on GCC architecuters is
currently limited to powerpc64 which uses GCC_DEFAULT.
PR: 193528
* Relax wording around restrictive licensing [1]
* Remove the check for extra items in the USE/USES section [2]
One is allowed to put any _related_ variables here, and this will always change.
It's easier not to check than to provide wrong recommendations.
* Fix the check for unspecified license files [3]
PR: 240233 [1]
239045 [2]
231303 [3]
- Fix cross installation with new build system
- Add a function to lua_script allowing to send a message which will be
printed along with the other messages at the end of the message process.
- Fix detection of libarchive with zstd support
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
- Add DISALLOW_NETWORKING, fixes#689
- qemu: Add /usr/bin/wc and /usr/bin/head to HLINK_FILES.
- image: Add zsnapshot imagetype.
- Fix pkg 1.11 issue with devfs mount.
- bulk -a: Don't print ports in summary unless -v is used.
- Show FLAVOR in more places.
- ports -l: Fix error when no ports trees exist yet.
- testport -c: Fix make.conf not being respected for `make config`.
- image: Add sleep, ls, and ping to miniroot.
Add more portedit commands:
- bump-epoch: bumps PORTEPOCH or inserts it at the right place
- get: lookup unevaluated variable values
- merge: Generic command to set/update variables while also
formatting the updated variables properly and inserting them
in the right places if necessary. Useful for merging output
of tools like make cargo-crates, make stage-qa, or
modules2tuple.
- set-version: resets PORTREVISION, sets DISTVERSION or PORTVERSION
- Add support for lua scripting:
for now it allows to use scripts in lua instead of shell scripts
everywhere possible, including keywords.
- Fix detection of libarchive built with zstd support
- add support for packages compress in zstandard format
- improve messages output adding marks to separate messages from each packages
and messages within a given packages
- messages can now contain variables: ${PREFIX} ${PKGNAME} for now
- Update to 0.2.0
- Use go:modules instead of manual GOFLAGS=-mod=vendor
Changes in 0.2.0:
=================
Features:
* New Web UI with Bulma
* Implement EMail notifications
* Allow Environment variables to be written in Go template syntax
* Add PathMatch parameter to separate repository into different environments
* Implement better overlay Portstree
* Add SSH recipe for remote building
* Support GNU make
Bugs:
* Use the correct poudriere portstree when building
* Fix clean targets in portlint and poudriere recipe
* Render Job Template as soon as the job starts
* Fix issue when StatusAPI is not used/configured
Improvements:
* better ABI name on linux
* lots of changes in internal API to use fd when possible
* 410.pkg-audit now uses anticongestion on freebsd 12+
* completion improvements
* add an extra line when printing pkg-messages to improve readability
* add %q to pkg_printf(3) and pkg-query(8) to print altabi
* make pkg version -r imply -R
* New build system based on autosetup
* pkg is now a semi static binary
* Add 3 new aliases:
- rall-depends: showing depenencies of a non installed package
- rcomment: showing only the comment of a non installed package
- rdesc: showing only the description of a non installed package
* close stdin when running scripts
* Tons of bug fixes
Removal:
* removed option: pkg repo -L
* removed script: pkg2ng