CVE and update status of the FreeBSD ports tree3,296 unaddressed CVEs in 671 portsAll times are CET
Port details

ports-mgmt/portupgrade 2.4.16_4,2

FreeBSD ports/packages administration and management tool suite

Port info

Maintainer
bdrewery@FreeBSD.org
Packages
latest: 2.4.16_4,2
Upstream
up to date
Last update
to 2.4.16_4,2 · b9ccc3cf4a
Quarterly
2026Q4: 2.4.16_4,2
Formerly
sysutils/portupgrade until 2007-02-05
WWW
https://wiki.freebsd.org/portupgrade
Links
cgit · VuXML · Report wrong data

Install

Package
# pkg install portupgrade
installs 2.4.16_4,2 from latest; from quarterly (2026Q4) 2.4.16_4,2
Port
# cd /usr/ports/ports-mgmt/portupgrade && make install clean
# make -C /usr/ports/ports-mgmt/portupgrade config  # change options first
Size
95 KiB download · 341 KiB installed
Depends on
databases/ruby-bdb 0.6.6_9, lang/ruby34 3.4.9_2,1
License
BSD3CLAUSE
Options
1 of 1 on in the package: DOCS

Packages by version and architecture

latest

FreeBSD versionamd64aarch64i386
FreeBSD 162.4.16_4,22.4.16_4,2–
FreeBSD 152.4.16_4,22.4.16_4,2–
FreeBSD 142.4.16_4,22.4.16_4,22.4.16_4,2

quarterly (2026Q4)

FreeBSD versionamd64aarch64i386
FreeBSD 152.4.16_4,22.4.16_4,2–
FreeBSD 142.4.16_4,22.4.16_4,22.4.16_4,2

version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.

Unaddressed and VuXML only (0)

No unaddressed CVE and nothing reported by pkg audit for the packaged version 2.4.16_4,2.

Fixed (1)

Show 1 fixed
VuXML entries whose affected range the packaged version has left.

Problem reports (6) · open in Bugzilla, most recently changed first

PRSummaryStatusChanged
284053maintainer-feedback? ports-mgmt/portupgrade: Installs insecure databases/db5 as a dependencyNew2025-01-14
227747ports-mgmt/portupgrade: quick&dirty FLAVOR supportIn Progress2024-11-21
280104maintainer-feedback? ports-mgmt/portupgrade: http://pkgtools.github.com/ 404 not foundNew2024-10-04
257406maintainer-feedback? ports-mgmt/portupgrade: no support for .pkgNew2023-04-21
248019maintainer-feedback? ports-mgmt/portupgrade: Fails to upgrade ports: Copy failed!New2022-10-03
Show all 6
PRSummaryStatusChanged
223943maintainer-feedback? ports-mgmt/portupgrade and the ICU-librariesIn Progress2021-10-30

Commits (350)

Sergey Matveychuk (sem) · 2.1.3.2_3,2
- Make fetch(1) quiet when STDOUT is not a tty (as it was before).

PR:		ports/101341
Requested by:	Tsurutani Naoki <turutani@scphys.kyoto-u.ac.jp>
560d04ceff
Sergey Matveychuk (sem) · 2.1.3.2_2,2
- Fix a bug that caused incorrect output-processing in second-party soft.

Obtained from:	Kport
5cc280614a
Sergey Matveychuk (sem) · 2.1.3.2_1,2
- Fix a type: DBD4->BDB4 in messages.

Submitted by:	yar
beee543973
Sergey Matveychuk (sem) · 2.1.3.2_1,2
- Fix a bug when values of -M was ignored.

Submitted by:	John E Hein <jhein@timing.com>
8e4d616b11
Sergey Matveychuk (sem) · 2.1.3.2,2
- Upgrade to 2.1.3.2   (MFD - Merge From Developing)   * Fix a bug with a time delta. When build took over 24 hour.   * Allow origins in ALT_PKGDEP.   * Add -e (--emit-summaries) option to show summary messages.   * Fix portupgrade working when stdin is closed. [1] - Get back sf.net to MASTER_SITES - Add CONFLICTS with portupgrade-devel

