pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/net/py-zmq



Module Name:    pkgsrc
Committed By:   adam
Date:           Wed Apr 24 12:50:28 UTC 2024

Modified Files:
        pkgsrc/net/py-zmq: Makefile PLIST distinfo
Removed Files:
        pkgsrc/net/py-zmq/patches: patch-buildutils_detect.py patch-setup.py

Log Message:
py-zmq: updated to 26.0.2

26.0.2

- When bundling libsodium, download from libsodium's releases on GitHub instead of download.libsodium.org,
  which appears to error frequently.

26.0.1

- Fix install from source with cmake \< 3.21

26.0.0

pyzmq 26 is a small release, but with some big changes _hopefully_ nobody will notice,
except for some users (especially on Windows) where pyzmq releases did not work.

The highlights are:

- The Cython backend has been rewritten using Cython 3's pure Python mode.
- The build system has been rewritten to use CMake via [scikit-build-core] instead of setuptools (setup.py is gone!).
- Bundled libzmq is updated to 4.3.5, which changes its license from LGPL to MPL.

This means:

1. Cython >=3.0 is now a build requirement (if omitted, source distributions _should_ still build from Cython-generated .c files without any Cython present)
1. pyzmq's Cython backend is a single extension module, which should improve install size, import time, compile time, etc.
1. pyzmq's Cython backend is now BSD-licensed, matching the rest of pyzmq.
1. The license of the libzmq library (included in pyzmq wheels) starting with 4.3.5 is now Mozilla Public License 2.0 (MPL-2.0).
1. when building pyzmq from source and it falls back on bundled libzmq, libzmq and libsodium are built as static libraries using their own build systems (CMake for libzmq, autotools for libsodium 
except on Windows where it uses msbuild)
   rather than bundling libzmq with tweetnacl as a Python Extension.

Since the new build system uses libzmq and libsodium's own build systems, evaluated at install time, building pyzmq with bundled libzmq from source should be much more likely to succeed on a variety 
of platforms than the previous method, where their build system was skipped and approximated as a Python extension.
But I would also be _very_ surprised if I didn't break anything in the process of replacing 14 years of setup.py from scratch, especially cases like cross-compiling.
Please [report](https://github.com/zeromq/pyzmq/issues/new) any issues you encounter building pyzmq.

See [build docs](building-pyzmq) for more info.

__New__:

- Experimental support for wheels on windows-arm64
- `Socket.bind('tcp://ip:0')` can be used as a context manager to bind to a random port.
  The resulting URL can be retrieved as `socket.last_endpoint`.
- Add `SyncSocket` and `SyncContext` type aliases for the default Socket/Context implementations,
  since the base classes are Generics, type-wise.
  These are type aliases only to be used in type checking, not actual classes.

__Enhancements__:

- `repr(Frame)` now produces a nice repr, summarizing Frame contents (without getting too large),
  e.g. `<zmq.Frame(b'abcdefghijkl'...52B)>`

__Breaking changes__:

- `str(Frame)` no longer returns the whole frame contents interpreted as utf8-bytes.
  Instead, it returns the new summarized repr,
  which produces more logical results with `print`, etc.
  `bytes(Frame)` remains unchanged, and utf-8 text strings can still be produced with:
  `bytes(Frame).decode("utf8")`,
  which works in all versions of pyzmq and does the same thing.
- Stop building Python 3.7 wheels for manylinux1, which reached EOL in January, 2022. The new build system doesn't seem to be able to find cmake in that environment.


To generate a diff of this commit:
cvs rdiff -u -r1.40 -r1.41 pkgsrc/net/py-zmq/Makefile
cvs rdiff -u -r1.19 -r1.20 pkgsrc/net/py-zmq/PLIST
cvs rdiff -u -r1.32 -r1.33 pkgsrc/net/py-zmq/distinfo
cvs rdiff -u -r1.3 -r0 pkgsrc/net/py-zmq/patches/patch-buildutils_detect.py
cvs rdiff -u -r1.4 -r0 pkgsrc/net/py-zmq/patches/patch-setup.py

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/net/py-zmq/Makefile
diff -u pkgsrc/net/py-zmq/Makefile:1.40 pkgsrc/net/py-zmq/Makefile:1.41
--- pkgsrc/net/py-zmq/Makefile:1.40     Tue Dec  5 18:20:00 2023
+++ pkgsrc/net/py-zmq/Makefile  Wed Apr 24 12:50:28 2024
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.40 2023/12/05 18:20:00 adam Exp $
+# $NetBSD: Makefile,v 1.41 2024/04/24 12:50:28 adam Exp $
 
-DISTNAME=      pyzmq-25.1.2
+DISTNAME=      pyzmq-26.0.2
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME:S/^py//}
 CATEGORIES=    net python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=p/pyzmq/}
