1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitLab,
5 pytestCheckHook,
6 pythonOlder,
7 hatchling,
8 sybil,
9}:
10
11buildPythonPackage rec {
12 pname = "atpublic";
13 version = "5.0";
14 pyproject = true;
15
16 disabled = pythonOlder "3.8";
17
18 src = fetchFromGitLab {
19 owner = "warsaw";
20 repo = "public";
21 rev = "refs/tags/${version}";
22 hash = "sha256-cqum+4hREu0jO9iFoUUzfzn597BoMAhG+aanwnh8hb8=";
23 };
24
25 build-system = [ hatchling ];
26
27 nativeCheckInputs = [
28 pytestCheckHook
29 sybil
30 ];
31
32 pythonImportsCheck = [ "public" ];
33
34 meta = with lib; {
35 changelog = "https://gitlab.com/warsaw/public/-/blob/${version}/docs/NEWS.rst";
36 description = "Python decorator and function which populates a module's __all__ and globals";
37 homepage = "https://public.readthedocs.io/";
38 longDescription = ''
39 This is a very simple decorator and function which populates a module's
40 __all__ and optionally the module globals.
41 '';
42 license = licenses.asl20;
43 maintainers = with maintainers; [ eadwu ];
44 };
45}