mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-06-15 22:19:17 +03:00

Made with ```shell git restore . fd '\.nix$' pkgs/ --type f -j1 -x bash -xc "$(cat <<"EOF" typos --no-check-filenames --write-changes "$1" git diff --exit-code "$1" && exit #( git diff "$1" | grep -qE "^\+ +[^# ]") && git restore "$1" count1="$( bat --language nix --diff --style changes "$1" --theme "Monokai Extended" --color always | aha --no-header | grep -E '^<span style="color:olive;">~</span> ' | wc -l )" count2="$( bat --language nix --diff --style changes "$1" --theme "Monokai Extended" --color always | aha --no-header | grep -E '^<span style="color:olive;">~</span> (<span style="color:#f8f8f2;"> *</span>)?<span style="color:#75715e;">.*</span>$' | wc -l )" [[ $count1 -ne $count2 ]] && git restore "$1" EOF )" -- {} ``` and filtered with `GIT_DIFF_OPTS='--unified=15' git -c interactive.singleKey=true add --patch` I initially tried using the tree-sitter cli, python bindings and even ast-grep through various means, but this is what I ended up with.
101 lines
1.8 KiB
Nix
101 lines
1.8 KiB
Nix
{
|
|
lib,
|
|
buildPythonPackage,
|
|
fetchFromGitHub,
|
|
pythonOlder,
|
|
|
|
# build-system
|
|
setuptools,
|
|
|
|
# dependencies
|
|
click,
|
|
orderly-set,
|
|
orjson,
|
|
|
|
# optional-dependencies
|
|
clevercsv,
|
|
|
|
# tests
|
|
jsonpickle,
|
|
numpy,
|
|
pytestCheckHook,
|
|
python-dateutil,
|
|
pyyaml,
|
|
toml,
|
|
tomli-w,
|
|
polars,
|
|
pandas,
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "deepdiff";
|
|
version = "8.1.1";
|
|
pyproject = true;
|
|
|
|
disabled = pythonOlder "3.7";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "seperman";
|
|
repo = "deepdiff";
|
|
tag = version;
|
|
hash = "sha256-b1L+8xOqxY2nI8UxZHxs3x28mVAzaRuPjYlPSqSapwk=";
|
|
};
|
|
|
|
build-system = [
|
|
setuptools
|
|
];
|
|
|
|
dependencies = [
|
|
click
|
|
orderly-set
|
|
orjson
|
|
];
|
|
pythonRelaxDeps = [
|
|
# Upstream develops this package as well, and from some reason pins this
|
|
# dependency to a patch version below this one. No significant changes
|
|
# happend in that release, so we shouldn't worry, especially if tests pass.
|
|
"orderly-set"
|
|
];
|
|
|
|
optional-dependencies = {
|
|
cli = [
|
|
clevercsv
|
|
click
|
|
pyyaml
|
|
toml
|
|
];
|
|
};
|
|
|
|
nativeCheckInputs = [
|
|
jsonpickle
|
|
numpy
|
|
pytestCheckHook
|
|
python-dateutil
|
|
tomli-w
|
|
polars
|
|
pandas
|
|
] ++ optional-dependencies.cli;
|
|
|
|
disabledTests = [
|
|
# not compatible with pydantic 2.x
|
|
"test_pydantic1"
|
|
"test_pydantic2"
|
|
# Require pytest-benchmark
|
|
"test_cache_deeply_nested_a1"
|
|
"test_lfu"
|
|
];
|
|
|
|
pythonImportsCheck = [ "deepdiff" ];
|
|
|
|
meta = {
|
|
description = "Deep Difference and Search of any Python object/data";
|
|
mainProgram = "deep";
|
|
homepage = "https://github.com/seperman/deepdiff";
|
|
changelog = "https://github.com/seperman/deepdiff/releases/tag/${version}";
|
|
license = lib.licenses.mit;
|
|
maintainers = with lib.maintainers; [
|
|
mic92
|
|
doronbehar
|
|
];
|
|
};
|
|
}
|