Skip to content

Commit

Permalink
py-greenlet: updated to 2.0.1
Browse files Browse the repository at this point in the history
2.0.1 (2022-11-07)
==================

- Python 3.11: Fix a memory leak. See `issue 328
  <https://github.com/python-greenlet/greenlet/issues/328>`_ and
  `gevent issue 1924 <https://github.com/gevent/gevent/issues/1924>`_.


2.0.0.post0 (2022-11-03)
========================

- Add ``Programming Language :: Python :: 3.11`` to the PyPI
  classifier metadata.


2.0.0 (2022-10-31)
==================

- Nothing changed yet.


2.0.0rc5 (2022-10-31)
=====================

- Linux: Fix another group of rare crashes that could occur when shutting down an
  interpeter running multiple threads. See `issue 325 <https://github.com/python-greenlet/greenlet/issues/325>`_.


2.0.0rc4 (2022-10-30)
=====================

- Linux: Fix a rare crash that could occur when shutting down an
  interpreter running multiple threads, when some of those threads are
  in greenlets making calls to functions that release the GIL.


2.0.0rc3 (2022-10-29)
=====================

- Python 2: Fix a crash that could occur when raising an old-style
  instance object.


2.0.0rc2 (2022-10-28)
=====================

- Workaround `a CPython 3.8 bug
  <https://github.com/python/cpython/issues/81308>`_ that could cause
  the interpreter to crash during an early phase of shutdown with the
  message "Fatal Python error: Python memory allocator called without
  holding the GI." This only impacted CPython 3.8a3 through CPython
  3.9a5; the fix is only applied to CPython 3.8 releases (please don't
  use an early alpha release of CPython 3.9).


2.0.0rc1 (2022-10-27)
=====================

- Deal gracefully with greenlet switches that occur while deferred
  deallocation of objects is happening using CPython's "trash can"
  mechanism. Previously, if a large nested container held items that
  switched greenlets during delayed deallocation, and that second
  greenlet also invoked the trash can, CPython's internal state could
  become corrupt. This was visible as an assertion error in debug
  builds. Now, the relevant internal state is saved and restored
  during greenlet switches. See also `gevent issue 1909
  <https://github.com/gevent/gevent/issues/1909>`_.
- Rename the C API function ``PyGreenlet_GET_PARENT`` to
  ``PyGreenlet_GetParent`` for consistency. The old name remains
  available as a deprecated alias.



2.0.0a2 (2022-03-24)
====================

- Fix a crash on older versions of the Windows C runtime when an
  unhandled C++ exception was thrown inside a greenlet by another
  native extension. This is a bug in that extension, and the
  interpreter will still abort, but at least it does so deliberately.
  Thanks to Kirill Smelkov. See `PR 286
  <https://github.com/python-greenlet/greenlet/pull/286>`_.
- Musllinux wheels for aarch64 are now built, tested, and uploaded to
  PyPI. Thanks to Alexander Piskun.
- This version of greenlet is known to compile and pass tests on
  CPython 3.11.0a6. Earlier 3.11 releases will not work; later
  releases may or may not work. See `PR 294
  <https://github.com/python-greenlet/greenlet/pull/294>`_. Special
  thanks to Victor Stinner, Brandt Bucher and the CPython developers.
  • Loading branch information
adam committed Nov 21, 2022
1 parent 3030415 commit 1926c3d
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 8 deletions.
8 changes: 6 additions & 2 deletions devel/py-greenlet/Makefile
@@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.16 2022/09/15 17:48:08 adam Exp $
# $NetBSD: Makefile,v 1.17 2022/11/21 11:28:21 adam Exp $

DISTNAME= greenlet-1.1.3
DISTNAME= greenlet-2.0.1
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
CATEGORIES= devel python
MASTER_SITES= ${MASTER_SITE_PYPI:=g/greenlet/}
Expand All @@ -10,8 +10,12 @@ HOMEPAGE= https://github.com/python-greenlet/greenlet
COMMENT= Lightweight in-process concurrent programming
LICENSE= mit

TEST_DEPENDS+= ${PYPKGPREFIX}-objgraph-[0-9]*:../../graphics/py-objgraph

USE_LANGUAGES= c c++

PYTHON_VERSIONS_INCOMPATIBLE= 27

do-test:
cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHONBIN} -m unittest discover greenlet.tests

