-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use Poetry for dependency management and packaging
Alters the package to use Poetry for dependency management and packaging. Reasoning for this includes, but is not limited to, the fact that it is not really advisable to develop in an environment where the `make develop` incantation makes changes to system or user Python packages, which can quickly lead to dependency conflicts. (I've been hit by this a few times.) Resolves #63.
- Loading branch information
1 parent
640343c
commit 8471543
Showing
8 changed files
with
1,458 additions
and
50 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,49 +1,56 @@ | ||
[build-system] | ||
build-backend = "setuptools.build_meta" | ||
requires = ["setuptools >=62"] | ||
requires = ["poetry-core>=1.0.0"] | ||
build-backend = "poetry.core.masonry.api" | ||
|
||
[project] | ||
[tool.poetry] | ||
name = "boardwalk" | ||
version = "0.8.15" | ||
description = "Boardwalk is a linear Ansible workflow engine" | ||
dynamic = ["dependencies", "version"] | ||
readme = "README.md" | ||
authors = [ | ||
{name = "Mat Hornbeek (Backblaze, Inc.)", email = "[email protected]"} | ||
"Mat Hornbeek <[email protected]>", | ||
] | ||
maintainers = [ | ||
"Alex Sullivan (Backblaze, Inc.) <[email protected]>", | ||
] | ||
classifiers = [ | ||
"Programming Language :: Python :: 3", | ||
"Operating System :: POSIX :: Linux", | ||
"Operating System :: MacOS" | ||
] | ||
requires-python = ">=3.10" | ||
|
||
[project.optional-dependencies] | ||
develop = [ | ||
"black", | ||
"build", | ||
"pyright", | ||
"semgrep", | ||
"usort" | ||
repository = "https://github.com/Backblaze/boardwalk" | ||
packages = [ | ||
{ include = "boardwalk", from = "src" }, | ||
{ include = "boardwalkd", from = "src" } | ||
] | ||
include = [ | ||
{ path = "py.typed" }, | ||
{ path = "static/*.css" }, | ||
{ path = "static/*.js"}, | ||
{ path = "templates/*.html"} | ||
] | ||
|
||
[project.urls] | ||
source = "https://github.com/Backblaze/boardwalk" | ||
issues = "https://github.com/Backblaze/boardwalk/issues" | ||
[tool.poetry.urls] | ||
"Issues" = "https://github.com/Backblaze/boardwalk/issues" | ||
|
||
[project.scripts] | ||
boardwalk = "boardwalk.cli:cli" | ||
boardwalkd = "boardwalkd.cli:cli" | ||
[tool.poetry.dependencies] | ||
python = ">=3.10,<4" | ||
ansible-runner = ">=2.3.0" | ||
click = ">=8.1.3" | ||
cryptography = ">=38.0.3" | ||
email-validator = ">=1.3.0" # Required by pydantic to validate emails using EmailStr | ||
pydantic = ">=2.4.2" | ||
tornado = ">=6.2" | ||
|
||
[tool.setuptools.package-data] | ||
boardwalk = ["py.typed"] | ||
boardwalkd = ["static/*.css", "static/*.js", "templates/*.html", "py.typed"] | ||
[tool.poetry.group.dev.dependencies] | ||
black = "==24.3.0" | ||
pyright = "==1.1.350" | ||
semgrep = ">=1.66.0" | ||
usort = "==1.0.8" | ||
|
||
[tool.setuptools.dynamic] | ||
# We still use a requirements.txt because GitHub's depependency scanner doesn't | ||
# currently support reading dependencies directly from a pyproject.toml, at | ||
# least not without also using poetry | ||
dependencies = {file = "requirements.txt"} | ||
version = {file = "VERSION"} | ||
[tool.poetry.scripts] | ||
boardwalk = "boardwalk.cli:cli" | ||
boardwalkd = "boardwalkd.cli:cli" | ||
|
||
[tool.pyright] | ||
exclude = [ | ||
|
This file was deleted.
Oops, something went wrong.