Skip to content

Commit 8e6ae7e

Browse files
Add pyproject.toml for project configuration, migrate to hatchling, move pixi.toml data to pyproject.toml and bump Python version used in ruff.toml (#102)
* Add pyproject.toml for project configuration * Delete setup.cfg * Delete setup.py * Fix CI and consolidate pixi.toml in pyproject.toml --------- Co-authored-by: Silvio Traversaro <silvio@traversaro.it>
1 parent b214f42 commit 8e6ae7e

File tree

6 files changed

+102
-104
lines changed

6 files changed

+102
-104
lines changed

pixi.lock

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pixi.toml

Lines changed: 0 additions & 36 deletions
This file was deleted.

pyproject.toml

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
[build-system]
2+
requires = ["hatchling>=1.18"]
3+
build-backend = "hatchling.build"
4+
5+
[project]
6+
name = "vinca"
7+
dynamic = ["version"]
8+
description = "Conda recipe generator for ROS packages."
9+
readme = "README.md"
10+
license = { text = "MIT" }
11+
authors = [
12+
{ name = "Sean Yen", email = "seanyen@microsoft.com" },
13+
{ name = "Silvio Traversaro", email = "silvio@traversaro.it" },
14+
{ name = "Tobias Fischer", email = "info@tobiasfischer.info" },
15+
]
16+
maintainers = [
17+
{ name = "Silvio Traversaro" },
18+
{ name = "Tobias Fischer" },
19+
]
20+
requires-python = ">=3.9"
21+
keywords = ["ros"]
22+
classifiers = [
23+
"Development Status :: 3 - Alpha",
24+
"Intended Audience :: Developers",
25+
"License :: OSI Approved :: MIT License",
26+
"Programming Language :: Python",
27+
"Operating System :: OS Independent",
28+
"Topic :: Software Development :: Build Tools",
29+
]
30+
31+
dependencies = [
32+
"catkin_pkg >=0.4.16",
33+
"ruamel.yaml >=0.16.6,<0.18.0",
34+
"rosdistro >=0.8.0",
35+
"empy >=3.3.4,<4.0.0",
36+
"requests >=2.24.0",
37+
"networkx >=2.5",
38+
"rich >=10",
39+
"jinja2 >=3.0.0",
40+
"license-expression >=30.0.0",
41+
]
42+
43+
[project.urls]
44+
Homepage = "https://github.com/RoboStack/vinca"
45+
GitHub = "https://github.com/RoboStack/vinca"
46+
47+
[project.scripts]
48+
vinca = "vinca.main:main"
49+
vinca-glab = "vinca.generate_gitlab:main"
50+
vinca-gha = "vinca.generate_gha:main"
51+
vinca-azure = "vinca.generate_azure:main"
52+
vinca-migrate = "vinca.migrate:main"
53+
vinca-snapshot = "vinca.snapshot:main"
54+
55+
[tool.hatch.version]
56+
path = "vinca/__init__.py"
57+
58+
[tool.hatch.build]
59+
include = [
60+
"vinca/templates/**",
61+
"vinca/azure_templates/**",
62+
]
63+
64+
[tool.hatch.build.targets.wheel]
65+
packages = ["vinca"]
66+
67+
[tool.pixi.workspace]
68+
channels = ["https://prefix.dev/conda-forge"]
69+
platforms = ["win-64", "linux-64", "osx-arm64", "osx-64"]
70+
71+
[tool.pixi.tasks]
72+
test = "pytest vinca/"
73+
fmt = "ruff format ."
74+
fmt-check = "ruff format --check ."
75+
lint = "ruff check --fix ."
76+
lint-check = "ruff check ."
77+
78+
[tool.pixi.dependencies]
79+
python = ">=3.14.0,<3.15"
80+
catkin_pkg = ">=0.4.16"
81+
"ruamel.yaml" = ">=0.16.6,<0.18.0"
82+
rosdistro = ">=0.8.0"
83+
empy = ">=3.3.4,<4.0.0"
84+
requests = ">=2.24.0"
85+
networkx = ">=2.5"
86+
rich = ">=10"
87+
jinja2 = ">=3.0.0"
88+
license-expression = ">=30.0.0"
89+
pytest = "*"
90+
ruff = "*"
91+
92+
[tool.pixi.pypi-dependencies]
93+
vinca = { path = ".", editable = true }

ruff.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
line-length = 88
2-
target-version = "py37"
2+
target-version = "py39"
33

44
[lint]
55
# Ignore rules that were excluded in .flake8:

setup.cfg

Lines changed: 0 additions & 50 deletions
This file was deleted.

setup.py

Lines changed: 0 additions & 9 deletions
This file was deleted.

0 commit comments

Comments
 (0)