594 Commits

Author SHA1 Message Date
kmos
761dba97ec Update to Python 3.9.9
Skipped 3.9.8 because there was an argparse regression and 3.9.9 was
rushed out as a hotfix.

input and ok pamela@
ok sthen@
2021-11-24 15:35:20 +00:00
tb
fd954446cd pythons: Tweak LibreSSL patches: drop a hunk that retains backward
compatibility with LibreSSL 2.7 and tweak comments in the patches.
In Python 3.10, fix the security level patch. Add a missing const
and drop @SECLEVEL=2 from the PY_SSL_DEFAULT_CIPHER_STRING, as that
will currently result in a runtime failure.

ok kmos
2021-11-18 15:45:28 +00:00
sthen
432a74da1f fix conflict markers in comments 2021-11-03 19:08:27 +00:00
sthen
867b1fe793 unbreal build, should not conflict with py2 2021-11-03 19:07:18 +00:00
sthen
6f7284e5ee repair @conflict, problem reported by robert@
-@conflict python-main-<3.8.12p3
+@conflict python-<3.8.12p3
2021-11-03 13:48:14 +00:00
sthen
c53c497e1c move "MODPY_TEST_LIBDIR ?=" (empty setting) below the .if block which
sets MODPY_TEST_LIBDIR to a default set of lib directories for
MODPY_PYTEST ports, otherwise the empty setting takes precedence
2021-11-02 01:17:44 +00:00
sthen
4805e96969 switch default MODPY_DEFAULT_VERSION_3 to 3.9, ok kmos@ 2021-11-02 00:00:01 +00:00
sthen
7f0d1524e9 update notes on version switches 2021-11-01 17:16:23 +00:00
sthen
bc96ab094e simplify switching default Python versions, ok kmos@
Add a new SUBST_VARS variable that is set to "@comment " on
most Python versions, but is set to "" on the default one. This makes
it easier to swap between default versions because you don't need
to figure out which @comments should be kept and which should be moved.

While there I remove some existing lines with @comment markers for
files that are not created by any of our current Python ports:

@comment bin/pyvenv
@comment lib/libpython3.8m.so (etc)

The @comment -> ${PY_DEFAULTONLY} change doesn't affect the generated
PLISTs at all, so for that a REVISION bump is unnecessary, but removing
the pyvenv/libpython3.Xm.so does require a bump
2021-11-01 16:56:24 +00:00
kmos
0bd996c76c Hook Python 3.10 into build and add the necessary bit to python.port.mk
to accept Python 3.10
2021-11-01 14:17:16 +00:00
kmos
856d7d22f1 Import Python 3.10.0
Much work done by tb@ who got the needed APIs into LibreSSL and
patched the crypto parts of Python 3.10 to work with it.

ok sthen@ daniel@
2021-11-01 14:16:09 +00:00
landry
89cd0faf06 lang/python: stop leaking python build LDFLAGS/CFLAGS to python extensions build
right now the installed python retains paths to the python build objdir,
and also enforces -L/usr/local/lib when linking python shared extensions
(which might not be desired):

$python3 -m sysconfig|grep LDSH
        BLDSHARED = "cc -pthread -shared -fPIC -L/usr/local/lib/ -L/usr/obj/ports/Python-3.8.12/Python-3.8.12 -L/usr/local/lib/"
        LDSHARED = "cc -pthread -shared -fPIC -L/usr/local/lib/ -L/usr/obj/ports/Python-3.8.12/Python-3.8.12 -L/usr/local/lib/"

