Changes:
* Fix ordering of build based on FETCH/PATCH/EXTRACT dependencies. [1]
* Support security vulnerabilities as a build failure reason. [2]
* portupgrde -p: Fix new dependencies not getting installed. (#58) [3]
* Don't install missing dependencies which are already satisfied (#62).
Note that this purposely causes these missing dependencies to not show
in the job (-n) and final results output which is a compromise to at least
avoid the wrong packages being installed. The logging issue is in #30.
PR: 177365 [1]
Submitted by: truckman@ [1]
PR: 192232 [2]
Submitted by: Yuri <yuri@rawbw.com> [2]
PR: 184672 [3]
Changes: https://github.com/freebsd/poudriere/wiki/release_notes_317
- Restore /usr/sbin and /sbin to PATH lost in 3.1.5
- HTML: Fix broken log link from 3.1.5
- Avoid copying /var/db/freebsd-update into build jails
- QEMU: Fix handling of elftoolchain install for older src checkouts.
=====
This is a set of three simple tools written in sh(1) for generating single
patches for use in Ports. This set is ideal for creating a new patch when
it is inconvenient or undesirable to use the "make makepatch" utility.
The first tool is "dupe" which is a quick copy utility. The second tool
is "genpatch" which creates patches in the standards diff format and
using the standard file name conventions. The last tool is "portfix"
which runs "dupe", an editor of choice, and "genpatch" serially as a
macro as a convenient and quick way to create port patches.
Please see the dupe, genpatch, and portfix man pages for details.
* Correct a typo. This should have been SITE_ARCH_REL. [1]
* Pre-populate USES with an explicit grep of the Makefile. [2]
* Correct a typo to prevent direct command usage checking in pkg-* files. [3]
* Adjust the order of first-paragraph items so that proper checking is done. [4]
* Adjust the warning about installing docs by wrapping with
.if ${PORT_OPTIONS:MDOCS}. [5]
* Add a check for ${SETENV} instead of ${ENV}. [5]
PR: 199974 [2]
199693 [3]
199428 [4]
199417 [5]
Submitted by: adamw [4]
sunpoet [1]
Changes:
* Don't install missing dependencies which are already satisfied (#62).
Note that this purposely causes these missing dependencies to not show
in the job (-n) and final results output which is a compromise to at least
avoid the wrong packages being installed. The logging issue is in #30.
- Replace ${MASTER_SITE_FOO} with FOO.
- Merge MASTER_SITE_SUBDIR into MASTER_SITES when possible. (This means 99.9%
of the time.)
- Remove occurrences of MASTER_SITE_LOCAL when no subdirectory was present and
no hint of what it should be was present.
- Fix some logic.
- And generally, make things more simple and easy to understand.
While there, add magic values to the FESTIVAL, GENTOO, GIMP, GNUPG, QT and
SAMBA macros.
Also, replace some EXTRACT_SUFX occurences with USES=tar:*.
Checked by: make fetch-urlall-list
With hat: portmgr
Sponsored by: Absolight
When appropriate:
- Try to use DISTVERSION{SUF,PRE}FIX
- Replace PORTNAME-PORTVERSION by DISTNAME
- Convert MASTER_SITES to use macros
- Other light cleanup
With hat: portmgr
Sponsored by: Absolight
Changes:
- Documentation updates
- Make pkg alias -l respect quiet
- Reinstall packages if shlib provided has changed
- Do not expose shlibs without SONAME as provided libs
- Fix pkg audit -r formatting
- Stop elf analysis sooner if not operating on an elf file
- Fix checking signatures on arm
Changes:
- Documentation updates
- Make pkg alias -l respect quiet
- Reinstall packages if shlib provided has changed
- Do not expose shlibs without SONAME as provided libs
- Update sqlite to 3.8.9
- Add linenoise to have editing capabilities with pkg shell
- Fix pkg audit -r formatting
- Stop elf analysis sooner if not operating on an elf file
- Fix checking signatures on arm
Changes:
- Fix testport -o for invalid origins.
- HTML open tag fixes
- Fix temporary file creation causing bad 'mv: fastcopy' warnings about
JSON files.
When using GH_TAGNAME the DISTNAME would have GH_PROJECT and GH_ACCOUNT in
it. When not using GH_TAGNAME it would not have this. Now both cases
will add in the GH_PROJECT and GH_ACCOUNT.
Add special care to ensure that the DISTVERSION is not added in twice. If
a port does GH_TAGNAME=v${PORTVERSION} it will be added in twice though. For
that case DISTVERSIONPREFIX=v should be set and no GH_TAGNAME should be used.
empty() is used rather than (!defined || !${}) to support fmake.
The purpose of setting DISTNAME at all in these cases is to make it more clear
that the distfile is from *GITHUB* and to avoid collisions if a project were
to be renamed or moved. Without adding in GH_PROJECT and GH_ACCOUNT then there
are real risks that collisions on filenames would happen on renamed or moved
projects, which is fairly common. A GITHUB-generated file may not match
a custom-rolled or git-archive-rolled distfile.
PR: 199069
With hat: portmgr
Testing done: All USE_GITHUB ports without GH_COMMIT were checksum/fetch/extract/WRKSRC tested.
Changes:
Fix not setting proper UNAME_m/p for powerpc64 cross build
Fix qemu builds not setting MACHINE/MARCHINE_ARCH in make.conf
QEMU: No need to set MACHINE/MACHINE_ARCH in env.
QEMU: For consistency set UNAME_m/p in jail's login.conf.
Don't let balance_pool() failure crash a builder.
Avoid double ln(1) when called in a clean_pool/stop_build failure from build_pkg
When a build crashes and does not complete, properly cleanup its builder jail.
bulk queue optimizations
Call pkg_cache_data in a separate worker. This allows build_pkg() to finish quicker.
bulk -t/testport: Fix the first package built in a jail not showing its needed shared libraries.
Disable 'set -x' in some noisy functions
Rewrite lock_acquire() to not spam 'sleep 0.1'
SIGINFO: Disable trap when erroring, exiting or in other traps
SIGINFO: Don't allow running twice, and ignore errors.
SIGINFO: Hide html_json's sleep(1) SIGINFO output
Allow TMPFS_DATA to be used for builders too.
Always protect(1) poudriere and its coprocesses from OOM killer.
Create temporary files in [MASTER]MNT/.p/tmp when possible rather than /tmp
Don't ignore SIGINT in bg processes. This should fix cpdup spam on ^C during cloning.
Fix some interleaved messages during parallel processing.
Rework stderr prefixer for parallel jobs.
Don't show 2 errors when failing to get PKGNAME.
Import and prefer /bin/sh from FreeBSD r281718. This simplifies compatibility and allows job control.
Changes since pkg 1.4.0:
- Initial provides/requires support
- Lots of new regression tests have been added
- Initial support for OS X
- Initial support for NetBSD/EdgeBSD
- Update most of the bundled third party software has been updated to their
latest version
- Improve the messages reported by pkg
- Properly support file flags
- Implement argument support for custom keywords
- Extend setting credential via plist to allow to set file flags
- Make credential syntax via plist more flexible allow to only defines the first
- pkg updating now supports case insensitive matching
- pkg create now support a verbose mode
- Add an option to change the default on question, until now the default answer
was "No" with that option set it would be "Yes"
- Lots of fixes to pkg audit -r
- Global memory usage reduction and speed up
- Improvements and cleanup on pkg alias
- pkg annotate --show --all has been fixed
- Make pkg.h C++ friendly
- Lots of improvements in the solver
- Lots of fixes on 32 bits platforms
- Add support for: pkg create -M ./plop.ucl -p ./plop.plist
- New pkg -r <rootdir> that will install in the given rootdir without chrooting
- Export PKG_ROOTDIR to scripts allow to make them as portable as possible
- Stop trying to remove all installed package with the argument of pkg delete is
a local file
- Be more explicit about why the solver it going to reinstall, remove or upgrade
(when possible)
- Plenty of bug fixes
- Plenty of new bugs
- pkg shlibs now support -q
- pkg lock gained a new --has-locked-packages option
- pkg now resumes fetch if possible
- CONSERVATIVE_UPGRADE is now on by default
- pkg alias now have a -l argument to list aliases
- A sample pkg.conf is now installed with a bunch of aliases set by default
- Fix the backup script to properly export an sql which will be importable via
pkg shell and/or sqlite out of box
Thanks to all testers and contributors,
Changes:
- Fix pkg query -e "%#0"
- Add some test for pkg query
- Add some tests for pkg repo
- pkg repo now follows symlinks and skip Latest
- Bunch of documentation updates
* Check the patches to make sure they were generated using ``make patch'' [1]
* Do not throw a bunch of Perl errors if the makefile is bad [2]
PR: 197747
198887
Changes:
- Print notice to stdout
- Prevent pkg-static from trying to load plugins
- Bring back displaying of download size
- pkg shlib now support -q (quiet)
- Accept symlinks in pkg repo and ignore directories named (Latest or hidden: starting with a .)
Changes:
- jail -cx: Fix incorrect hard linking.
- Support building powerpc from powerpc64 without qemu.
- Document that '.' is not allowed in -jzp
- jail_start: Enforce no '.' in -jzp.
Changes:
- Activate CONSERVATIVE_UPGRADE by default (by popular demand)
- Add -l to pkg alias
- Small improvements on zsh completion
- Add some new popular aliases to the sample pkg.conf
Changes:
- Add the user_version in the sql dump
- Fix pkg version when checking the ports tree without INDEX
- Make pkg lock -l respect -q
- Fix ipv6
- Add noauto alias
- Make lead alias more accurate
- New pkg lock --has-locked-packages (return 0 if it has locked packages 1 otherwise)
- Resume fetch support for http/ftp
Changes:
- Allow processing of Transfer-Encoding: chunked responses. when fetch a package
- Only consider compatible ABI when processing shlibs provides/requires
- Ensure to first satisfy requires on packages already in universe before trying
add new ones into the universe