1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5
6 # build-system
7 poetry-core,
8
9 # dependencies
10 aiohttp,
11 attrs,
12 packaging,
13 structlog,
14}:
15
16buildPythonPackage rec {
17 pname = "wapiti-arsenic";
18 version = "28.2";
19 pyproject = true;
20
21 # Latest tag is not on GitHub
22 src = fetchPypi {
23 pname = "wapiti_arsenic";
24 inherit version;
25 hash = "sha256-QxjM0BsiHm/LPUuGLLPG6OUcr4YXBEpfJGTwKp1zTWQ=";
26 };
27
28 postPatch = ''
29 substituteInPlace pyproject.toml \
30 --replace-fail "poetry>=0.12" "poetry-core" \
31 --replace-fail "poetry.masonry" "poetry.core.masonry"
32 '';
33
34 build-system = [
35 poetry-core
36 ];
37
38 pythonRelaxDeps = [
39 "structlog"
40 ];
41
42 dependencies = [
43 aiohttp
44 attrs
45 packaging
46 structlog
47 ];
48
49 pythonImportsCheck = [ "wapiti_arsenic" ];
50
51 # No tests in the pypi archive
52 doCheck = false;
53
54 meta = {
55 description = "Asynchronous WebDriver client";
56 homepage = "https://github.com/wapiti-scanner/arsenic";
57 license = lib.licenses.asl20;
58 maintainers = with lib.maintainers; [ GaetanLepage ];
59 };
60}