From 53aea9d709c9286028405b25584181507f47442f Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 31 Jul 2023 10:44:36 +0100 Subject: gentoo auto-resync : 31:07:2023 - 10:44:36 --- .../cftime/files/cftime-1.6.2-cython-3.patch | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 dev-python/cftime/files/cftime-1.6.2-cython-3.patch (limited to 'dev-python/cftime/files') diff --git a/dev-python/cftime/files/cftime-1.6.2-cython-3.patch b/dev-python/cftime/files/cftime-1.6.2-cython-3.patch new file mode 100644 index 000000000000..c52ebdb3c84f --- /dev/null +++ b/dev-python/cftime/files/cftime-1.6.2-cython-3.patch @@ -0,0 +1,34 @@ +From 31f782aed3de56300886dd7350f1faff657e14dd Mon Sep 17 00:00:00 2001 +From: Spencer Clark +Date: Sat, 29 Jul 2023 09:51:10 -0400 +Subject: [PATCH] Set c_api_binop_methods compiler directive to True + +This retains Cython 0.x behavior for arithmetic operators for +Cython >= 3.0.0. +--- + Changelog | 2 ++ + pyproject.toml | 2 +- + requirements-dev.txt | 2 +- + setup.py | 9 ++++++++- + 4 files changed, 12 insertions(+), 3 deletions(-) + +diff --git a/setup.py b/setup.py +index 006f1a92..360396fa 100644 +--- a/setup.py ++++ b/setup.py +@@ -16,7 +16,14 @@ + BASEDIR = os.path.abspath(os.path.dirname(__file__)) + SRCDIR = os.path.join(BASEDIR,'src') + CMDS_NOCYTHONIZE = ['clean','clean_cython','sdist'] +-COMPILER_DIRECTIVES = {} ++COMPILER_DIRECTIVES = { ++ # Cython 3.0.0 changes the default of the c_api_binop_methods directive to ++ # False, resulting in errors in datetime and timedelta arithmetic: ++ # https://github.com/Unidata/cftime/issues/271. We explicitly set it to ++ # True to retain Cython 0.x behavior for future Cython versions. This ++ # directive was added in Cython version 0.29.20. ++ "c_api_binop_methods": True ++} + DEFINE_MACROS = [("NPY_NO_DEPRECATED_API", "NPY_1_7_API_VERSION")] + FLAG_COVERAGE = '--cython-coverage' # custom flag enabling Cython line tracing + NAME = 'cftime' -- cgit v1.2.3