@@ -10,12 +10,11 @@ HOMEPAGE=   https://github.com/zeromq/pyzm
 COMMENT=       Python bindings for zeromq
 LICENSE=       gnu-lgpl-v3 AND modified-bsd
 
-TOOL_DEPENDS+= ${PYPKGPREFIX}-cython>=0.29.35:../../devel/py-cython
+TOOL_DEPENDS+= ${PYPKGPREFIX}-cython>=3.0.0:../../devel/py-cython
 TOOL_DEPENDS+= ${PYPKGPREFIX}-packaging-[0-9]*:../../devel/py-packaging
-TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools
-TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools_scm-[0-9]*:../../devel/py-setuptools_scm
-TOOL_DEPENDS+= ${PYPKGPREFIX}-wheel-[0-9]*:../../devel/py-wheel
+TOOL_DEPENDS+= ${PYPKGPREFIX}-scikit-build-core-[0-9]*:../../devel/py-scikit-build-core
 
+USE_LANGUAGES= c c++
 USE_TOOLS+=    pkg-config
 
 PYTHON_VERSIONS_INCOMPATIBLE=  27

Index: pkgsrc/net/py-zmq/PLIST
diff -u pkgsrc/net/py-zmq/PLIST:1.19 pkgsrc/net/py-zmq/PLIST:1.20
--- pkgsrc/net/py-zmq/PLIST:1.19        Tue Dec  5 18:20:01 2023
+++ pkgsrc/net/py-zmq/PLIST     Wed Apr 24 12:50:28 2024
@@ -1,11 +1,9 @@
-@comment $NetBSD: PLIST,v 1.19 2023/12/05 18:20:01 adam Exp $
-${PYSITELIB}/${WHEEL_INFODIR}/AUTHORS.md
-${PYSITELIB}/${WHEEL_INFODIR}/LICENSE.BSD
-${PYSITELIB}/${WHEEL_INFODIR}/LICENSE.LESSER
+@comment $NetBSD: PLIST,v 1.20 2024/04/24 12:50:28 adam Exp $
 ${PYSITELIB}/${WHEEL_INFODIR}/METADATA
 ${PYSITELIB}/${WHEEL_INFODIR}/RECORD
 ${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
-${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
+${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
+${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE.md
 ${PYSITELIB}/zmq/__init__.pxd
 ${PYSITELIB}/zmq/__init__.py
 ${PYSITELIB}/zmq/__init__.pyc
@@ -42,10 +40,12 @@ ${PYSITELIB}/zmq/backend/__init__.py
 ${PYSITELIB}/zmq/backend/__init__.pyc
 ${PYSITELIB}/zmq/backend/__init__.pyi
 ${PYSITELIB}/zmq/backend/__init__.pyo
+${PYSITELIB}/zmq/backend/cffi/README.md
 ${PYSITELIB}/zmq/backend/cffi/__init__.py
 ${PYSITELIB}/zmq/backend/cffi/__init__.pyc
 ${PYSITELIB}/zmq/backend/cffi/__init__.pyo
 ${PYSITELIB}/zmq/backend/cffi/_cdefs.h
+${PYSITELIB}/zmq/backend/cffi/_cffi_src.c
 ${PYSITELIB}/zmq/backend/cffi/_poll.py
 ${PYSITELIB}/zmq/backend/cffi/_poll.pyc
 ${PYSITELIB}/zmq/backend/cffi/_poll.pyo
@@ -71,21 +71,14 @@ ${PYSITELIB}/zmq/backend/cython/__init__
 ${PYSITELIB}/zmq/backend/cython/__init__.py
 ${PYSITELIB}/zmq/backend/cython/__init__.pyc
 ${PYSITELIB}/zmq/backend/cython/__init__.pyo
-${PYSITELIB}/zmq/backend/cython/_device.so
-${PYSITELIB}/zmq/backend/cython/_poll.so
-${PYSITELIB}/zmq/backend/cython/_proxy_steerable.so
-${PYSITELIB}/zmq/backend/cython/_version.so
-${PYSITELIB}/zmq/backend/cython/checkrc.pxd
+${PYSITELIB}/zmq/backend/cython/_externs.pxd
+${PYSITELIB}/zmq/backend/cython/_zmq.pxd
+${PYSITELIB}/zmq/backend/cython/_zmq.py
+${PYSITELIB}/zmq/backend/cython/_zmq.pyc
+${PYSITELIB}/zmq/backend/cython/_zmq.pyo
+${PYSITELIB}/zmq/backend/cython/_zmq.so
 ${PYSITELIB}/zmq/backend/cython/constant_enums.pxi
-${PYSITELIB}/zmq/backend/cython/context.pxd
-${PYSITELIB}/zmq/backend/cython/context.so
-${PYSITELIB}/zmq/backend/cython/error.so
 ${PYSITELIB}/zmq/backend/cython/libzmq.pxd
-${PYSITELIB}/zmq/backend/cython/message.pxd
-${PYSITELIB}/zmq/backend/cython/message.so
-${PYSITELIB}/zmq/backend/cython/socket.pxd
-${PYSITELIB}/zmq/backend/cython/socket.so
-${PYSITELIB}/zmq/backend/cython/utils.so
 ${PYSITELIB}/zmq/backend/select.py
 ${PYSITELIB}/zmq/backend/select.pyc
 ${PYSITELIB}/zmq/backend/select.pyo
@@ -101,11 +94,9 @@ ${PYSITELIB}/zmq/devices/__init__.pyo
 ${PYSITELIB}/zmq/devices/basedevice.py
 ${PYSITELIB}/zmq/devices/basedevice.pyc
 ${PYSITELIB}/zmq/devices/basedevice.pyo
-${PYSITELIB}/zmq/devices/monitoredqueue.pxd
 ${PYSITELIB}/zmq/devices/monitoredqueue.py
 ${PYSITELIB}/zmq/devices/monitoredqueue.pyc
 ${PYSITELIB}/zmq/devices/monitoredqueue.pyo
-${PYSITELIB}/zmq/devices/monitoredqueue.so
 ${PYSITELIB}/zmq/devices/monitoredqueuedevice.py
 ${PYSITELIB}/zmq/devices/monitoredqueuedevice.pyc
 ${PYSITELIB}/zmq/devices/monitoredqueuedevice.pyo
@@ -317,8 +308,6 @@ ${PYSITELIB}/zmq/utils/__init__.py
 ${PYSITELIB}/zmq/utils/__init__.pyc
 ${PYSITELIB}/zmq/utils/__init__.pyo
 ${PYSITELIB}/zmq/utils/buffers.pxd
-${PYSITELIB}/zmq/utils/compiler.json
-${PYSITELIB}/zmq/utils/config.json
 ${PYSITELIB}/zmq/utils/garbage.py
 ${PYSITELIB}/zmq/utils/garbage.pyc
 ${PYSITELIB}/zmq/utils/garbage.pyo

Index: pkgsrc/net/py-zmq/distinfo
diff -u pkgsrc/net/py-zmq/distinfo:1.32 pkgsrc/net/py-zmq/distinfo:1.33
--- pkgsrc/net/py-zmq/distinfo:1.32     Tue Dec  5 18:20:01 2023
+++ pkgsrc/net/py-zmq/distinfo  Wed Apr 24 12:50:28 2024
@@ -1,7 +1,5 @@
-$NetBSD: distinfo,v 1.32 2023/12/05 18:20:01 adam Exp $
+$NetBSD: distinfo,v 1.33 2024/04/24 12:50:28 adam Exp $
 
-BLAKE2s (pyzmq-25.1.2.tar.gz) = 3446277fb63341c2579da242dfb8999808ac10bfeca7fa2aabb9f93db0b28df5
-SHA512 (pyzmq-25.1.2.tar.gz) = e2f9fec2cf65ee2cb4416a4d3562617d1fa202e2a446d51fa31e85c6b842e385fc32e3682a68119ff678a9ebd22c3e41fff37ab01d8efa9d4cb1f680a0f87e67
-Size (pyzmq-25.1.2.tar.gz) = 1402339 bytes
-SHA1 (patch-buildutils_detect.py) = 8d96f50e057b7b42d5f05c9c09c6665fac5bd4a5
-SHA1 (patch-setup.py) = be1d04bae34f1c6df97c52b03163bb7871767422
+BLAKE2s (pyzmq-26.0.2.tar.gz) = a5a154d4e8550b1a29ba1f02e6df1232b21a131ce108d7b908e61d806035c027
+SHA512 (pyzmq-26.0.2.tar.gz) = d41e1ae6889795d28ea34cbced85d4711cfa5de9861338d542f12698e69a1bbcc545cffbda1b316c66791faeb60d359b7cf51552ef0b135fce951c431a99ad37
+Size (pyzmq-26.0.2.tar.gz) = 266712 bytes



Home | Main Index | Thread Index | Old Index