diff --git a/pkgs/development/python-modules/orange-canvas-core/default.nix b/pkgs/development/python-modules/orange-canvas-core/default.nix index 592aa2afa509..37683a999488 100644 --- a/pkgs/development/python-modules/orange-canvas-core/default.nix +++ b/pkgs/development/python-modules/orange-canvas-core/default.nix @@ -18,12 +18,12 @@ buildPythonPackage rec { pname = "orange-canvas-core"; - version = "0.2.0"; + version = "0.1.35"; format = "setuptools"; src = fetchPypi { inherit pname version; - hash = "sha256-KMEFZkAZkDhuDPpAts+u825p5pFJZbyrsMW/S1AArp4="; + hash = "sha256-xLCwjeNDx9RqxlNkIWMo0Pcrg7akGuu4Rv9oRDgOK18="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/orange-widget-base/default.nix b/pkgs/development/python-modules/orange-widget-base/default.nix index 95dadbb04d79..3a1d5cd6e893 100644 --- a/pkgs/development/python-modules/orange-widget-base/default.nix +++ b/pkgs/development/python-modules/orange-widget-base/default.nix @@ -16,12 +16,12 @@ buildPythonPackage rec { pname = "orange-widget-base"; - version = "4.23.0"; + version = "4.22.0"; format = "setuptools"; src = fetchPypi { inherit pname version; - hash = "sha256-mz+BcZEdg1p9V0ewYRrw3jKBWLMbL9RR6o4hUEUx9DA="; + hash = "sha256-nV2aBPZzn7K+QECtCVoLLh5smG31zE2G9jFTKlxh9qM="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/orange3/default.nix b/pkgs/development/python-modules/orange3/default.nix index 1c4531254ae8..a5f9d5f85fd4 100644 --- a/pkgs/development/python-modules/orange3/default.nix +++ b/pkgs/development/python-modules/orange3/default.nix @@ -1,4 +1,5 @@ { lib +, stdenv , baycomp , bottleneck , buildPythonPackage @@ -24,12 +25,15 @@ , orange-canvas-core , orange-widget-base , pandas +, pytestCheckHook +, pytest-qt , pyqtgraph , pyqtwebengine , python , python-louvain , pythonOlder , pyyaml +, pip , qt5 , qtconsole , recommonmark @@ -112,6 +116,7 @@ let keyrings-alt pyyaml baycomp + pip ]; # FIXME: ImportError: cannot import name '_variable' from partially initialized module 'Orange.data' (most likely due to a circular import) (/build/source/Orange/data/__init__.py) @@ -146,9 +151,9 @@ let passthru = { updateScript = nix-update-script { }; - tests.unittests = self.overridePythonAttrs (old: { - pname = "${old.pname}-tests"; - format = "other"; + tests.unittests = stdenv.mkDerivation { + name = "${self.name}-tests"; + inherit (self) src; preCheck = '' export HOME=$(mktemp -d) @@ -160,23 +165,32 @@ let cp -r ${self}/${python.sitePackages}/Orange . chmod +w -R . - rm Orange/tests/test_url_reader.py # uses network - rm Orange/tests/test_ada_boost.py # broken: The 'base_estimator' parameter of AdaBoostRegressor must be an object implementing 'fit' and 'predict' or a str among {'deprecated'}. Got None instead. + substituteInPlace Orange/classification/tests/test_xgb_cls.py \ + --replace test_learners mk_test_learners + + substituteInPlace Orange/modelling/tests/test_xgb.py \ + --replace test_learners mk_test_learners + + substituteInPlace Orange/**/tests/*.py \ + --replace test_filename filename_test + + # TODO: debug why orange is crashing on GC, may be a upstream issue + chmod +x Orange/__init__.py + echo "import gc; gc.disable()" | tee -a Orange/__init__.py + ''; - checkPhase = '' - runHook preCheck - ${python.interpreter} -m unittest -b -v ./Orange/**/test*.py - runHook postCheck - ''; + nativeBuildInputs = [ pytestCheckHook pytest-qt ]; - postInstall = ""; + postCheck = '' + touch $out + ''; doBuild = false; doInstall = false; - nativeBuildInputs = [ self ] ++ old.nativeBuildInputs; - }); + buildInputs = [ self ]; + }; }; meta = with lib; { diff --git a/pkgs/development/python-modules/pyqtgraph/default.nix b/pkgs/development/python-modules/pyqtgraph/default.nix index 2599fb1d813c..f09ed4fa0cb7 100644 --- a/pkgs/development/python-modules/pyqtgraph/default.nix +++ b/pkgs/development/python-modules/pyqtgraph/default.nix @@ -11,6 +11,7 @@ , freefont_ttf , makeFontsConf , setuptools +, python }: let @@ -70,6 +71,7 @@ buildPythonPackage rec { homepage = "https://www.pyqtgraph.org/"; changelog = "https://github.com/pyqtgraph/pyqtgraph/blob/master/CHANGELOG"; license = licenses.mit; + broken = lib.versionAtLeast python.version "3.12"; platforms = platforms.unix; maintainers = with maintainers; [ koral ]; };