dae973cb59
GitOrigin-RevId: c90c4025bb6e0c4eaf438128a3b2640314b1c58d
78 lines
1.9 KiB
Nix
78 lines
1.9 KiB
Nix
{ lib
|
|
, buildPythonPackage
|
|
, fetchFromGitHub
|
|
, fetchpatch
|
|
, six
|
|
, hypothesis
|
|
, mock
|
|
, levenshtein
|
|
, pytestCheckHook
|
|
, termcolor
|
|
, pythonOlder
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "fire";
|
|
version = "0.5.0";
|
|
format = "setuptools";
|
|
|
|
disabled = pythonOlder "3.7";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "google";
|
|
repo = "python-fire";
|
|
rev = "refs/tags/v${version}";
|
|
hash = "sha256-cwY1RRNtpAn6LnBASQLTNf4XXSPnfhOa1WgglGEM2/s=";
|
|
};
|
|
|
|
patches = [
|
|
# https://github.com/google/python-fire/pull/440
|
|
(fetchpatch {
|
|
name = "remove-asyncio-coroutine.patch";
|
|
url = "https://github.com/google/python-fire/pull/440/commits/30b775a7b36ce7fbc04656c7eec4809f99d3e178.patch";
|
|
hash = "sha256-GDAAlvZKbJl3OhajsEO0SZvWIXcPDi3eNKKVgbwSNKk=";
|
|
})
|
|
];
|
|
|
|
propagatedBuildInputs = [
|
|
six
|
|
termcolor
|
|
];
|
|
|
|
nativeCheckInputs = [
|
|
hypothesis
|
|
mock
|
|
levenshtein
|
|
pytestCheckHook
|
|
];
|
|
|
|
pythonImportsCheck = [
|
|
"fire"
|
|
];
|
|
|
|
meta = with lib; {
|
|
description = "A library for automatically generating command line interfaces";
|
|
longDescription = ''
|
|
Python Fire is a library for automatically generating command line
|
|
interfaces (CLIs) from absolutely any Python object.
|
|
|
|
* Python Fire is a simple way to create a CLI in Python.
|
|
|
|
* Python Fire is a helpful tool for developing and debugging
|
|
Python code.
|
|
|
|
* Python Fire helps with exploring existing code or turning other
|
|
people's code into a CLI.
|
|
|
|
* Python Fire makes transitioning between Bash and Python easier.
|
|
|
|
* Python Fire makes using a Python REPL easier by setting up the
|
|
REPL with the modules and variables you'll need already imported
|
|
and created.
|
|
'';
|
|
homepage = "https://github.com/google/python-fire";
|
|
changelog = "https://github.com/google/python-fire/releases/tag/v${version}";
|
|
license = licenses.asl20;
|
|
maintainers = with maintainers; [ leenaars ];
|
|
};
|
|
}
|