Merge pull request #310845 from lucasew/20240510-fix-orange
python3Packages.orange-canvas-core: fix build and runtime
This commit is contained in:
@@ -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 = [
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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; {
|
||||
|
||||
@@ -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 ];
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user