1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 nix-update-script,
6 poetry-core,
7 django,
8 django-pgtrigger,
9}:
10
11buildPythonPackage rec {
12 pname = "django-pgpubsub";
13 version = "1.3.1";
14 pyproject = true;
15
16 src = fetchFromGitHub {
17 owner = "PaulGilmartin";
18 repo = "django-pgpubsub";
19 tag = version;
20 hash = "sha256-Gl6NfBaoj3WKLHwJElbb27CYVQ83s3f86NUOZE7lHCk=";
21 };
22
23 passthru.updateScript = nix-update-script { };
24
25 postPatch = ''
26 substituteInPlace pyproject.toml \
27 --replace 'poetry.masonry.api' 'poetry.core.masonry.api' \
28 --replace 'poetry>=1.1.13' 'poetry-core>=1.0.0' \
29 '';
30
31 build-system = [ poetry-core ];
32
33 dependencies = [
34 django
35 django-pgtrigger
36 ];
37
38 pythonImportsCheck = [ "pgpubsub" ];
39
40 meta = {
41 description = "Lightweight background tasks using Django Channels and PostgreSQL NOTIFY/LISTEN";
42 homepage = "https://github.com/PaulGilmartin/django-pgpubsub";
43 changelog = "https://github.com/PaulGilmartin/django-pgpubsub/blob/${src.rev}/CHANGELOG.md";
44 license = lib.licenses.bsd3;
45 maintainers = with lib.maintainers; [ raitobezarius ];
46 };
47}