PR:		ports/99179 [1]
Submitted by:	Hannes Hauswedell <hannes.hauswedell_at_gmail.com>
1af4279c8a
Sergey Matveychuk (sem) · 2.1.3.1,2
- Fork a stable branch.   It's exactly like 2.1.3 but without summary messages and   fixed bug when BDB4 was defined but tried only bdb1 driver and   fall back to dbd driver. - Add an option WITH_BDB1. Both BDB1 and BDB4 options can be off.   Ruby dbd driver will use in the case.
4df325cdc9
Sergey Matveychuk (sem) · 2.1.1,2
- Roll back to stable 2.1.1 version.   I'd like to wait a repocopy but marcus seems will unaccessible for a week.
e775e7e95c
Sergey Matveychuk (sem) · 2.1.4_5,1
- Fix parameter in DBM.open(). It caused the message:   Rebuilding the pkgdb <format:dbm_hash> in /var/db/pkg ... can't convert String into Integer
34ff7dab0c
Sergey Matveychuk (sem) · 2.1.4_4,1
- Real fix of the last problem.
cb37128c50
Sergey Matveychuk (sem) · 2.1.4_3,1
- Work around for a bug in options parser.   The bug caused count -D twice and look at it as -DD

Reported in:	ports@
459dd22315
Sergey Matveychuk (sem) · 2.1.4_2,1
- Disable 'make config' feature. It should be implemented another way.   Now it's PITA if many ports affected.
17964f133f
Sergey Matveychuk (sem) · 2.1.4_1,1
- Quick fix: change 'make config' with 'make config-conditional'.   It's exactly I meant.

Reported by:	Larry Rosenman <ler at lerctr.org>
0d0640d075
Sergey Matveychuk (sem) · 2.1.4,1
- Update to 2.1.4   * Add -e (--emit-summaries) option and show summary messages only when     the option defined or verbose mode is on. [1]   * Allow origins in ALT_PKGDEP. This announced in pkgtools.conf     but did not work really. [2]   * Run 'make config' before all operations unless -j (--jet-mode)     option specified. [3]   * Add lock on operations with pkgdb.db. Now you can safe run a few

PR:		ports/99086 [4]
Reported by:	Doug Poland <doug at polands.org> [3,4]
Requested by:	many [1]
Submitted by:	skv [2]
a80a5566ac
Sergey Matveychuk (sem) · 2.1.3,1
- Change MASTER_SITES. The project is hosted on SourceForge now.
e238202b18
Sergey Matveychuk (sem) · 2.1.3,1
- Update to 2.1.3   o Add ALT_INDEX array to pkgtools.conf. The array holds additional     INDEX files. Useful for local categories.   o Add to pkgtools.conf a new dirrective: include_hash('glob').     It downloads keys and values (splitted by '=>') from files     coincided with 'glob' and returns a filled hash. The glob is     related to PREFIX. [1]   o Add a summary messages on each upgrade/inst

Requested by:	skv [1]
		netchild [2]
		Andriy Gapon <avg at icyb.net.ua> [3]
e8e4a3210b
Sergey Matveychuk (sem) · 2.1.2_1,1
- Fix includeing ldconfig_compat

Submitted by:	Scott Allendorf <scott-allendorf at uiowa.edu>
03b02cf7ce
Sergey Matveychuk (sem) · 2.1.2,1
- Update to 2.1.2   o Really fix *_rc_scripts. The last fix was uncomplited.   o Set both make argument and environment variable to PORT_UPGRADE=yes.     It makes possible a port or a package (via install/deinstall scripts)     to detect if it builds/installs/deinstalls under portupgrade(1) [1]   o Add to pkgtools.conf a new directive: include_eval('file')     The file will included and evaluated 

- Add own mirror to prevent delay while distfile appears on MASTER_SITE_LOCAL.

Requested by:	skv [1,2,3], kris [4]
f07758714f
Sergey Matveychuk (sem) · 2.1.1,1
- Update to 2.1.1   o Fix -O that should force ignoring dependency errors,     but really did not work [1]   o Add PKG_BACKUP_DIR environment variable where specified     a directory where will keep saved packages (-b).     Default: PKG_PATH (PORTSDIR/packages/All) [2]   o Add MAKE_ENV in pkgtools.conf that is like MAKE_ARGS but     allows to set environment variables for ports [3]   o Fix pkg_fet

