From ba29c2752d64a391872d040968218caa7fe12399 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:07:29 +0900 Subject: [PATCH 01/21] python311Packages.jupyter-client: 8.3.1 -> 8.6.0 --- .../python-modules/jupyter-client/default.nix | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/pkgs/development/python-modules/jupyter-client/default.nix b/pkgs/development/python-modules/jupyter-client/default.nix index 014b67cb4b46..70aef6848eb6 100644 --- a/pkgs/development/python-modules/jupyter-client/default.nix +++ b/pkgs/development/python-modules/jupyter-client/default.nix @@ -1,28 +1,24 @@ { lib , buildPythonPackage , fetchPypi -, entrypoints , jupyter-core , hatchling -, nest-asyncio , python-dateutil , pyzmq , tornado , traitlets -, isPyPy -, py , pythonOlder , importlib-metadata }: buildPythonPackage rec { pname = "jupyter_client"; - version = "8.3.1"; - format = "pyproject"; + version = "8.6.0"; + pyproject = true; src = fetchPypi { inherit pname version; - hash = "sha256-YClLLVuGk1bIk/V7God+plENYNRc9LOAV/FnLYVpmsk="; + hash = "sha256-BkIkS7g7R2SuYNB+AQ4V8OLSdexOkYqPe4D7vvPKYMc="; }; nativeBuildInputs = [ @@ -30,16 +26,14 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - entrypoints jupyter-core - nest-asyncio python-dateutil pyzmq tornado traitlets ] ++ lib.optionals (pythonOlder "3.10") [ importlib-metadata - ] ++ lib.optional isPyPy py; + ]; # Circular dependency with ipykernel doCheck = false; From c532e6af27e9b2977a18d7b3984bdb6dd02921fc Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 22:32:16 +0900 Subject: [PATCH 02/21] python311Packages.jupyter-client: refactor --- .../python-modules/jupyter-client/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/jupyter-client/default.nix b/pkgs/development/python-modules/jupyter-client/default.nix index 70aef6848eb6..ad428c1c8a95 100644 --- a/pkgs/development/python-modules/jupyter-client/default.nix +++ b/pkgs/development/python-modules/jupyter-client/default.nix @@ -12,12 +12,13 @@ }: buildPythonPackage rec { - pname = "jupyter_client"; + pname = "jupyter-client"; version = "8.6.0"; pyproject = true; src = fetchPypi { - inherit pname version; + pname = "jupyter_client"; + inherit version; hash = "sha256-BkIkS7g7R2SuYNB+AQ4V8OLSdexOkYqPe4D7vvPKYMc="; }; @@ -35,12 +36,17 @@ buildPythonPackage rec { importlib-metadata ]; + pythonImportsCheck = [ + "jupyter_client" + ]; + # Circular dependency with ipykernel doCheck = false; meta = { description = "Jupyter protocol implementation and client libraries"; - homepage = "https://jupyter.org/"; + homepage = "https://github.com/jupyter/jupyter_client"; + changelog = "https://github.com/jupyter/jupyter_client/blob/v${version}/CHANGELOG.md"; license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ fridh ]; }; From 2ab1605cdcf079dc61ae610e070bb8a3c13f3b5a Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 17:05:28 +0900 Subject: [PATCH 03/21] python311Packages.pycrdt: init at 0.7.2 --- .../python-modules/pycrdt/Cargo.lock | 519 ++++++++++++++++++ .../python-modules/pycrdt/default.nix | 63 +++ pkgs/top-level/python-packages.nix | 2 + 3 files changed, 584 insertions(+) create mode 100644 pkgs/development/python-modules/pycrdt/Cargo.lock create mode 100644 pkgs/development/python-modules/pycrdt/default.nix diff --git a/pkgs/development/python-modules/pycrdt/Cargo.lock b/pkgs/development/python-modules/pycrdt/Cargo.lock new file mode 100644 index 000000000000..ecc9c945440f --- /dev/null +++ b/pkgs/development/python-modules/pycrdt/Cargo.lock @@ -0,0 +1,519 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "atomic_refcell" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c" + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bumpalo" +version = "3.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "getrandom" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "indoc" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306" + +[[package]] +name = "itoa" +version = "1.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" + +[[package]] +name = "js-sys" +version = "0.3.66" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "libc" +version = "0.2.151" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4" + +[[package]] +name = "lock_api" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + +[[package]] +name = "memoffset" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" +dependencies = [ + "autocfg", +] + +[[package]] +name = "once_cell" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets", +] + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "proc-macro2" +version = "1.0.70" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "pycrdt" +version = "0.7.2" +dependencies = [ + "pyo3", + "yrs", +] + +[[package]] +name = "pyo3" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e681a6cfdc4adcc93b4d3cf993749a4552018ee0a9b65fc0ccfad74352c72a38" +dependencies = [ + "cfg-if", + "indoc", + "libc", + "memoffset", + "parking_lot", + "pyo3-build-config", + "pyo3-ffi", + "pyo3-macros", + "unindent", +] + +[[package]] +name = "pyo3-build-config" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "076c73d0bc438f7a4ef6fdd0c3bb4732149136abd952b110ac93e4edb13a6ba5" +dependencies = [ + "once_cell", + "target-lexicon", +] + +[[package]] +name = "pyo3-ffi" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e53cee42e77ebe256066ba8aa77eff722b3bb91f3419177cf4cd0f304d3284d9" +dependencies = [ + "libc", + "pyo3-build-config", +] + +[[package]] +name = "pyo3-macros" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfeb4c99597e136528c6dd7d5e3de5434d1ceaf487436a3f03b2d56b6fc9efd1" +dependencies = [ + "proc-macro2", + "pyo3-macros-backend", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "pyo3-macros-backend" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "947dc12175c254889edc0c02e399476c2f652b4b9ebd123aa655c224de259536" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "quote" +version = "1.0.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "rand" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +dependencies = [ + "getrandom", + "libc", + "rand_chacha", + "rand_core", + "rand_hc", +] + +[[package]] +name = "rand_chacha" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +dependencies = [ + "getrandom", +] + +[[package]] +name = "rand_hc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +dependencies = [ + "rand_core", +] + +[[package]] +name = "redox_syscall" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags", +] + +[[package]] +name = "ryu" +version = "1.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "serde" +version = "1.0.193" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.193" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.42", +] + +[[package]] +name = "serde_json" +version = "1.0.108" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "smallstr" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63b1aefdf380735ff8ded0b15f31aab05daf1f70216c01c02a12926badd1df9d" +dependencies = [ + "smallvec", +] + +[[package]] +name = "smallvec" +version = "1.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.42" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b7d0a2c048d661a1a59fcd7355baa232f7ed34e0ee4df2eef3c1c1c0d3852d8" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "target-lexicon" +version = "0.12.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a" + +[[package]] +name = "thiserror" +version = "1.0.51" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f11c217e1416d6f036b870f14e0413d480dbf28edbee1f877abaf0206af43bb7" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.51" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01742297787513b79cf8e29d1056ede1313e2420b7b3b15d0a768b4921f549df" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.42", +] + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[package]] +name = "unindent" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c" + +[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + +[[package]] +name = "wasm-bindgen" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.42", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.42", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f" + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "yrs" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68aea14c6c33f2edd8a5ff9415360cfa5b98d90cce30c5ee3be59a8419fb15a9" +dependencies = [ + "atomic_refcell", + "rand", + "serde", + "serde_json", + "smallstr", + "smallvec", + "thiserror", +] diff --git a/pkgs/development/python-modules/pycrdt/default.nix b/pkgs/development/python-modules/pycrdt/default.nix new file mode 100644 index 000000000000..a8f99658df08 --- /dev/null +++ b/pkgs/development/python-modules/pycrdt/default.nix @@ -0,0 +1,63 @@ +{ lib +, stdenv +, buildPythonPackage +, fetchFromGitHub +, libiconv +, cargo +, rustPlatform +, rustc +, pydantic +, pytestCheckHook +, y-py +}: + +buildPythonPackage rec { + pname = "pycrdt"; + version = "0.7.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "jupyter-server"; + repo = "pycrdt"; + rev = "refs/tags/v${version}"; + hash = "sha256-dNNFrCuNdkgUb/jgeAs3TPoB+m2Hym3+ze/X2ejXtW8="; + }; + + postPatch = '' + cp ${./Cargo.lock} Cargo.lock + ''; + + cargoDeps = rustPlatform.importCargoLock { + lockFile = ./Cargo.lock; + }; + + nativeBuildInputs = [ + cargo + rustPlatform.cargoSetupHook + rustPlatform.maturinBuildHook + rustc + ]; + + buildInputs = lib.optionals stdenv.isDarwin [ + libiconv + ]; + + pythonImportsCheck = [ "pycrdt" ]; + + # requires pydantic>=2.5 + doCheck = false; + + nativeCheckInputs = [ + pytestCheckHook + y-py + pydantic + ]; + + meta = with lib; { + description = "CRDTs based on Yrs"; + homepage = "https://github.com/jupyter-server/pycrdt"; + changelog = "https://github.com/jupyter-server/pycrdt/releases/tag/${src.rev}"; + license = licenses.mit; + maintainers = teams.jupyter.members; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b7e146431297..69ba22855759 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9341,6 +9341,8 @@ self: super: with self; { pycoolmasternet-async = callPackage ../development/python-modules/pycoolmasternet-async { }; + pycrdt = callPackage ../development/python-modules/pycrdt { }; + pyfibaro = callPackage ../development/python-modules/pyfibaro { }; pyfireservicerota = callPackage ../development/python-modules/pyfireservicerota { }; From 577ebe7d5f8ff42a5cbe2f12188d153f37ca46f7 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 19:22:52 +0900 Subject: [PATCH 04/21] python311Packages.pycrdt-websocket: init at 0.12.5 --- .../pycrdt-websocket/default.nix | 71 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 73 insertions(+) create mode 100644 pkgs/development/python-modules/pycrdt-websocket/default.nix diff --git a/pkgs/development/python-modules/pycrdt-websocket/default.nix b/pkgs/development/python-modules/pycrdt-websocket/default.nix new file mode 100644 index 000000000000..7e3bbb6edcdf --- /dev/null +++ b/pkgs/development/python-modules/pycrdt-websocket/default.nix @@ -0,0 +1,71 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, hatchling +, aiosqlite +, anyio +, channels +, pycrdt +, pytest-asyncio +, pytestCheckHook +, uvicorn +, websockets +}: + +buildPythonPackage rec { + pname = "pycrdt-websocket"; + version = "0.12.5"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "jupyter-server"; + repo = "pycrdt-websocket"; + rev = "refs/tags/v${version}"; + hash = "sha256-dTjWujRMYpg8XZ0OkEG49OLIAPj8qnZl+W7713NKVaA="; + }; + + nativeBuildInputs = [ + hatchling + ]; + + propagatedBuildInputs = [ + aiosqlite + anyio + pycrdt + ]; + + passthru.optional-dependencies = { + django = [ + channels + ]; + }; + + pythonImportsCheck = [ + "pycrdt_websocket" + ]; + + nativeCheckInputs = [ + pytest-asyncio + pytestCheckHook + uvicorn + websockets + ]; + + disabledTestPaths = [ + # requires nodejs and installed js modules + "tests/test_pycrdt_yjs.py" + ]; + + __darwinAllowLocalNetworking = true; + + meta = with lib; { + description = "WebSocket Connector for pycrdt"; + homepage = "https://github.com/jupyter-server/pycrdt-websocket"; + changelog = "https://github.com/jupyter-server/pycrdt-websocket/blob/${src.rev}/CHANGELOG.md"; + license = licenses.mit; + maintainers = teams.jupyter.members; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 69ba22855759..dd4325af8064 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9343,6 +9343,8 @@ self: super: with self; { pycrdt = callPackage ../development/python-modules/pycrdt { }; + pycrdt-websocket = callPackage ../development/python-modules/pycrdt-websocket { }; + pyfibaro = callPackage ../development/python-modules/pyfibaro { }; pyfireservicerota = callPackage ../development/python-modules/pyfireservicerota { }; From aedba3263273ffc1650036bcf268e32222a3951a Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:07:44 +0900 Subject: [PATCH 05/21] python311Packages.jupyter-collaboration: 1.2.0 -> 2.0.0 Changelog: https://github.com/jupyterlab/jupyter_collaboration/blob/v2.0.0/CHANGELOG.md --- .../jupyter-collaboration/default.nix | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/pkgs/development/python-modules/jupyter-collaboration/default.nix b/pkgs/development/python-modules/jupyter-collaboration/default.nix index 6c2842eb6d0c..3f935605c059 100644 --- a/pkgs/development/python-modules/jupyter-collaboration/default.nix +++ b/pkgs/development/python-modules/jupyter-collaboration/default.nix @@ -5,29 +5,29 @@ , hatch-jupyter-builder , hatch-nodejs-version , hatchling -, pythonRelaxDepsHook +, jsonschema , jupyter-events , jupyter-server , jupyter-server-fileid , jupyter-ydoc , jupyterlab -, ypy-websocket -, pytest-asyncio +, pycrdt-websocket , pytest-jupyter , pytestCheckHook +, websockets }: buildPythonPackage rec { pname = "jupyter-collaboration"; - version = "1.2.0"; - format = "pyproject"; + version = "2.0.0"; + pyproject = true; disabled = pythonOlder "3.8"; src = fetchPypi { pname = "jupyter_collaboration"; inherit version; - hash = "sha256-qhcCPAgHlBwt+Lt8NdDa+ZPhNNotCvNtz9WQx6OHvOc="; + hash = "sha256-7tIdCXcEXwdPgO5HxnjAlPGcgVZ2AtUKethYqxiplY8="; }; postPatch = '' @@ -39,25 +39,21 @@ buildPythonPackage rec { hatch-nodejs-version hatchling jupyterlab - pythonRelaxDepsHook - ]; - - pythonRelaxDeps = [ - "ypy-websocket" ]; propagatedBuildInputs = [ + jsonschema jupyter-events jupyter-server jupyter-server-fileid jupyter-ydoc - ypy-websocket + pycrdt-websocket ]; nativeCheckInputs = [ - pytest-asyncio pytest-jupyter pytestCheckHook + websockets ]; pythonImportsCheck = [ @@ -72,6 +68,8 @@ buildPythonPackage rec { export HOME=$TEMP ''; + __darwinAllowLocalNetworking = true; + meta = with lib; { description = "JupyterLab Extension enabling Real-Time Collaboration"; homepage = "https://github.com/jupyterlab/jupyter_collaboration"; From 08486a593fc7181658f97c6ab8e23aa2e819a67e Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:08:04 +0900 Subject: [PATCH 06/21] python311Packages.jupyter-core: 5.5.0 -> 5.5.1 Diff: https://github.com/jupyter/jupyter_core/compare/refs/tags/v5.5.0...v5.5.1 Changelog: https://github.com/jupyter/jupyter_core/blob/refs/tags/v5.5.1/CHANGELOG.md --- pkgs/development/python-modules/jupyter-core/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/jupyter-core/default.nix b/pkgs/development/python-modules/jupyter-core/default.nix index 120585896600..1ab9f5770909 100644 --- a/pkgs/development/python-modules/jupyter-core/default.nix +++ b/pkgs/development/python-modules/jupyter-core/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "jupyter-core"; - version = "5.5.0"; + version = "5.5.1"; disabled = pythonOlder "3.7"; pyproject = true; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "jupyter"; repo = "jupyter_core"; rev = "refs/tags/v${version}"; - hash = "sha256-GufCQUkR4283xMsyrbv5tDfJ8SeL35WBW5Aw2z6Ardc="; + hash = "sha256-X8yBh63JYIuIatLtJU0pOD8Oz/QpJShU0R2VGAgPAa4="; }; patches = [ From 0a11ccb50fbaab69baebafcddcc0e8bc8087dcbd Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:08:34 +0900 Subject: [PATCH 07/21] python311Packages.jupyter-repo2docker: 2022.10.0 -> 2023.06.0 Diff: https://github.com/jupyterhub/repo2docker/compare/refs/tags/2022.10.0...2023.06.0 --- .../python-modules/jupyter-repo2docker/default.nix | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/jupyter-repo2docker/default.nix b/pkgs/development/python-modules/jupyter-repo2docker/default.nix index 0d39b868c132..8cadfd926f63 100644 --- a/pkgs/development/python-modules/jupyter-repo2docker/default.nix +++ b/pkgs/development/python-modules/jupyter-repo2docker/default.nix @@ -10,16 +10,18 @@ , pkgs-docker , python-json-logger , pythonOlder +, requests , ruamel-yaml , semver +, setuptools , toml , traitlets }: buildPythonPackage rec { pname = "jupyter-repo2docker"; - version = "2022.10.0"; - format = "setuptools"; + version = "2023.06.0"; + pyproject = true; disabled = pythonOlder "3.6"; @@ -27,9 +29,13 @@ buildPythonPackage rec { owner = "jupyterhub"; repo = "repo2docker"; rev = "refs/tags/${version}"; - hash = "sha256-n1Yhl3QC1YqdsCl6pI5NjzTiSEs6NrGq9jwT0uyS/p0="; + hash = "sha256-egSQ8PXH9PxVpkZfaWfU2ZjRNW67x6FzIy+LQR5BdNE="; }; + nativeBuildInputs = [ + setuptools + ]; + propagatedBuildInputs = [ chardet docker @@ -39,6 +45,7 @@ buildPythonPackage rec { jinja2 pkgs-docker python-json-logger + requests ruamel-yaml semver toml From adb4ee77ecbf63dbafbf1667776ec9de862e5eae Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 22:40:31 +0900 Subject: [PATCH 08/21] python311Packages.jupyter-repo2docker: fix meta --- .../development/python-modules/jupyter-repo2docker/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/jupyter-repo2docker/default.nix b/pkgs/development/python-modules/jupyter-repo2docker/default.nix index 8cadfd926f63..78aed83b87c5 100644 --- a/pkgs/development/python-modules/jupyter-repo2docker/default.nix +++ b/pkgs/development/python-modules/jupyter-repo2docker/default.nix @@ -65,7 +65,8 @@ buildPythonPackage rec { meta = with lib; { description = "Turn code repositories into Jupyter enabled Docker Images"; homepage = "https://repo2docker.readthedocs.io/"; - license = licenses.bsdOriginal; + changelog = "https://github.com/jupyterhub/repo2docker/blob/${src.rev}/docs/source/changelog.md"; + license = licenses.bsd3; maintainers = with maintainers; [ ]; }; } From 7bdcb95c87f7ff4f43fd67946c5d963754298772 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:08:50 +0900 Subject: [PATCH 09/21] python311Packages.jupyter-server-terminals: 0.4.4 -> 0.5.0 Diff: https://github.com/jupyter-server/jupyter_server_terminals/compare/refs/tags/v0.4.4...v0.5.0 Changelog: https://github.com/jupyter-server/jupyter_server_terminals/releases/tag/v0.5.0 --- .../python-modules/jupyter-server-terminals/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/jupyter-server-terminals/default.nix b/pkgs/development/python-modules/jupyter-server-terminals/default.nix index 584b7fb634b0..5eb3456c3d62 100644 --- a/pkgs/development/python-modules/jupyter-server-terminals/default.nix +++ b/pkgs/development/python-modules/jupyter-server-terminals/default.nix @@ -16,14 +16,14 @@ let self = buildPythonPackage rec { pname = "jupyter-server-terminals"; - version = "0.4.4"; - format = "pyproject"; + version = "0.5.0"; + pyproject = true; src = fetchFromGitHub { owner = "jupyter-server"; repo = "jupyter_server_terminals"; rev = "refs/tags/v${version}"; - hash = "sha256-F1lpg4ASw3ImvhC8XA8Ya4qpcbGY6fg8PYJt8sJj4cs="; + hash = "sha256-RT4rBSSDuIr3d8+hmbiF7rMn94Yr7ekocWeXww0tKlA="; }; nativeBuildInputs = [ From 3143bef3e17e48e2d61deaf43fc9b4870e87e6cf Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:09:12 +0900 Subject: [PATCH 10/21] python311Packages.jupyter-ydoc: 1.1.1 -> 2.0.0 Changelog: https://github.com/jupyter-server/jupyter_ydoc/blob/v2.0.0/CHANGELOG.md --- .../python-modules/jupyter-ydoc/default.nix | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/jupyter-ydoc/default.nix b/pkgs/development/python-modules/jupyter-ydoc/default.nix index 03dae2dfa9ff..e9088bea9586 100644 --- a/pkgs/development/python-modules/jupyter-ydoc/default.nix +++ b/pkgs/development/python-modules/jupyter-ydoc/default.nix @@ -1,9 +1,11 @@ { lib , buildPythonPackage , fetchPypi +, pythonOlder , hatch-nodejs-version , hatchling -, y-py +, importlib-metadata +, pycrdt , pytestCheckHook , websockets , ypy-websocket @@ -11,14 +13,15 @@ buildPythonPackage rec { pname = "jupyter-ydoc"; - version = "1.1.1"; + version = "2.0.0"; + pyproject = true; - format = "pyproject"; + disabled = pythonOlder "3.7"; src = fetchPypi { pname = "jupyter_ydoc"; inherit version; - hash = "sha256-APizOm59VcvhK5G4emqGtnPikz13w6EmG7qLJHU2Rd0="; + hash = "sha256-m7P00yfUdZfZQwNY3z1ZeViZUhyg61DHmcAjbvTcF30="; }; nativeBuildInputs = [ @@ -27,7 +30,9 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - y-py + pycrdt + ] ++ lib.optionals (pythonOlder "3.10") [ + importlib-metadata ]; pythonImportsCheck = [ "jupyter_ydoc" ]; From 0e7d83300501eae14928b69be0001ab1d45a52e8 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:09:54 +0900 Subject: [PATCH 11/21] python311Packages.jupyterlab-pygments: 0.2.2 -> 0.3.0 --- .../jupyterlab-pygments/default.nix | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/jupyterlab-pygments/default.nix b/pkgs/development/python-modules/jupyterlab-pygments/default.nix index a31f0de42e6f..e139402004c4 100644 --- a/pkgs/development/python-modules/jupyterlab-pygments/default.nix +++ b/pkgs/development/python-modules/jupyterlab-pygments/default.nix @@ -1,16 +1,35 @@ -{ lib, buildPythonPackage, fetchPypi, pygments, jupyter-packaging }: +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +, hatch-jupyter-builder +, hatch-nodejs-version +, hatchling +, pygments +}: buildPythonPackage rec { pname = "jupyterlab_pygments"; - version = "0.2.2"; + version = "0.3.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-dAXX/eYIGdkFqfqM6J5M2DDjGM2tIqADD3qQHacFWF0="; + hash = "sha256-chrKTZApJSsRz6nRheW1r01Udyu4By+bcDb0FwBU010="; }; + # jupyterlab is not necessary since we get the source from pypi + postPatch = '' + substituteInPlace pyproject.toml \ + --replace '"jupyterlab>=4.0.0,<5",' "" + ''; + nativeBuildInputs = [ - jupyter-packaging + hatch-jupyter-builder + hatch-nodejs-version + hatchling ]; # no tests exist on upstream repo From 5c189aa5fcdec9260f06e9ec8d6e3a7305889fe0 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 16:25:20 +0900 Subject: [PATCH 12/21] python311Packages.jupyterlab-pygments: normalize pname --- .../python-modules/jupyterlab-pygments/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/jupyterlab-pygments/default.nix b/pkgs/development/python-modules/jupyterlab-pygments/default.nix index e139402004c4..f9fe488add36 100644 --- a/pkgs/development/python-modules/jupyterlab-pygments/default.nix +++ b/pkgs/development/python-modules/jupyterlab-pygments/default.nix @@ -9,14 +9,15 @@ }: buildPythonPackage rec { - pname = "jupyterlab_pygments"; + pname = "jupyterlab-pygments"; version = "0.3.0"; pyproject = true; disabled = pythonOlder "3.8"; src = fetchPypi { - inherit pname version; + pname = "jupyterlab_pygments"; + inherit version; hash = "sha256-chrKTZApJSsRz6nRheW1r01Udyu4By+bcDb0FwBU010="; }; From fb9a578db74f9323f4b04e2f559eaa2cdc13b4ed Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 16:25:56 +0900 Subject: [PATCH 13/21] python311Packages.jupyterlab-pygments: fix license --- pkgs/development/python-modules/jupyterlab-pygments/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/jupyterlab-pygments/default.nix b/pkgs/development/python-modules/jupyterlab-pygments/default.nix index f9fe488add36..0d46258eb789 100644 --- a/pkgs/development/python-modules/jupyterlab-pygments/default.nix +++ b/pkgs/development/python-modules/jupyterlab-pygments/default.nix @@ -43,7 +43,7 @@ buildPythonPackage rec { meta = with lib; { description = "Jupyterlab syntax coloring theme for pygments"; homepage = "https://github.com/jupyterlab/jupyterlab_pygments"; - license = licenses.mit; + license = licenses.bsd3; maintainers = with maintainers; [ jonringer ]; }; } From f49382752079436e29cd052e6362685701da08fe Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:10:17 +0900 Subject: [PATCH 14/21] python311Packages.jupytext: 1.15.2 -> 1.16.0 Diff: https://github.com/mwouts/jupytext/compare/refs/tags/v1.15.2...v1.16.0 Changelog: https://github.com/mwouts/jupytext/releases/tag/refs/tags/v1.16.0 --- .../python-modules/jupytext/default.nix | 61 +++++++------------ 1 file changed, 21 insertions(+), 40 deletions(-) diff --git a/pkgs/development/python-modules/jupytext/default.nix b/pkgs/development/python-modules/jupytext/default.nix index e5bc170509d2..f88b56fef662 100644 --- a/pkgs/development/python-modules/jupytext/default.nix +++ b/pkgs/development/python-modules/jupytext/default.nix @@ -1,86 +1,66 @@ { lib , stdenv , buildPythonPackage -, fetchFromGitHub -, gitpython -, isort +, fetchPypi +, hatch-jupyter-builder +, hatchling , jupyter-client -, jupyter-packaging -, jupyterlab , markdown-it-py , mdit-py-plugins , nbformat , notebook +, packaging +, pytest-xdist , pytestCheckHook , pythonOlder , pyyaml -, setuptools , toml -, wheel }: buildPythonPackage rec { pname = "jupytext"; - version = "1.15.2"; - format = "pyproject"; + version = "1.16.0"; + pyproject = true; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.8"; - src = fetchFromGitHub { - owner = "mwouts"; - repo = pname; - rev = "refs/tags/v${version}"; - hash = "sha256-GvMoz2BsYWk0atrT3xmSnbV7AuO5RJoM/bOJlZ5YIn4="; + src = fetchPypi { + inherit pname version; + hash = "sha256-lMfmd3XpDheSw5q3/KTgRZv3w1ZWEj6Nwunhs+lTuvg="; }; - # Follow https://github.com/mwouts/jupytext/pull/1119 to see if the patch - # relaxing jupyter_packaging version can be cleaned up. - # - # Follow https://github.com/mwouts/jupytext/pull/1077 to see when the patch - # relaxing jupyterlab version can be cleaned up. - # - postPatch = '' - substituteInPlace pyproject.toml \ - --replace 'jupyter_packaging~=' 'jupyter_packaging>=' \ - --replace 'jupyterlab>=3,<=4' 'jupyterlab>=3' - ''; - nativeBuildInputs = [ - jupyter-packaging - jupyterlab - setuptools - wheel + hatch-jupyter-builder + hatchling ]; propagatedBuildInputs = [ markdown-it-py mdit-py-plugins nbformat + packaging pyyaml toml ]; nativeCheckInputs = [ - gitpython - isort jupyter-client notebook + pytest-xdist pytestCheckHook ]; preCheck = '' # Tests that use a Jupyter notebook require $HOME to be writable export HOME=$(mktemp -d); + export PATH=$out/bin:$PATH; ''; - pytestFlagsArray = [ - # Pre-commit tests expect the source directory to be a Git repository - "--ignore-glob='tests/test_pre_commit_*.py'" + disabledTestPaths = [ + "tests/external" ]; - disabledTests = [ - "test_apply_black_through_jupytext" # we can't do anything about ill-formatted notebooks - ] ++ lib.optionals stdenv.isDarwin [ + disabledTests = lib.optionals stdenv.isDarwin [ # requires access to trash "test_load_save_rename" ]; @@ -93,8 +73,9 @@ buildPythonPackage rec { meta = with lib; { description = "Jupyter notebooks as Markdown documents, Julia, Python or R scripts"; homepage = "https://github.com/mwouts/jupytext"; - changelog = "https://github.com/mwouts/jupytext/releases/tag/${src.rev}"; + changelog = "https://github.com/mwouts/jupytext/releases/tag/v${version}"; license = licenses.mit; maintainers = teams.jupyter.members; + mainProgram = "jupytext"; }; } From 123901b543dc62555158a50e67f94bca4a438022 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:10:46 +0900 Subject: [PATCH 15/21] python311Packages.nbconvert: 7.11.0 -> 7.13.0 Changelog: https://github.com/jupyter/nbconvert/blob/v7.13.0/CHANGELOG.md --- pkgs/development/python-modules/nbconvert/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/nbconvert/default.nix b/pkgs/development/python-modules/nbconvert/default.nix index 4afb593479d6..b89770aa3500 100644 --- a/pkgs/development/python-modules/nbconvert/default.nix +++ b/pkgs/development/python-modules/nbconvert/default.nix @@ -32,14 +32,14 @@ let }; in buildPythonPackage rec { pname = "nbconvert"; - version = "7.11.0"; + version = "7.13.0"; pyproject = true; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-q+3AHPVDF3/94L/Cppcm1aR49q8QozL8G/Kfy08M8AA="; + hash = "sha256-xvYchvylsovRf0+aMIJI5Z+itUkZ4VifbMNXXF3+wr0="; }; # Add $out/share/jupyter to the list of paths that are used to search for From 1cebbf25ccd933f82892a1688a1795b2439b02c8 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:11:43 +0900 Subject: [PATCH 16/21] python311Packages.pytest-jupyter: 0.7.0 -> 0.8.0 Diff: https://github.com/jupyter-server/pytest-jupyter/compare/refs/tags/v0.7.0...v0.8.0 Changelog: https://github.com/jupyter-server/pytest-jupyter/releases/tag/v0.8.0 --- .../python-modules/pytest-jupyter/default.nix | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/pytest-jupyter/default.nix b/pkgs/development/python-modules/pytest-jupyter/default.nix index 6f5f6484a570..63771bf4cf3c 100644 --- a/pkgs/development/python-modules/pytest-jupyter/default.nix +++ b/pkgs/development/python-modules/pytest-jupyter/default.nix @@ -22,14 +22,14 @@ let self = buildPythonPackage rec { pname = "pytest-jupyter"; - version = "0.7.0"; - format = "pyproject"; + version = "0.8.0"; + pyproject = true; src = fetchFromGitHub { owner = "jupyter-server"; repo = "pytest-jupyter"; rev = "refs/tags/v${version}"; - hash = "sha256-ZocpIBHnXTvQdjWU8yVhGK49I+FFct+teDhghiMnvW0="; + hash = "sha256-ND51UpPsvZGH6LdEaNFXaBLoCMB4n7caPoo1/Go9fNs="; }; nativeBuildInputs = [ @@ -44,15 +44,18 @@ let self = buildPythonPackage rec { jupyter-core ]; - passthru.optional-dependencies = rec { + passthru.optional-dependencies = { client = [ jupyter-client + nbformat ipykernel ]; server = [ jupyter-server + jupyter-client nbformat - ] ++ client; + ipykernel + ]; }; doCheck = false; # infinite recursion with jupyter-server From 6ba98a6b5f9fd2cce601bfcd2da97a506aede1d9 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 15:12:09 +0900 Subject: [PATCH 17/21] python311Packages.sphinx-jupyterbook-latex: 0.5.2 -> 1.0.0 Changelog: https://github.com/executablebooks/sphinx-jupyterbook-latex/raw/v1.0.0/CHANGELOG.md --- .../sphinx-jupyterbook-latex/default.nix | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix b/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix index 5dff846924d8..6919cea37238 100644 --- a/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix +++ b/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix @@ -2,30 +2,33 @@ , buildPythonPackage , pythonOlder , fetchPypi +, flit-core +, packaging , sphinx -, importlib-resources +, pytestCheckHook }: buildPythonPackage rec { pname = "sphinx-jupyterbook-latex"; - version = "0.5.2"; - format = "pyproject"; + version = "1.0.0"; + pyproject = true; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.9"; src = fetchPypi { inherit version; pname = "sphinx_jupyterbook_latex"; - hash = "sha256-2h060Cj1XdvxC5Ewu58k/GDK+2ccvTnf2VU3qvyQly4="; + hash = "sha256-9UxmdME/Fhb5qTRD6YubU1P5/dqOObbsVSzPCz5f+2I="; }; - postPatch = '' - substituteInPlace setup.cfg \ - --replace "sphinx>=4,<5.1" "sphinx" - ''; + nativeBuildInputs = [ + flit-core + ]; - propagatedBuildInputs = [ sphinx ] - ++ lib.optionals (pythonOlder "3.9") [ importlib-resources ]; + propagatedBuildInputs = [ + packaging + sphinx + ]; pythonImportsCheck = [ "sphinx_jupyterbook_latex" ]; From ff5f10f47949e50405073230bf4876555170aad5 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 16:05:22 +0900 Subject: [PATCH 18/21] python311Packages.texsoup: init at 0.3.1 introduced as a dependency of sphinx-jupyterbook-latex --- .../python-modules/texsoup/default.nix | 41 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 43 insertions(+) create mode 100644 pkgs/development/python-modules/texsoup/default.nix diff --git a/pkgs/development/python-modules/texsoup/default.nix b/pkgs/development/python-modules/texsoup/default.nix new file mode 100644 index 000000000000..da59b2fc28bc --- /dev/null +++ b/pkgs/development/python-modules/texsoup/default.nix @@ -0,0 +1,41 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, setuptools +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "texsoup"; + version = "0.3.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "alvinwan"; + repo = "TexSoup"; + rev = "refs/tags/${version}"; + hash = "sha256-XKYJycYivtrszU46B3Bd4JLrvckBpQu9gKDMdr6MyZU="; + }; + + nativeBuildInputs = [ + setuptools + ]; + + pythonImportsCheck = [ "TexSoup" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + preCheck = '' + substituteInPlace pytest.ini \ + --replace "--cov=TexSoup" "" + ''; + + meta = with lib; { + description = "Fault-tolerant Python3 package for searching, navigating, and modifying LaTeX documents"; + homepage = "https://github.com/alvinwan/TexSoup"; + license = licenses.bsd2; + maintainers = with maintainers; [ ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index dd4325af8064..3ad47e04491e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -14107,6 +14107,8 @@ self: super: with self; { testfixtures = callPackage ../development/python-modules/testfixtures { }; + texsoup = callPackage ../development/python-modules/texsoup { }; + textfsm = callPackage ../development/python-modules/textfsm { }; textile = callPackage ../development/python-modules/textile { }; From d2a0b4b63d25978fad57d492e92da6f10d7277a0 Mon Sep 17 00:00:00 2001 From: natsukium Date: Thu, 21 Dec 2023 16:07:18 +0900 Subject: [PATCH 19/21] python311Packages.sphinx-jupyterbook-latex: enable tests --- .../sphinx-jupyterbook-latex/default.nix | 27 +++++++++++++++---- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix b/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix index 6919cea37238..592151ecccf1 100644 --- a/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix +++ b/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix @@ -1,11 +1,17 @@ { lib , buildPythonPackage , pythonOlder -, fetchPypi +, fetchFromGitHub , flit-core , packaging , sphinx +, click +, myst-parser +, pytest-regressions , pytestCheckHook +, sphinx-external-toc +, sphinxcontrib-bibtex +, texsoup }: buildPythonPackage rec { @@ -15,10 +21,11 @@ buildPythonPackage rec { disabled = pythonOlder "3.9"; - src = fetchPypi { - inherit version; - pname = "sphinx_jupyterbook_latex"; - hash = "sha256-9UxmdME/Fhb5qTRD6YubU1P5/dqOObbsVSzPCz5f+2I="; + src = fetchFromGitHub { + owner = "executablebooks"; + repo = "sphinx-jupyterbook-latex"; + rev = "refs/tags/v${version}"; + hash = "sha256-ZTR+s6a/++xXrLMtfFRmSmAeMWa/1de12ukxfsx85g4="; }; nativeBuildInputs = [ @@ -32,6 +39,16 @@ buildPythonPackage rec { pythonImportsCheck = [ "sphinx_jupyterbook_latex" ]; + nativeCheckInputs = [ + click + myst-parser + pytest-regressions + pytestCheckHook + sphinx-external-toc + sphinxcontrib-bibtex + texsoup + ]; + meta = with lib; { description = "Latex specific features for jupyter book"; homepage = "https://github.com/executablebooks/sphinx-jupyterbook-latex"; From 0d0687a52695a5c2570a00f000462dd3fb3a8b4c Mon Sep 17 00:00:00 2001 From: natsukium Date: Fri, 22 Dec 2023 20:08:46 +0900 Subject: [PATCH 20/21] python311Packages.jupyter-server-fileid: allow local networking on darwin --- .../python-modules/jupyter-server-fileid/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/jupyter-server-fileid/default.nix b/pkgs/development/python-modules/jupyter-server-fileid/default.nix index f58197b30bef..302a521cdc4e 100644 --- a/pkgs/development/python-modules/jupyter-server-fileid/default.nix +++ b/pkgs/development/python-modules/jupyter-server-fileid/default.nix @@ -44,6 +44,8 @@ buildPythonPackage rec { export HOME=$TEMPDIR ''; + __darwinAllowLocalNetworking = true; + meta = { changelog = "https://github.com/jupyter-server/jupyter_server_fileid/blob/${src.rev}/CHANGELOG.md"; description = "An extension that maintains file IDs for documents in a running Jupyter Server"; From 35628cc9db9304ebc447797aaa7bfcc1e0c84502 Mon Sep 17 00:00:00 2001 From: natsukium Date: Fri, 22 Dec 2023 20:26:58 +0900 Subject: [PATCH 21/21] python311Packages.ipykernel: add missing inputs --- .../python-modules/ipykernel/default.nix | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pkgs/development/python-modules/ipykernel/default.nix b/pkgs/development/python-modules/ipykernel/default.nix index d1b970c34a2e..9d32925f0ca9 100644 --- a/pkgs/development/python-modules/ipykernel/default.nix +++ b/pkgs/development/python-modules/ipykernel/default.nix @@ -1,14 +1,21 @@ { lib +, stdenv , buildPythonPackage , callPackage , fetchPypi , hatchling , pythonOlder +, appnope , comm +, debugpy , ipython , jupyter-client +, jupyter-core +, matplotlib-inline +, nest-asyncio , packaging , psutil +, pyzmq , tornado , traitlets }: @@ -36,12 +43,19 @@ buildPythonPackage rec { propagatedBuildInputs = [ comm + debugpy ipython jupyter-client + jupyter-core + matplotlib-inline + nest-asyncio packaging psutil + pyzmq tornado traitlets + ] ++ lib.optionals stdenv.isDarwin [ + appnope ]; # check in passthru.tests.pytest to escape infinite recursion with ipyparallel