releases is enough" rule of thumb. (python 2.3 was released 5 years ago.)
Keep python 1.5 and 2.1 though, because there are a handful of packages
that still need them.
anyway, simplify logic a bit:
Add Python 2.5 to the default list, but also mark it as incompatible if
wip/python25 is not present. Move the Darwin handling after setting a
default value.
Provide a new variable _PYTHON_VERSIONS_ACCEPTED that is filtered by
PYTHON_VERSIONS_INCOMPATIBLE. This helps to avoid providing broken
dependencies when a version is not supported as PYPKGPREFIX wouldn't be
set in that case.
Always prefer the default version and fallback to the first entry
of PYTHON_VERSIONS_ACCEPTED, which is supported by the current
system. Also honour PYTHON_VERSIONS_ACCEPTED and _INCOMPATIBLE,
when PYTHON_VERSION_REQD is used.
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
is not available for the platform.
Mark packages as "unavailable" instead of "broken" when they depend on
a python version that is not available for the platform.
by other package Makefiles, and with the deprecation of USE_BUILDLINK3
support in the infrastructure files, these had the potential to break
existing packages.
python*-pth packages into meta-packages which will install the non-pth
packages. Bump PKGREVISIONs on the non-pth versions to propagate the
thread change, but leave the *-pth versions untouched to not affect
existing installations.
Sync all PYTHON_VERSIONS_AFFECTED lines in package Makefiles.
by package Makefiles as well as buildlink3s to prevent usage of particular
versions of Python -- even if they appear in PYTHON_VERSIONS_ACCEPTED.
(And make Darwin exclusion use this variable instead, so that it effectively
overrides any pkg's definition of _ACCEPTED.)