diff options
Diffstat (limited to 'pkgs/development/python-modules')
25 files changed, 735 insertions, 108 deletions
diff --git a/pkgs/development/python-modules/aioshelly/default.nix b/pkgs/development/python-modules/aioshelly/default.nix index aa5e227ca65b9..05b4794a826c6 100644 --- a/pkgs/development/python-modules/aioshelly/default.nix +++ b/pkgs/development/python-modules/aioshelly/default.nix @@ -7,13 +7,13 @@ buildPythonPackage rec { pname = "aioshelly"; - version = "0.6.2"; + version = "0.6.3"; src = fetchFromGitHub { owner = "home-assistant-libs"; repo = pname; rev = version; - sha256 = "sha256-vlIon+VAHeJiaSIVMEKEpwQC4gXA52vxfEkiQMC9yiw="; + sha256 = "sha256-c4EFR7rcYdrCdM0AfmX/d7cP4woh6P1iAjeSQV9ieKM="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/blspy/default.nix b/pkgs/development/python-modules/blspy/default.nix new file mode 100644 index 0000000000000..e75e474bdab16 --- /dev/null +++ b/pkgs/development/python-modules/blspy/default.nix @@ -0,0 +1,58 @@ +{ lib +, buildPythonPackage +, fetchPypi +, fetchFromGitHub +, setuptools-scm +, substituteAll +, cmake +, boost +, gmp +, pybind11 +, pythonOlder +}: + +buildPythonPackage rec { + pname = "blspy"; + version = "1.0.2"; + disabled = pythonOlder "3.7"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-N1mk83uZrzSty2DyXfKiVp85z/jmztiUSRXKfNBRJV4="; + }; + + patches = [ + # prevent CMake from trying to get libraries on the Internet + (substituteAll { + src = ./dont_fetch_dependencies.patch; + pybind11_src = pybind11.src; + relic_src = fetchFromGitHub { + owner = "relic-toolkit"; + repo = "relic"; + rev = "1885ae3b681c423c72b65ce1fe70910142cf941c"; # pinned by blspy + hash = "sha256-tsSZTcssl8t7Nqdex4BesgQ+ACPgTdtHnJFvS9josN0="; + }; + }) + ]; + + nativeBuildInputs = [ cmake setuptools-scm ]; + + buildInputs = [ boost gmp.static pybind11 ]; + + pythonImportsCheck = [ + "blspy" + ]; + + # Note: upstream testsuite is just a single test.py script outside of any framework + doCheck = false; + + # CMake needs to be run by setuptools rather than by its hook + dontConfigure = true; + + meta = with lib; { + description = "BLS signatures with aggregation"; + homepage = "https://github.com/Chia-Network/bls-signatures/"; + license = licenses.asl20; + maintainers = teams.chia.members; + }; +} diff --git a/pkgs/development/python-modules/blspy/dont_fetch_dependencies.patch b/pkgs/development/python-modules/blspy/dont_fetch_dependencies.patch new file mode 100644 index 0000000000000..f9c41d9420be4 --- /dev/null +++ b/pkgs/development/python-modules/blspy/dont_fetch_dependencies.patch @@ -0,0 +1,38 @@ +diff --git a/python-bindings/CMakeLists.txt b/python-bindings/CMakeLists.txt +index 255e3bb..5f99c3a 100644 +--- a/python-bindings/CMakeLists.txt ++++ b/python-bindings/CMakeLists.txt +@@ -6,8 +6,7 @@ include(FetchContent) + + FetchContent_Declare( + pybind11 +- GIT_REPOSITORY https://github.com/pybind/pybind11.git +- GIT_TAG v2.6.2 ++ SOURCE_DIR @pybind11_src@ + ) + FetchContent_MakeAvailable(pybind11 relic) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index faecc61..3272116 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -4,18 +4,9 @@ set (CMAKE_CXX_STANDARD 17) + # CMake 3.14+ + include(FetchContent) + +-if (DEFINED ENV{RELIC_MAIN}) +- set(RELIC_GIT_TAG "origin/main") +-else () +- set(RELIC_GIT_TAG "1885ae3b681c423c72b65ce1fe70910142cf941c") +-endif () +- +-message(STATUS "Relic will be built from: ${RELIC_GIT_TAG}") +- + FetchContent_Declare( + relic +- GIT_REPOSITORY https://github.com/relic-toolkit/relic.git +- GIT_TAG ${RELIC_GIT_TAG} ++ SOURCE_DIR @relic_src@ + ) + FetchContent_MakeAvailable(relic) + diff --git a/pkgs/development/python-modules/chiabip158/default.nix b/pkgs/development/python-modules/chiabip158/default.nix new file mode 100644 index 0000000000000..f2c309593610d --- /dev/null +++ b/pkgs/development/python-modules/chiabip158/default.nix @@ -0,0 +1,38 @@ +{ lib +, buildPythonPackage +, fetchPypi +, cmake +, pybind11 +, pythonOlder +, pytestCheckHook +, setuptools-scm +}: + +buildPythonPackage rec { + pname = "chiabip158"; + version = "1.0"; + disabled = pythonOlder "3.7"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-dG6A4n30uPswQWY/Wmi75HK4ZMCDNr9Lt05FRWEPYV8="; + }; + + nativeBuildInputs = [ cmake setuptools-scm ]; + + buildInputs = [ pybind11 ]; + + checkInputs = [ + pytestCheckHook + ]; + + # CMake needs to be run by setuptools rather than by its hook + dontConfigure = true; + + meta = with lib; { + description = "Chia's implementation of BIP 158"; + homepage = "https://www.chia.net/"; + license = licenses.asl20; + maintainers = teams.chia.members; + }; +} diff --git a/pkgs/development/python-modules/chiapos/default.nix b/pkgs/development/python-modules/chiapos/default.nix new file mode 100644 index 0000000000000..1faf5a94f8ccb --- /dev/null +++ b/pkgs/development/python-modules/chiapos/default.nix @@ -0,0 +1,48 @@ +{ lib +, substituteAll +, buildPythonPackage +, fetchPypi +, cmake +, cxxopts +, ghc_filesystem +, pybind11 +, pythonOlder +, psutil +, setuptools-scm +}: + +buildPythonPackage rec { + pname = "chiapos"; + version = "1.0.1"; + disabled = pythonOlder "3.7"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-kJx57EtwPBrGMpjnSzeYYhWqc/g1N1Bg8slW5oZKjg8="; + }; + + patches = [ + # prevent CMake from trying to get libraries on the Internet + (substituteAll { + src = ./dont_fetch_dependencies.patch; + inherit cxxopts ghc_filesystem; + pybind11_src = pybind11.src; + }) + ]; + + nativeBuildInputs = [ cmake setuptools-scm ]; + + buildInputs = [ pybind11 ]; + + checkInputs = [ psutil ]; + + # CMake needs to be run by setuptools rather than by its hook + dontConfigure = true; + + meta = with lib; { + description = "Chia proof of space library"; + homepage = "https://www.chia.net/"; + license = licenses.asl20; + maintainers = teams.chia.members; + }; +} diff --git a/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch b/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch new file mode 100644 index 0000000000000..ca18fd292ca8e --- /dev/null +++ b/pkgs/development/python-modules/chiapos/dont_fetch_dependencies.patch @@ -0,0 +1,31 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9b4a2f5..86f849c 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -18,22 +18,19 @@ include(FetchContent) + + FetchContent_Declare( + pybind11-src +- GIT_REPOSITORY https://github.com/pybind/pybind11.git +- GIT_TAG v2.6.2 ++ SOURCE_DIR @pybind11_src@ + ) + FetchContent_MakeAvailable(pybind11-src) + + FetchContent_Declare( + cxxopts +- GIT_REPOSITORY https://github.com/jarro2783/cxxopts.git +- GIT_TAG v2.2.1 ++ SOURCE_DIR @cxxopts@ + ) + FetchContent_MakeAvailable(cxxopts) + + FetchContent_Declare( + gulrak +- GIT_REPOSITORY https://github.com/gulrak/filesystem.git +- GIT_TAG v1.5.4 ++ SOURCE_DIR @ghc_filesystem@ + ) + FetchContent_MakeAvailable(gulrak) + + diff --git a/pkgs/development/python-modules/chiavdf/default.nix b/pkgs/development/python-modules/chiavdf/default.nix new file mode 100644 index 0000000000000..deb7d21adc764 --- /dev/null +++ b/pkgs/development/python-modules/chiavdf/default.nix @@ -0,0 +1,53 @@ +{ lib +, stdenv +, buildPythonPackage +, fetchPypi +, setuptools-scm +, substituteAll +, cmake +, boost +, gmp +, pybind11 +, pytestCheckHook +, pythonOlder +}: + +buildPythonPackage rec { + pname = "chiavdf"; + version = "1.0.1"; + disabled = pythonOlder "3.7"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-z0od/VrH580+9641lKNI7jbVMlJZKCWnoT+GljnFxmU="; + }; + + patches = [ + # prevent CMake from trying to get libraries on the Internet + (substituteAll { + src = ./dont_fetch_dependencies.patch; + pybind11_src = pybind11.src; + }) + ]; + + # x86 instructions are needed for this component + BUILD_VDF_CLIENT = lib.optionalString (!stdenv.isx86_64) "N"; + + nativeBuildInputs = [ cmake setuptools-scm ]; + + buildInputs = [ boost gmp pybind11 ]; + + checkInputs = [ + pytestCheckHook + ]; + + # CMake needs to be run by setuptools rather than by its hook + dontConfigure = true; + + meta = with lib; { + description = "Chia verifiable delay function utilities"; + homepage = "https://www.chia.net/"; + license = licenses.asl20; + maintainers = teams.chia.members; + }; +} diff --git a/pkgs/development/python-modules/chiavdf/dont_fetch_dependencies.patch b/pkgs/development/python-modules/chiavdf/dont_fetch_dependencies.patch new file mode 100644 index 0000000000000..9b49db81fcf57 --- /dev/null +++ b/pkgs/development/python-modules/chiavdf/dont_fetch_dependencies.patch @@ -0,0 +1,14 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index c975128..a9f6910 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -31,8 +31,7 @@ include(FetchContent) + + FetchContent_Declare( + pybind11-src +- GIT_REPOSITORY https://github.com/pybind/pybind11.git +- GIT_TAG v2.6.2 ++ SOURCE_DIR @pybind11_src@ + ) + FetchContent_MakeAvailable(pybind11-src) + diff --git a/pkgs/development/python-modules/cirq-core/default.nix b/pkgs/development/python-modules/cirq-core/default.nix new file mode 100644 index 0000000000000..54e2fa1954df5 --- /dev/null +++ b/pkgs/development/python-modules/cirq-core/default.nix @@ -0,0 +1,98 @@ +{ stdenv +, lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, matplotlib +, networkx +, numpy +, pandas +, requests +, scipy +, sortedcontainers +, sympy +, tqdm +, typing-extensions + # Contrib requirements +, withContribRequires ? false +, autoray ? null +, opt-einsum +, ply +, pylatex ? null +, pyquil ? null +, quimb ? null + # test inputs +, pytestCheckHook +, freezegun +, pytest-asyncio +}: +buildPythonPackage rec { + pname = "cirq-core"; + version = "0.11.0"; + + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "quantumlib"; + repo = "cirq"; + rev = "v${version}"; + hash = "sha256-JaKTGnkYhzIFb35SGaho8DRupoT0JFYKA5+rJEq4oXw="; + }; + + sourceRoot = "source/${pname}"; + + postPatch = '' + substituteInPlace requirements.txt \ + --replace "matplotlib~=3.0" "matplotlib" \ + --replace "networkx~=2.4" "networkx" \ + --replace "numpy~=1.16" "numpy" \ + --replace "requests~=2.18" "requests" + ''; + + propagatedBuildInputs = [ + matplotlib + networkx + numpy + pandas + requests + scipy + sortedcontainers + sympy + tqdm + typing-extensions + ] ++ lib.optionals withContribRequires [ + autoray + opt-einsum + ply + pylatex + pyquil + quimb + ]; + + checkInputs = [ + pytestCheckHook + pytest-asyncio + freezegun + ]; + + pytestFlagsArray = lib.optionals (!withContribRequires) [ + # requires external (unpackaged) libraries, so untested. + "--ignore=cirq/contrib/" + ]; + disabledTests = [ + "test_metadata_search_path" # tries to import flynt, which isn't in Nixpkgs + "test_benchmark_2q_xeb_fidelities" # fails due pandas MultiIndex. Maybe issue with pandas version in nix? + ] ++ lib.optionals stdenv.hostPlatform.isAarch64 [ + # Seem to fail due to math issues on aarch64? + "expectation_from_wavefunction" + "test_single_qubit_op_to_framed_phase_form_output_on_example_case" + ]; + + meta = with lib; { + description = "A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits."; + homepage = "https://github.com/quantumlib/cirq"; + changelog = "https://github.com/quantumlib/Cirq/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ drewrisinger ]; + }; +} diff --git a/pkgs/development/python-modules/cirq-google/default.nix b/pkgs/development/python-modules/cirq-google/default.nix new file mode 100644 index 0000000000000..8692aef4b6784 --- /dev/null +++ b/pkgs/development/python-modules/cirq-google/default.nix @@ -0,0 +1,29 @@ +{ lib +, buildPythonPackage +, pythonOlder +, cirq-core +, google-api-core +, protobuf +# test inputs +, pytestCheckHook +, freezegun +}: + +buildPythonPackage rec { + pname = "cirq-google"; + inherit (cirq-core) version src meta; + + sourceRoot = "source/${pname}"; + + postPatch = '' + substituteInPlace requirements.txt --replace "protobuf~=3.13.0" "protobuf" + ''; + + propagatedBuildInputs = [ + cirq-core + google-api-core + protobuf + ]; + + checkInputs = [ pytestCheckHook freezegun ]; +} diff --git a/pkgs/development/python-modules/cirq/default.nix b/pkgs/development/python-modules/cirq/default.nix index f0b576299b21b..f8afdcbbb050b 100644 --- a/pkgs/development/python-modules/cirq/default.nix +++ b/pkgs/development/python-modules/cirq/default.nix @@ -1,114 +1,28 @@ -{ stdenv -, lib +{ lib , buildPythonPackage -, pythonOlder -, fetchFromGitHub -, google-api-core -, matplotlib -, networkx -, numpy -, pandas -, protobuf -, requests -, scipy -, sortedcontainers -, sympy -, tqdm -, typing-extensions +, cirq-core +, cirq-google # test inputs -, freezegun , pytestCheckHook -, pytest-asyncio -, pytest-benchmark -, ply -, pydot -, pyyaml -, pygraphviz }: buildPythonPackage rec { pname = "cirq"; - version = "0.10.0"; - - disabled = pythonOlder "3.6"; - - src = fetchFromGitHub { - owner = "quantumlib"; - repo = "cirq"; - rev = "v${version}"; - sha256 = "0xinml44n2lfl0q2lb2apmn69gsszlwim83082f66vyk0gpwd4lr"; - }; - - postPatch = '' - substituteInPlace requirements.txt \ - --replace "matplotlib~=3.0" "matplotlib" \ - --replace "networkx~=2.4" "networkx" \ - --replace "numpy~=1.16" "numpy" \ - --replace "protobuf~=3.13.0" "protobuf" - ''; + inherit (cirq-core) version src meta; propagatedBuildInputs = [ - google-api-core - matplotlib - networkx - numpy - pandas - protobuf - requests - scipy - sortedcontainers - sympy - tqdm - typing-extensions + cirq-core + cirq-google ]; # pythonImportsCheck = [ "cirq" "cirq.Circuit" ]; # cirq's importlib hook doesn't work here - checkInputs = [ - pytestCheckHook - freezegun - pytest-asyncio - pytest-benchmark - ply - pydot - pyyaml - pygraphviz - ]; + checkInputs = [ pytestCheckHook ]; - pytestFlagsArray = [ - "--ignore=dev_tools" # Only needed when developing new code, which is out-of-scope - "--ignore=cirq/contrib/" # requires external (unpackaged) python packages, so untested. - "--benchmark-disable" # Don't need to run benchmarks when packaging. - ]; - disabledTests = lib.optionals stdenv.isAarch64 [ - # Seem to fail due to math issues on aarch64? - "expectation_from_wavefunction" - "test_single_qubit_op_to_framed_phase_form_output_on_example_case" - ] ++ [ - # slow tests, for quicker building - "test_anneal_search_method_calls" - "test_density_matrix_from_state_tomography_is_correct" - "test_example_runs_qubit_characterizations" - "test_example_runs_hello_line_perf" - "test_example_runs_bc_mean_field_perf" - "test_main_loop" - "test_clifford_circuit_2" - "test_decompose_specific_matrices" - "test_two_qubit_randomized_benchmarking" - "test_kak_decomposition_perf" - "test_example_runs_simon" - "test_decompose_random_unitary" - "test_decompose_size_special_unitary" - "test_api_retry_5xx_errors" - "test_xeb_fidelity" - "test_example_runs_phase_estimator_perf" - "test_cross_entropy_benchmarking" + # Don't run submodule or development tool tests + disabledTestPaths = [ + "cirq-google" + "cirq-core" + "dev_tools" ]; - meta = with lib; { - description = "A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits."; - homepage = "https://github.com/quantumlib/cirq"; - changelog = "https://github.com/quantumlib/Cirq/releases/tag/v${version}"; - license = licenses.asl20; - maintainers = with maintainers; [ drewrisinger ]; - }; } diff --git a/pkgs/development/python-modules/clvm-rs/default.nix b/pkgs/development/python-modules/clvm-rs/default.nix new file mode 100644 index 0000000000000..4e5f69f8cd505 --- /dev/null +++ b/pkgs/development/python-modules/clvm-rs/default.nix @@ -0,0 +1,47 @@ +{ lib +, fetchFromGitHub +, buildPythonPackage +, rustPlatform +, pythonOlder +, openssl +, perl +}: + +buildPythonPackage rec { + pname = "clvm_rs"; + version = "0.1.7"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "Chia-Network"; + repo = "clvm_rs"; + rev = version; + sha256 = "sha256-ves23q1uQ3lexwK9l1xGRss05jYObJDi/aY9Yvp4aPU="; + }; + + cargoDeps = rustPlatform.fetchCargoTarball { + inherit src; + name = "${pname}-${version}"; + hash = "sha256-3kPzM2EX61ZvU6VKXY1OG/ic+9FU3Et4RuKp+3QYzSo="; + }; + + format = "pyproject"; + + nativeBuildInputs = [ + perl # used by openssl-sys to configure + ] ++ (with rustPlatform; [ + cargoSetupHook + maturinBuildHook + ]); + + buildInputs = [ openssl ]; + + pythonImportsCheck = [ "clvm_rs" ]; + + meta = with lib; { + homepage = "https://chialisp.com/"; + description = "Rust implementation of clvm"; + license = licenses.asl20; + maintainers = teams.chia.members; + }; +} diff --git a/pkgs/development/python-modules/clvm-tools/default.nix b/pkgs/development/python-modules/clvm-tools/default.nix new file mode 100644 index 0000000000000..365f21e8c36ed --- /dev/null +++ b/pkgs/development/python-modules/clvm-tools/default.nix @@ -0,0 +1,51 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, clvm +, setuptools-scm +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "clvm_tools"; + version = "0.4.3"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "Chia-Network"; + repo = "clvm_tools"; + rev = version; + sha256 = "sha256-bWz3YCrakob/kROq+LOA+yD1wtIbInVrmDqtg4/cV4g="; + }; + + nativeBuildInputs = [ + setuptools-scm + ]; + + propagatedBuildInputs = [ + clvm + ]; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "clvm_tools" + ]; + + disabledTests = [ + "test_cmd_unknown-1_txt" + ]; + + # give a hint to setuptools_scm on package version + SETUPTOOLS_SCM_PRETEND_VERSION="v${version}"; + + meta = with lib; { + description = "Tools for clvm development"; + homepage = "https://www.chialisp.com/"; + license = licenses.asl20; + maintainers = teams.chia.members; + }; +} diff --git a/pkgs/development/python-modules/clvm/default.nix b/pkgs/development/python-modules/clvm/default.nix new file mode 100644 index 0000000000000..f7168832fa43a --- /dev/null +++ b/pkgs/development/python-modules/clvm/default.nix @@ -0,0 +1,52 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, blspy +, setuptools-scm +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "clvm"; + version = "0.9.6"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "Chia-Network"; + repo = "clvm"; + rev = version; + sha256 = "sha256-XBQEilDFhx0kT9bEMD4jX+SDk3cAC1BUCWhbtpgrLcA="; + }; + + nativeBuildInputs = [ + setuptools-scm + ]; + + # give a hint to setuptools_scm on package version + SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}"; + + propagatedBuildInputs = [ + blspy + ]; + + checkInputs = [ + pytestCheckHook + ]; + + disabledTestPaths = [ + # all tests in this file have a circular dependency on clvm-tools + "tests/cmds_test.py" + ]; + + pythonImportsCheck = [ + "clvm" + ]; + + meta = with lib; { + description = "Chia Lisp virtual machine"; + homepage = "https://www.chia.net/"; + license = licenses.asl20; + maintainers = teams.chia.members; + }; +} diff --git a/pkgs/development/python-modules/concurrent-log-handler/default.nix b/pkgs/development/python-modules/concurrent-log-handler/default.nix new file mode 100644 index 0000000000000..5880cdf961e78 --- /dev/null +++ b/pkgs/development/python-modules/concurrent-log-handler/default.nix @@ -0,0 +1,32 @@ +{ lib +, buildPythonPackage +, fetchPypi +, portalocker +}: + +buildPythonPackage rec { + pname = "concurrent-log-handler"; + version = "0.9.19"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-sS95q+0/lBIcJc6cJM21fYiSguxv9h9VNasgaNw31Ak="; + }; + + propagatedBuildInputs = [ + portalocker + ]; + + pythonImportsCheck = [ + "concurrent_log_handler" + ]; + + doCheck = false; # upstream has no tests + + meta = with lib; { + description = "Python logging handler that allows multiple processes to safely write to the same log file concurrently"; + homepage = "https://www.chia.net/"; + license = licenses.asl20; + maintainers = teams.chia.members; + }; +} diff --git a/pkgs/development/python-modules/coqpit/default.nix b/pkgs/development/python-modules/coqpit/default.nix new file mode 100644 index 0000000000000..c4df114e24df1 --- /dev/null +++ b/pkgs/development/python-modules/coqpit/default.nix @@ -0,0 +1,37 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "coqpit"; + version = "0.0.6.6"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "coqui-ai"; + repo = pname; + rev = "v${version}"; + sha256 = "0wb5wf84i5h4ycm732kn4316v7schhm91s2rrklfw9sny5dqmdnh"; + }; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "coqpit" + "coqpit.coqpit" + ]; + + meta = with lib; { + description = "Simple but maybe too simple config management through python data classes"; + longDescription = '' + Simple, light-weight and no dependency config handling through python data classes with to/from JSON serialization/deserialization. + ''; + homepage = "https://github.com/coqui-ai/coqpit"; + license = licenses.mit; + maintainers = with maintainers; [ hexa mic92 ]; + }; +} diff --git a/pkgs/development/python-modules/hdbscan/default.nix b/pkgs/development/python-modules/hdbscan/default.nix index 269062a1e71ee..5264ff24890d6 100644 --- a/pkgs/development/python-modules/hdbscan/default.nix +++ b/pkgs/development/python-modules/hdbscan/default.nix @@ -35,6 +35,12 @@ buildPythonPackage rec { rm __init__.py ''; checkInputs = [ pytestCheckHook ]; + disabledTests = [ + # known flaky tests: https://github.com/scikit-learn-contrib/hdbscan/issues/420 + "test_mem_vec_diff_clusters" + "test_all_points_mem_vec_diff_clusters" + "test_approx_predict_diff_clusters" + ]; meta = with lib; { description = "Hierarchical Density-Based Spatial Clustering of Applications with Noise, a clustering algorithm with a scikit-learn compatible API"; diff --git a/pkgs/development/python-modules/karton-autoit-ripper/default.nix b/pkgs/development/python-modules/karton-autoit-ripper/default.nix index d1f79f42a2abd..e675c055d7868 100644 --- a/pkgs/development/python-modules/karton-autoit-ripper/default.nix +++ b/pkgs/development/python-modules/karton-autoit-ripper/default.nix @@ -9,13 +9,13 @@ buildPythonPackage rec { pname = "karton-autoit-ripper"; - version = "1.0.0"; + version = "1.0.1"; src = fetchFromGitHub { owner = "CERT-Polska"; repo = pname; rev = "v${version}"; - sha256 = "0vdsxkbjcr0inpcfjh45gl72ipzklkhgs06fdpkyy9y0cfx3zq7z"; + sha256 = "1bsqpf9w6d9fjysmnafaglg2w41gsafs2xz4dzcgc7n92shpcs8w"; }; propagatedBuildInputs = [ @@ -28,7 +28,6 @@ buildPythonPackage rec { postPatch = '' substituteInPlace requirements.txt \ --replace "autoit-ripper==1.0.0" "autoit-ripper" \ - --replace "karton.core==4.0.4" "karton-core" \ --replace "malduck==3.1.0" "malduck>=3.1.0" \ --replace "regex==2020.2.20" "regex>=2020.2.20" ''; diff --git a/pkgs/development/python-modules/keyrings-cryptfile/default.nix b/pkgs/development/python-modules/keyrings-cryptfile/default.nix new file mode 100644 index 0000000000000..7f2cacea62944 --- /dev/null +++ b/pkgs/development/python-modules/keyrings-cryptfile/default.nix @@ -0,0 +1,59 @@ +{ lib +, buildPythonPackage +, fetchPypi +, fetchpatch +, argon2_cffi +, keyring +, pycryptodome +, pytestCheckHook +, pythonOlder +}: + +buildPythonPackage rec { + pname = "keyrings.cryptfile"; + # NOTE: newer releases are bugged/incompatible + # https://github.com/frispete/keyrings.cryptfile/issues/15 + version = "1.3.4"; + disabled = pythonOlder "3.5"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-jW+cKMm+xef8C+fl0CGe+6SEkYBHDjFX2/kLCZ62j6c="; + }; + + patches = [ + # upstream setup.cfg has an option that is not supported + ./fix-testsuite.patch + # change of API in keyrings.testing + (fetchpatch { + url = "https://github.com/frispete/keyrings.cryptfile/commit/6fb9e45f559b8b69f7a0a519c0bece6324471d79.patch"; + sha256 = "sha256-1878pMO9Ed1zs1pl+7gMjwx77HbDHdE1CryN8TPfPdU="; + }) + ]; + + propagatedBuildInputs = [ + argon2_cffi + keyring + pycryptodome + ]; + + pythonImportsCheck = [ + "keyrings.cryptfile" + ]; + + checkInputs = [ + pytestCheckHook + ]; + + disabledTests = [ + "test_set_properties" + "UncryptedFileKeyringTestCase" + ]; + + meta = with lib; { + description = "Encrypted file keyring backend"; + homepage = "https://github.com/frispete/keyrings.cryptfile"; + license = licenses.mit; + maintainers = teams.chia.members; + }; +} diff --git a/pkgs/development/python-modules/keyrings-cryptfile/fix-testsuite.patch b/pkgs/development/python-modules/keyrings-cryptfile/fix-testsuite.patch new file mode 100644 index 0000000000000..8e32a64e52925 --- /dev/null +++ b/pkgs/development/python-modules/keyrings-cryptfile/fix-testsuite.patch @@ -0,0 +1,14 @@ +diff --git a/setup.cfg b/setup.cfg +index ec7eb30..7ffd831 100644 +--- a/setup.cfg ++++ b/setup.cfg +@@ -5,9 +5,6 @@ dists = clean --all sdist bdist_wheel + [wheel] + universal = 1 + +-[tool:pytest] +-addopts = -s --cov=keyrings/cryptfile +- + [egg_info] + tag_build = + tag_date = 0 diff --git a/pkgs/development/python-modules/nassl/default.nix b/pkgs/development/python-modules/nassl/default.nix index 8a290a7b859b7..97033224c14af 100644 --- a/pkgs/development/python-modules/nassl/default.nix +++ b/pkgs/development/python-modules/nassl/default.nix @@ -90,7 +90,7 @@ buildPythonPackage rec { ${opensslLegacyStatic.out}/lib/libcrypto.a \ deps/openssl-OpenSSL_${legacyOpenSSLVersion}/ ln -s ${opensslLegacyStatic.out.dev}/include deps/openssl-OpenSSL_${legacyOpenSSLVersion}/include - ln -s ${opensslLegacyStatic.bin} deps/openssl-OpenSSL_${legacyOpenSSLVersion}/apps + ln -s ${opensslLegacyStatic.bin}/bin deps/openssl-OpenSSL_${legacyOpenSSLVersion}/apps mkdir -p deps/openssl-OpenSSL_${modernOpenSSLVersion}/ cp ${opensslStatic.out}/lib/libssl.a \ diff --git a/pkgs/development/python-modules/phonemizer/default.nix b/pkgs/development/python-modules/phonemizer/default.nix index 43ce5f1e766d2..8eab09046dc2f 100644 --- a/pkgs/development/python-modules/phonemizer/default.nix +++ b/pkgs/development/python-modules/phonemizer/default.nix @@ -65,6 +65,6 @@ buildPythonApplication rec { homepage = "https://github.com/bootphon/phonemizer"; description = "Simple text to phones converter for multiple languages"; license = licenses.gpl3; - maintainers = with maintainers; [ hexa ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/python-modules/segments/default.nix b/pkgs/development/python-modules/segments/default.nix index 00953a8e90902..f1c0ad3bf0ef3 100644 --- a/pkgs/development/python-modules/segments/default.nix +++ b/pkgs/development/python-modules/segments/default.nix @@ -42,6 +42,6 @@ buildPythonPackage rec { description = "Unicode Standard tokenization routines and orthography profile segmentation"; homepage = "https://github.com/cldf/segments"; license = licenses.asl20; - maintainers = with maintainers; [ hexa ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/python-modules/vdirsyncer/default.nix b/pkgs/development/python-modules/vdirsyncer/default.nix index 1f7642bfe3473..01ab42ed9c367 100644 --- a/pkgs/development/python-modules/vdirsyncer/default.nix +++ b/pkgs/development/python-modules/vdirsyncer/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonPackage , fetchPypi +, fetchpatch , isPy27 , click , click-log @@ -45,6 +46,14 @@ buildPythonPackage rec { pytest-subtesthack ]; + patches = [ + (fetchpatch { + name = "update-usage-deprecated-method.patch"; + url = "https://github.com/pimutils/vdirsyncer/commit/7577fa21177442aacc2d86640ef28cebf1c4aaef.patch"; + sha256 = "0inkr1wfal20kssij8l5myhpjivxg8wlvhppqc3lvml9d1i75qbh"; + }) + ]; + postPatch = '' substituteInPlace setup.py --replace "click>=5.0,<6.0" "click" ''; diff --git a/pkgs/development/python-modules/ytmusicapi/default.nix b/pkgs/development/python-modules/ytmusicapi/default.nix index 4728da51a64b8..9c92e5e55a644 100644 --- a/pkgs/development/python-modules/ytmusicapi/default.nix +++ b/pkgs/development/python-modules/ytmusicapi/default.nix @@ -7,13 +7,13 @@ buildPythonPackage rec { pname = "ytmusicapi"; - version = "0.16.0"; + version = "0.17.1"; disabled = isPy27; src = fetchPypi { inherit pname version; - sha256 = "sha256-/94/taeBI6xZ3uN/wfMnk/NPmk+j0+aaH8CAZBEsK10="; + sha256 = "sha256-b5+AGf9qFqQbx4Rq4RovK2NllYsB+sXVMFU4AvbDkzI="; }; propagatedBuildInputs = [ |