Skip to content

Commit

Permalink
refactor: starts move to hatch
Browse files Browse the repository at this point in the history
to get more out of the tooling we are moving to hatch this is a first
step where we've moved the project configuration to a default hatch config
we are not to migrate the depedency chain for various targets to hatch
and then scripts

note that we are trying to follow the recommend directory structure by hatch
  • Loading branch information
devraj committed Feb 18, 2024
1 parent 74ee474 commit de387a7
Showing 116 changed files with 112 additions and 52 deletions.
160 changes: 108 additions & 52 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,69 +1,125 @@
[tool.poetry]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]

name = "[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "gallagher"
version = "0.1.0-alpha.2"
description = "Python idiomatic client and tools for Gallagher Command Centre API"
authors = ["Dev Mukherjee <devraj@gmail.com>"]
dynamic = ["version"]
description = ''
readme = "README.md"
requires-python = ">=3.8"
license = "MIT"
repository = "https://github.com/anomaly/gallagher"
documentation = "https://anomaly.github.io/gallagher/"
keywords = ["gallagher", "rest", "api"]
keywords = []
authors = [
{ name = "Dev Mukherjee", email = "devraj@gmail.com" },
]
classifiers = [
"License :: OSI Approved :: MIT License",
"Topic :: Software Development :: Build Tools",
"Topic :: Software Development :: Libraries :: Python Modules",
"Operating System :: OS Independent",
"Framework :: Pydantic",
"Framework :: Pydantic :: 2",
"Development Status :: 4 - Beta",
"Programming Language :: Python",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
dependencies = []

[project.urls]
Documentation = "https://github.com/unknown/gallagher#readme"
Issues = "https://github.com/unknown/gallagher/issues"
Source = "https://github.com/unknown/gallagher"

[tool.hatch.version]
path = "src/gallagher/__about__.py"

[tool.poetry.urls]
"Bug Tracker" = "https://github.com/anomaly/gallagher/issues"
[tool.hatch.envs.default]
dependencies = ["coverage[toml]>=6.5", "pytest"]
[tool.hatch.envs.default.scripts]
test = "pytest {args:tests}"
test-cov = "coverage run -m pytest {args:tests}"
cov-report = ["- coverage combine", "coverage report"]
cov = ["test-cov", "cov-report"]

[tool.poetry.extras]
cli = ["asyncer", "typer", "rich"]
console = ["textual"]
[[tool.hatch.envs.all.matrix]]
python = ["3.8", "3.9", "3.10", "3.11", "3.12"]

[tool.poetry.dependencies]
python = "^3.11"
httpx = "^0.26.0"
pydantic = "^2.5.3"
typing-extensions = "^4.9.0"
annotated-types = "^0.6.0"
certifi = "^2023.11.17"
idna = "^3.6"
packaging = "^23.2"
pluggy = "^1.3.0"
[tool.hatch.envs.types]
dependencies = ["mypy>=1.0.0"]
[tool.hatch.envs.types.scripts]
check = "mypy --install-types --non-interactive {args:src/gallagher tests}"

[tool.poetry.group.dev.dependencies]
pytest-cov = "^4.1.0"
coverage = "^7.4.0"
pytest = "^7.4.4"
pytest-order = "^1.2.0"
pytest-tap = "^3.4"
pytest-asyncio = "^0.23.3"
pytest-clarity = "^1.0.1"
textual-dev = "^1.4.0"
[tool.coverage.run]
source_pkgs = ["gallagher", "tests"]
branch = true
parallel = true
omit = ["src/gallagher/__about__.py"]

[tool.coverage.paths]
gallagher = ["src/gallagher", "*/gallagher/src/gallagher"]
tests = ["tests", "*/gallagher/tests"]

[tool.poetry.group.cli.dependencies]
asyncer = "^0.0.3"
typer = "^0.9.0"
rich = "^13.7.0"
[tool.coverage.report]
dynamic = ["version"]
description = ''
readme = "README.md"
requires-python = ">=3.8"
license = "MIT"
keywords = []
authors = [{ name = "Dev Mukherjee", email = "devraj@gmail.com" }]
classifiers = [
"Development Status :: 4 - Beta",
"Programming Language :: Python",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
dependencies = []

[project.urls]
Documentation = "https://github.com/unknown/gallagher#readme"exclude_lines = ["no cov", "if __name__ == .__main__.:", "if TYPE_CHECKING:"]
Issues = "https://github.com/unknown/gallagher/issues"
Source = "https://github.com/unknown/gallagher"

[tool.poetry.group.console.dependencies]
textual = "^0.47.1"
[tool.hatch.version]
path = "src/gallagher/__about__.py"

[tool.hatch.envs.default]
dependencies = ["coverage[toml]>=6.5", "pytest"]
[tool.hatch.envs.default.scripts]
test = "pytest {args:tests}"
test-cov = "coverage run -m pytest {args:tests}"
cov-report = ["- coverage combine", "coverage report"]
cov = ["test-cov", "cov-report"]

[tool.poetry.group.sync.dependencies]
sqlalchemy = "^2.0.25"
alembic = "^1.13.1"
[[tool.hatch.envs.all.matrix]]
python = ["3.8", "3.9", "3.10", "3.11", "3.12"]

[tool.poetry.scripts]
gal = "gallagher.cli:app"
gcon = "gallagher.tui:main"
[tool.hatch.envs.types]
dependencies = ["mypy>=1.0.0"]
[tool.hatch.envs.types.scripts]
check = "mypy --install-types --non-interactive {args:src/gallagher tests}"

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.coverage.run]
source_pkgs = ["gallagher", "tests"]
branch = true
parallel = true
omit = ["src/gallagher/__about__.py"]

[tool.coverage.paths]
gallagher = ["src/gallagher", "*/gallagher/src/gallagher"]
tests = ["tests", "*/gallagher/tests"]

[tool.coverage.report]
exclude_lines = ["no cov", "if __name__ == .__main__.:", "if TYPE_CHECKING:"]
4 changes: 4 additions & 0 deletions src/gallagher/__about__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2024-present Dev Mukherjee <devraj@gmail.com>
#
# SPDX-License-Identifier: MIT
__version__ = "0.1.0-alpha.2"
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit de387a7

Please sign in to comment.