Minor improvements:
===================
* Improve messages for processing of dependent ports when -r
* If there is an installed version, always print that message, not just
when we're in the parent
* Optimize determination of $new_port:
- When first set, let it be global
- Use a function to incorporate/optimize the various tests from the
2 different places that it was being set
* Use a more robust method of determining portdir from $PWD. This also
works for bare 'portmaster' with no arguments now, if you're in a port
directory.
* Various additional code cleanups
Bug fix:
========
Do read_distinfos() in the background for multiport() too, oops
- changes:
* Fix reinstalling package due to options change losing automatic flag
* Fix pkg set -o
* do not use dlopen for figure out path of libraries to track shlibs
* more manpages cleanup
Minor fixes/improvements
========================
* Turns out there are a non-zero number of distinfo files that have SIZE
listed first, so in the code that parses them for the data to put into
/var/db/pkg/$port/distfiles, handle this situation gracefully.
* If we trap while working on a child port do not remove that child from
the PM_NEEDS_UPDATE list so that when it gets printed in the parent
that child is still on the list.
* Use the count of total ports as $num_of_deps for -Faf
* For -av, add num_{roots|trunks|branches|leaves} values to the headers
* In multiport(), decrement the number of ports to work on and print a -v
message if we have already seen a port in the worklist as a dependency
of another port in the list.
* Many other minor code cleanups
Performance enhancement
=======================
* In read_distinfos*() use while read instead of grep. Avoids the fork
and reduces the total time for building the list(s) of distfiles by 25%
- changes:
* fix bug corrupting automatic and licenselogic flags
* some mdoc fixes
* fix a new dependencies pulled by upgrade showed as reinstalling instead of
installing
* some fixes in repo generations
- changes:
* fix an important bug on script handling resulting in scripts runned sometime
twice
* time can no more be negative while fetching
* fix a crash on pkg check
* fix an infinite retry loop when fetching a file that return 404
* emit a warning when search gives no results
- changes:
* schema for remote repositories are versionned
* fix ordering of scripts
* ability to query SRV dns records for automatic mirror detection (ala
portsnap/frebsd-update) via the SRV_MIRROR options default to off
* new FETCH_RETRY options (default to 3)
* more style(9) compliance of the code
* lots of cleanup in exits codes
* lots of typos fixes in manpage
* improvements in manpages
* pkg2ng now move the old database into /var/db/pkg.back
* new -B option to pkg check to reanalyse the files and populate shlibs
* new install -fR to reinstall all packages depending on a given package
* disable shlib when using pkg-static
No new feature to expect in next releases, only bug fixes
New feature will be for 1.1 (already planned :))
Major updates/fixes to the distfile handling code
=================================================
* Make all parts of the code SUBDIR-safe (most were already)
- Fix a few places where the relativity of the cwd was not respected,
most often resulting in files not being deleted that should be
* Move the storage of the distfile info back to /var/db/pkg where it
should have been all along. Mostly for correctness, but also to deal
with the problem of non-UNIQUENAMEs causing the wrong files to be
deleted with -d.
* Clean up the old /var/db/ports/*/distfiles files after reading them,
and delete the directory if it's empty. Since we are doing this
unconditionally now, there is no longer a need for delete_dist_list().
The new ones will live and die with the rest of the package directory.
* Update some of the messages printed out for distfile-related things
to make it more clear what's going on.
* Check DI_FILES to see if the distfile could be valid for another port
in more places, so add a function to deal with the common ones.
* When checking DI_FILES, anchor the grep pattern with a ^ to
avoid false positives
Other code changes
==================
* Make the whitespace more consistent
* Various minor improvements, mostly to avoid unnecessary forking
UI Change
=========
* When using -i and there is an +IGNOREME file, the default should be no
- changes:
* improve modification detection with zfs diff (pgj@)
* replace ftp by fetch(1) all over the place (this allow installing from http
mirrors)
* make fetch(1) using passive ftp when fetching from ftp
* new option -t <version> to jail subcommand, to binary upgrade to a newer
version (still some interactive parts :()
* always destroy the jail before zfs rollback to make sure no process are
still running (fix poudriere hanging after packaging totem for example)
(reported by des@ and gnn@)
* fix ipv6/ipv4 support determination (tested by gnn@)
- changes:
* downgrading is always forbidden except if you explicitly force it
* yet another fix for incremental pkg repo
* pkg install/upgrade now detect ports which remote has different option set
and propose to reinstall them
* code refactoring, and improvement in pkgdb.c and pkg_repo.c
* new -f options for pkg update
* new -f and -q options for pkg repo
- changes:
* always remove previous pkgng repository before rebuilding the new one
* make ftp passive by default
* experimental support for ccache (needs a bsd.local.mk)
* add -s to testport and bulk, to skip sanity checking
* creating jails from csup/svn still experimental, but now it can works for
real :)
==================
* Restore the line from -av that prints each port as we work on it.
* Print more useful information about ports that don't have distfiles,
or distfiles we're skipping due to duplicates when -F (especially
with -a).
Bug fixes
=========
* Consolidate all writing to the IPC_SAVE file into safe_exit()
so that it always gets called. Also, zero out the file after
reading it so that a parent process doesn't inadvertently
read stale data during a trap (unlikely, but not impossible).
- changes:
* Now ipv4 or ipv6 information are automatically gathered out of sysctl
* CHECK_CHANGED_OPTIONS to detect changed options with bulk -k and pkgng (this
force rebuild of package if options has changed
* Fix signal handler not actually exitting
* Track IGNORED stats
* Support for signing pkgng repo
* give to the jail network access during make checksum to allow refetching
distfiles
- changes:
* fix incremental pkg repo
* fix stage directory (copy mode) support
* improvements on documentation (man pages, error messages)
* new ARCH_INDEP options in developper mode to allow notifying a maintainer
that a port might be archiecture independant
* fix compilation on recent 8-stable and 9-stable
* improvemens is usage() output
* new option PORTAUDIT_SITE to allow user to set the url for the auditfile
* pkg create -an to not repack existing packages
* new periodic script to make daily backup of the database
* new stats (pkg-stats(8)) subcommand
* big improvements and bug fixes in pkg (r)query
* deactivate shlibs tracking all the time in pkg-static
* lots of bug fixes
Thanks to all contributors
- changes:
* poudriere ports -u using portsnap can safely be run from cron now
* Remove stale repo.sqlite as well to prevent deps constraint error with pkgng
* add allow.chflags to jails
* Add support for upgrading a jail using freebsd-update (only security
upgrades for now) if the jail was created from ftp.
* experimental support for creating/upgrading a jail from svn/csup beware that
the -v when creating should be adapted to svn branches (stable/8, head) or
csup (RELENG_8, .)
* do not run make deinstall in case of normal bulk (speeds up a bit the bulk)
* Add NOIPV4 and NOIPV6 support
* Speed up a bit sanity checking by caching the dep list for each packages
* Add some caching to avoid running make -V again and again when possible
============
Print the same progress update that goes to the term title in-line,
and apply various improvements to that code.
Move 'make clean' to the background. There is no point waiting around
for it to finish. In the case of very large work directories this may
cause some I/O contention during the unpacking of the next port to
build, but in most cases this should be lost in the noise.
Other Improvements
==================
Speed up the determination of WRKDIRPREFIX, and do not bother looking
for empty directories if we exited abnormally.
Add code to detect dependency loops created by moving part of a port
into another port, and CONFLICT'ing on previous versions of that port
(ala textproc/p5-XML-SAX -> p5-XML-SAX-Base). When a loop is detected
suggest that the user try pkg_updating.
Bug Fixes
=========
Improve error handling for mktemp
Improve handling of abnormal exits (such as ^C, failed port, etc.),
especially when the first exit happens in a child process.
If the second argument to -o is something that is completely non-existent,
report in the error message what the user typed on the command line.
Reported by: avilla
In clean_build_only_list() remove ports that are already installed
when using --delete-build-only to prevent them from being spuriously
removed.
Reported by: avilla
- Store distfiles in portupgrade/ subdir
- Fix installation to support staging and mark USE_STAGE for upcoming staging support
- Fix pkgng automatic dependency handling
- Speed up some make variable lookups
PR: ports/168954
Submitted by: Bryan Drewery <bryan@shatow.net> (maintainer)
Changes:
http://www.infracaninophile.co.uk/portindex/
Adjust Endemic and Ubiquitous Makefile settings to account for
OPTIONSng
- Switch to OPTIONSng
Approved by: shaun (mentor)