Merge papers: 47.0 -> 47.3 (#379765)
[NixPkgs.git] / pkgs / development / python-modules / cli-helpers / default.nix
blobe043ff31da298056c516107aa717f7d6ad1a98d5
2   lib,
3   buildPythonPackage,
4   fetchPypi,
5   pythonOlder,
6   configobj,
7   mock,
8   pytestCheckHook,
9   pygments,
10   tabulate,
13 buildPythonPackage rec {
14   pname = "cli-helpers";
15   version = "2.3.1";
16   format = "setuptools";
18   disabled = pythonOlder "3.6";
20   src = fetchPypi {
21     pname = "cli_helpers";
22     inherit version;
23     hash = "sha256-uCqJg87uIfGA5v0N23yo2uQ8QOkglR44F/mWqyBNrmo=";
24   };
26   propagatedBuildInputs = [
27     configobj
28     tabulate
29   ] ++ tabulate.optional-dependencies.widechars;
31   optional-dependencies = {
32     styles = [ pygments ];
33   };
35   nativeCheckInputs = [
36     pytestCheckHook
37     mock
38   ] ++ lib.flatten (builtins.attrValues optional-dependencies);
40   meta = with lib; {
41     description = "Python helpers for common CLI tasks";
42     longDescription = ''
43       CLI Helpers is a Python package that makes it easy to perform common
44       tasks when building command-line apps. It's a helper library for
45       command-line interfaces.
47       Libraries like Click and Python Prompt Toolkit are amazing tools that
48       help you create quality apps. CLI Helpers complements these libraries by
49       wrapping up common tasks in simple interfaces.
51       CLI Helpers is not focused on your app's design pattern or framework --
52       you can use it on its own or in combination with other libraries. It's
53       lightweight and easy to extend.
55       What's included in CLI Helpers?
57       - Prettyprinting of tabular data with custom pre-processing
58       - [in progress] config file reading/writing
60       Read the documentation at http://cli-helpers.rtfd.io
61     '';
62     homepage = "https://cli-helpers.readthedocs.io/en/stable/";
63     license = licenses.bsd3;
64     maintainers = [ maintainers.kalbasit ];
65   };