1{
2 lib,
3 anyio,
4 buildPythonPackage,
5 fetchFromGitHub,
6 flit-core,
7 pytestCheckHook,
8 pythonOlder,
9 trio,
10}:
11
12buildPythonPackage rec {
13 pname = "asyncclick";
14 version = "8.1.8.0";
15 pyproject = true;
16
17 disabled = pythonOlder "3.9";
18
19 src = fetchFromGitHub {
20 owner = "python-trio";
21 repo = "asyncclick";
22 tag = "${version}+async";
23 hash = "sha256-J294pYuNOSm7v2BbwDpzn3uelAnZ3ip2U1gWuchhOtA=";
24 };
25
26 build-system = [ flit-core ];
27
28 dependencies = [ anyio ];
29
30 nativeCheckInputs = [
31 pytestCheckHook
32 trio
33 ];
34
35 pytestFlags = [
36 "-Wignore::trio.TrioDeprecationWarning"
37 ];
38
39 disabledTests = [
40 # AttributeError: 'Context' object has no attribute '_ctx_mgr'
41 "test_context_pushing"
42 ];
43
44 pythonImportsCheck = [ "asyncclick" ];
45
46 meta = with lib; {
47 description = "Python composable command line utility";
48 homepage = "https://github.com/python-trio/asyncclick";
49 changelog = "https://github.com/python-trio/asyncclick/blob/${version}/CHANGES.rst";
50 license = licenses.bsd3;
51 maintainers = with maintainers; [ fab ];
52 };
53}