Changes:
- list of valid url scheme can be defined in pkg.conf
- add support for SOURCE_DATE_EPOCH for reproducible builds
- Fix pkg check -d
- Fix testsuite with kyua 0.12
- Fix pkg info -R
- Fix setting modes on extracted files/directories
- Fix zsh completion for pkg info -l
- Fix some solver crashed
- Initial attempt at fixing infinite loop on multirepositorry when updating pkg
- pkg version now handled -q correctly
* Attempt to properly detect gettext [1]
* Add support for @<pre|post>[un]exec plist directives [2]
* Add support for the new @sample plist directive changes [2]
* Modify the text when checking for used OPTIONS [3]
PR: 204370 [1]
204900 [2]
204575 [3]
${PERL5} points to a specific version of perl, say, perl5.22.1, it is
fine to use it in a ports Makefile to do Perly things, but ports using
it must use ${PERL}, that points to /usr/local/bin/perl so that if the
minor version is updated, the shebang keep working.
While there, make some ports use shebangfix, regen a few patches, and
bump PORTREVISION where a shebang went from PERL5 to PERL.
PR: 205367
With hat: portmgr
Sponsored by: Absolight
Changes:
- jail -d: If stdin is a TTY, confirm before removing jail.
- Disable rexec/jexecd for now as it has issues on <head and seems racy on
head as well, possibly leading to "Unable to execute id(1) in jail."
- QEMU: Use host pkg-static in the jail for repo to speed it up. For
this PKG_REPO_FROM_HOST=yes may be needed on mips.
This brings in almost a year of updates that had been held back.
Changes: https://github.com/freebsd/poudriere/wiki/release_notes_32
- New sub-command 'image' which is still in development, for generating
install images.
- Some poudriered fixes, but it is still experimental.
- DISTFILES_CACHES may be 'no' to use distfiles/ from ports tree.
- A cache daemon has been added in, off by default, for experimentation.
- The ports 'environment' feature from Mk/Scripts/functions.sh:export_ports_env
is used for dependency gathering now, which avoids 8 or so fork/execs for
every make -V call.
jail:
- New -K [KERNCONF] flag to build and install a kernel into the jail.
- New -S <path> flag to specify what srcpath to use from the master jail,
rather than /usr/src.
- Git support.
- New -U flag to specify what url to fetch from for git and svn.
- EXTRA_DISTS added to add to the distribution list fetched/extracted, from
poudriere.conf.
- NO_LIB32 added, when set to 'yes' skips installing lib32 distribution.
ports:
- Support '-m none' to disable portsnap usage.
- New -U flag to specify what url to fetch from for git and svn.
Build process handling:
- A jexecd process is spawned in the jail and communicated with via rexec
using a pipe. This is intended to lessen the jail locking contention,
allow more easily cleaning up processes, and limiting of TTY. It is
still considered experimental.
Changes:
- Fix cross building
- Improved zsh completion
- Improved error messages
- Improved documentation
- Bug fixes in the solver
- Allow to specify repositories directly via pkg.conf
- Allow multiple version of the same package in a repository
- Fix ipv6 testing in configuration
Changes:
- Fix cross building
- Wording fixes
- Always restore credentials after extraction in preparation for bigger changes
- Improve zsh completion
- Update libucl to the latest version
- Added support for OpenBSD/Bitrig
- Add a latest fixes to kill origin usage
- Improved linux support
- More user friendly error messages
- Fixes in the solver: Treat dependencies missed as errors
- Improved regression framework
- Allow to specify repositories directly un pkg.conf under the "repositories"
keyword
- All multiple version of the same package in a repository
- Fix configuration regarding ipv6
Changes:
- Fix 'builder stop' hook, which never worked.
- Don't transcend mount directories when running rm -rf
- Stop exporting MY_JOBID
- Run 'builder stop' hook always in stop_builder() [this means the hook
runs at startup as well to clean out stale builders].
- Enable post-mount jail hooks.
Unless something major is wrong here, this will be 3.1.10 and the next update
to -devel *will be* master which has a year of pending updates.
Changes:
-Always call make by absolute path of /usr/bin/make.
-Update stale comment about MFS
-Fun things happen with /nonexistent exists. Ensure it doesn't.
-testport: Allow -o to be optional.
-Mark poudriere-queue experimental.
-Using ccache on 10+ is fine so long as we use a PATH.
-XDEV: Don't endlessly append to make.conf on updates.
-Fix leftover lock file in /tmp at cleanup
-Support in-tree ccache for buildworld on recent head
-Always use the FAST_DEPEND option for buildworld.
-Go crazy, use -j for installworld targets on recent head
-Allow comments on the same line with port entries in blacklist
Over the past several months portscout.freebsd.org appears to have been
more frequently NOT finding updates, particularly for ports that use
CHEESESHOP (PyPI) as their MASTER_SITES.
Portscout has also never worked for ports using GitHub for distribution
files due to the following:
a) Portscout, prior to 'guessing', requests a randomly named file
from the Site and expects a 4xx (404) in response. If it doesn't
receive a 4xx response, it increments a 'lie counter' and does not
check the site again in the next run.
b) The GitHUB handlers (SUBDIR/MASTER_SITES) in bsd.sites.mk
construct a URL that ends in a a dummy query paramater (for the
filename), so that fetch saves the correct filename to DISTDIR.
This means for any DISTFILE name provided, a 200 OK response is
returned
These two factors unfortunately leave us in a position where there is no
good way to workaround this in the ports framework, including overriding
DISTFILES, DISTNAME, FETCH_ARGS, or the SUBDIR URL itself for various
reasons (not matching distinfo, file conflicts in DISTDIR, etc)
Fortunately, the portroach project (OpenBSD's fork of portscout)
contains a site handler for GitHub and PyPI (among others) already [1].
These site handlers use API endpoints at GitHub and PyPI that respond
JSON respectively, providing a faster and more accurate way to determine
the latest version of a package, without having to go through the
'guessing' process.
This commit:
- Adds GitHub and PyPI site handlers, and modifies or extends them to
accept/match our MASTER_SITES URL's.
- Adds authenticated API request support and two settings for the
GitHub site handler
- Add p5-JSON to RUN_DEPENDS (needed by new site handlers)
- Add HTTPS option for supporting https:// MASTER_SITES. Currently
portscout does not check (fails) https:// MASTER_SITES [2]
- Take MAINTAINER'ship
- Adds badly needed logging/debugging messages to key parts of the
process retaining the conditional logic that ties the verbosity to
"quiet" or "debug" portscout.conf settings.
- Renables the SQLITE3 option (previously commented out) and renames it
to SQLITE (the standard, as per bsd.options.desk.mk)
- Creates a DATABASE option group allowing either/or SQLITE or
POSTGRESQL to be selected
- Switches option conditionals where possible to options helpers
- Backport a fix for maintainer matching/mapping [3]
- Adds LICENSE (BSD2CLAUSE)
- Updates and sorts pkg-plist
This change was tested again ports maintained by me, and resulted in
'new versions' being found and reported for 42 of my ports (of 123).
[1] https://github.com/jasperla/portroach/tree/master/Portroach/SiteHandler
[2] Reported by: truckman
[3] 2f6ee134dd
PR: 203996
Approved by: maintainer (timeout, 15 days)
Differential Revision: https://reviews.freebsd.org/D3996
* Add support for @(...) notation [1]
* Remove the check for USES being sorted. Order is important. [2]
* Add support for making sure @owner and @group are properly reset [3]
PR: 202570 [1]
203908 [2]
202711 [3]
Changes since pkg-1.5 series
- Lots of improvements in the solver (in particular fixes the case like the
recent jpeg upgrade)
- Lots of fixes in the 3 way merge code
- pkg add can now work without a version specified in the dependency line
- pkg check -d now also check the required libraries
- Improved support for partial upgrades
- Improved zsh completion support
- Improved linux support (now all regression tests passes on linux)
- Messages can now be context aware: (only print a given message during
installation, upgrade - version aware -, removal, or always)
- @keywords now accepts new entries to add context aware messages
- Add the ability to generate graphiz's dot format representation of the
solver's problem
- pkg search now default on showing the comments of of the matched packages
- Lots of bug fixes and code cleanup
- Document @{pre,post}[un]exec in plist added in pkg 1.5
Both portshaker and portshaker-config tries to manipulate the portshaker.conf
So converting this one to @sample make it conflict with the portshaker package
Reported by: mat
Pointyhat to: bapt
Changes:
- Important fixes in the solver (fixes the jpeg->jpeg-turbo issue)
- +DISPLAY can now be a ucl file (contextual messages)
- pkg info -D now understand ucl format
- keywords can now define messages to be printed (depending on the context)
- PKG_ROOTDIR is now always set in scripts (default to /)
- pkg version now accept -n <pkgname> to check a given package version against
remote repository or ports tree or INDEX file
- Improve Linux support: testuite now passes entirely on linux
- pkg register only tries to load +DESC if it exists
- Move Perl's man1 files along with its man3 files.
- Move where Perl installs its modules man1 pages.
- Convert the ports installing man1 pages.
- Make different Perl versions installable at the same time.
Though you should note that only the default version can be used to
install Perl modules, and the non default Perl versions cannot use the
modules installed via ports if they contain .so as they are installed
in a version specific directory.
Reviewed by: bapt (the Mk bits)
Exp-run by: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D3542
Changes:
- Restore ordering of files and directories
- Simplify regression test framework
- Silence `pkg upgrade -q' when there are no packages to upgrade.
- Remove IGNORE on FreeBSD versions before 900038, they're unsupported
- Do not claim that port is broken on PowerPC (builds and links fine)
- Remove custom naive `do-build' target: add missing `all' target to
supplied Makefile instead
Changes:
- Remove old references to the fossil site and point to github.
- options: Override LOCALBASE to prevent pollution from
LOCALBASE/etc/perl5_version. Also use which(1) to find
some helper tools.
- Avoid SIGINFO crash in startup
As long as this is stable, this will be release as 3.1.8. The next update will
then be an update from master, holding the 3.2 code.
Changes:
Fix signature pubkey which was:
1/ broken
2/ backward incompatible.
Allow to not use ldns on Linux
Improve build on linux
Fix corruption on @config files
Fix @config files extraction when parent directories does not exists
The logic to define the PORTWORK variable evaluated WRKDIRPREFIX in some
cases, but this variable was never defined. We need to pull in
bsd.port.pre.mk or bsd.port.options.mk to define it, and I chose the
latter. This fixes the wrong value of PORTWORK being used when genpatch
is built manually (it was correct when built from poudriere).
- Fix a warning that appeared with perl-5.20
- Fix a crash bug due to the final step of the change from
$OPTIONSFILE to $OPTIONS_FILE: now the backward compatibility
setting of $OPTIONSFILE has gone, and it is left undefined, we
should not use it. Reported by itetcu@ and Naram Qashat
Changes:
--------
bz close document new options
bz close/port_commit handle .gitattributes for git svn dcommit --rmdir
bz get support optional attachment id argument
bz get improve patch detection heuristic
bz patch/commit add -m for multiport support
<conrads@cox.net>: host mx.west.cox.net[68.6.19.3] said: 550 5.1.1
<conrads@cox.net> invalid recipient - Refer to Error Codes section at
http://postmaster.cox.net/confluence/display/postmaster/Error+Codes for
more information. (in reply to RCPT TO command)
Sponsored by: DK Hostmaster A/S
Changes:
- Fix endless cycle of reinstall/deinstall of packages
- Reduce a bit memory usage
- New context aware messages (only show a message depending on where you are upgrading from)
- Fix a bug about pkg messages not being properly decoded
- Reduce code duplication
UNIQUENAME was never unique, it was only used by USE_LDCONFIG and now,
we won't have conflicts there.
Use PKGBASE instead of LATEST_LINK in PKGLATESTFILE, the *only* consumer
is pkg-devel, and it works just fine without LATEST_LINK as pkg-devel
has the correct PKGNAME anyway.
Now that UNIQUENAME is gone, OPTIONSFILE is too. (it's been called
OPTIONS_FILE now.)
Reviewed by: antoine, bapt
Exp-run by: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D3336
Changes:
--------
impliment bz show
impliment bz attach [1]
fix bz comment to do nothing when no changes are made in editor [2]
do a better job of not orphaning temp files
Reported by: jmg@ [1] [2]
Changes:
change bz init to not overwrite an existing ~/.bugzrc [1]
change bz init to cannonicalize spelling of FBSD->FreeBSD [2]
fix bz init to protect ~/.bugzrc with a sane umask [3]
fix bz close again and add some shortcut option helpers [4]
Reported by: jbeich@ [1,2,3], feld@ [4]
Changes:
change bz get to output where the pr went to
change bz patch to pull the pr first via bz get
fix bz timeout to work when there are no flags
fix bz close to allow no comment for real
fix bz search -r to work with the backend pybugz [1]
Reported by: jmg@ [1]
Changes:
- Use mmap with sqlite during pkg update
- Fix pkg query humanized output
- Improvement in pkg check manpage
- Lots of improvements in the solver
- Improve Linux support
- Fix CVE-2015-1283 in bundle expat
Note that this release does not pass 100% of the regression tests due to a known
cosmetic issue.
Changes:
- Incorporate in sources the patch for expat CVE-2015-1283
Note that pkg is not vulnerable because it does not use the patched function
- improvements in pkg check manpage
- fix format specifier in libpkg's pkg_vets
* Only report "make makepatch" once per patch file [1]
* Attempt to re-word the make makepatch warning to avoid unnecessary repo
churn [2]
* Attempt to test some other macros for sorting [3]
* Do not check empty dependencies for validity [4]
PR: 202050 [1]
201647 [2]
201409 [3]
202052 [4]
Submitted by: gerald [1]
Changes:
- bulk -c: Restore previous behavior with log deletion. Don't wipe out ALL
logs, only delete the ones for the given build. This change
almost inadvertently wiped out all logs and violates POLA at
this point.
- bulk -c: Fix it, it wouldn't start.
- Misc cleanups
Changes:
- jail: check the directory for method src=
- csup has been deorbited from the project
- Test to make sure $SVN_CMD is actually set before trying to use it.
Improve test and error message for detecting if svn is installed.
- jail -x: Run native-xtools from /usr/src for now.
- Remove EOL 8.3 support
- Run 'jail start' hook before any 'make' commands.
- jail -m src: Fix handling of cross-compile by setting proper TARGET/TARGET_ARCH
- Remove use of SVN mirrors.
- Fix need_emulation to only check TARGET_ARCH against kern.supported_archs.
- Let KEEP_OLD_PACKAGES work on 9.x/8.4 with sort(1) lacking -V [1]
- Fix typo in poudriere.8
- Correct typo in poudriere -p help output
PR: 193732 [1]
Changes:
impliment edit command [1]
make get comamnd support multi-user systems [1]
search now defaults to your "open" prs [1]
port_submit prepopulates a lot of the comment with a proposed commit msg
Requested by: jmg@ [1]
- Use OPTIONS_DEFAULT instead of OPTIONS_SET [1]
at least one additional backend is planned (curl)
Reported by: sunpoet@
Changes:
with collaboration from jmg@:
rename submit to port_submit, src_submit will be in a future release
re-impliment search to provide a backend agnostic api,
allow for defaults, and quoting
spruce up init to prompt for a few defaults
<file> on ELF systems, but this doesn't really do what -export-symbols is
meant to do. On GNU ELF systems it converts <file> to a simple version
script first and then uses -version-script instead of -retain-symbols-file.
Let USES=libtool patch libtool scripts to do this on all systems with GNU
ld(1).
Bump PORTREVISION on all ports where the build log contains -export-symbols.
audio/calf: This port builds a module that now exports only one function,
but it also builds a number of executables that link to this module and
expect to see other functions. Because it's already a bit dodgy to link to
a module (libtool warns about this) let the module continue to export only
one function and instead build an ordinary library from the same source that
the executables can link to. Fix a number of other issues in the same
Makefile.am and clean up the port Makefile.
japanese/scim-honoka: Tries to hide all symbols that start with an
underscore, but because this library is written in C++ all symbols start
with _Z so it ends up hiding everything. Just don't hide anything at all
like the textproc/scim configure script does.
multimedia/schroedinger: Apply an upstream patch.
textproc/scim-input-pad: Same as japanese/scim-honoka.
PR: 201922
Approved by: portmgr (antoine)
Exp-run by: antoine
Changes:
- Manpages updates
- Add a random delay to pkg-audit when invoked without a TTY
- Update zsh completion
- Add a new AUTOCLEAN option to automatically clean the cache directory
- Don't attempt to set file ownership when INSTALL_AS_USER is set
- Add a new configuration item to define custom HTTP User-Agent
- Fix an integer overflow when displaying package size for packages larger than
2GiB.
- Initial support for flexible dependencies
- Allow to specify dependencies without hardcoded versions
Changes:
- Manpages updates
- Add a random delay to pkg-audit when invoked without a TTY
- Update zsh completion
- Add a new AUTOCLEAN option to automatically clean the cache directory
- Don't attempt to set file ownership when INSTALL_AS_USER is set
- Add a new configuration item to define custom HTTP User-Agent
- Fix an integer overflow when displaying package size for packages larger than 2GiB.
* Add a check for BROKEN similar to IGNORE [1]
* Quiet the noise when used with Perl 5.22 [2]
* Fix a bug checking for USES sortedness [3]
* Correct a logic bug checking for USE_ANT [4]
PR: 200634 [2]
200792 [3]
200421 [4]
Submitted by: pi [2]
John Hein <z7dr6ut7gs@snkmail.com> [4]
Reported by: koobs [1]
2015-06-29 audio/padevchooser: Broken for more than 6 months
2015-06-29 devel/xtla: Broken for more than 6 months
2015-06-29 mail/mail-notification: Broken for more than 6 months
2015-06-29 ports-mgmt/gnome-packagekit: Broken for more than 6 months
2015-06-29 sysutils/py-salt-api: Broken for more than 6 months
- Add patches to fix missing includes (couldn't find any upstream contants to submit these)
- Unfortunately, it's still BROKEN on 9.x as gcc 4.8's stdlibc++ doesn't seem to provide to_string, so mark it as such
Submitted by: pkg-fallout
Approved by: portmgr blanket
Changes:
- Fix partial upgrades
- pkg create -v now ticks (print does on a regular basis) if not on a tty
- Fix vuxml url in sample configuration
- zsh completion improvements
I had intended to update this to master but have not yet fixed a blocking
bug on it.
Changes:
- status -a: Fix handling of showing older builds.
- QEMU: Add a hack to raise the default build times.
- Don't crash starting up a job, or otherwise, if the time goes backwards.
- blacklist: Fix loading of JAIL-SETNAME-blacklist
- QEMU: Always try loading a qemu-blacklist file
- Add a helper 'clock_monotonic' to use clock_gettime(CLOCK_MONOTONIC)
rather than non-monotonic 'date +%s'
- Use monotonic time for calculating durations
- Add a build.started epoch time.
- Add a build.ended epoch time that is set in the last HTML json generation.
- Update sh to FreeBSD r281982
- Fix build on older FreeBSD due to sh. If F_DUPFD_CLOEXEC is unavailable
then use system sh.
- Ignore /var/db/freebsd-update/ too.
Changes:
- Progress is not printing dots on the fly when stdout is not a tty
- Fix partial upgrades
- Fix url in pkg.conf.sample about vuxml
- Improve zsh completion
2015-05-31 ports-mgmt/porteasy: Does not support pkgng
2015-05-31 textproc/hgrep: Not needed any more, base grep has coloring support
2015-05-26 www/diamanda: Broken for more than 6 months
Changes:
- Updates in manpages
- Improved support for --quiet everywhere
- Keep 7 (by default) days (rotation) of backups of the database
- Prune old style backups entirely
- Do not pushed in shlibs required any library we can find in the list of files
owned by the package
Changes:
- Updates in manpages
- Improved support for --quiet everywhere
- Keep 7 (by default) days (rotation) of backups of the database
- Prune old style backups entirely
- Code cleanup
- Deduplication of the checksum related part of the code
- New checksum serialization format for files allowing to change the checksum
algorihtm (fully backward compatible) for now sha256 and blake2b are supported
- pkg check -d now knows about provides/requires
- Do not pushed in shlibs required any library we can find in the list of files
owned by the package
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.