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.1.0";
15 pyproject = true;
16
17 disabled = pythonOlder "3.8";
18
19 src = fetchFromGitHub {
20 owner = "tmbo";
21 repo = "questionary";
22 tag = version;
23 hash = "sha256-HiQsOkG3oK+hnyeFjebnVASxpZhUPGBGz69JvPO43fM=";
24 };
25
26 pythonRelaxDeps = [ "prompt_toolkit" ];
27
28 build-system = [ poetry-core ];
29
30 dependencies = [ prompt-toolkit ];
31
32 nativeCheckInputs = [ pytestCheckHook ];
33
34 preCheck = lib.optionalString stdenv.hostPlatform.isDarwin ''
35 ulimit -n 1024
36 '';
37
38 disabledTests = [
39 # RuntimeError: no running event loop
40 "test_blank_line_fix"
41 ];
42
43 pythonImportsCheck = [ "questionary" ];
44
45 meta = with lib; {
46 description = "Python library to build command line user prompts";
47 homepage = "https://github.com/tmbo/questionary";
48 changelog = "https://github.com/tmbo/questionary/blob/${src.rev}/docs/pages/changelog.rst";
49 license = licenses.mit;
50 maintainers = with maintainers; [ fab ];
51 };
52}