1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, docutils
5, requests
6, pytestCheckHook
7, testpath
8, responses
9, flit-core
10, tomli-w
11}:
12
13# Flit is actually an application to build universal wheels.
14# It requires Python 3 and should eventually be moved outside of
15# python-packages.nix. When it will be used to build wheels,
16# care should be taken that there is no mingling of PYTHONPATH.
17
18buildPythonPackage rec {
19 pname = "flit";
20 version = "3.9.0";
21 format = "pyproject";
22
23 src = fetchFromGitHub {
24 owner = "takluyver";
25 repo = "flit";
26 rev = version;
27 hash = "sha256-yl2+PcKr7xRW4oIBWl+gzh/nKhSNu5GH9fWKRGgaNHU=";
28 };
29
30 nativeBuildInputs = [
31 flit-core
32 ];
33
34 propagatedBuildInputs = [
35 docutils
36 requests
37 flit-core
38 tomli-w
39 ];
40
41 nativeCheckInputs = [ pytestCheckHook testpath responses ];
42
43 disabledTests = [
44 # needs some ini file.
45 "test_invalid_classifier"
46 # calls pip directly. disabled for PEP 668
47 "test_install_data_dir"
48 "test_install_module_pep621"
49 "test_symlink_data_dir"
50 "test_symlink_module_pep621"
51 ];
52
53 meta = with lib; {
54 changelog = "https://github.com/pypa/flit/blob/${version}/doc/history.rst";
55 description = "A simple packaging tool for simple packages";
56 homepage = "https://github.com/pypa/flit";
57 license = licenses.bsd3;
58 maintainers = with maintainers; [ fridh ];
59 };
60}