1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, filelock
5, lxml
6, pycryptodomex
7, pythonOlder
8, urllib3
9}:
10
11buildPythonPackage rec {
12 pname = "blobfile";
13 version = "2.0.2";
14 format = "setuptools";
15
16 disabled = pythonOlder "3.7";
17
18 src = fetchFromGitHub {
19 owner = "christopher-hesse";
20 repo = pname;
21 rev = "refs/tags/v${version}";
22 hash = "sha256-vVoiNIN/LNdbedaOQ+gtj4jhzmrGri49fftHKG+K/fg=";
23 };
24
25 propagatedBuildInputs = [
26 pycryptodomex
27 filelock
28 urllib3
29 lxml
30 ];
31
32 # Tests require a running Docker instance
33 doCheck = false;
34
35 pythonImportsCheck = [
36 "blobfile"
37 ];
38
39 meta = with lib; {
40 description = "Read Google Cloud Storage, Azure Blobs, and local paths with the same interface";
41 homepage = "https://github.com/christopher-hesse/blobfile";
42 changelog = "https://github.com/christopher-hesse/blobfile/blob/v${version}/CHANGES.md";
43 license = licenses.unlicense;
44 maintainers = with maintainers; [ happysalada ];
45 };
46}