* portversion(1) also reads MOVED and trace origin change,
and, when invoked with "-v", displays the new origin.
Example:
% portversion -v screen
screen-4.0.2_2 < needs updating (port has 4.0.2_3) (=> 'sysutils/screen')
* Add "--ignore-moved" to portupgrade(1) and portversion(1).
When invoked with this option, both programs totally ignore MOVED.
If you encounter strange behaviour of these programs, try this out.
* Add IGNORE_MOVED option to pkgtools.conf.
This can be used to selectively ignore MOVED by pkgs.
See pkgtools.conf.sample for details.
* Keep the order of MOVED entries, and do not trace back to old entries.
Previously, when encounters the following entries,
editors/emacs|editors/emacs19|2004-03-20|emacs 19.x moved to a non-default port location
editors/emacs21|editors/emacs|2004-03-20|emacs 21.x moved to default port location
portupgrade traces as "editors/emacs21" -> "editors/emacs" -> "editors/emacs19".
I thought this behavior should not be what we want to, so added this change.
PR: ports/91272
Submitted by: KOMATSU Shinichiro <koma2@lovepeers.org> (maintainer)
Thank you for reporting. I also discovered this problem a few hours ago.
The source of this trouble is that the following line exists in MOVED,
lang/php4|lang/php4|2003-05-22|re-separated from www/mod_php4
where "moved from" and "moved to" is the same, but portupgrade
does not check this case and infinite loop occurs.
Fix to this problem will be in the next portupgrade release,
but in the meanwhile, whould you commit the following patch,
please?
PR: ports/91209
Submitted by: KOMATSU Shinichiro <koma2@lovepeers.org>
(1) Change the versioning scheme of portupgrade.
portupgrade now becomes 2.0.0!
(2) Add FreshPorts support to portcvsweb(1).
You can view CVS history via FreshPorts instead of CVSweb
by using "portcvsweb -F". See the man page of portcvsweb(1) for details.
(3) If the change of the origin is written in MOVED,
portupgrade reads and chases it.
You no longer need to supply the origin of the new pkg by "-o" option.
Example:
When ftp/wget-devel is moved to ftp/wget, previously you had to run,
% portupgrade -o ftp/wget wget
Now, just run
% portupgrade wget
and portupgrade will do what you want to do.
(4) Try to guess the pkg to be upgraded, when no pkgname is supplied
as a command line argument.
This can be done only when the current directory is under $PORTSDIR.
Example:
Running
% cd /usr/ports/ftp/wget
% portupgrade
will upgrade ftp/wget.
(5) The frequency of INDEX generation on official site is now sufficient,
recommend to run "portsdb -F" (fetch INDEX from official site)
instead of "portsdb -U" (make INDEX by yourself) in portsdb(1). [1]
PR: ports/91164
Submitted by: KOMATSU Shinichiro <koma2@lovepeers.org> (maintainer)
Pointed out by: Enrique Matias <cronopios at gmail dot com> [1]
(1) For years, I have experienced that portupgrade sometimes
runs very slow. After some investigation, I found that
"pkgdb -aF" is invoked from portupgrade or other programs
(such as portversion) without having sufficient privilege
to modify /var/db/pkg/, and that error is not caught by the
caller program, and "pkgdb -aF" is invoked repeatedlly.
So, I fixed the following things:
- When pkgdb internally invoked from other program exits
with error, make the caller program also exit with error.
- Display the error messages of pkgdb that run internally
from other program.
When portupgrade or other programs die with the following error,
** You do not own /var/db/pkg. (use -f to force or run as root)
Command failed [exit code 1]: /usr/local/sbin/pkgdb -aFQ
please run "pkgdb -aF" as the user that owns /var/db/pkg (usually root).
(2) Make new tarball that contains the above fix and all
patches in files/. Bump PORTVERSION to 20051204 and change
MASTER_SITES.
PR: ports/89917
Submitted by: KOMATSU Shinichiro <koma2@lovepeers.org>
(1) Do not change default dependency (depend on ruby-bdb1),
since ruby-bdb (BDB >= 2) support is not so tested.
(2) Thus, no PORTREVISION bump.
- a little Makefile change for portlint clean
PR: ports/82000
Submitted by: Alexander Novitsky <alecn@server.v42of.icc-vvd.ru>
Reviewed by: KOMATSU Shinichiro <koma2@lovepeers.org> (maintainer)
fix minor documentation issues with the portsclean(1) manpage.
1. In the SYNOPSIS, the -L option is excluded.
2. In the description for the -Q option, an example of the -QQ option
is not given and since the other descriptions do this,
it looks nicer and is easier to read.
PR: ports/82666
Submitted by: KOMATSU Shinichiro <koma2@lovepeers.org> (maintainer)
Pointed out by: Jason E. Hale <jhale@bluebottle.com>
- change portupgrade-port-maintainership to KOMATSU Shinichiro-san
<koma2@lovepeers.org>
knu gave me approval to change portupgrade-port-maintainership to
KOMATSU-san. He is busy attending to his work. He gave me approval to
change some of his pr's responsible to me. I'll get work around
portupgrade pr with KOMATSU-san.
Submitted by: koma2@lovepeers.org
Approved by: knu
every run, which also makes portversion(1) works for non-root users
again. This is done by simply having the flag file in /var/db/
(thanks to pav for the suggestion).
- While here anyway, fix some make warnings during install on FreeBSD 6.
PR: ports/81088
Reported by: many
Tested by: Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp>
Approved by: erwin (mentor)
portsdb(1):
- Add a -F flag, which calls make fetchindex internally to
update the ports index file.
portupgrade(1):
- Make -fP properly reinstall an installed package using a binary
package.
- Do not use a binary package when custom MAKE_ARGS or -m option is
defined, unless -PP is specified.
portsclean(1):
- -L: Make sure that a library does not shadow itself.
misc.:
- RcNG'ify the startup script.
- Do not use Object#class which is obsolete in Ruby >=1.8.
error when such configuration variable as MAKE_ARGS, typically
BEFORE_DEINSTALL is not defined.
Reported by: krion, Tsurutani Naoki <turutani@scphys.kyoto-u.ac.jp>
portupgrade:
- Make -PP/--use-packages-only work better, just as I originally
intended. Now packages are correctly identified using
pkg_info(1), "LATEST_LINK" files are also properly detected.
Related informational messages have also been improved.
It turned out that the LATEST_LINK/NO_LATEST_LINK detection was
broken long ago and hasn't been working for long.
pkg_fetch(1):
- Properly rename a "latest link" file with a full package name with
version part.
pkgtools.conf(5):
- Improve and unify the method for pattern matching in MAKE_ARGS,
BEFOREBUILD, BEFOREDEINSTALL and AFTERINSTALL variables.
This should fix some cases where it looks like MAKE_ARGS entries
are ignored.
overall:
- Update Copyright years.
- Apply massive message improvement. (I hope..)
pkgtools.conf(5):
- pkg_site_mirror(): Use pointyhat.FreeBSD.org instead of bento and
beta.
portupgrade(1):
- Indicate some pieces of information on what is going on in the
process title.
portversion(1):
- Make a generated script (with -c) accept additional arguments for
portupgrade(1).
- Ignore padded 0's in version comparison.
This fixes a bug 2.00 being wrongly regarded as equal to 2.0.2.
- Show a summary of how many packages were upgraded, ignored, skipped
and failed after listing results.
Requested by: netchild
portsdb(1)
- Follow ports intrastructure changes wrt build-time dependency --
now portsdb -U properly picks EXTRACT_DEPENDS so they appear build-time
dependency. (Thanks to schweikh)
misc.
- Fix typos in documentation. I seem to be unable to spell "pacakge"
correctly, being a portmgr. Or was it "pakcage" ? Anyway, it was
fortunate that I wasn't a packge manager.
- If pkg_* is found in $PREFIX/sbin, use them instead of ones in
/usr/sbin. (regardless of the value of PATH)
- pkg_fetch(1): Some servers like bento transfer packages files
uncompressed, so add a workaround for this. They are automatically
recompressed.
- Get -q to work properly again.
- As the MOVED file is getting bigger and bigger, do not cache all the
entries in memory but look it up every time needed.
- Show how to specify multiple arguments in one MAKE_ARG entry.
FreeBSD PR: ports/54631
Submitted by: Bruce M Simpson <bms@spc.org>
portsdb(1):
- COMMENTFILE is deprecated. Weird. I thought I committed these
changes long long ago.
Submitted by: Jean-Yves Lefort <jylefort@brutele.be>.
portupgrade(1):
- -A/-B: Remove ;'s and spaces at the beginning of each command line
to stop sh(1) from issuing a syntax error.
- -A/-B: Omit running null commands.
- Run AFTERINSTALL commands after restoring a failed upgrade also.
- Fix a run time error caused by any?.
pkgtools.conf(5):
- Introduce BEFOREDEINSTALL.
- Deprecate rc_file() and rc_files(), and provide
enabled_rc_scripts() and disabled_rc_scripts() instead.
- Provide cmd_start_rc(), cmd_stop_rc(), and cmd_enable_rc() in
addition to cmd_restart_rc() and cmd_disable_rc().
- Update examples.
pkg_deinstall(1):
- Run BEFOREDEINSTALL commands before deinstalling a package.
pkgdb(1):
- Add a missing comma and unbreak the cyclic dependency
fixer.
Submitted by: ITO Tsuyoshi <tsuyoshi@is.s.u-tokyo.ac.jp>
portupgrade(1):
- Update man page. Running pkgdb -F is no longer mandatory unless so
directed by the pkgtools.
portupgrade(1):
- Improve the packages support: When installing a binary package,
automatically detect and install ports/packages it depends on.
portsdb(1):
- Replace COMMENT with COMMENTFILE.
Submitted by: Jean-Yves Lefort <jylefort@brutele.be>
pkgdb(1):
- Treat bsdpan-* packages specially; set their origins to those of
p5-* where possible.
Requested by: nik
- Fix a minor problem with modifying the origin information of a
package where it has no origin line.
pkgtools.conf(5):
- Make MAKE_ARGS more intelligent so installed pkgnames such as
'ruby18-*' => 'RUBY_VER=1.8' is understood.
- Chase the bento site hierarchy change.
- Update some of the examples.
portupgrade(1):
- Change the meaning of -D/--distclean. When specified once, delete
failed distfiles and retry when checksum fails. When specified
twice, do "make distclean" before each fetch or build (as -D meant
before).
- Make -F/--fetch-only call make checksum/checksum-recursive instead
of make fetch/fetch-recursive.
- Rename -l/--log-results to -l/--results-file.
- Rename -L/--log-prefix to -L/--log-file and make it accept a
printf(3) style format.
pkg_which(1)/pkgdb(3):
- Store and look for file names after resolving symlinks using
realpath(3).
miscellaneous:
- Fix some macro bugs in manpage.
- Fix a typo in the PORTUPGRADE example in pkgtools.conf.
pkgdb(1):
- Fix a problem in pkgdb's automatic dependency fixer that it only
fixes the first found problem and leaves the rest.
portsclean(1):
- Fix a problem that portsclean(1) does wrong if a library search path
has a trailing / or a double /. This could confuse users.
PR: ports/46162
Submitted by: Lev A. Serebryakov <lev@serebryakov.spb.ru>
Approved by; lioux (his first approval as a portmgr!) & knu ;)