PR:		ports/56301 [1]
		ports/81454 [2] (based on)
		ports/92896 [3]
		ports/94054 [4]
		ports/95775 [5]
		ports/96832 [6]
Reported by:	Roman Neuhauser <neuhauser at sigpipe.cz> [1]
		Fernan Aguero <fernan at iib.unsam.edu.ar> [3]
		Andrew Webster <awebster at connectalk.com> [4]
		Rong-En Fan <rafan at infor.org> [5]
		Richard Brooksby <rb at ravenbrook.com> [6]
Submitted by:	KOMATSU Shinichiro <koma2 at lovepeers.org> [2]
07816a2f09
Sergey Matveychuk (sem) · 2.1.0,1
- Take the port - Update to 2.1.0   o rewrite version checking. Now it's compliant with pkg_version(1) algorythm   o fix shebangs in test/*   o add test in test_pkgversion.rb from test-pkg_version.sh   o fix test_pkgdb.rb   o fix pointyhat URL in pkgtools.conf and pkgtools.rb   o make comparisons when updates from packages. It compared package names     instead versions. It gives a weird results w

PR:		ports/62990 [1], ports/98153 [2]
Submitted by:	Leland Wang <llwang at infor.org> [1]
		tobez [2]
Approved by:	maintainer (silence for a month, no activity seen for 4 monthes)
		daichi (blessed)
		ports (silence)
		a number open PRs from 2003 year
Inspired by:	az
621c94e5dd
Florent Thoumie (flz) · 2.0.1_2,1
- Convert to USE_LDCONFIG.

PR:		ports/93186
Submitted by:	$self
Approved by:	maintainer
128460e57c
Kris Kennaway (kris) · 2.0.1_1,1
Try to clean up lib/compat and lib/compat/pkg at deinstall.

Approved by:	portmgr (implicit)
0e29aa754a
Edwin Groothuis (edwin) · 2.0.1_1,1
Replace ugly "@unexec rmdir %D... 2>/dev/null || true" with @dirrmtry

Approved by:    krion@
PR:             ports/88711 (related)
508b8d82f4
Edwin Groothuis (edwin) · 2.0.1_1,1
sysutils/portupgrade: Fix yet another infinite loop.

Check and avoid infinite loop when MOVED has an entry such as:

	    games/scummvm|emulators/scummvm|2004-04-06|new category
	    emulators/scummvm|games/scummvm|2004-04-13|new category

	    (games/scummvm -> emulators/scummvm -> games/scummvm -> ...)

	Reported by: Bohdan Horst <nexus at hoth dot amu dot edu dot pl>

PR:		ports/91402
Submitted by:	KOMATSU Shinichiro <koma2@lovepeers.org>
69ec329aa4
Norikatsu Shigemura (nork) · 2.0.1,1
Update to 2.0.1.

* 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)
879e335dc3
Edwin Groothuis (edwin) · 2.0.0_1,1
Problem with portupgrade 2.0

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>
1d2994d56b
Norikatsu Shigemura (nork) · 2.0.0,1
A happy new year updated to 2.0.0.

(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]
e81a09cb91
Edwin Groothuis (edwin) · 20051204
sysutils/portupgrade: fix the problem that portupgrade sometimes runs slow, and bump PORTVERSION to 20051204.