python 3.x provides LDFLAGS_NODIST/CFLAGS_NODIST to avoid that (cf
https://docs.python.org/3/using/configure.html#envvar-CONFIGURE_LDFLAGS_NODIST),
but sadly if we only use it (and remove CPPFLAGS/LDFLAGS pointing at
/usr/local from CONFIGURE_ENV), libintl/textdomain detection during
configure fails.

So, taking inspiration from freebsd PR181721, dont add
CONFIGURE_LDFLAGS/CONFIGURE_CPPFLAGS to PY_LDFLAGS/PY_CPPFLAGS.

extend CHANGES.OpenBSD to explain the change (reminded by sthen@).

went in a bulk build (thanks ajacoutot@!) with a single fallout
(devel/gdb) that will get fixed shortly.
2021-11-01 07:43:39 +00:00
kmos
8b0df7e981 If MODPY_TEST_ARGS are set, default MODPY_PYTEST to Yes
Additionally add the elaborate lib.openbsd.... directory and lib to
PYTHONPATH when testing

Diff from sthen with small tweak from me
2021-11-01 03:55:31 +00:00
kmos
4a88a35ac3 Python 3.9 needs the same fix as 3.8 in order to build wiht llvm 13.
Identical diff sent by jsg
2021-10-30 00:24:16 +00:00
kmos
7fe8f4911f Fix build for LLVM 13
LLVM 13 introduces the --print-multiarch option. OpenBSD isn't multi-arch,
but that option caused problems for the build anyway.

I neutralized those checks.
2021-10-26 23:30:08 +00:00
kmos
53f471957a Update Python 3.8 to 3.8.11 and Python 3.9 to 3.9.7
https://docs.python.org/release/3.8.12/whatsnew/changelog.html#changelog

https://docs.python.org/release/3.9.7/whatsnew/changelog.html#changelog

Each has security fixes

Take MAINTAINER from Remi Pointel with his blessing

Bump revisions in 2.7 due to maintainer update

ok remi
2021-09-01 17:41:47 +00:00
naddy
504eeac4fc lang/python: adapt and bump for changes 6.x -> 7.x 2021-08-18 19:08:05 +00:00
sthen
34950220fd fix typo_ 2021-07-30 20:04:55 +00:00
sthen
abb55fc128 avoid some more hardcoding of 'openbsd6' 2021-07-30 20:01:19 +00:00
sthen
d108ea0c09 don't hardcode 'openbsd6', use 'openbsd${OSMAJOR}' 2021-07-30 19:54:18 +00:00
kmos
ff585f09c3 Update 3.9.6
Contains a security fix along with other changes

ok sthen@ daniel@
2021-07-15 13:45:06 +00:00
kmos
b494a7d423 Security upgrade for Python 3.8 to 3.8.11
daniel@ has been testing this version for a while

ok sthen@
2021-07-15 13:44:19 +00:00
kmos
837780b5e5 Update Python 3.8 to 3.8.10, the final maintenance release of 3.8.x
(Only security fixes going forward).

This does include security fixes

ok daniel@
2021-06-12 04:03:23 +00:00
kmos
fbc74d74fd Update python 3.9 to 3.9.5
Includes multiple security fixes

ok daniel@
2021-06-12 04:00:22 +00:00
kmos
2795ba2341 Bump the REVISION on all ports that use the python2 version of
py-setuptools.

Also change the lang/python module to use the new
devel/py2-setuptools for python2 ports

ok sthen@
2021-05-21 19:50:21 +00:00
sthen
1087f2c8be another missed bump, found by naddy 2021-03-23 11:44:00 +00:00
sthen
14eb197440 missed bump, reported by naddy 2021-03-22 21:39:10 +00:00
sthen
e82c1acb6c install the gdb autoload helper for the various Python versions,
allows some additional debugging features for Python-based software
(for example there's a new "py-bt" command to print a Python backtrace
which can give clues if a py process is hanging).

ok rpointel@
2021-03-22 17:35:26 +00:00
sthen
745105c362 automatically handle ports which use the python module and have flavours
other than the usual "python3/<blank>" python version selection and
remove setting MODPY_VERSION=${MODPY_DEFAULT_VERSION_3} again from the
affected ports.
2021-02-23 22:04:35 +00:00
sthen
ba6e5fa88d fix for unflavoured py3 ports 2021-02-23 20:55:02 +00:00
sthen
6d0b6da733 oops, I deleted a line by mistake before committing this. unbreak the tree. 2021-02-23 20:44:38 +00:00
sthen
3cbe1c2f30 Reverse the polarity of MODPY_VERSION; default is now 3.x,
if a port needs 2.x then set MODPY_VERSION=${MODPY_DEFAULT_VERSION_2}.

This commit doesn't change any versions currently used; it may be that
some ports have MODPY_DEFAULT_VERSION_2 but don't require it, those
should be cleaned up in the course of updating ports where possible.

Python module ports providing py3-* packages should still use
FLAVOR=python3 so that we don't have a mixture of dependencies some
using ${MODPY_FLAVOR} and others not.
2021-02-23 19:39:08 +00:00
daniel
1209d6bb09 update to python 3.8.8
ok sthen@
2021-02-21 19:24:26 +00:00
daniel
1b538e6b27 update to python 3.9.2
ok sthen@
2021-02-21 19:23:21 +00:00
sthen
248932be74 switch MODPY_BIN_SUFFIX to -2 for py2 and (blank) for py3
switch ports using command-line tools from py-sphinx that don't need a
py2 version of it to py3-sphinx
2021-02-19 23:13:00 +00:00
tb
de917ff4ce python/3.9: add upstream patch for CVE-2021-3177
While waiting for this to appear in a proper Python 3.9.x release,
use upstream's commit for this severe sprintf bug.

The bug was reported on Jan 16 and the fix was available since Jan 18,
but only 3.6 and 3.7 have new releases as of now.

ok sthen
2021-02-16 18:50:26 +00:00
tb
ea6b747771 python/3.8: add upstream patch for CVE-2021-3177
While waiting for this to appear in a proper Python 3.8.x release,
use upstream's commit for this severe sprintf bug.

The bug was reported on Jan 16 and the fix was available since Jan 18,
but only 3.6 and 3.7 have new releases as of now.

ok sthen
2021-02-16 18:49:49 +00:00
kn
0ae5e05428 Run MODPY_BIN_ADJ once for all MODPY_ADJ_FILES
MODPY_BIN_ADJ's perl snippt accepts multiple files so save a few execs.

To make it more robust, also append `--' to it such that ports cannot
(accidentially) pass options;  I've checked the tree that no port does
this on purpose.

The only case where this could fail is with huge MODPY_ADJ_FILES but
that is not the case in our tree;  ports where lots of shebangs are
fixed have their own construct around it, e.g. textproc/calibre which
uses the `find -exec ${MODPY_ADJ_FILES} {} +' idiom.

OK sthen
2021-02-04 17:13:52 +00:00
sthen
5141b95f35 Set DPB_PROPERTIES=nojunk for Python builds using setuptools.
setuptools picks up plugins during the configure stage whether a port
needs them or not. In some cases (currently just setuptools_scm), these
register hooks to run in the install stage; if the plugin is not a
listed build dependency this will cause the install stage to fail.
Recently reported by naddy with py-sphinx but we've seen spurious
failures elsewhere before which are likely due to this.

ok kmos@
2021-02-03 15:36:04 +00:00
daniel
339cfd0a62 mop up remaining python 3.7 files 2021-01-18 21:28:59 +00:00
sthen
1b35bf7685 update to python-3.8.7, from kmos@, ok kmos@ daniel@
this changes EXT_SUFFIX from .so to .cpython-38.so; the following commit
fixes up py3 ports to cope.
2021-01-04 14:04:42 +00:00
daniel
43446f11cd retire python 3.7
An earlier diff was okayed by rpointel@, kmos@. sthen@ requested to move
the @conflict and @pkgpath markers from 3.7 to 3.8 in the same commit (a
better approach). Final diff was ok sthen@.
2020-12-29 23:59:06 +00:00
sthen
7e4bc55154 reminder to update xenocara/share/mk/bsd.xorg.mk if switching main py3
branch
2020-12-29 14:31:01 +00:00
daniel
224be58a2c update to python 3.9.1
Identical diff from rpointel@ and kmos@ posted a similar diff on ports@

ok rpointel@
2020-12-28 22:28:14 +00:00
sthen
c5ba6ad6fb fix python upgrade path from 6.7+stable-packages to -current, thanks to
James Cook for the report.
2020-10-13 12:41:03 +00:00
kmos
3c8fb63ad4 Add the necessary bits in python.port.mk to recognize 3.9 as a valid
Python version and hook Python 3.9.0 up to the build
2020-10-05 20:51:18 +00:00
kmos
0724eb19d9 Import Python 3.9.0, the first stable release of Python 3.9
ok sthen@
2020-10-05 20:48:10 +00:00
rpointel
66e1401e79 update Python to 3.8.6.
tested in a bulk build by naddy@.
2020-09-28 11:36:03 +00:00
kmos
3c44ed40cd Security update to Python 3.7.9
Release notes:
https://docs.python.org/release/3.7.9/whatsnew/changelog.html#changelog

ok sthen
2020-08-24 15:00:29 +00:00
kmos
f416f210e5 Update to Python 3.8.5, includes security fixes.
Original diff from Wen Heping.

I shuffled some test files out of PLIST-main to PLIST-tests and did the
conflict magic to make it happy.

ok sthen@
2020-07-28 07:58:30 +00:00