|
1 | 1 | [build-system] |
2 | | -requires = ["setuptools>=61.0"] |
| 2 | +requires = ["setuptools>=61.0", "wheel"] |
3 | 3 | build-backend = "setuptools.build_meta" |
4 | 4 |
|
5 | 5 | [project] |
6 | 6 | name = "smudgeplot" |
7 | 7 | version = "0.5.1" |
8 | | -dependencies = [ |
9 | | - "numpy >= 2.2.3", |
10 | | - "matplotlib >= 3.10.0", |
11 | | - "pandas >= 2.2.3" |
12 | | -] |
| 8 | +description = "Inference of ploidy and heterozygosity structure using whole genome sequencing data" |
| 9 | +readme = "README.md" |
| 10 | +license = "Apache-2.0" |
| 11 | +license-files = ["LICENSE.md"] |
| 12 | +keywords = ["smudgeplot", "kmer", "ploidy", "genomics", "bioinformatics"] |
| 13 | + |
| 14 | +# Relaxed Python version - works with 3.9+ |
| 15 | +requires-python = ">=3.9" |
13 | 16 |
|
14 | | -requires-python = ">=3.11.11" |
15 | 17 | authors = [ |
16 | 18 | { name = "Kamil S. Jaron", email = "[email protected]"}, |
17 | 19 | { name = "Sam Ebdon", email = "[email protected]"}, |
18 | 20 | ] |
19 | | -# add authors |
20 | 21 |
|
21 | 22 | maintainers = [ |
22 | 23 | { name = "Kamil Jaron", email = "[email protected]"}, |
23 | 24 | { name = "Sam Ebdon", email = "[email protected]"}, |
24 | 25 | ] |
25 | 26 |
|
26 | | -description = "Smudgeplot description" |
27 | | -readme = "README.md" |
28 | | -license = "Apache-2.0" |
29 | | -license-files = ["LICENSE.md"] |
30 | | -keywords = ["smudgeplot","kmer","ploidy"] |
| 27 | +# Relaxed dependency versions for broader compatibility |
| 28 | +dependencies = [ |
| 29 | + "numpy>=1.20.0", |
| 30 | + "matplotlib>=3.4.0", |
| 31 | + "pandas>=1.3.0", |
| 32 | +] |
31 | 33 |
|
32 | 34 | classifiers = [ |
33 | | - "Development Status :: 3 - Alpha", |
34 | | - "Programming Language :: Python :: 3" |
| 35 | + "Development Status :: 4 - Beta", |
| 36 | + "Programming Language :: Python :: 3", |
| 37 | + "Programming Language :: Python :: 3.9", |
| 38 | + "Programming Language :: Python :: 3.10", |
| 39 | + "Programming Language :: Python :: 3.11", |
| 40 | + "Programming Language :: Python :: 3.12", |
| 41 | + "Operating System :: POSIX :: Linux", |
| 42 | + "Operating System :: MacOS", |
| 43 | + "Intended Audience :: Science/Research", |
| 44 | + "Topic :: Scientific/Engineering :: Bio-Informatics", |
35 | 45 | ] |
36 | 46 |
|
37 | 47 | [project.urls] |
38 | | -Homepage = "https://github.com/KamilSJaron/smudgeplot/tree/sploidyplot_obj" |
| 48 | +Homepage = "https://github.com/KamilSJaron/smudgeplot" |
| 49 | +Documentation = "https://github.com/KamilSJaron/smudgeplot#readme" |
| 50 | +Repository = "https://github.com/KamilSJaron/smudgeplot" |
39 | 51 | Issues = "https://github.com/KamilSJaron/smudgeplot/issues" |
40 | 52 |
|
41 | 53 | [project.scripts] |
42 | 54 | smudgeplot = "smudgeplot.cli:main" |
43 | 55 |
|
44 | 56 | [tool.setuptools] |
45 | 57 | package-dir = {"" = "src"} |
| 58 | +include-package-data = true |
46 | 59 |
|
47 | 60 | [tool.setuptools.packages.find] |
48 | 61 | where = ["src"] |
49 | 62 |
|
50 | | -[tool.ruff] |
51 | | -line-length = 120 |
| 63 | +[tool.setuptools.package-data] |
| 64 | +smudgeplot = ["bin/*"] |
52 | 65 |
|
53 | | -[tool.ruff.lint] |
54 | | -select = [ |
55 | | - "A", |
56 | | - "ARG", |
57 | | - "B", |
58 | | - "BLE", |
59 | | - "C4", |
60 | | - "COM", |
61 | | - "DTZ", |
62 | | - "E", |
63 | | - "EM", |
64 | | - "F", |
65 | | - "I", |
66 | | - "ISC", |
67 | | - "LOG", |
68 | | - "N", |
69 | | - "PYI", |
70 | | - "S", |
71 | | - "SIM", |
72 | | - "U", |
73 | | -] |
74 | | -ignore = [ |
75 | | - "COM812", |
76 | | - "C901", |
77 | | - "LOG015", |
78 | | - "N803", |
79 | | - "N806", |
80 | | -] |
| 66 | +[tool.cibuildwheel] |
| 67 | +# Skip 32-bit, PyPy, musllinux, and Windows (no Windows support for now) |
| 68 | +skip = ["*-win32", "*-win_amd64", "*-manylinux_i686", "pp*", "*-musllinux*"] |
| 69 | +build = ["cp39-*", "cp310-*", "cp311-*", "cp312-*"] |
| 70 | + |
| 71 | +# Test that the CLI works after building |
| 72 | +test-command = "smudgeplot --version" |
| 73 | + |
| 74 | +[tool.cibuildwheel.linux] |
| 75 | +# manylinux has gcc available |
| 76 | +before-all = "yum install -y gcc || apt-get update && apt-get install -y gcc || true" |
| 77 | + |
| 78 | +[tool.cibuildwheel.macos] |
| 79 | +# macOS runners have clang available by default |
| 80 | +# Nothing special needed |
0 commit comments