From 61a374ac3a00185e35f5f60ba01f80f76d83420a Mon Sep 17 00:00:00 2001 From: Fabian Affolter <mail@fabian-affolter.ch> Date: Mon, 7 Jun 2021 13:41:33 +0200 Subject: [PATCH] python3Packages.parsel: fix build --- .../python-modules/parsel/default.nix | 51 +++++++++++++++---- 1 file changed, 40 insertions(+), 11 deletions(-) diff --git a/pkgs/development/python-modules/parsel/default.nix b/pkgs/development/python-modules/parsel/default.nix index 319f83f72755..423f4eb0293b 100644 --- a/pkgs/development/python-modules/parsel/default.nix +++ b/pkgs/development/python-modules/parsel/default.nix @@ -1,14 +1,13 @@ { lib , buildPythonPackage +, cssselect , fetchPypi -, pytest -, pytestrunner , functools32 +, isPy27 +, lxml +, pytestCheckHook , six , w3lib -, lxml -, cssselect -, isPy27 }: buildPythonPackage rec { @@ -20,17 +19,47 @@ buildPythonPackage rec { sha256 = "0yawf9r3r863lwxj0n89i7h3n8xjbsl5b7n6xg76r68scl5yzvvh"; }; - checkInputs = [ pytest pytestrunner ]; - propagatedBuildInputs = [ six w3lib lxml cssselect ] ++ lib.optionals isPy27 [ functools32 ]; + propagatedBuildInputs = [ + cssselect + lxml + six + w3lib + ] ++ lib.optionals isPy27 [ + functools32 + ]; - checkPhase = '' - py.test + checkInputs = [ + pytestCheckHook + ]; + + postPatch = '' + substituteInPlace setup.py \ + --replace "'pytest-runner'," "" ''; + disabledTests = [ + # Test are out-dated and are failing (AssertionError: Lists differ: ...) + # https://github.com/scrapy/parsel/pull/174 + "test_differences_parsing_xml_vs_html" + "test_nested_selectors" + "test_re" + "test_replacement_null_char_from_body" + "test_select_on_text_nodes" + "test_selector_get_alias" + "test_selector_getall_alias" + "test_selector_over_text" + "test_selectorlist_get_alias" + "test_selectorlist_getall_alias" + "test_slicing" + "test_text_pseudo_element" + ]; + + pythonImportsCheck = [ "parsel" ]; + meta = with lib; { homepage = "https://github.com/scrapy/parsel"; - description = "Parsel is a library to extract data from HTML and XML using XPath and CSS selectors"; + description = "Python library to extract data from HTML and XML using XPath and CSS selectors"; license = licenses.bsd3; + maintainers = with maintainers; [ fab ]; }; - }