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