Expand Down
27 changes: 25 additions & 2 deletions devel/py-greenlet/PLIST
@@ -1,4 +1,4 @@
@comment $NetBSD: PLIST,v 1.2 2021/03/03 18:05:01 adam Exp $
@comment $NetBSD: PLIST,v 1.3 2022/11/21 11:28:21 adam Exp $
${PYINC}/greenlet/greenlet.h
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
Expand All @@ -10,14 +10,31 @@ ${PYSITELIB}/greenlet/__init__.py
${PYSITELIB}/greenlet/__init__.pyc
${PYSITELIB}/greenlet/__init__.pyo
${PYSITELIB}/greenlet/_greenlet.so
${PYSITELIB}/greenlet/greenlet.c
${PYSITELIB}/greenlet/greenlet.cpp
${PYSITELIB}/greenlet/greenlet.h
${PYSITELIB}/greenlet/greenlet_allocator.hpp
${PYSITELIB}/greenlet/greenlet_compiler_compat.hpp
${PYSITELIB}/greenlet/greenlet_cpython_compat.hpp
${PYSITELIB}/greenlet/greenlet_exceptions.hpp
${PYSITELIB}/greenlet/greenlet_greenlet.hpp
${PYSITELIB}/greenlet/greenlet_internal.hpp
${PYSITELIB}/greenlet/greenlet_refs.hpp
${PYSITELIB}/greenlet/greenlet_slp_switch.hpp
${PYSITELIB}/greenlet/greenlet_thread_state.hpp
${PYSITELIB}/greenlet/greenlet_thread_state_dict_cleanup.hpp
${PYSITELIB}/greenlet/greenlet_thread_support.hpp
${PYSITELIB}/greenlet/platform/__init__.py
${PYSITELIB}/greenlet/platform/__init__.pyc
${PYSITELIB}/greenlet/platform/__init__.pyo
${PYSITELIB}/greenlet/platform/setup_switch_x64_masm.cmd
${PYSITELIB}/greenlet/platform/switch_aarch64_gcc.h
${PYSITELIB}/greenlet/platform/switch_alpha_unix.h
${PYSITELIB}/greenlet/platform/switch_amd64_unix.h
${PYSITELIB}/greenlet/platform/switch_arm32_gcc.h
${PYSITELIB}/greenlet/platform/switch_arm32_ios.h
${PYSITELIB}/greenlet/platform/switch_arm64_masm.asm
${PYSITELIB}/greenlet/platform/switch_arm64_masm.obj
${PYSITELIB}/greenlet/platform/switch_arm64_msvc.h
${PYSITELIB}/greenlet/platform/switch_csky_gcc.h
${PYSITELIB}/greenlet/platform/switch_m68k_gcc.h
${PYSITELIB}/greenlet/platform/switch_mips_unix.h
Expand All @@ -44,6 +61,9 @@ ${PYSITELIB}/greenlet/tests/_test_extension.c
${PYSITELIB}/greenlet/tests/_test_extension.so
${PYSITELIB}/greenlet/tests/_test_extension_cpp.cpp
${PYSITELIB}/greenlet/tests/_test_extension_cpp.so
${PYSITELIB}/greenlet/tests/leakcheck.py
${PYSITELIB}/greenlet/tests/leakcheck.pyc
${PYSITELIB}/greenlet/tests/leakcheck.pyo
${PYSITELIB}/greenlet/tests/test_contextvars.py
${PYSITELIB}/greenlet/tests/test_contextvars.pyc
${PYSITELIB}/greenlet/tests/test_contextvars.pyo
Expand All @@ -65,6 +85,9 @@ ${PYSITELIB}/greenlet/tests/test_generator_nested.pyo
${PYSITELIB}/greenlet/tests/test_greenlet.py
${PYSITELIB}/greenlet/tests/test_greenlet.pyc
${PYSITELIB}/greenlet/tests/test_greenlet.pyo
${PYSITELIB}/greenlet/tests/test_greenlet_trash.py
${PYSITELIB}/greenlet/tests/test_greenlet_trash.pyc
${PYSITELIB}/greenlet/tests/test_greenlet_trash.pyo
${PYSITELIB}/greenlet/tests/test_leaks.py
${PYSITELIB}/greenlet/tests/test_leaks.pyc
${PYSITELIB}/greenlet/tests/test_leaks.pyo
Expand Down
8 changes: 4 additions & 4 deletions devel/py-greenlet/distinfo
@@ -1,6 +1,6 @@
$NetBSD: distinfo,v 1.17 2022/09/15 17:48:08 adam Exp $
$NetBSD: distinfo,v 1.18 2022/11/21 11:28:21 adam Exp $

BLAKE2s (greenlet-1.1.3.tar.gz) = d9cd8b6457f5faa0ed5b1119e73877c1e65797cc629f08d454a3c3fc97528ab2
SHA512 (greenlet-1.1.3.tar.gz) = 9ece4a4e758de963c96c7cbd33aec33fa11ddd3d46b8dc4194e14d534f8f68787df551cb1e3be57fc8a65fbd8d5daf8fee59567927f6f272535dd7c720baa4f4
Size (greenlet-1.1.3.tar.gz) = 91624 bytes
BLAKE2s (greenlet-2.0.1.tar.gz) = 492c064b3f1b8999ca335c13636f6ef64acc616348f589d96002f854aeaeb46a
SHA512 (greenlet-2.0.1.tar.gz) = 3f4ccc761f64c7f10946d2fa965ef847e814ca1b6f57dc0df262cb6eed24148b44c6629770bf038656a9e3706e45553080844dfc841643604bd4776ca7ca03a2
Size (greenlet-2.0.1.tar.gz) = 163824 bytes
SHA1 (patch-src_greenlet_slp__platformselect.h) = ada2dd34b7fe0847526188aa9242e93732b4bc37

0 comments on commit 1926c3d

Please sign in to comment.