diff --git a/pkgs/development/python-modules/first/default.nix b/pkgs/development/python-modules/first/default.nix index 491fcd398053..0e75f61a9f70 100644 --- a/pkgs/development/python-modules/first/default.nix +++ b/pkgs/development/python-modules/first/default.nix @@ -1,19 +1,31 @@ -{ lib, buildPythonPackage, fetchPypi }: +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +}: buildPythonPackage rec { pname = "first"; version = "2.0.2"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "1gykyrm6zlrbf9iz318p57qwk594mx1jf0d79v79g32zql45na7z"; + hash = "sha256-/yhbCMVfjJfOTqcBJ0OvJJXJ8SkXhfFjcivTb2r2078="; }; doCheck = false; # no tests + pythonImportsCheck = [ + "first" + ]; + meta = with lib; { description = "The function you always missed in Python"; homepage = "https://github.com/hynek/first/"; + changelog = "https://github.com/hynek/first/blob/${version}/HISTORY.rst"; license = licenses.mit; maintainers = with maintainers; [ zimbatm ]; }; diff --git a/pkgs/development/python-modules/overrides/default.nix b/pkgs/development/python-modules/overrides/default.nix new file mode 100644 index 000000000000..6d916ffa639d --- /dev/null +++ b/pkgs/development/python-modules/overrides/default.nix @@ -0,0 +1,37 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "overrides"; + version = "7.3.1"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "mkorpela"; + repo = pname; + rev = "refs/tags/${version}"; + hash = "sha256-mxMh1ifOnii2SqxYjupDKvslHVGwClGtRgyoJSCGfZo="; + }; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "overrides" + ]; + + meta = with lib; { + description = "Decorator to automatically detect mismatch when overriding a method"; + homepage = "https://github.com/mkorpela/overrides"; + changelog = "https://github.com/mkorpela/overrides/releases/tag/${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/python-fx/default.nix b/pkgs/development/python-modules/python-fx/default.nix new file mode 100644 index 000000000000..729c5ed9a180 --- /dev/null +++ b/pkgs/development/python-modules/python-fx/default.nix @@ -0,0 +1,100 @@ +{ lib +, antlr4-python3-runtime +, asciimatics +, buildPythonPackage +, click +, dacite +, decorator +, fetchFromGitHub +, future +, first +, jsonpath-ng +, loguru +, overrides +, pillow +, ply +, pyfiglet +, pyperclip +, pytestCheckHook +, pythonOlder +, antlr4 +, pythonRelaxDepsHook +, pyyaml +, setuptools +, six +, urwid +, parameterized +, wcwidth +, yamale +}: + +buildPythonPackage rec { + pname = "python-fx"; + version = "0.2.0"; + format = "setuptools"; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "cielong"; + repo = "pyfx"; + rev = "refs/tags/v${version}"; + hash = "sha256-nRMeYL0JGvCtUQBUMXUsZ4+F2KX+x/CbZ61sAidT9so="; + }; + + postPatch = '' + rm src/pyfx/model/common/jsonpath/*.{g4,interp,tokens} + antlr -Dlanguage=Python3 -visitor -o src/pyfx/model/common/jsonpath/ *.g4 + ''; + + pythonRelaxDeps = true; + + nativeBuildInputs = [ + antlr4 + pythonRelaxDepsHook + setuptools + ]; + + propagatedBuildInputs = [ + antlr4-python3-runtime + asciimatics + click + dacite + decorator + first + future + jsonpath-ng + loguru + overrides + pillow + ply + pyfiglet + pyperclip + pyyaml + six + urwid + wcwidth + yamale + ]; + + nativeCheckInputs = [ + pytestCheckHook + parameterized + ]; + + # antlr4 issue prevents us from running the tests + # https://github.com/antlr/antlr4/issues/4041 + doCheck = false; + + # pythonImportsCheck = [ + # "pyfx" + # ]; + + meta = with lib; { + description = "Module to view JSON in a TUI"; + homepage = "https://github.com/cielong/pyfx"; + changelog = "https://github.com/cielong/pyfx/releases/tag/v${version}"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/qiling/default.nix b/pkgs/development/python-modules/qiling/default.nix index e47d0b9fbf29..0b008f86f884 100644 --- a/pkgs/development/python-modules/qiling/default.nix +++ b/pkgs/development/python-modules/qiling/default.nix @@ -9,21 +9,24 @@ , pefile , pyelftools , pythonOlder +, python-fx , python-registry , pyyaml +, questionary +, termcolor , unicorn }: buildPythonPackage rec { pname = "qiling"; - version = "1.4.4"; + version = "1.4.5"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-gtPYwmQ96+jz6XrqU0ufaN7Ht6gqrtxGrDoaTWce7/U="; + hash = "sha256-MEafxry/ewqlzOMu9TJMQodXLChGMYjS2jX3yv7FZJk="; }; propagatedBuildInputs = [ @@ -33,8 +36,11 @@ buildPythonPackage rec { multiprocess pefile pyelftools + python-fx python-registry pyyaml + termcolor + questionary unicorn ]; @@ -49,6 +55,7 @@ buildPythonPackage rec { meta = with lib; { description = "Qiling Advanced Binary Emulation Framework"; homepage = "https://qiling.io/"; + changelog = "https://github.com/qilingframework/qiling/releases/tag/${version}"; license = licenses.gpl2Only; maintainers = teams.determinatesystems.members; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0549cda66286..e70fa1b0acf4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7092,6 +7092,8 @@ self: super: with self; { overpy = callPackage ../development/python-modules/overpy { }; + overrides = callPackage ../development/python-modules/overrides { }; + pandas-stubs = callPackage ../development/python-modules/pandas-stubs { }; pdunehd = callPackage ../development/python-modules/pdunehd { }; @@ -7333,6 +7335,8 @@ self: super: with self; { python-fullykiosk = callPackage ../development/python-modules/python-fullykiosk { }; + python-fx = callPackage ../development/python-modules/python-fx { }; + python-glanceclient = callPackage ../development/python-modules/python-glanceclient { }; python-google-nest = callPackage ../development/python-modules/python-google-nest { };