Commit graph

77 commits

Author SHA1 Message Date
Baptiste Daroussin
e78a6af418 Update to 1.5.1
Changes:
- Fix pkg ssh://
- Fix a missing '\n' in pkg audit
- Fix compat at functions to not mess up with cwd
2015-04-16 15:28:37 +00:00
Baptiste Daroussin
27b1e9e432 Update to 1.5.0
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,
2015-04-14 19:07:53 +00:00
Baptiste Daroussin
3c3b3a32c6 Release pkg 1.4.12:
- Fix a bug that can generate an unlinkat issue on dragonfly
2015-02-13 19:45:44 +00:00
Baptiste Daroussin
d8b3fe2296 Release 1.4.11
Changes:
- show repository priority in pkg -vv
- document pkg_repo_priority() in pkg_repos(3)
- fix a bug handling chflags on systems without chflagsat reported on dfly but
  might also affect FreeBSD 8 and 9 even if no bugs were reported yet [1]

[1] Special thanks goes to Dillon for removing the dirt our of my eyes and
spotting the bug, Antonio Huete Jimenez (tuxillo) for testing and tracking the
bug since it has been spotted on dragonfly
2015-02-11 21:44:47 +00:00
Baptiste Daroussin
e6d0c7f821 Update to 1.4.10 and 1.4.99.10
- Fix a regression causing bus error

Reported by:	marino
2015-02-05 10:24:50 +00:00
Baptiste Daroussin
4617df4fba Update pkg to 1.4.9
Update pkg-devel to 1.4.99.9
Changes:
- Fix regression introduced in 1.4.8 [1]
- Document pkg set -n
- add pkg alias

Reported by:	mandree [1]
2015-02-04 22:38:00 +00:00
Baptiste Daroussin
4b43394ffe Update to 1.4.8
Changes:
- Tons of resources leak plugged (thanks coverity)
- Fix size calculation output
- Fix 'pkg add -M -'
- Update libucl to latest version
- Improve documentation
2015-02-04 20:48:33 +00:00
Baptiste Daroussin
de9b9ec948 Release 1.4.7:
Changes:
- pkg updating now support case insensitive matching
- pkg_printf(3) support %x (so print the size of the package tarball)
- Use SI symbols (MiB instead of MB)
- When using procctl on an older kernel that does not implement the reaper
functionnality, be explicit about the failing syscall.
- Lofs of fixes on the chflags handling
2015-01-23 15:57:20 +00:00
Baptiste Daroussin
2f45dcbc07 Release 1.4.6
Fix a last minute regression
2015-01-17 17:43:17 +00:00
Baptiste Daroussin
0b0cb10555 Release 1.4.5
Changes:
- Enforce a bit more pkgname a unicity identifier
- Fix regression on pkg query with multiline
- Fix sql error on some pkg query
- Stop again caching files for file:/// repos
- Do not trust libarchive to apply modes
- Accept tar files in repositories
- Handle chflags
- Some updates in documentation
2015-01-17 16:48:40 +00:00
Baptiste Daroussin
53dca1a4eb Release 1.4.4
Changes:
- Remove lots of dead code
- Fix pkg stat reporting the size of remote repositories
- Remove execinfo dependency
- Fix pkg check with no active remote db
- Remove outdated example from manpages
- More accurate error messages in pkg check
- Use the new procctl(2) features when possible to prevent script from spawning daemons
- More fixes in integrity check
- Improvements in zsh completion
2015-01-02 15:09:07 +00:00
Baptiste Daroussin
dcce7a470c Update to 1.4.3 and 1.4.99.3
Changes:
- Fix integrity check in multi repository
- Document CONSERVATIVE_UPGRADE
- Document repository priority
- Do not duplicate replacement request
2014-12-29 20:14:49 +00:00
Baptiste Daroussin
58c057d2bc Update pkg to 1.4.2 and pkg-devel to 1.4.99.2:
Changes:
- Fix applying proper modes on directories on some corner cases (fixes pkg install mailman)
- Do not display pkg-message is pkg register fails
- During removal, if a directory was already removed by a bogus script, continue removing parents.