(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>
99dbdd022e
Volker Stolz (vs) · 20041226_9
- Change the name of the ports database file (INDEX.db) to    $(basename ${INDEXFILE}).db, e.g. INDEX-6.db. (requested by kris) - Add SHA256.

PR:		ports/89520
Submitted by:	maintainer
095db66735
Daichi GOTO (daichi) · 20041226_8
fix: ports/54424 problem

- fix PKG_ALTDEP does not work problem

PR:		ports/54424
Submitted by:	koma2@lovepeers.org (maintainer)
Approved by:	bharat@menalto.com
286429f602
Florent Thoumie (flz) · 20041226_7
- Fix portsdb issue.

Reported by:	Igor Pokrovsky <ip@doom.homeunix.org>
Patched by:	KOMATSU Shinichiro <koma2@lovepeers.org> (maintainer)
Tested by:	Igor Pokrovsky <ip@doom.homeunix.org>
Approved by:	portmgr (krion)
8c919ec678
Renato Botelho (garga) · 20041226_6
Pass full path to pkg_{add,info} invoked from portupgrade.

PR:		ports/84278
Submitted by:	KOMATSU Shinichiro <koma2@lovepeers.org> (maintainer)
12b59934e5
Daichi GOTO (daichi) · 20041226_5
- sysutils/portupgrade: add option for BDB4:

(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)
22571d20fe
Daichi GOTO (daichi) · 20041226_5
sysutils/portupgrade: fix minor documentation issues

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>
b760ebecca
Daichi GOTO (daichi) · 20041226_4
Change maintainership   - 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
a493320adb
Florent Thoumie (flz) · 20041226_4
- Add perl dependency because it's used by portsdb.

PR:		ports/64650 [1], ports/69097 [2]
Submitted by:	David Israelsson <david@israelsson.org> [1],
		James Snow <snow@teardrop.org>
Approved by:	maintainer timeout (1 year)
19679d50d0
Simon L. B. Nielsen (simon) · 20041226_3
- Unbreak handling of updated pkgdb.db so it is not regenerated for   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)
13dbf6a820
Simon L. B. Nielsen (simon) · 20041226_2
Fix and document insecure temporary file handling in portupgrade.

Security:	CAN-2005-0610
Security:	http://vuxml.FreeBSD.org/22f00553-a09d-11d9-a788-0001020eed82.html
Approved by:	erwin (mentor), maintainer timeout
OK'ed by:	portmgr
Reviewed by:	nectar
2a6230f941
Akinori MUSHA (knu) · 20041226_1
Oops, I forgot to commit Makefile.. --

Fix the startup script for 4.x.

Submitted by:	Nicole Thurner <thurners -at- t-online.de>
bb4bc64746
Akinori MUSHA (knu) · 20041226
Fix the startup script for 4.x.

Submitted by:	<Nicole Thurner <thurners -at- t-online.de>
61a77c177d
Akinori MUSHA (knu) · 20041226
Update to 20041226.

Reverse the condition to check if custom MAKE_ARGS is specified.

Submitted by:	Max Laier <max@love2party.net>

D'oh!
d90395ae3d
Akinori MUSHA (knu) · 20041225
Update to 20041225.

- Fix the startup script. (s/echo //)

- When INDEX is not found, try "make fetchindex" first, then try
  "make index".
cbda76514e
Akinori MUSHA (knu) · 20041224_1
Fix the startup script.

I think I've been too long away from my ports work...

PR:		ports/75468
Submitted by:	Michael <mkuhn.nw 'at' web.de>
5d77d5fc37
Akinori MUSHA (knu) · 20041224
Update to 20041224.

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.
05bc902eec
Akinori MUSHA (knu) · 20040701_3
Add a patch to read the index file via sort(1) instead of reading directly to avoid core dump.
463ee95f1c
Akinori MUSHA (knu) · 20040701_2
Fix a bug with -P when there are more than one binary package file for a package to install or upgrade.

PR:		ports/68598
Submitted by:	Victor Prylipko <vic@liniya.ru>
Bug traced by:	Andrew Bliznak <andrew@ort.lviv.net>
be40c29b61
Akinori MUSHA (knu) · 20040701_1
Apply a patch to avoid "undefined method `each' for nil:NilClass" 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>
46edc73a84
Akinori MUSHA (knu) · 20040701
Update to 20040701.  New distfile.

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.
8f484b7d54
Akinori MUSHA (knu) · 20040529_2
Oops, the previous patch was bogus.  Sorry.
957f9e448a
Akinori MUSHA (knu) · 20040529_1
Support the new, extended INDEX format.
67b44cc4ca
Akinori MUSHA (knu) · 20040529
Update to 20040529.

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).
4d9be12a2c