Migrate build system to uv

This commit is contained in:
2026-03-31 20:47:17 +02:00
parent bd4389e806
commit 96af0718ee
3 changed files with 7 additions and 10 deletions

View File

@@ -13,20 +13,16 @@ classifiers = [
"Programming Language :: Python :: 3",
"Operating System :: OS Independent",
]
dynamic = ["version"]
version = "0.1.0.dev1"
[project.urls]
Repository = "https://git.ltskv.de/pavel/argclass"
[build-system]
requires = [
"setuptools>=77",
"setuptools-scm>=8",
"wheel"
"uv_build>=0.10.6,<0.11",
]
build-backend = "setuptools.build_meta"
[tool.setuptools_scm]
build-backend = "uv_build"
[tool.ruff]
line-length = 120

View File

@@ -1,7 +1,7 @@
# Copyright 2021-2025 Pavel Lutskov
import typing
from argparse import ArgumentParser
from dataclasses import dataclass, MISSING
from dataclasses import MISSING, dataclass
def make_gnu_option(name):
@@ -39,7 +39,7 @@ def compute_arg_names(name, field_):
def _prepare_bool(ap: ArgumentParser, name, field_):
arg_cfg = decide_default(field_)
required = "required" in arg_cfg
required = arg_cfg["required"]
bool_parser = ap.add_mutually_exclusive_group(required=required)
bool_parser.add_argument(
make_gnu_option(name), action="store_true", dest=name
@@ -48,7 +48,7 @@ def _prepare_bool(ap: ArgumentParser, name, field_):
make_gnu_option(f"no_{name}"), action="store_false", dest=name
)
if not required:
ap.set_defaults(**{name: arg_cfg["default"]})
ap.set_defaults(name=arg_cfg["default"])
def _prepare_list_cfg(name, field_):

1
uv.lock generated
View File

@@ -4,6 +4,7 @@ requires-python = ">=3.10"
[[package]]
name = "argclass"
version = "0.1.0.dev1"
source = { editable = "." }
[package.dev-dependencies]