Changes specific to -devel:
- pkg -d now set DEBUG_LEVEL -d == DEBUG_LEVEL=1 -dd == 2 etc
2014-12-27 11:22:29 +00:00
Baptiste Daroussin
903e334d32 Release pkg 1.4.1 and 1.4.99.1
Changes:
- Manpages updates
- Fix directory removal guard
- Fix loading of files from packages
- Add new CONSERVATIVE_UPGRADE option to enforce keeping package from the
  repository they were installed from
- Add priority support for multi repository

While this version improves a lot multi repo support please note that there is a
known bug resulting in failures during integrity checking, resulting in some
operations may have to be run twice we are investigating a fix
2014-12-22 19:57:53 +00:00
Baptiste Daroussin
4126c83152 Update pkg to 1.4.0
Update pkg-devel to 1.4.99.0 (aka 1.5 pre-alpha0)
Changes since pkg 1.3.0:
Changes you can expect in pkg 1.4 are the following:
- Loads of bug fixes
- Stricter checking of the path passed via the plist
- Removal of the bundled libyaml
- new --raw-format to chose the output format for info -R and search -R
- ABI (for freebsd, unchanged for dragonfly) is now follwing MACHINE_ARCH
  (freebsd:10:x86:64 become FreeBSD:10:amd64) the old ABI is available as a
  fallback in ALTABI
- pkg check now support a quiet mode
- new 3 way merge code ("stolen" from the fossil-scm) to allow automerging
configuration files
- new @config keyword to mark a file as a config file (during
  upgrade/reinstallation it will try to merge the configuration with the one the
  user may have modified) an option AUTOMERGE is available to prevent
  automerging if automerge fails a .pkgnew file will be created along with the
  untouched user version of the configuration
- The update procedure has been improved and speed up a lot (in particular for
  machine with low resources)
- The unique identifier has been modified to be pkgname meaning now ports can be
  moved in new categories without having to be considered a different package
- Only libraries starting by lib* are added to the provided libraries
- General speed up of all operations
- pkg set gain a -n option (equivalent to -o but works on name rather than origin)
- pkg set -o now considered deprecated
- pkg version accept '?' and '!' in pkg version limchar
2014-12-09 14:22:10 +00:00
Baptiste Daroussin
6423d85837 Update to 1.3.8 Changes:
- Plist parser do not accept modes like o+w g+s u+r
- @owner/@group with no argument reset the default ownership to root/wheel
- Plug regression tests into the release mechanism as mandatory
- Allow url in repository configuration to be overriden by another configuration
  file
- If one of -P, -I or -R is not explicitly given on the command line do not emit
  error messages while searching for a mechanism to find data about the latest
  available ports.
- External keywords can now take arguments
- Directories under PREFIX are automatically handled and removed if needed
- MTREE are not packaged anymore neither extracted on final installation
- OS major checking (to determine if pkg is running on an upgraded base system)
  uses the same mechanism as ABI detection instead of relying on UNAME_r which
  can have false positivie on jails
- Add @dir keyword for plist which is used to package explicitly directories
  (directories with non root/wheel or outside prefix) and empty directories
  (@dirrm and @dirrmtry are now considered as deprecated)
- root/wheel are now considered as the default user/group when creating a
  package except @owner/@group are used to change that behaviour
- Import newer version of libucl which improves error messages in case of
  problem parsing manifest or configuration files
- Fix pkg register so it checks for conflicts before actually copying files on
  to the filesystem
- pkg now support a new no_provide_lib annotation to preventing automatic
  populating of provided libs (useful for packages bundling libraries like wine)
- Improve documentations
- Ability to select usage of IPv4/IPv6 via config, repository config or command
  line
- Lots of bug fixes

Side effects:
- Convert to install-mtree target into a no-op target Add empty directories to
  plist of ports that needs them to run:
- share/aclocal to devel/automake and devel/automake14
- share/applications to devel/desktop-file-utils
- share/xml share/sgml to textproc/xmlcatmgr
- Prevent check-plist to issue warnings about some @dir*
- Adjist check_leftovers.sh to not take in account anything related to mtree
- Bump the default required version of pkg to 1.3.8
2014-09-22 05:47:32 +00:00
Bryan Drewery
85f33299be - Update to 1.3.7
Please note announcement for special instructions at:
    http://lists.freebsd.org/pipermail/freebsd-ports-announce/2014-August/000086.html
  - Users need to run 'pkg check -Ba' after upgrading to pkg-1.3.7 and before
    updating any other packages. This avoids needing to reinstall anything
    not needed due to changed shlibs.
  - People building packages for serving to other systems need to rebuild
    all packages with 1.3.7.

