diff --git a/pkgs/development/python-modules/face/default.nix b/pkgs/development/python-modules/face/default.nix index 731479b3bf4b..f3889cc5faa9 100644 --- a/pkgs/development/python-modules/face/default.nix +++ b/pkgs/development/python-modules/face/default.nix @@ -5,12 +5,13 @@ boltons, pytestCheckHook, pythonOlder, + setuptools, }: buildPythonPackage rec { pname = "face"; version = "22.0.0"; - format = "setuptools"; + pyproject = true; disabled = pythonOlder "3.7"; @@ -19,7 +20,9 @@ buildPythonPackage rec { hash = "sha256-1daS+QvI9Zh7Y25H42OEubvaSZqvCneqCwu+g0x2kj0="; }; - propagatedBuildInputs = [ boltons ]; + build-system = [ setuptools ]; + + dependencies = [ boltons ]; nativeCheckInputs = [ pytestCheckHook ]; diff --git a/pkgs/development/python-modules/glom/default.nix b/pkgs/development/python-modules/glom/default.nix index 04a8a1649f89..acd0da2f0b59 100644 --- a/pkgs/development/python-modules/glom/default.nix +++ b/pkgs/development/python-modules/glom/default.nix @@ -9,12 +9,14 @@ pythonAtLeast, pythonOlder, pyyaml, + setuptools, + tomli, }: buildPythonPackage rec { pname = "glom"; version = "24.11.0"; - format = "setuptools"; + pyproject = true; disabled = pythonOlder "3.7"; @@ -23,42 +25,45 @@ buildPythonPackage rec { hash = "sha256-QyX5Z1mpEgRK97bGvQ26RK2MHrYDiqsFcylmHSAhuyc="; }; - postPatch = '' - substituteInPlace setup.py \ - --replace "face==20.1.1" "face" - ''; + build-system = [ setuptools ]; - propagatedBuildInputs = [ + dependencies = [ boltons attrs face ]; + optional-dependencies = { + toml = lib.optionals (pythonOlder "3.11") [ tomli ]; + yaml = [ pyyaml ]; + }; + nativeCheckInputs = [ pytestCheckHook - pyyaml - ]; + ] ++ lib.flatten (builtins.attrValues optional-dependencies); preCheck = '' # test_cli.py checks the output of running "glom" export PATH=$out/bin:$PATH ''; - disabledTests = - [ - # Test is outdated (was made for PyYAML 3.x) - "test_main_yaml_target" - ] - ++ lib.optionals (pythonAtLeast "3.11") [ - "test_regular_error_stack" - "test_long_target_repr" - ]; + disabledTests = lib.optionals (pythonAtLeast "3.11") [ + "test_regular_error_stack" + "test_long_target_repr" + "test_glom_error_stack" + "test_glom_error_double_stack" + "test_branching_stack" + "test_midway_branch" + "test_partially_failing_branch" + "test_coalesce_stack" + "test_nesting_stack" + "test_3_11_byte_code_caret" + ]; pythonImportsCheck = [ "glom" ]; meta = with lib; { - description = "Restructuring data, the Python way"; - mainProgram = "glom"; + description = "Module for restructuring data"; longDescription = '' glom helps pull together objects from other objects in a declarative, dynamic, and downright simple way. @@ -67,5 +72,6 @@ buildPythonPackage rec { changelog = "https://github.com/mahmoud/glom/blob/v${version}/CHANGELOG.md"; license = licenses.bsd3; maintainers = with maintainers; [ twey ]; + mainProgram = "glom"; }; } diff --git a/pkgs/development/python-modules/jellyfish/Cargo.lock b/pkgs/development/python-modules/jellyfish/Cargo.lock new file mode 100644 index 000000000000..b8e248240923 --- /dev/null +++ b/pkgs/development/python-modules/jellyfish/Cargo.lock @@ -0,0 +1,337 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "ahash" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +dependencies = [ + "cfg-if", + "getrandom", + "once_cell", + "version_check", + "zerocopy", +] + +[[package]] +name = "autocfg" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "csv" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf" +dependencies = [ + "csv-core", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "csv-core" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" +dependencies = [ + "memchr", +] + +[[package]] +name = "getrandom" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +dependencies = [ + "cfg-if", + "libc", + "wasi", +] + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "indoc" +version = "2.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" + +[[package]] +name = "itoa" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" + +[[package]] +name = "jellyfish" +version = "1.1.2" +dependencies = [ + "ahash", + "csv", + "num-traits", + "pyo3", + "smallvec", + "unicode-normalization", + "unicode-segmentation", +] + +[[package]] +name = "libc" +version = "0.2.169" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" + +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "memoffset" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + +[[package]] +name = "once_cell" +version = "1.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" + +[[package]] +name = "portable-atomic" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" + +[[package]] +name = "proc-macro2" +version = "1.0.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "pyo3" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f402062616ab18202ae8319da13fa4279883a2b8a9d9f83f20dbade813ce1884" +dependencies = [ + "cfg-if", + "indoc", + "libc", + "memoffset", + "once_cell", + "portable-atomic", + "pyo3-build-config", + "pyo3-ffi", + "pyo3-macros", + "unindent", +] + +[[package]] +name = "pyo3-build-config" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b14b5775b5ff446dd1056212d778012cbe8a0fbffd368029fd9e25b514479c38" +dependencies = [ + "once_cell", + "target-lexicon", +] + +[[package]] +name = "pyo3-ffi" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ab5bcf04a2cdcbb50c7d6105de943f543f9ed92af55818fd17b660390fc8636" +dependencies = [ + "libc", + "pyo3-build-config", +] + +[[package]] +name = "pyo3-macros" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fd24d897903a9e6d80b968368a34e1525aeb719d568dba8b3d4bfa5dc67d453" +dependencies = [ + "proc-macro2", + "pyo3-macros-backend", + "quote", + "syn", +] + +[[package]] +name = "pyo3-macros-backend" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36c011a03ba1e50152b4b394b479826cad97e7a21eb52df179cd91ac411cbfbe" +dependencies = [ + "heck", + "proc-macro2", + "pyo3-build-config", + "quote", + "syn", +] + +[[package]] +name = "quote" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "ryu" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" + +[[package]] +name = "serde" +version = "1.0.217" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.217" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "smallvec" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" + +[[package]] +name = "syn" +version = "2.0.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46f71c0377baf4ef1cc3e3402ded576dccc315800fbc62dfc7fe04b009773b4a" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "target-lexicon" +version = "0.12.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" + +[[package]] +name = "tinyvec" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "unicode-ident" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" + +[[package]] +name = "unicode-normalization" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" + +[[package]] +name = "unindent" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce" + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "zerocopy" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] diff --git a/pkgs/development/python-modules/jellyfish/default.nix b/pkgs/development/python-modules/jellyfish/default.nix index 8517c239de44..ca47c0ca312b 100644 --- a/pkgs/development/python-modules/jellyfish/default.nix +++ b/pkgs/development/python-modules/jellyfish/default.nix @@ -1,49 +1,56 @@ { lib, - stdenv, buildPythonPackage, - fetchPypi, - isPy3k, - pytest, - unicodecsv, + cargo, + fetchFromGitHub, + pytestCheckHook, + pythonOlder, + rustc, rustPlatform, - libiconv, + unicodecsv, }: buildPythonPackage rec { pname = "jellyfish"; - version = "1.0.4"; + version = "1.1.2"; + pyproject = true; - disabled = !isPy3k; + disabled = pythonOlder "3.11"; - format = "pyproject"; - - src = fetchPypi { - inherit pname version; - hash = "sha256-cqq7O+3VE83SBxIkL9URc7WZcsCxRregucbzLxZWKT8="; + src = fetchFromGitHub { + owner = "jamesturk"; + repo = "jellyfish"; + rev = version; + hash = "sha256-xInjoTXYgZuHyvyKm+N4PAwHozE5BOkxoYhRzZnPs3Q="; }; - nativeBuildInputs = with rustPlatform; [ - maturinBuildHook - cargoSetupHook + cargoDeps = rustPlatform.importCargoLock { + lockFile = ./Cargo.lock; + }; + + postPatch = '' + ln -s ${./Cargo.lock} Cargo.lock + ''; + + build-system = [ + cargo + rustPlatform.cargoSetupHook + rustPlatform.maturinBuildHook + rustc ]; - buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ]; - - cargoDeps = rustPlatform.fetchCargoTarball { - inherit src; - name = "${pname}-${version}-rust-dependencies"; - hash = "sha256-HtzgxTO6tbN/tohaiTm9B9jrFYGTt1Szo9qRzpcy8BA="; - }; - nativeCheckInputs = [ - pytest + pytestCheckHook unicodecsv ]; + pythonImportsCheck = [ "jellyfish" ]; + meta = { - homepage = "https://github.com/sunlightlabs/jellyfish"; - description = "Approximate and phonetic matching of strings"; + description = "A python library for doing approximate and phonetic matching of strings"; + homepage = "https://github.com/jamesturk/jellyfish"; + changelog = "https://github.com/jamesturk/jellyfish/releases/tag/v${version}"; + license = lib.licenses.mit; maintainers = with lib.maintainers; [ koral ]; }; } diff --git a/pkgs/development/python-modules/whispers/default.nix b/pkgs/development/python-modules/whispers/default.nix index fba9a13a4551..da58f753f27c 100644 --- a/pkgs/development/python-modules/whispers/default.nix +++ b/pkgs/development/python-modules/whispers/default.nix @@ -16,6 +16,7 @@ wrapt, semgrep, setuptools, + six, }: buildPythonPackage rec { @@ -38,9 +39,12 @@ buildPythonPackage rec { ''; pythonRelaxDeps = [ + "jellyfish" "lxml" "pyyaml" "semgrep" + "six" + "wrapt" ]; build-system = [ setuptools ]; @@ -54,8 +58,9 @@ buildPythonPackage rec { luhn lxml pyyaml - wrapt semgrep + six + wrapt ]; nativeCheckInputs = [