Changes:
* Fix crash when opening repository in some cases
* Fix build with -Werror
* Fix 'pkg install [-f] pkg' not finding results
* Fix 'pkg upgrade -f' always wanting to upgrade pkg first
* Fix 'pkg install -R' always wanting to install pkg first
* Fix backwards compatibility for 1.0-built packages for
tracking shlibs. This may cause some packages to be
reinstalled after the repository is updated.
* Fix pkg (upgrade|fetch|install) -r <repo> crash
* Fix crash when specifying invalid repo with -r
Changes:
- Fix repository signing verification with new format during update
- Disable terminal title setting
- Fix %a/%k returning true/false instead of 0/1
- Various memory/fd leaks have been fixed
- Fixed pkg self-upgrade detection
- ZSH completion fixes
- Several crashes fixed
With hat: portmgr
This was showing as a warning in portmaster/portupgrade and could
have caused packages to be registered incorrectly automatic/non-automatic
on upgrade.
Reported by: many
Obtained from: upstream git
Changes:
- Fix install|upgrade -f not executing post-install scripts [1]
- Fix bad size calculation on i386 for pkg delete (always say 4G will be freed)
- Fix pkg query '%sh' now properly converting to human number on i386
- Fix zsh completion missing ']' [2]
- Fix pkg stats in case no remote repositories are configured [3]
Reported by: ohauer [1], Kimmo Paasiala via github issue #520 [2], rene [3]
Changes since 1.0.X:
- new simpler and more reliable solver
- shared libraries are now always tracked
- ssh:// is supported as a protocol to distribute packages (needs pkg 1.1+ on
the server hosting the packages)
- multirepository is no longer considered experimental and works by default.
- incremental update of the catalog (only if the repository was created by pkg
1.1+)
- simplification of the public API
- stabilisation of the public API (we will now try to keep it stable and if
change are needed there will be deprecation time before removal of some old
functions)
- new experimental pkg convert (can convert from and to legacy pkg database)
pkg2ng now uses pkg convert (still recommanded to use pkg2ng)
- new pkg lock/unlock to prevent any manipulation of a given package (no
upgrade,delete,etc)
- improved UI (now you can see the progress of an upgrade what is left to be
done)
- new pkg annotation to allow one to add annotations (free form key/value) to a
package)
- pkg audit is now able to directly parse the vuxml native format and not only
the compact version
- pkg -vv now shows all available options and their current settings
- pkg -vvv now shows a description of all the available options
- pkg info now automatically considers the query as globbing if * is in the
requested pattern
- new hook plugin interface (allows users to create hooks that get called at
anytime during and upgrade/installation/deletion of a package)
- new cmd plugin interface (allows users to create new sub command available for
pkg)
- pkg register can now register a port installation in the legacy database
format
- repository can be defined in simple yaml files
- Explain why a package is being reinstalled
- A package can now be marked to only be upgraded from a given repository via
annotations
- install and upgrade will show from which repository packages are taken from
- old/unused 'informations' field has been removed in favor of using
annotations
- pkg repo produce a repo.txz in pkg 1.0 (legacy) fromat
Internal:
- massive usage of hash tables (uthash), which simplifies a lot of the code,
and improves performances
- lots of optimisation in plist and manifest parsing
- lots of optimisation in loading packages (mmap used when possible)
- lots of cleanup in memory usage
- regression test framework is now ready (using atf) regression test are slowly
being added and populated.
Prevent 'pkg update' will always think that the repo is up to date if no mtime header is sent by the http server [2]
Bump port revision
Reported by: adrian[1], hrs [1]
Tested by: hrs [1]
Submitted by: cperciva [2]
Changes:
- Add pkg -N to detect if pkgng is installed and activated.
See pkg(8) for usage as this is not completely safe for 9.1's
bootstrapper.
- Update manpages with examples
- Fix crash in shlib handling (was already in port)
- Fix shlibs scanning over NFS
- Update to new repository/upstream URL at
http://github.com/freebsd/pkg
With hat: portmgr
pkg.
Here is the list of new features that happened in pkg 1.1:
- new simpler and more reliable solver
- shared libraries are now always tracked
- ssh:// is supported as a protocol to distribute packages (needs pkg 1.1+ on
the server hosting the packages)
- multirepository is no longer considered experimental and works by default.
- incremental update of the catalog (only if the repository was created by pkg
1.1+)
- simplification of the public API
- stabilisation of the public API (we will now try to keep it stable and if
change are needed there will be deprecation time before removal of some old
functions)
- new experimental pkg convert (can convert from and to legacy pkg database)
pkg2ng now uses pkg convert (still recommanded to use pkg2ng)
- new pkg lock/unlock to prevent any manipulation of a given package (no
upgrade,delete,etc)
- improved UI (now you can see the progress of an upgrade what is left to be
done)
- new pkg annotation to allow one to add annotations (free form key/value) to a
package)
- pkg audit is now able to directly parse the vuxml native format and not only
the compact version
- pkg -vv now shows all available options and their current settings
- pkg -vvv now shows a description of all the available options
- pkg info now automatically considers the query as globbing if * is in the
requested pattern
- new hook plugin interface (allows users to create hooks that get called at
anytime during and upgrade/installation/deletion of a package)
- new cmd plugin interface (allows users to create new sub command available for
pkg)
- pkg register can now register a port installation in the legacy database
format
- repository can be defined in simple yaml files
Internal:
- massive usage of hash tables (uthash), which simplifies a lot of the code,
and improves performances
- lots of optimisation in plist and manifest parsing
- lots of optimisation in loading packages (mmap used when possible)
- lots of cleanup in memory usage
- regression test framework is now ready (using atf) regression test are slowly
being added and populated.
To use this new version:
Ports users (or in building factories: poudriere/tinderbox):
Add WITH_PKGNG=devel to your make.conf
pkg set -o ports-mgmt/pkg:ports-mgmt/pkg-devel
Binary package users, if the remote repository is providing pkg 1.1:
pkg set -o ports-mgmt/pkg:ports-mgmt/pkg-devel
pkg upgrade
Note that pkg 1.1 can use a repository created for pkg 1.0 and vis versa.
Huge thanks to all the people that have contributed to the pkg developement:
- may that be by code
- documentation
- bug report
- feedback
- ideas
List of people who contributed code:
Baptiste Daroussin, Matthew Seaman, Bryan Drewery, Vsevolod Stakhov,
Marin Atanasov Nikolov, Alexandre Perrin, Romain Tartière, Julien Laffaye,
Glen Barber, John Marino, Alex Kozlov, Roman Naumann, Sofian Brabez,
Alberto Villa, Will Andrews, Eitan Adler, Dan McGregor, namor, niamtokik,
Arthur Gautier, Garrett Cooper, Andrew Turner, Jeremy Chadwick,
Hajimu UMEMOTO, Mark Lokowich, Eygene Ryabinkin, Pietro Cerutti,
Rolf Grossmann, Ed Schouten, Dimitry Andric, David Forsythe, Stefan Grundmann,
Craig Rodrigues, Antoine Brodin, Andrey Zonov, Joel Dahl
Stats between 1.0 and 1.1:
287 files changed, 63418 insertions(+), 18763 deletions(-)
1198 commits
*** Binary Package Builders: It is recommended to rebuild
all packages and then run 'pkg check -Ba' and 'pkg
upgrade' on your client servers once. This will allow
the new shlib tracking to reinstall packages that have
changed shlib requirements. This step is optional.
Changes:
* Always track provided SHLIBS now when packages are
created
* Automatically reinstall packages when their needed shlibs
or dependencies change. This removes the need to run
'pkg install -Rf' in many, but not all, cases.
* New DB lock strategy when stored on a network filesystem
* pkg version: Show ? when package is missing on remote
* pkg check -s: Return non-zero exit status if a mismatch
is found
* pkg audit: Implement -q
* Add more periodic scripts
* Add bash completion script
* pkg audit: Performance optimizations
* Build fixes
* Add some forward-compatibility support for upcoming 1.1
Thank you to all contributors, listed in the upstream commits:
https://github.com/pkgng/pkgng/commits/1.0.12
With hat: portmgr
Changes:
- Fixes pkg-[r]query %d only returning the first
depedency. This could have resulted in packages
being built without a full depedency list. It is
recommended to rebuild any packages built in the
last day.
With hat: portmgr
- Replace tab with space in pkg-descr
Changes:
- gcc44/gcc48 build fixes
- pkg-install now returns 0 when requested pkgs already
installed
- Fixed pkgconf file handling
- Hard-coded post-deinstall list has been moved to
bsd.pkgng.mk as _FORCE_POST_PATTERNS so we can update
that instead of having a pkgng release every time a new
one is identified.
- Add pkg check -n for -d to be scriptable
- Fix memory corruption if WWW passed directly to manifest
- COMMENT/Description/WWW are now required to make valid
packages
- Store fetched packages as 0644
- Add events for conflicts
- Add -F to pkg-install
- Pipe fixes
- Misc fixes
due to @unexec gio-querymodules running before files were deinstalled.
A more extensible solution is being sought for 1.0.10 to be used through
bsd.pkgng.mk
Reported by: miwi, swills
With hat: portmgr
You may need to manually 'pkg add' 1.0.9_1 or rebuild
from ports if you are on 1.0.9
Submitted by: Alexandre Perrin <alexandre.perrin@netoxygen.ch>
Obtained from: upstream git
With hat: portmgr
Changes:
- pkg-query(8) now returns EX_UNAVAILABLE when no package could be found [1]
- pkg-rquery(8) now returns EX_UNAVAILABLE when no package could be found
- Incompatible ABI message has been improved
- Support base libbsdyml when possible over bundled libyaml
- Fix `pkg install -fR` not installing missing dependencies [2]
- Fix build with clang/gcc-4.7 in some cases [3]
- Fix SRV MIRROR support
- pkg-{fetch,install,upgrade} -L has been deprecated. Please use -U now.
-L will be removed in a future release. Thiwas was done to be consistent
with future support for -U in pkg-rquery(8) and pkg-search(8)
- Make DEVELOPER_MODE architecture suggestion more clear that it is non-fatal.
This is not really implemented yet and is just a hint.
- Fix @cwd not being respected for @exec/@unexec. This mostly manifested as
directories being created in the wrong place when installing packages.
- New configuration option FETCH_TIMEOUT [4]
- Documentation updates
PR: ports/173515 [1]
Reported by: eadler [1]
Submitted by: Alexandre Perrin [1]
PR: ports/175899 [2]
Reported by: Adam McDougall <mcdouga9@egr.msu.edu> [2]
Submitted by: John Marino [3]
Submitted by: Dan McGregor [4]
Reviewed by: bapt (release changeset)
With hat: portmgr
using the pkg-static(8) from WRKSRC during the install phase
PR: ports/171831
Reported by: Garrett Cooper <yaneurabeya@gmail.com>
Approved by: portmgr (bapt)
make.conf/src.conf which is something we don't want when building from the ports
tree.
Make sure to ignore make.conf and src.conf when building.
Reported by: kargl@
Tested by: kargl@
- changes:
* libpkg: When reseting a package reset the associated flags
* libpkg: Allow to build with newer and older libarchive
* Fix pkg clean trying to get information on non existing packages
* Fix build with bmake
* Fix multi repository save remote repository to wrong database
* Fix pkg repo incremental update
* Return an error when one of the repository failed to update in multi repo
mode
* Fix dragonfly abi detection to fit the way dragonfly development is done
- changes:
* Fix HTTP_MIRRORS parsing
* Workaround libarchive not 100% supporting mtree format
* prepend remote repository by 'repo-' in multirepository mode
* If mirror is stored in http use If-Modified-Since
* Register the packagesite in the remote database, pkg update detects
packagesite chanes
* Fix pkg check -s
* Allow to pipe events in json format though a unix socket/fifo via EVENT_PIPE
configuration
* store errno in events when it fits to avoid errno to be overwritten
- changes:
* Expand all instances of $ORIGIN in RPATH strings
* Use -rpath when building pkg
* Handle the case where left-over records are present in the local database
* Fix license logic
* Fix spelling in manpages
* Fix built with gcc when build without DEBUG_FLAGS
* Allow to set HTTP_PROXY/FTP_PROXY directly in pkg.conf(5)
* Fix +MTREE_DIR extracting during binary installation of a package
* Add experimental feature: HTTP_MIRRORS, see below
Please note that this version does something we normally do not do in a release
branch. It adds an experimental feature: HTTP_MIRRORS, that was requested for
PC-BSD. This feature makes possible to retrieve a list of mirrors via an http
request first, looking for the URL: http://... lines in the fetched page.
pkgng packages have been installed yet. This fixes
the notice showing after already running pkg2ng but
having 1 or more packages fail to convert.
Approved by: bapt
work fine as is with portmaster distfiles.
pkg_info -Ea will list invalid packages, while pkg_info only
gives a warning for the packages. This is already handled
due to stderr being sent to /dev/null. The NB_OLDPKGS does
come out correct.
Approved by: bapt (implicit)
- changes:
* zsh completion for the help subcomment [1]
* Make unlocking an already unlocked database a no-op,
* Create the PKG_DBDIR if it doesn't exists
* Fix download size calculation
* When analysing shlibs, interpret the special token $ORIGIN in RPATH correctly
* For shared libraries installed by a package, don't require dynamic library dependencies to resolve
* Do not warn twice about unknown keywords
* New PERMISSIVE option please do not use !!!
* Add a seat belt in the ports Makefile to avoid automatic switching to pkgng [2]
Submitted by: ume [1]
Requested by: stas [2]
Bad english by: bapt [2]
Good english by: bdrewery, gjb [2]
- changes:
* Add a completion for zsh
* 1 in pkg.conf is consider as true or yes for booleans
* Fix incremental pkg repo
* Provide a pkgconf pkg.pc file for third party software using libpkg
* Multiple grammar fixes
* Several fixes in pkg create
* Do not emit error if the deletion of a directory fails with EBUSY
* Use isdigit(3) rather than isnumber(3)
* Jail support is automatically disabled it /usr/include/jail.h is not present
* Fix a regression leading to pkg install always returning 0 even when
something wrong happened
* Improve portability so that it now builds on DragonFly BSD
Feature safe: yes
- changes:
* Allow extra space for environment and command when piping to /bin/sh for scripts
* Improved DEVELOPER_MODE output
* Error when neither www or desc is defined in the manifest
* pkg help now have the same level of informations as usage()
* Lots of fixes in manpages
* Only try to get checksum on regular files
* pkg2ng: Preserve files under $PKG_DBDIR that don't belong to pkg_tools
* add dry-run to pkg autoremove
- changes:
* SRV mirroring is on by default
* fix large scripts executions
* pkg check -d now installed packages tags as automatic
* performance improvements
- changes:
* pkg query now fails if no format strings has been provided
* pkg delete pkg is no more allowed expect if -f is specified
* large improvements on pkg backup/restore interface
* do not propose to downgrade dependencies expect if forced to
* every script execution now uses posix_spawn(3)
* this abi is now check on pkg update, if a remote repository does not fit the
desired abi, pkg update will fail.
* allow pkg set -o even if the oldoriring has been uninstalled
* pkg version now has -O to match on package origin
* respect TMPDIR environnement setting
* pkg.conf now has a ${ABI} variable correcponding to the detected ABI or the
set one (sample pkg.conf has been modified to use it)
* when run as non root pkg upgrade is automatically set to dry-run mode
* pkg version can now work on remote repository (no need for a ports tree)
* many buf fixes and man pages improvements
- changes:
* speed improvements in pkg repo on multi core boxes
* fix pkg upgrade proposing to downgrade dependencies
* fix pkg2ng losing seom origin from dependencies
* fix losing new line informations in descriptions
* new -A option to track a new installation as automatically installed