recently mingled.
- Fix a bug where portupgrade fails in error if -f is given and it
tries to reinstall the same version of a package.
Reported by: Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp>
FreeBSD PR: 31730
- Fix a bug where portversion reports results all reversed. ;(
Reported by: Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp>
FreeBSD PR: 31731
- Fix a problem where it fails to parse uname(1)'s output when it has
a release suffix; e.g. `4.4-STABLE-20011103-JPSNAP i386'.
Reported by: Mark Russell <mark@mark.net.au>
- Add a minimal manual page for pkgtools.conf(5).
- portversion: Fix a typo: errir -> error.
Found by: TOGAWA Satoshi <toga@puyo.org>
Fix a recently caused problem where portupgrade might raise an error
during detecting obsoleted dependencies.
Reported by: Fritz Heinrichmeyer <jfh@jfh00.fernuni-hagen.de>
portupgrade:
Properly remove obsoleted dependencies in an upgrade. This reduces
pkgdb(1)'s turn.
portversion:
Inspect the origin port to get the latest version if a package's
origin is not found in the ports database.
Distinguish between `origin is not recorded' and `origin port is not
found'. Now the flag `#' represents the former and the flag `?'
represents the latter.
- Resurrect the flag `!', which means `port Makefile broken'.
- Yes, the meanings of `#' and `!' have been reversed. Because we
would hardly see ports missing origins any longer, I decided to
assign `!' to the one we see more often.
portsdb:
Call make_describe_pass[12] with the full paths. This fixes a
problem where `portsdb -U' cannot run them if ${PREFIX}/sbin is not
in the PATH.
miscellaneous:
Improve the build process.
- Move shebang line adjustment and ${PREFIX} substitution from the
port Makefile to the source Makefiles.
- Add Makefile.compat in order to support old systems which
doesn't have the SCRIPTS framework. (4.3 or prior)
the path to the environment directory to be used.
This allows you to do neat things like:
[roam@straylight:v0 /usr/ports/textproc/docproj]$ mkdir -p `penv -p`
[roam@straylight:v0 /usr/ports/textproc/docproj]$ echo no > `penv -p`/JADETEX
[roam@straylight:v0 /usr/ports/textproc/docproj]$ echo yes > `penv -p`/A4
[roam@straylight:v0 /usr/ports/textproc/docproj]$ penv -L
JADETEX=no
A4=yes
[roam@straylight:v0 /usr/ports/textproc/docproj]$ penv make clean all install
..and watch the port build fly!
portupgrade:
- Fix quotes.
[Submitted by: Jimmy Olgeni <olgeni@uli.it>]
- Do not ask whether to install a port twice. (portinstall/-N)
- Complete missing words in the manpage.
pkgdb:
- Comment out deleted pkgdeps properly.
misc.:
- Convert the install script to Makefiles.
- Change the examples/docs subdirectory name from `portupgrade' to
`pkgtools'.
reached the one step higher level. It's *really* powerful. Enjoy! :)
portupgrade:
- Greatly improve the procedure of binary upgrading (-P/-PP):
When a fetched package is not of the latest version:
1) If -PP is given and the package is at least newer than the
current installation, put up with it and do an upgrade.
2) If -PP is given and the package is now newer than the current
installation, give up.
3) Else, fall back to the port.
This way you can now do binary upgrades just as you'd expect.
- Improve the new installation procedure as well.
- Allow using ports glob patterns in the configutation variables
MAKE_ARGS and HOLD_PORTS.
- If a port/package matches multiple entries of MAKE_ARGS, join all
the arguments using the space as separator.
pkg_fetch:
- Introduce a new {environment,configuration} variable PKG_SITES.
You can now specify multiple URI's to fetch packages from.
- When a URI is given, check for the last path component and if it is
not "Latest" or "All", fetch the dependent ports from the same
directory. (-R)
- Do not repeat same error messages.
- Properly reflect the environment variables defined in pkgtools.conf.
pkg_deinstall:
- Add a timestamp hack as well as portupgrade to let the pkgdb engine
properly detect an update of PKG_DBDIR.
pkgdb:
- When the user chooses to delete a dependency, comment the line out
instead of deleting it.
pkgtools.conf:
- Provide some useful predefined constants and functions.
people's help. Thanks so much!
portupgrade:
- D'oh! Fix a stupid bug where portupgrade didn't modify
dependencies when upgrading a package while portupgrade _is_ meant
to do that. ;) But you don't need to worry: `pkgdb -F' can always
handle that situation.
This bug had been there since 2 October, and was finally exposed by
the newly introduced dependency sanity checks. I guess you has been
annoyed by the warnings, but they are gone now. ;)
Reported by: Ollivier Robert <roberto@eurocontrol.fr>
- Make portupgrade download packages from a remote site if -P is
specified. Now one can do binary upgrading in a handy way:
portupgrade -P foo bar
Instead of:
portupgrade -FP foo bar && portupgrade -P foo bar
Although the latter is friendlier to dialup users.
- Add a delay between deinstallation and installation to let pkgdb
properly detect the update of PKG_DBDIR entries.
- Since pkg_add(1) is mute, always show a progress message when
invoking it no matter whether -v is given or not.
- Make -f override "hold" marks set in pkgtools.conf.
pkgdb:
- Since the dbm routines in libc seem to dead lock in some cases,
slightly change the DB format and bump the DB version accordingly.
Reported by: Ollivier Robert <roberto@eurocontrol.fr> and others
- Make sure to check DB version when checking for a DB. (-u)
pkg_fetch, pkgdb, portsclean, portsdb:
- Make them read the configuration file and add the -q/--no-config
option just as other tools.
pkgtools.conf:
- Add examples for PKG_FETCH, PACKAGEROOT and PACKAGESITE.
- Introduce new configuration variables: IGNORE_CATEGORIES and
EXTRA_CATEGORIES.
- Now one can set common environment variables in this file.
- Now all the tools read this file by default.
overall:
- Reword and enhance the manual pages and the usage instructions.
- Clarify the explanation about port/package dependency.
Submitted by: Jos Backus <josb@cncdsl.com> (Thanks a lot!)
portupgrade, portversion, pkg_deinstall, pkg_glob:
Introduce the configuration file `pkgtools.conf' for the pkgtools
suite. Currently portupgrade(1), portversion(1), pkg_deinstall(1)
and pkg_glob(1) use it.
Add a new option -q/--no-config to avoid reading the configuration
file.
Introduce dependency sanity checks. If an inconsistency is
detected, immediately abort a process suggesting the user should run
`pkgdb -F'.
Add a new option -O/--omit-check to omit the sanity checks.
pkgdb:
Fix the origin guesser's minor bug when the origin port directory
does not exist.
portupgrade:
Add a new option -y/--yes, which lets portupgrade assume user
answers yes to all the questions.
Make sure to ask user where it should. (Get -N and -i right)
Fix a bug where portinstall -i didn't work interactively.
[Submitted by: Gregory Neil Shapiro <gshapiro@gshapiro.net>]
portsdb:
Attempt to offer fast INDEX generation. Now it generates an INDEX
file more than a few minutes faster.
overall:
Emit a warning when pkgdb cannot be updated though it is not
up-to-date.
Finally remove -E/--regex. Use the ':RE' glob pattern instead.
* IPv4 and IPv6 network files can be selected with -i4 and -i6.
(IPv6 network file selection is only possible when lsof supports
IPv6 for the dialect.)
* Added new output field for raw device number in hex. The field is
identified with 'r'. This field is NOT selected when -F or -F0 is
specified so that its appearance won't disturb existing scripts that
process field output.
portupgrade:
Fix a couple of bugs where `portupgrade -h | more' doesn't show the
usage nicely.
Reported by: Gregory Neil Shapiro <gshapiro@gshapiro.net>
portsclean:
Make good use of portsdb and pkgdb, use lazy (but virtually
sufficient) checks and get distclean much faster. (both -D and -DD)
portsdb:
Do not fail even if some categories are missing in the ports tree.
Reported and tested by: Jos Backus <josb@cncdsl.com>
And some other internal bugfixes that do not affect the user tools.
release again. (Hopefully)
portupgrade:
Delete an unneeded exception snatcher. This fixes a bug where ports
marked as IGNORE are not properly skipped.
pkgdb:
Rebuild pkgdb if it looks like broken, instead of resulting in
failure.
Unbreak regexp match. ;)
Fix a typo of a variable name in an error message.
[Reported by: Stijn Hoop <stijn@win.tue.nl>]
portsdb:
Allow a port dir to be a symlink to a directory.
Add support for the case where some catetories are missing in a
ports tree.
[Submitted by: Jos Backus <josb@cncdsl.com>]
pkgdb:
Fix a type error and unbreak date-based pkg glob.
[Reported by: Ollivier Robert <roberto@keltia.freenix.fr>]
portupgrade:
Silence pkg_info when it does not find a package.
[Submitted by: Jimmy Olgeni <olgeni@uli.it>]