nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitLab,
5 poetry-core,
6 dramatiq,
7 pendulum,
8 setuptools,
9 pytest-mock,
10 pytestCheckHook,
11 versionCheckHook,
12}:
13
14buildPythonPackage rec {
15 pname = "periodiq";
16 version = "0.13.0";
17 pyproject = true;
18
19 src = fetchFromGitLab {
20 owner = "bersace";
21 repo = "periodiq";
22 tag = "v${version}";
23 hash = "sha256-Pyh/T3/HGPYyaXjyM0wkQ1V7p5ibqxE1Q62QwCIJ8To=";
24 };
25
26 postPatch = ''
27 substituteInPlace pyproject.toml \
28 --replace-fail 'poetry>=0.12' 'poetry-core' \
29 --replace-fail 'poetry.masonry.api' 'poetry.core.masonry.api'
30 '';
31
32 nativeBuildInputs = [ poetry-core ];
33
34 propagatedBuildInputs = [
35 dramatiq
36 pendulum
37 setuptools
38 ];
39
40 nativeCheckInputs = [
41 pytestCheckHook
42 pytest-mock
43 versionCheckHook
44 ];
45
46 enabledTestPaths = [ "tests/unit" ];
47
48 pythonImportsCheck = [ "periodiq" ];
49
50 meta = {
51 description = "Simple Scheduler for Dramatiq Task Queue";
52 mainProgram = "periodiq";
53 homepage = "https://pypi.org/project/periodiq/";
54 license = lib.licenses.lgpl3Only;
55 maintainers = with lib.maintainers; [ traxys ];
56 };
57}