refactor: migrate package management from poetry to pep 621 standard
Migrate package metadata and dependency configuration from Poetry to PEP 621 standard using flit_core backend. Update documentation with production and development setup instructions using venv, pip, or uv. - update pyproject.toml to PEP 621 format with flit_core build-system - bump minimum dependency versions to latest PyPI releases - revise README.md with production and development setup guides
This commit is contained in:
@@ -2,10 +2,42 @@
|
|||||||
|
|
||||||
The mdrs-client-python is python library and a command-line client for up- and downloading files to and from MDRS based repository.
|
The mdrs-client-python is python library and a command-line client for up- and downloading files to and from MDRS based repository.
|
||||||
|
|
||||||
## Installing
|
## Installation (Production)
|
||||||
|
|
||||||
|
It is recommended to use a virtual environment (`venv`) to keep your Python environment isolated.
|
||||||
|
|
||||||
|
### Option 1: Using standard `venv` + `pip`
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
poetry install
|
python3 -m venv .venv
|
||||||
|
source .venv/bin/activate # On Windows: .venv\Scripts\activate
|
||||||
|
pip install .
|
||||||
|
```
|
||||||
|
|
||||||
|
### Option 2: Using `uv`
|
||||||
|
|
||||||
|
```shell
|
||||||
|
uv venv
|
||||||
|
source .venv/bin/activate # On Windows: .venv\Scripts\activate
|
||||||
|
uv pip install .
|
||||||
|
```
|
||||||
|
|
||||||
|
## Development Setup
|
||||||
|
|
||||||
|
To set up a local development environment with development tools (testing, formatting, linting):
|
||||||
|
|
||||||
|
### Option 1: Using standard `venv` + `pip`
|
||||||
|
|
||||||
|
```shell
|
||||||
|
python3 -m venv .venv
|
||||||
|
source .venv/bin/activate # On Windows: .venv\Scripts\activate
|
||||||
|
pip install -e ".[dev]"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Option 2: Using `uv` (Recommended for developers)
|
||||||
|
|
||||||
|
```shell
|
||||||
|
uv sync
|
||||||
```
|
```
|
||||||
|
|
||||||
## CLI Usage
|
## CLI Usage
|
||||||
|
|||||||
+33
-28
@@ -1,11 +1,21 @@
|
|||||||
[tool.poetry]
|
[build-system]
|
||||||
|
requires = ["flit_core>=3.12.0,<4.0.0"]
|
||||||
|
build-backend = "flit_core.buildapi"
|
||||||
|
|
||||||
|
[tool.flit.module]
|
||||||
|
name = "mdrsclient"
|
||||||
|
|
||||||
|
[project]
|
||||||
name = "mdrs-client-python"
|
name = "mdrs-client-python"
|
||||||
version = "1.3.18"
|
version = "1.3.18"
|
||||||
description = "The mdrs-client-python is python library and a command-line client for up- and downloading files to and from MDRS based repository."
|
description = "The mdrs-client-python is python library and a command-line client for up- and downloading files to and from MDRS based repository."
|
||||||
authors = ["Yoshihiro OKUMURA <yoshihiro.okumura@riken.jp>"]
|
authors = [
|
||||||
license = "MIT"
|
{ name = "Yoshihiro OKUMURA", email = "yoshihiro.okumura@riken.jp" }
|
||||||
|
]
|
||||||
|
license = { text = "MIT" }
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
classifiers=[
|
requires-python = ">=3.10"
|
||||||
|
classifiers = [
|
||||||
"Development Status :: 4 - Beta",
|
"Development Status :: 4 - Beta",
|
||||||
"Environment :: Console",
|
"Environment :: Console",
|
||||||
"Intended Audience :: Developers",
|
"Intended Audience :: Developers",
|
||||||
@@ -18,33 +28,28 @@ classifiers=[
|
|||||||
"OSI Approved :: MIT License",
|
"OSI Approved :: MIT License",
|
||||||
"Topic :: Utilities",
|
"Topic :: Utilities",
|
||||||
]
|
]
|
||||||
packages = [
|
|
||||||
{ include = "mdrsclient" }
|
dependencies = [
|
||||||
|
"requests>=2.34.2",
|
||||||
|
"requests-toolbelt>=1.0.0",
|
||||||
|
"python-dotenv>=1.2.2",
|
||||||
|
"pydantic>=2.13.4",
|
||||||
|
"pydantic-settings>=2.14.2",
|
||||||
|
"PyJWT>=2.13.0",
|
||||||
|
"validators>=0.35.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[tool.poetry.dependencies]
|
[project.optional-dependencies]
|
||||||
python = "^3.10"
|
dev = [
|
||||||
requests = "^2.34.2"
|
"black>=26.5.1",
|
||||||
requests-toolbelt = "^1.0.0"
|
"flake8>=7.3.0",
|
||||||
python-dotenv = "^1.1.0"
|
"Flake8-pyproject>=1.2.4",
|
||||||
pydantic = "^2.13.4"
|
"isort>=8.0.1",
|
||||||
pydantic-settings = "^2.14.2"
|
"pyright>=1.1.411",
|
||||||
PyJWT = "^2.13.0"
|
]
|
||||||
validators = "^0.35.0"
|
|
||||||
|
|
||||||
[tool.poetry.group.dev.dependencies]
|
[project.scripts]
|
||||||
black = "^26.5.1"
|
mdrs = "mdrsclient.__main__:main"
|
||||||
flake8 = "^7.2.0"
|
|
||||||
Flake8-pyproject = "^1.2.3"
|
|
||||||
isort = "^8.0.1"
|
|
||||||
pyright = "^1.1.411"
|
|
||||||
|
|
||||||
[tool.poetry.scripts]
|
|
||||||
mdrs = 'mdrsclient.__main__:main'
|
|
||||||
|
|
||||||
[build-system]
|
|
||||||
requires = ["poetry-core"]
|
|
||||||
build-backend = "poetry.core.masonry.api"
|
|
||||||
|
|
||||||
[tool.black]
|
[tool.black]
|
||||||
line-length = 120
|
line-length = 120
|
||||||
|
|||||||
Reference in New Issue
Block a user