Changes:
  * Test suite fixes
  * Documentation updates
  * pkg-rquery(8): Add a pointer to EXAMPLES in pkg-query(8)
  * If opening the db in READ_ONLY give a warning if it is missing
  * Give advice on how to recreate the database if auto-updating was skipped
  * Remove pkg --check-activation. It is too tempting to use.
  * Make it more clear that the 'Major version' change is non-fatal
  * Jobs display: Avoid excessive newline before prompt and after unprompted usage
  * Remove references to PACKAGESITE/MIRROR_TYPE/PUBKEY
  * Support uppercase ENABLED in repo config.
  * Avoid POLA, make PACKAGESITE/MIRROR_TYPE/PUBKEY in pkg.conf fatal
  * Fix self upgrade loop with pkg upgrade -Fy
  * Fix self upgrade not using the new pkg binary
  * pkg-{delete,autoremove}: Use a readonly lock in dry run
  * pkg-convert: Add locking. EXCLUSIVE by default, READONLY with -n
  * pkg-convert: Check for proper db permissions for both real and dry_run mode
  * pkg-convert -r: Only a readonly lock is required for converting from the db
  * pkg-convert -r: Add common db access checks
  * pkg convert -r: Don't crash if unable to create the package dir
  * Revert stripping shlib versions from e127d91d4.
    This will require rebuilding packages on the repository and then
    running pkg check -Ba to fully utilize. Until packages are rebuilt
    there may be false-positive shlib reinstalls.
  * pkg {register, check -B}: Fix registering provided shlibs as required
  * When analysing ELF files with DEVELOPER_MODE, don't bail on first error
  * Fix pkg-ssh when SSH_RESTRICT_DIR is a symlink
  * Fix size calculations with hardlinks
  * Fix pkg-which glob
  * pkg fetch -d: Fix crash (#955)
  * Progress bar improvements/fixes
  * Fix ETA for fetching (#943)
  * Fix progressbar stalled support
  * ETA progress: Account for TCP SLOW START and weigh the first few ticks less
  * Rework 'pkg update' output slightly to clarify what it is doing.
  * pkg check: Add progressbar when not using -v
  * pkg check: Add job counter with using -v
  * pkg clean: Add progressbar
  * Fix hardlink calculations (#958)
  * pkg backup: Add -q
  * pkg backup: Remove docs for '-d -' as it does not work.
  * pkg config: Fix output for arrays/objects (#971)
  * Fix RC scripts being started on deinstall rather than stopped
  * Add some more asserts
  * pkg-fetch.8: Remove reference to removed mirror mode
  * Fix a few typos in pkg.conf.5 (#969)
  * Document new configuration options. (#969)
  * Fix always refetching of file:// and ftp:// repositories
  * pkg query -g: Fix handling of ranges such as 'name-[0-9]*' which
    is used by ports CONFLICTS checking
  * Fix crash when SIGNATURE_TYPE=PUBKEY but PUBKEY is not defined
2014-08-26 23:12:10 +00:00
Bryan Drewery
953e70af39 - Update to 1.3.6
Changes:
  * Fix bringing in i386-wine* as a dependency (requires rebuilding
    the wine package). This is fixed, for now, by not considering
    shlibs as provided by a package if they do not match the target
    architecture. (#922)
    !!! You should delete the i386-wine and i386-wine-devel !!!
    !!! packages from your repository so they rebuild.      !!!
    !!! Bumping of PORTREVISION is pending due to the       !!!
    !!! nature of these ports.                              !!!
  * Fix auto reinstallation of packages when shlibs/dependencies
    change. This will force a 'pkg update' to run to rebuild
    the local repository. Using -U will not work until this is
    done. (#933)
  * Fix 'pkg rquery %Av' (requires rerunning pkg-repo on remote) (#925)
  * Fix pkg_solve_sat_problem assertions (#915)
  * Fix 'pkg install -f' (#912)
    'pkg install -R[f]' is still known to not work (#926)
  * Fix 'pkg rquery -e' (#910)
  * Fix 'size mismatch' errors requiring 'pkg update -f' (#906)
  * Fix other cases of 'pkg update -f' being required.
  * Fix 'pkg clean' to show files before confirming (#887)
  * Fix upgrade/install not showing meta packages in the output (#909)
  * Fix 'pkg autoremove -n' asking for confirmation
  * Fix 'pkg lock' not being respected for forced operations (#911, #937).
    Note that a locked package may still be deleted if the solver determines
    it is no longer needed.
  * Fix 'pkg delete -q'
  * Replace the SAT solver with Picosat (#914). This is much more mature
    and stable than our previous solver. It, along with other work, fixes
    many issues with solving upgrades.
  * 'pkg ssh' fixes
  * Do not consider shlib versions for package provides/requires as there is
    discrepency in what packages provide and what other require. For now only
    rely on libname.so.

With hat:	portmgr
2014-08-12 17:31:09 +00:00
Baptiste Daroussin
79c0313d7a Update to 1.3.5.1
- Fix units propagation and conflicts.
- Add a convenience new configure option to avoid configure to try to find autoconf
2014-08-05 20:42:11 +00:00
Baptiste Daroussin
f7b9fe4d55 Update to 1.3.5
Changes:
- Fix progress bars when not in a tty to give output
- Dragonfly fixes
- Multiple fixes in @keywords(user,group,mode) support
- Important fixes in repo incremental updates
- Fix pkg audit not returning an error in case of vulneraibilities found (making periodic script not working)
- Ignore sigpipe
- Make the read lock now no op
- Directories can be listed in the plist like files they will be considered like @dirrmtry
- Very important refactor and fixes in the solver making the whole code more manageable:
  - This fixes multirepo support
  - Fixes missed upgrades
- Fix pkg rquery -e with complex (%#r for example) queries
- Fix pkg upgrade -f
2014-08-05 14:56:44 +00:00
Baptiste Daroussin
4ef2593546 Update to 1.3.4
Changes:
- Fix repo database manipulation on FS with no proper locking mechanism
- Fix regression where options have "true" value instead of "on"
- Prevent early destruction of a repo
- Workaround new nginx behaviour of if_modified_since
- Fix pkg set -o
- Improve some error messages
- Do not fallback on yaml anymore to parse new keywords
2014-08-01 15:05:22 +00:00
Baptiste Daroussin
df093ba3ca Update to 1.3.3
Changes:
- Always use bundled libsbuf
- Make pkg help aware of aliases
- Add more debug info
- Yet another fix for pkg repo
- Fix some size to chase ucl changes
- Fix a bug if one if creating a package and a directory of that name exists
- Fix plist whitspace trimming
- Fix pkg_env
- Fix pkg ssh
- Allow pkg ssh server to serve poudriere made repositories
- Fix again pkg install -A
2014-07-29 17:19:37 +00:00
Baptiste Daroussin
89baf77680 Update to 1.3.2
Changes:
- Import fixes from libucl (fixes memory corruption with pkg.conf)
- Fix memory corruption when reinstalling packages
- Rework pkg repo process distribution
2014-07-27 23:30:11 +00:00
Baptiste Daroussin
d268986101 Update to 1.3.1
Changes:
- Add a WORKERS_COUNT option to limit the number of workers used during pkg repo
- Fix pkg repo hanging on FreeBSD 8 and 9
- Fix migration of local database from 1.2 to 1.3 which was resetting the installation time
- Print the repository in search informations
- Ignore meta file when rebuilding a repository
- Lots of fixes in libucl
- Fix pkg info -R to generate a valid yaml
- Accept empty pkg.conf files
- Accept empty repository configuration files
- Fix pkg.conf reading so keys are now case insensitive again
- Blog sigalarn when reading passphrase allowing to sign packages with a passphrase protected key
- Install again zsh completion as _pkg instead of _pkg.zsh
- Rework the upgrade/install procedure so it doesn't leave files behind anymore and properly runs scripts
- Install periodic scripts with an executable bit
- Speed up pkg version without INDEX
- Preserve automatic flag on forced upgrade/reinstall
- Fix memory corruption on reinstall
2014-07-26 23:08:04 +00:00
Baptiste Daroussin
d68c200ddc Update to 1.3.0
Since pkg 1.2:
- 373 files changed, 66973 insertions(+), 38512 deletions(-)
- 29 differents contributors
- Merge of one of the 2013 Summer of code project

Changelog:
- New solver that can support external solvers using the CUDF format and the
internal SAT solver
- pkg-ssh(8) is now sandboxed with capsicum if it is available
- pkg-ssh(8) now uses poll(2)
- Remove StringList usage to improve portability
- Rework the build system to use autotools to help portability
- Now fetching is done to a temporary location and cleaned up if it fails
- Remove PACKAGESITE
- pkg-audit: remove support for portaudit compact database (only VulnXML will be
used)
- Improved UI experience based on jmmv write up
(http://julipedia.meroh.net/search/label/cli-design)
- Reworking the database locking mechanism into a finer grain and more clever
system
- Dynamic conflict handling if a conflict on files is detected at the sanity
check level, try to solve the problem again with the new conflict information
- Fix %t (timestamp) modifier in pkg_printf(3)
- Full output now has a new field "date installed"
- New pkg -o A=B to overwrite configuration from command line without the need
of defining environment variables
- pkg-install now can handle local files
- pkg-add is now an alias on pkg-install
- Simplify API by using more and more libucl objects (hidden behind an opaque
'pkg_object')
- Rework multirepository handling
- Prepare code for repository abstraction support
- Sandbox signature checking and extraction
- Support long options
- Rework the extraction process
- unicity of a package is now origin~name allowing subpackages and flavours
- Improve ui for all commands
- pkg lock -l now list the locked packages
- symlinks now has a checksum to ensure they are valid
- pkg backups generated by the distributed script are now plain sql files
- Tons of bugfixes
- Tons of behavour fixes
2014-07-23 14:22:09 +00:00
Bryan Drewery
b0b8ff6067 - Update to 1.2.7
Changes:
  - Only fallback to YAML if UCL parsing fails
  - pkg2ng: Hide warnings about @mtree, @stopdaemon, @comment
    @display and @conflicts
  - Fix escaping issues with COMMENT
  - pkg add: Fix -A to properly mark package as automatic
  - pkg2ng: Fix over NFS
  - pkg2ng: Show message while analyzing shared libraries
2014-03-15 23:41:54 +00:00
Bryan Drewery
e5166e09fc - Update pkg and pkg-devel to 1.2.6
This update includes a security update for possible arbitrary code
  execution from package manifest parsing. All users are advised to
  upgrade ASAP. The base pkg(7) was never affected by this. [1]

Changes:
  * Fix libyaml head-based buffer overflow [1]
  * Fix pkg info -E support for ports, which namely affected
    net/openldap* usage. [2]
  * Fix packages registering themselves as dependencies [3]
  * Bash autocompletion fixes [4]
  * autoremove: Don't try to remove locked packages
  * Support 'pkg bootstrap -f', which will force a reinstall of pkg
    on FreeBSD 10.0+
  * Fix %t timestamp formatter with %{...%} modifiers [5]
  * pkg info: Show date installed
  * Add $daily_status_security_pkgaudit_quiet to control 410.pkg-audit.in
    output verbosity level
  * Add an error when trying to update repository and none are defined [6]
  * Fix typos in manpages [7]

Security:	CVE-2013-6393 [1]
Reported by:	secteam (delphij) [1]
PR:		ports/184797 [2]
Reported by:	Pavel Timofeev <timp87@gmail.com> [2], many
Submitted by:	smh@ [3]
Submitted by:	brd@ [4]
Submitted by:	Jamie Landeg Jones [5]
Submitted by:	Rodrigo Osorio [6]
Submitted by:	Michael Gehring, wblock [7]
With hat:	portmgr
MFH:		2014Q1
2014-02-01 21:12:47 +00:00
Baptiste Daroussin
eeedb5abf8 Update to 1.2.5:
- Manpage improvements
- fix $auditfile in pkg audit periodic script
- Fix repo-*.sqlite being corrupted when pkg update is interrupted by the user
- pkg add now tells the version of the package missing
- Strop decoding/encoding all fields, only scripts and description are now encoded/decoded
2014-01-13 14:19:29 +00:00
Baptiste Daroussin
70dc3770c8 Update to 1.2.4
Changes:
- Fix segfault in pkg audit -F [1]
- Fix multiple segfault when using eventpipe [2]
- Fix REPOS_DIR being appended instead of overwritten when modified from pkg.conf

Reported by:	many [1]
Reported by:	kmoore [2]
2013-12-16 08:00:15 +00:00
Baptiste Daroussin
0041687f76 Update to pkg 1.2.3
Changes:
- Workaround a bug in bsd.*.mk on FreeBSD 8.x
- Fix a pkg repo segfault
- Document aliases in pkg.conf(5)
- Be more verbose when refusing a repository configuration file
- Sync libucl with upstream (bug fixes)
- Fix a fd leak in pkg repo
- Fix memory leaks due bad usage of libarchive
2013-12-10 15:44:42 +00:00
Baptiste Daroussin
d6b482fe1c Update to 1.2.2
Changelog:
- Fix pkg which returns bogus non-zero exit status on success
- Better check libucl returns
- Fix bad build system resulting in broken binaries on arm and ia64
- Update pkg.conf documentation
- Add manpage for pkg config
- OOTB support for dragonfly
- Lots of fixes in libucl
- Fix pkg register complaining about shared libraries not found
- Do not resume a jailed or chrooted pkg(8) upgrade
- Document the plist format (in pkg-create(8))
- Pet mandoc -Tlint
- Add manpage for pkg_repos(3)
- Fix dependencies losing portepoch information
- pkg-[r]query: Add %q to display architecture
- Fix pkg add allowing to install package with missing dependencies
- Fix description being stored escaped

Special thanks to mat@ (for bug busting) and cognet@ (tracking down 2 issues
on arm and as a side effect fixing on ia64
2013-12-06 15:35:13 +00:00
Baptiste Daroussin
a00c8be88c Release pkg 1.2.1
Changes:
- Fix pkg rquery always printing index like lines
- Fix pkg -vv suggestion so it print something actually usable
- Fix shlib's -P and -R options were swapped round.
- Replace broken pkg_repos_count() by pkg_repos_total_count() and pkg_repos_activated_count()
- Fix parsing of options (in manifest)
- pkg add http:// now fetch to a temporary location and cleanup after itself
- Fix generation of the manifest digest
- Properly calculate how many packages where removed
- Fix support for dependencies with the same name (grrrr Fix you port if they have package name collision !!!!)
- Fix pkg info -R in case multiple dependencies has the same name
2013-11-27 18:26:48 +00:00
Baptiste Daroussin
579d16acec Welcome pkg 1.2 final
Changelog:
- Improved build system
- Allow to hook plugins, before closing the local db if it was opened in RW mode
- Allow ARCH to be printed by pkg info
- New pkg bootstrap subcommand that is the counter part of the pkg(7) bootstrap subcommand
- Use port specified in the SRV entries to connect to a given mirror
- Properly support srv priority/weigh when ordering mirrors
- Lots of spelling/grammar fixes
- Broken incremental pkg repo support was removed.
- ABI is now checked again using globs:
  * a 'noarch' package should just specify: ARCH: 'freebsd:*'
  * a package working on both i386 and amd64: ARCH: 'freebsd:9:x86:*'
- new pkg config subcommand to allow direct query of options
- options can now have a description
- pkg repo can now take new arguments:
  pkg repo [path] [rsa_key|'signing_command: <command>']
  This allow calling external command to perform the signing and
  pass the checksum to be signed in the command stdin.
- in case pkg info is querying a file or is a single direct match
  query then default on -f
- pkg info -q is now equivalent of pkg info -qa
- expat is now always bundled (for vuxml)
- vuxml is now the default source for pkg audit
- Accept empty/comment only configuration files
- Print a pkg name only once - even if multiple vulns were found - when using -q
  in pkg audit
- pkg info now default on glob matching
- Support for pkg+foo url scheme where foo can be (http, https, ftp).
- pkg add is now able to read the packages from a pipe or a non-regular
  file '-' is an alias for stdin, this also works from pipes, fifos,
  unix domain sockets etc.
- New 'fingerprint' kind of signature:
    if a repository is declared using the fingerprint type of
    signature, a fingerprint directory should also be provided.
    Inside that fingerprint directory should be 2 directories:
    trusted and revoked.  Those directories will contains files (in
    yaml/ucl format) containing the fingerprint of the trusted
    certificated and the revoked ones:

    --- begins --
    function: sha256
    fingerprint: an_hex_representation_of_the_fingerprint
    --- ends ---

    All unknown attribute will be silently ignored to allow extending
    in the future.

    It also support multiple signatures inside the catalog. the
    catalog should provide the signature in the following form:
    name.sig
    name.cert

- packagesite in pkg.conf is deprecated in favour using dedicated
  repository configuration files
- REPO_DIR is now a list instead of a simple string
- New git like aliases to allow creating custom commands
- Allow using '?' operator in pkg query expressions
- Fix ssh:// support
- New PKG_SSH_ARGS to allow passing custom arguments to ssh command
  used for the ssh:// protocol
- Do not generate catalogs in pkg 1.0 format anymore.
- YAML is replaced by UCL format:

  Both formats are really simular. pkg(8) will falls back on parsing YAML
  when the UCL parser fail. And will emit a warning to the
  user showing a syntax that is compatible with both YAML and UCL.
  More informations on UCL: https://github.com/vstakhov/libucl
- Dependencies on library is now automatic via pkg register and pkg
  create
- Auto upgrade of pkg(8) now restart the upgrade process automatically
- Lots of bug fixes discovered by Coverity Scan
- New debug level traces
- Bug fixes in zsh completion
- rquery can now take a -I argument to output index like lines (needed for
bsdconfig)
- Skip self upgrade with -F is passed
- Autodetect if libelf should be used bundled
- Lots of bug fixes

Thanks a lot to all people allowed this release to happen, may that be from providing
code, ideas, submitting bugs, documenting or just supporting.
2013-11-26 14:49:04 +00:00
Bryan Drewery
e2825cdfcf - Update to 1.1.4
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
2013-07-06 11:29:18 +00:00
Bryan Drewery
730af60405 - Update to 1.1.3
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
2013-06-28 22:26:28 +00:00
Baptiste Daroussin
a94a3c07fe Update to 1.1.2
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]
2013-06-25 10:08:49 +00:00
Baptiste Daroussin
1e3f0fdb2b Update to 1.1.1:
Changes:
- Fix an pkg crashing on i386
- Fix a regression on the output of pkg version
2013-06-24 13:02:06 +00:00
Baptiste Daroussin
e758ac528f Update to 1.1 final
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.
2013-06-24 06:02:21 +00:00
Bryan Drewery
70fe959214 - Update to 1.0.14, bringing minor fixes before the 1.1 release.
Changes:
  - 'pkg update' fix [already in port]
  - Crash fix on i386 [already in port]
  - Fix for periodic scripts [1]

PR:		ports/179723 [1]
Reported by:	fred@SUNBOT.Homedns.ORG [1]
2013-06-19 21:45:43 +00:00
Bryan Drewery
3ac42a22f2 - Update to 1.0.13
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
2013-06-11 13:01:56 +00:00
Bryan Drewery
d12bc1cea7 - Update to 1.0.12
*** 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
2013-05-01 18:51:46 +00:00
Bryan Drewery
8570c6914f - Update to 1.0.11
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
2013-03-31 01:02:19 +00:00
Bryan Drewery
4dbbe6647a - Update to 1.0.10
- 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
2013-03-30 04:50:17 +00:00
Bryan Drewery
78c489629d - Update to 1.0.9
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
2013-03-14 02:42:11 +00:00
Baptiste Daroussin
ed8719542a - update to 1.0.8
- 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
2013-02-20 22:37:48 +00:00
Baptiste Daroussin
c806932592 - update to 1.0.7
- 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
2013-01-28 20:42:22 +00:00
Baptiste Daroussin
c2e3d6cff0 - update to 1.0.6
- changes:
  * Avoid installing .symbols on current

Reported by:	kwm
Tested by:	kwm
2013-01-22 10:51:18 +00:00
Baptiste Daroussin
aa06b36b84 - update to 1.0.5:
- 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.
2013-01-22 07:20:08 +00:00
Baptiste Daroussin
52541f3406 - update to 1.0.4
- 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]
2012-12-21 12:21:03 +00:00
Baptiste Daroussin
6ad5396a43 - update to 1.0.3
- changes:
  * Accept to query _https._tcp srv records
  * Fix diskspace change calculation in pkg upgrade
  * Fix pkg info -s -F apackage
  * Better ABI determination
  * Fix pkg upgrade badly returning 0 in case of failure
  * Fix build with recent clang 3.2

Feature safe:	yes
2012-12-07 11:26:51 +00:00