From 86deab11f9c6b8700d32ba9db6a83149996a3df7 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Jun 2024 14:20:34 +0300 Subject: [PATCH 01/10] python311Packages.tree-sitter-html: init at 0.20.3 --- .../tree-sitter-html/Cargo.lock | 71 +++++++++++++++++++ .../tree-sitter-html/default.nix | 56 +++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 3 files changed, 129 insertions(+) create mode 100644 pkgs/development/python-modules/tree-sitter-html/Cargo.lock create mode 100644 pkgs/development/python-modules/tree-sitter-html/default.nix diff --git a/pkgs/development/python-modules/tree-sitter-html/Cargo.lock b/pkgs/development/python-modules/tree-sitter-html/Cargo.lock new file mode 100644 index 000000000000000..e34eb1cd132d0d7 --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-html/Cargo.lock @@ -0,0 +1,71 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "cc" +version = "1.0.98" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" + +[[package]] +name = "memchr" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" + +[[package]] +name = "regex" +version = "1.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" + +[[package]] +name = "tree-sitter" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df7cc499ceadd4dcdf7ec6d4cbc34ece92c3fa07821e287aedecd4416c516dca" +dependencies = [ + "cc", + "regex", +] + +[[package]] +name = "tree-sitter-html" +version = "0.20.3" +dependencies = [ + "cc", + "tree-sitter", +] diff --git a/pkgs/development/python-modules/tree-sitter-html/default.nix b/pkgs/development/python-modules/tree-sitter-html/default.nix new file mode 100644 index 000000000000000..2085ef7bad5751d --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-html/default.nix @@ -0,0 +1,56 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, cargo +, rustPlatform +, rustc +, setuptools +, wheel +, tree-sitter +}: + +buildPythonPackage rec { + pname = "tree-sitter-html"; + version = "0.20.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "tree-sitter"; + repo = "tree-sitter-html"; + rev = "v${version}"; + hash = "sha256-sHy3fVWemJod18HCQ8zBC/LpeCCPH0nzhI1wrkCg8nw="; + }; + + cargoDeps = rustPlatform.importCargoLock { + lockFile = ./Cargo.lock; + }; + + postPatch = '' + ln -s ${./Cargo.lock} Cargo.lock + ''; + + build-system = [ + cargo + rustPlatform.cargoSetupHook + rustc + setuptools + wheel + ]; + + passthru.optional-dependencies = { + core = [ + tree-sitter + ]; + }; + + # There are no tests + doCheck = false; + pythonImportsCheck = [ "tree_sitter_html" ]; + + meta = with lib; { + description = "HTML grammar for tree-sitter"; + homepage = "https://github.com/tree-sitter/tree-sitter-html"; + license = licenses.mit; + maintainers = with maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d20910a5302cfd9..8e6b22d8167c56c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15402,6 +15402,8 @@ self: super: with self; { tree-sitter = callPackage ../development/python-modules/tree-sitter { }; + tree-sitter-html = callPackage ../development/python-modules/tree-sitter-html { }; + treelib = callPackage ../development/python-modules/treelib { }; treelog = callPackage ../development/python-modules/treelog { }; From 3413a199158a85470941752d070fdc4f656a2a40 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Jun 2024 14:21:23 +0300 Subject: [PATCH 02/10] python311Packages.tree-sitter-python: init at 0.21.0 --- .../tree-sitter-python/Cargo.lock | 71 +++++++++++++++++++ .../tree-sitter-python/default.nix | 58 +++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 3 files changed, 131 insertions(+) create mode 100644 pkgs/development/python-modules/tree-sitter-python/Cargo.lock create mode 100644 pkgs/development/python-modules/tree-sitter-python/default.nix diff --git a/pkgs/development/python-modules/tree-sitter-python/Cargo.lock b/pkgs/development/python-modules/tree-sitter-python/Cargo.lock new file mode 100644 index 000000000000000..001baef04472ef7 --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-python/Cargo.lock @@ -0,0 +1,71 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "cc" +version = "1.0.98" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" + +[[package]] +name = "memchr" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" + +[[package]] +name = "regex" +version = "1.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" + +[[package]] +name = "tree-sitter" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df7cc499ceadd4dcdf7ec6d4cbc34ece92c3fa07821e287aedecd4416c516dca" +dependencies = [ + "cc", + "regex", +] + +[[package]] +name = "tree-sitter-python" +version = "0.21.0" +dependencies = [ + "cc", + "tree-sitter", +] diff --git a/pkgs/development/python-modules/tree-sitter-python/default.nix b/pkgs/development/python-modules/tree-sitter-python/default.nix new file mode 100644 index 000000000000000..e42136f5c2adaf2 --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-python/default.nix @@ -0,0 +1,58 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, cargo +, rustPlatform +, rustc +, setuptools +, wheel +, tree-sitter +}: + +buildPythonPackage rec { + pname = "tree-sitter-python"; + version = "0.21.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "tree-sitter"; + repo = "tree-sitter-python"; + rev = "v${version}"; + hash = "sha256-ZQ949GbgzZ/W667J+ekvQbs4bGnbDO+IWejivhxPZXM="; + }; + + cargoDeps = rustPlatform.importCargoLock { + # Upstream doesn't track a Cargo.lock file unfortunatly, but they barely + # have rust dependencies so it doesn't cost us too much. + lockFile = ./Cargo.lock; + }; + + postPatch = '' + ln -s ${./Cargo.lock} Cargo.lock + ''; + + build-system = [ + cargo + rustPlatform.cargoSetupHook + rustc + setuptools + wheel + ]; + + passthru.optional-dependencies = { + core = [ + tree-sitter + ]; + }; + + # There are no tests + doCheck = false; + pythonImportsCheck = [ "tree_sitter_python" ]; + + meta = with lib; { + description = "Python grammar for tree-sitter"; + homepage = "https://github.com/tree-sitter/tree-sitter-python"; + license = licenses.mit; + maintainers = with maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8e6b22d8167c56c..e4a0a08e9e369d8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15404,6 +15404,8 @@ self: super: with self; { tree-sitter-html = callPackage ../development/python-modules/tree-sitter-html { }; + tree-sitter-python = callPackage ../development/python-modules/tree-sitter-python { }; + treelib = callPackage ../development/python-modules/treelib { }; treelog = callPackage ../development/python-modules/treelog { }; From 70ace4421f35b9e5a99d4955e0d177830436f0da Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Jun 2024 14:22:01 +0300 Subject: [PATCH 03/10] python311Packages.tree-sitter-rust: init at 0.21.2 --- .../tree-sitter-rust/Cargo.lock | 71 +++++++++++++++++++ .../tree-sitter-rust/default.nix | 59 +++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 3 files changed, 132 insertions(+) create mode 100644 pkgs/development/python-modules/tree-sitter-rust/Cargo.lock create mode 100644 pkgs/development/python-modules/tree-sitter-rust/default.nix diff --git a/pkgs/development/python-modules/tree-sitter-rust/Cargo.lock b/pkgs/development/python-modules/tree-sitter-rust/Cargo.lock new file mode 100644 index 000000000000000..406fa5fc19bbe63 --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-rust/Cargo.lock @@ -0,0 +1,71 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "cc" +version = "1.0.98" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" + +[[package]] +name = "memchr" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" + +[[package]] +name = "regex" +version = "1.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" + +[[package]] +name = "tree-sitter" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df7cc499ceadd4dcdf7ec6d4cbc34ece92c3fa07821e287aedecd4416c516dca" +dependencies = [ + "cc", + "regex", +] + +[[package]] +name = "tree-sitter-rust" +version = "0.21.2" +dependencies = [ + "cc", + "tree-sitter", +] diff --git a/pkgs/development/python-modules/tree-sitter-rust/default.nix b/pkgs/development/python-modules/tree-sitter-rust/default.nix new file mode 100644 index 000000000000000..b2c85aa9c5c1e0b --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-rust/default.nix @@ -0,0 +1,59 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, cargo +, rustPlatform +, rustc +, setuptools +, wheel +, tree-sitter +}: + +buildPythonPackage rec { + pname = "tree-sitter-rust"; + version = "0.21.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "tree-sitter"; + repo = "tree-sitter-rust"; + rev = "v${version}"; + hash = "sha256-4CTh6fKSV8TuMHLAfEKWsAeCqeCM2uo6hVmF5KWhyPY="; + }; + + cargoDeps = rustPlatform.importCargoLock { + # Upstream doesn't track a Cargo.lock file unfortunatly, but they barely + # have rust dependencies so it doesn't cost us too much. + lockFile = ./Cargo.lock; + }; + + postPatch = '' + ln -s ${./Cargo.lock} Cargo.lock + ''; + + build-system = [ + cargo + rustPlatform.cargoSetupHook + rustc + setuptools + wheel + ]; + + + passthru.optional-dependencies = { + core = [ + tree-sitter + ]; + }; + + # There are no tests + doCheck = false; + pythonImportsCheck = [ "tree_sitter_rust" ]; + + meta = with lib; { + description = "Rust grammar for tree-sitter"; + homepage = "https://github.com/tree-sitter/tree-sitter-rust"; + license = licenses.mit; + maintainers = with maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e4a0a08e9e369d8..def285888b35636 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15406,6 +15406,8 @@ self: super: with self; { tree-sitter-python = callPackage ../development/python-modules/tree-sitter-python { }; + tree-sitter-rust = callPackage ../development/python-modules/tree-sitter-rust { }; + treelib = callPackage ../development/python-modules/treelib { }; treelog = callPackage ../development/python-modules/treelog { }; From 05662e4560fbf6c6fb5afe5e2085c88bf4b59759 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Jun 2024 14:23:22 +0300 Subject: [PATCH 04/10] python311Packages.tree-sitter-javascript: init at 0.21.3 --- .../tree-sitter-javascript/Cargo.lock | 71 +++++++++++++++++++ .../tree-sitter-javascript/default.nix | 58 +++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 3 files changed, 131 insertions(+) create mode 100644 pkgs/development/python-modules/tree-sitter-javascript/Cargo.lock create mode 100644 pkgs/development/python-modules/tree-sitter-javascript/default.nix diff --git a/pkgs/development/python-modules/tree-sitter-javascript/Cargo.lock b/pkgs/development/python-modules/tree-sitter-javascript/Cargo.lock new file mode 100644 index 000000000000000..2a6627a051151d2 --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-javascript/Cargo.lock @@ -0,0 +1,71 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "cc" +version = "1.0.98" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" + +[[package]] +name = "memchr" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" + +[[package]] +name = "regex" +version = "1.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" + +[[package]] +name = "tree-sitter" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df7cc499ceadd4dcdf7ec6d4cbc34ece92c3fa07821e287aedecd4416c516dca" +dependencies = [ + "cc", + "regex", +] + +[[package]] +name = "tree-sitter-javascript" +version = "0.21.3" +dependencies = [ + "cc", + "tree-sitter", +] diff --git a/pkgs/development/python-modules/tree-sitter-javascript/default.nix b/pkgs/development/python-modules/tree-sitter-javascript/default.nix new file mode 100644 index 000000000000000..50b115c4e7ef8bd --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-javascript/default.nix @@ -0,0 +1,58 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, cargo +, rustPlatform +, rustc +, setuptools +, wheel +, tree-sitter +}: + +buildPythonPackage rec { + pname = "tree-sitter-javascript"; + version = "0.21.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "tree-sitter"; + repo = "tree-sitter-javascript"; + rev = "v${version}"; + hash = "sha256-jsdY9Pd9WqZuBYtk088mx1bRQadC6D2/tGGVY+ZZ0J4="; + }; + + cargoDeps = rustPlatform.importCargoLock { + # Upstream doesn't track a Cargo.lock file unfortunatly, but they barely + # have rust dependencies so it doesn't cost us too much. + lockFile = ./Cargo.lock; + }; + + postPatch = '' + ln -s ${./Cargo.lock} Cargo.lock + ''; + + build-system = [ + cargo + rustPlatform.cargoSetupHook + rustc + setuptools + wheel + ]; + + passthru.optional-dependencies = { + core = [ + tree-sitter + ]; + }; + + # There are no tests + doCheck = false; + pythonImportsCheck = [ "tree_sitter_javascript" ]; + + meta = with lib; { + description = "JavaScript and JSX grammar for tree-sitter"; + homepage = "https://github.com/tree-sitter/tree-sitter-javascript"; + license = licenses.mit; + maintainers = with maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index def285888b35636..2077dd0b328887b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15408,6 +15408,8 @@ self: super: with self; { tree-sitter-rust = callPackage ../development/python-modules/tree-sitter-rust { }; + tree-sitter-javascript = callPackage ../development/python-modules/tree-sitter-javascript { }; + treelib = callPackage ../development/python-modules/treelib { }; treelog = callPackage ../development/python-modules/treelog { }; From d9d650676114886859b17c9a6ff6305d6c878fd5 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Jun 2024 14:24:30 +0300 Subject: [PATCH 05/10] python311Packages.tree-sitter-json: init at 0.21.0 --- .../tree-sitter-json/Cargo.lock | 71 +++++++++++++++++++ .../tree-sitter-json/default.nix | 58 +++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 3 files changed, 131 insertions(+) create mode 100644 pkgs/development/python-modules/tree-sitter-json/Cargo.lock create mode 100644 pkgs/development/python-modules/tree-sitter-json/default.nix diff --git a/pkgs/development/python-modules/tree-sitter-json/Cargo.lock b/pkgs/development/python-modules/tree-sitter-json/Cargo.lock new file mode 100644 index 000000000000000..1b9b095b2637857 --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-json/Cargo.lock @@ -0,0 +1,71 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "cc" +version = "1.0.98" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" + +[[package]] +name = "memchr" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" + +[[package]] +name = "regex" +version = "1.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" + +[[package]] +name = "tree-sitter" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df7cc499ceadd4dcdf7ec6d4cbc34ece92c3fa07821e287aedecd4416c516dca" +dependencies = [ + "cc", + "regex", +] + +[[package]] +name = "tree-sitter-json" +version = "0.21.0" +dependencies = [ + "cc", + "tree-sitter", +] diff --git a/pkgs/development/python-modules/tree-sitter-json/default.nix b/pkgs/development/python-modules/tree-sitter-json/default.nix new file mode 100644 index 000000000000000..acf574bef1d98f2 --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-json/default.nix @@ -0,0 +1,58 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, cargo +, rustPlatform +, rustc +, setuptools +, wheel +, tree-sitter +}: + +buildPythonPackage rec { + pname = "tree-sitter-json"; + version = "0.21.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "tree-sitter"; + repo = "tree-sitter-json"; + rev = "v${version}"; + hash = "sha256-waejAbS7MjrE7w03MPqvBRpEpqTcKc6RgKCVSYaDV1Y="; + }; + + cargoDeps = rustPlatform.importCargoLock { + # Upstream doesn't track a Cargo.lock file unfortunatly, but they barely + # have rust dependencies so it doesn't cost us too much. + lockFile = ./Cargo.lock; + }; + + postPatch = '' + ln -s ${./Cargo.lock} Cargo.lock + ''; + + build-system = [ + cargo + rustPlatform.cargoSetupHook + rustc + setuptools + wheel + ]; + + passthru.optional-dependencies = { + core = [ + tree-sitter + ]; + }; + + # There are no tests + doCheck = false; + pythonImportsCheck = [ "tree_sitter_json" ]; + + meta = with lib; { + description = "JSON grammar for tree-sitter"; + homepage = "https://github.com/tree-sitter/tree-sitter-json"; + license = licenses.mit; + maintainers = with maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2077dd0b328887b..6546eec8a5249ca 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15410,6 +15410,8 @@ self: super: with self; { tree-sitter-javascript = callPackage ../development/python-modules/tree-sitter-javascript { }; + tree-sitter-json = callPackage ../development/python-modules/tree-sitter-json { }; + treelib = callPackage ../development/python-modules/treelib { }; treelog = callPackage ../development/python-modules/treelog { }; From 98ba196e247b4830979808b1f481db86aaaca9e3 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Jun 2024 13:36:54 +0300 Subject: [PATCH 06/10] python311Packages.tree-sitter: 0.21.1 -> 0.22.3 Diff: https://github.com/tree-sitter/py-tree-sitter/compare/refs/tags/v0.21.1...v0.22.3 Changelog: https://github.com/tree-sitter/py-tree-sitter/releases/tag/v0.22.3 --- .../python-modules/tree-sitter/default.nix | 31 ++++++++++--------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/pkgs/development/python-modules/tree-sitter/default.nix b/pkgs/development/python-modules/tree-sitter/default.nix index 91bbe16a52f41c8..fdaa03554433a6e 100644 --- a/pkgs/development/python-modules/tree-sitter/default.nix +++ b/pkgs/development/python-modules/tree-sitter/default.nix @@ -2,15 +2,19 @@ lib, buildPythonPackage, fetchFromGitHub, - fetchpatch, pytestCheckHook, pythonOlder, setuptools, + tree-sitter-python, + tree-sitter-rust, + tree-sitter-html, + tree-sitter-javascript, + tree-sitter-json, }: buildPythonPackage rec { pname = "tree-sitter"; - version = "0.21.1"; + version = "0.22.3"; pyproject = true; disabled = pythonOlder "3.7"; @@ -19,26 +23,25 @@ buildPythonPackage rec { owner = "tree-sitter"; repo = "py-tree-sitter"; rev = "refs/tags/v${version}"; - hash = "sha256-U4ZdU0lxjZO/y0q20bG5CLKipnfpaxzV3AFR6fGS7m4="; + hash = "sha256-4lxE8oDFE0X7YAnB72PKIaHIqovWSM5QnFo0grPAtKU="; fetchSubmodules = true; }; - patches = [ - # Replace distutils with setuptools, https://github.com/tree-sitter/py-tree-sitter/pull/214 - (fetchpatch { - name = "replace-distutils.patch"; - url = "https://github.com/tree-sitter/py-tree-sitter/commit/80d3cae493c4a47e49cc1d2ebab0a8eaf7617825.patch"; - hash = "sha256-00coI8/COpYMiSflAECwh6yJCMJj/ucFEn18Npj2g+Q="; - }) - ]; - - nativeBuildInputs = [ setuptools ]; + build-system = [ setuptools ]; - nativeCheckInputs = [ pytestCheckHook ]; + nativeCheckInputs = [ + pytestCheckHook + tree-sitter-python + tree-sitter-rust + tree-sitter-html + tree-sitter-javascript + tree-sitter-json + ]; pythonImportsCheck = [ "tree_sitter" ]; preCheck = '' + # https://github.com/NixOS/nixpkgs/issues/255262#issuecomment-1721265871 rm -r tree_sitter ''; From a1a791a5856ad2e1d7255797d7664106df64dfe4 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Jun 2024 14:51:31 +0300 Subject: [PATCH 07/10] python311Packages.tree-sitter0_21: init at 0.21.3 --- .../tree-sitter0_21/default.nix | 44 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 46 insertions(+) create mode 100644 pkgs/development/python-modules/tree-sitter0_21/default.nix diff --git a/pkgs/development/python-modules/tree-sitter0_21/default.nix b/pkgs/development/python-modules/tree-sitter0_21/default.nix new file mode 100644 index 000000000000000..665f7d6b56ce980 --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter0_21/default.nix @@ -0,0 +1,44 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + pytestCheckHook, + pythonOlder, + pythonAtLeast, + setuptools, +}: + +buildPythonPackage rec { + pname = "tree-sitter0_21"; + version = "0.21.3"; + pyproject = true; + + # https://github.com/tree-sitter/py-tree-sitter/issues/209 + disabled = pythonAtLeast "3.12" || pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "tree-sitter"; + repo = "py-tree-sitter"; + rev = "refs/tags/v${version}"; + hash = "sha256-HT1sRzDFpeelWCq1ZMeRmoUg0a3SBR7bZKxBqn4fb2g="; + fetchSubmodules = true; + }; + + build-system = [ setuptools ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + pythonImportsCheck = [ "tree_sitter" ]; + + preCheck = '' + rm -r tree_sitter + ''; + + meta = with lib; { + description = "Python bindings to the Tree-sitter parsing library"; + homepage = "https://github.com/tree-sitter/py-tree-sitter"; + changelog = "https://github.com/tree-sitter/py-tree-sitter/releases/tag/v${version}"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6546eec8a5249ca..bfd4b929a5b7e83 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15402,6 +15402,8 @@ self: super: with self; { tree-sitter = callPackage ../development/python-modules/tree-sitter { }; + tree-sitter0_21 = callPackage ../development/python-modules/tree-sitter0_21 { }; + tree-sitter-html = callPackage ../development/python-modules/tree-sitter-html { }; tree-sitter-python = callPackage ../development/python-modules/tree-sitter-python { }; From b23bf066664571655a7aa1aba36f5c46339e5919 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Jun 2024 12:47:26 +0300 Subject: [PATCH 08/10] python311Packages.tree-sitter-languages: init at 1.10.2 --- .../tree-sitter-languages/default.nix | 68 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 70 insertions(+) create mode 100644 pkgs/development/python-modules/tree-sitter-languages/default.nix diff --git a/pkgs/development/python-modules/tree-sitter-languages/default.nix b/pkgs/development/python-modules/tree-sitter-languages/default.nix new file mode 100644 index 000000000000000..a118e4ffe0cca92 --- /dev/null +++ b/pkgs/development/python-modules/tree-sitter-languages/default.nix @@ -0,0 +1,68 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, setuptools +, wheel +, cython +, tree-sitter0_21 +, pytestCheckHook +, python +}: + +buildPythonPackage rec { + pname = "tree-sitter-languages"; + version = "1.10.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "grantjenks"; + repo = "py-tree-sitter-languages"; + rev = "v${version}"; + hash = "sha256-wKU2c8QRBKFVFqg+DAeH5+cwm5jpDLmPZG3YBUsh/lM="; + # Use git, to also fetch tree-sitter repositories that upstream puts their + # hases in the repository as well, in repos.txt. + forceFetchGit = true; + postFetch = '' + cd $out + substitute build.py get-repos.py \ + --replace-fail "from tree_sitter import Language" "" \ + --replace-fail 'print(f"{sys.argv[0]}: Building", languages_filename)' "exit(0)" + ${python.pythonOnBuildForHost.interpreter} get-repos.py + rm -rf vendor/*/.git + ''; + }; + + build-system = [ + setuptools + wheel + cython + ]; + dependencies = [ + # https://github.com/grantjenks/py-tree-sitter-languages/issues/67 + tree-sitter0_21 + ]; + # Generate languages.so file (build won't fail without this, but tests will). + preBuild = '' + ${python.pythonOnBuildForHost.interpreter} build.py + ''; + nativeCheckInputs = [ + pytestCheckHook + ]; + # Without cd $out, tests fail to import the compiled cython extensions. + # Without copying the ./tests/ directory to $out, pytest won't detect the + # tests and run them. See also: + # https://github.com/NixOS/nixpkgs/issues/255262 + preCheck = '' + cp -r tests $out/${python.sitePackages}/tree_sitter_languages + cd $out + ''; + + pythonImportsCheck = [ "tree_sitter_languages" ]; + + meta = with lib; { + description = "Binary Python wheels for all tree sitter languages"; + homepage = "https://github.com/grantjenks/py-tree-sitter-languages"; + license = licenses.asl20; + maintainers = with maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index bfd4b929a5b7e83..37a87ef60896db9 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -15414,6 +15414,8 @@ self: super: with self; { tree-sitter-json = callPackage ../development/python-modules/tree-sitter-json { }; + tree-sitter-languages = callPackage ../development/python-modules/tree-sitter-languages { }; + treelib = callPackage ../development/python-modules/treelib { }; treelog = callPackage ../development/python-modules/treelog { }; From 81521b9e38969ac8622c3617caa9cb7d19ff3717 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 3 Jun 2024 12:48:03 +0300 Subject: [PATCH 09/10] python312Packages.lsp-tree-sitter: init at 0.0.15 --- .../lsp-tree-sitter/default.nix | 55 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 57 insertions(+) create mode 100644 pkgs/development/python-modules/lsp-tree-sitter/default.nix diff --git a/pkgs/development/python-modules/lsp-tree-sitter/default.nix b/pkgs/development/python-modules/lsp-tree-sitter/default.nix new file mode 100644 index 000000000000000..2dc85977275903b --- /dev/null +++ b/pkgs/development/python-modules/lsp-tree-sitter/default.nix @@ -0,0 +1,55 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, setuptools-generate +, setuptools-scm +, colorama +, jinja2 +, jsonschema +, pygls +, tree-sitter0_21 +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "lsp-tree-sitter"; + version = "0.0.15"; + pyproject = true; + + src = fetchFromGitHub { + owner = "neomutt"; + repo = "lsp-tree-sitter"; + rev = version; + hash = "sha256-yzScgix3BtSCBzlDoE1kMYGtVzkup/+ZK9L1C7VA3do="; + }; + + build-system = [ + setuptools-generate + setuptools-scm + ]; + + dependencies = [ + colorama + jinja2 + jsonschema + pygls + # The build won't fail if we had used tree-sitter (version > 0.21), but + # this package is only a dependency of autotools-language-server which also + # depends on tree-sitter-languages which must use tree-sitter0_21 and not + # tree-sitter. Hence we avoid different tree-sitter versions dependency + # mismatch by defaulting here to this lower version. + tree-sitter0_21 + ]; + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ "lsp_tree_sitter" ]; + + meta = with lib; { + description = "A library to create language servers"; + homepage = "https://github.com/neomutt/lsp-tree-sitter"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ doronbehar ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 37a87ef60896db9..dcd36146251a133 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7038,6 +7038,8 @@ self: super: with self; { lsprotocol = callPackage ../development/python-modules/lsprotocol { }; + lsp-tree-sitter = callPackage ../development/python-modules/lsp-tree-sitter { }; + ltpycld2 = callPackage ../development/python-modules/ltpycld2 { }; lttng = callPackage ../development/python-modules/lttng { }; From 306018c0405d13fe4d4de44d851ec19a7cdf3b0d Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sun, 21 Jan 2024 14:18:05 +0200 Subject: [PATCH 10/10] autotools-language-server: init at 0.0.19 --- .../au/autotools-language-server/package.nix | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 pkgs/by-name/au/autotools-language-server/package.nix diff --git a/pkgs/by-name/au/autotools-language-server/package.nix b/pkgs/by-name/au/autotools-language-server/package.nix new file mode 100644 index 000000000000000..1cb6f711bbc7cf3 --- /dev/null +++ b/pkgs/by-name/au/autotools-language-server/package.nix @@ -0,0 +1,51 @@ +{ lib +, python3 +, fetchFromGitHub +, fetchpatch +}: + +python3.pkgs.buildPythonApplication rec { + pname = "autotools-language-server"; + version = "0.0.19"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Freed-Wu"; + repo = "autotools-language-server"; + rev = "refs/tags/${version}"; + hash = "sha256-V0EOV1ZmeC+4svc2fqV6AIiL37dkrxUJAnjywMZcENw="; + }; + patches = [ + # Right before the release, upstream decided to replace the + # tree-sitter-languages dependency with tree-sitter-make, which is yanked + # from some reason. Hopefully upstream will fix this dependency a bit + # better in the next release. See also: + # https://github.com/Freed-Wu/autotools-language-server/commit/f149843becfcfd6b2bb4a98eb1f3984c01d5fd33#r142659163 + (fetchpatch { + url = "https://github.com/Freed-Wu/autotools-language-server/commit/f149843becfcfd6b2bb4a98eb1f3984c01d5fd33.patch"; + hash = "sha256-TrzHbfR6GYAEqDIFiCqSX2+Qv4JeFJ5faiKJhNYojf0="; + revert = true; + }) + ]; + + build-system = [ + python3.pkgs.setuptools-generate + python3.pkgs.setuptools-scm + ]; + + dependencies = with python3.pkgs; [ + tree-sitter-languages + lsp-tree-sitter + ]; + nativeCheckInputs = [ + python3.pkgs.pytestCheckHook + ]; + + meta = with lib; { + description = "Autotools language server, support configure.ac, Makefile.am, Makefile"; + homepage = "https://github.com/Freed-Wu/autotools-language-server"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ doronbehar ]; + mainProgram = "autotools-language-server"; + }; +}