1{
2 stdenv,
3 lib,
4 buildPythonPackage,
5 fetchFromGitHub,
6 poetry-core,
7 prompt-toolkit,
8 pytestCheckHook,
9 pythonOlder,
10}:
11
12buildPythonPackage rec {
13 pname = "questionary";
14 version = "2.0.1";
15 format = "pyproject";
16
17 disabled = pythonOlder "3.8";
18
19 src = fetchFromGitHub {
20 owner = "tmbo";
21 repo = pname;
22 rev = "refs/tags/${version}";
23 hash = "sha256-JY0kXomgiGtOrsXfRf0756dTPVgud91teh+jW+kFNdk=";
24 };
25
26 nativeBuildInputs = [
27 poetry-core
28 ];
29
30 pythonRelaxDeps = [ "prompt_toolkit" ];
31
32 propagatedBuildInputs = [ prompt-toolkit ];
33
34 nativeCheckInputs = [ pytestCheckHook ];
35
36 preCheck = lib.optionalString stdenv.hostPlatform.isDarwin ''
37 ulimit -n 1024
38 '';
39
40 disabledTests = [
41 # RuntimeError: no running event loop
42 "test_blank_line_fix"
43 ];
44
45 pythonImportsCheck = [ "questionary" ];
46
47 meta = with lib; {
48 description = "Python library to build command line user prompts";
49 homepage = "https://github.com/tmbo/questionary";
50 changelog = "https://github.com/tmbo/questionary/blob/${src.rev}/docs/pages/changelog.rst";
51 license = with licenses; [ mit ];
52 maintainers = with maintainers; [ fab ];
53 };
54}