about summary refs log tree commit diff
path: root/pkgs/development/python-modules/cython/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/cython/default.nix')
-rw-r--r--pkgs/development/python-modules/cython/default.nix63
1 files changed, 41 insertions, 22 deletions
diff --git a/pkgs/development/python-modules/cython/default.nix b/pkgs/development/python-modules/cython/default.nix
index 2062ae03863ba..1efad920d3447 100644
--- a/pkgs/development/python-modules/cython/default.nix
+++ b/pkgs/development/python-modules/cython/default.nix
@@ -1,36 +1,46 @@
-{ lib
-, stdenv
-, buildPythonPackage
-, fetchPypi
-, setuptools
-, python
-, pkg-config
-, gdb
-, numpy
-, ncurses
+{
+  lib,
+  stdenv,
+  buildPythonPackage,
+  fetchPypi,
+  setuptools,
+  python,
+  pkg-config,
+  gdb,
+  numpy,
+  ncurses,
+
+  # Reverse dependency
+  sage,
 }:
 
 let
-  excludedTests = [ "reimport_from_subinterpreter" ]
+  excludedTests =
+    [ "reimport_from_subinterpreter" ]
     # cython's testsuite is not working very well with libc++
     # We are however optimistic about things outside of testsuite still working
-    ++ lib.optionals (stdenv.cc.isClang or false) [ "cpdef_extern_func" "libcpp_algo" ]
+    ++ lib.optionals (stdenv.cc.isClang or false) [
+      "cpdef_extern_func"
+      "libcpp_algo"
+    ]
     # Some tests in the test suite isn't working on aarch64. Disable them for
     # now until upstream finds a workaround.
     # Upstream issue here: https://github.com/cython/cython/issues/2308
     ++ lib.optionals stdenv.isAarch64 [ "numpy_memoryview" ]
-    ++ lib.optionals stdenv.isi686 [ "future_division" "overflow_check_longlong" ]
-  ;
-
-in buildPythonPackage rec {
+    ++ lib.optionals stdenv.isi686 [
+      "future_division"
+      "overflow_check_longlong"
+    ];
+in
+buildPythonPackage rec {
   pname = "cython";
-  version = "3.0.9";
+  version = "3.0.10";
   pyproject = true;
 
   src = fetchPypi {
     pname = "Cython";
     inherit version;
-    hash = "sha256-otNU8FnR8FXTTPqmLFtovHisLOq2QHFI1H+1CM87pPM=";
+    hash = "sha256-3MlnOTMfuFTc9QP5RgdXbP6EiAZsYcpQ39VYNvEy3pk=";
   };
 
   build-system = [
@@ -39,7 +49,9 @@ in buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
-    gdb numpy ncurses
+    gdb
+    numpy
+    ncurses
   ];
 
   env.LC_ALL = "en_US.UTF-8";
@@ -48,8 +60,11 @@ in buildPythonPackage rec {
     export HOME="$NIX_BUILD_TOP"
     ${python.interpreter} runtests.py -j$NIX_BUILD_CORES \
       --no-code-style \
-      ${lib.optionalString (builtins.length excludedTests != 0)
-        ''--exclude="(${builtins.concatStringsSep "|" excludedTests})"''}
+      ${
+        lib.optionalString (
+          builtins.length excludedTests != 0
+        ) ''--exclude="(${builtins.concatStringsSep "|" excludedTests})"''
+      }
   '';
 
   # https://github.com/cython/cython/issues/2785
@@ -57,13 +72,17 @@ in buildPythonPackage rec {
   doCheck = false;
   # doCheck = !stdenv.isDarwin;
 
+  passthru.tests = {
+    inherit sage;
+  };
+
   # force regeneration of generated code in source distributions
   # https://github.com/cython/cython/issues/5089
   setupHook = ./setup-hook.sh;
 
   meta = {
     changelog = "https://github.com/cython/cython/blob/${version}/CHANGES.rst";
-    description = "An optimising static compiler for both the Python programming language and the extended Cython programming language";
+    description = "Optimising static compiler for both the Python programming language and the extended Cython programming language";
     homepage = "https://cython.org";
     license = lib.licenses.asl20;
   };