binnev-python-template 5.3.0__tar.gz → 6.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/PKG-INFO +5 -26
  2. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/binnev_python_template.egg-info/PKG-INFO +5 -26
  3. binnev_python_template-6.0.0/binnev_python_template.egg-info/requires.txt +6 -0
  4. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/pyproject.toml +14 -10
  5. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/api/app.py +4 -0
  6. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/core/__init__.py +1 -1
  7. binnev_python_template-5.3.0/binnev_python_template.egg-info/requires.txt +0 -26
  8. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/README.md +0 -0
  9. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/binnev_python_template.egg-info/SOURCES.txt +0 -0
  10. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/binnev_python_template.egg-info/dependency_links.txt +0 -0
  11. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/binnev_python_template.egg-info/entry_points.txt +0 -0
  12. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/binnev_python_template.egg-info/top_level.txt +0 -0
  13. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/setup.cfg +0 -0
  14. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/__init__.py +0 -0
  15. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/api/__init__.py +0 -0
  16. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/api/calculator.py +0 -0
  17. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/cli/__init__.py +0 -0
  18. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/cli/calculator.py +0 -0
  19. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/cli/greeter.py +0 -0
  20. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/core/calculator.py +0 -0
  21. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/src/core/greeter.py +0 -0
  22. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/tests/test_api.py +0 -0
  23. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/tests/test_async_stuff.py +0 -0
  24. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/tests/test_calculator.py +0 -0
  25. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/tests/test_cli.py +0 -0
  26. {binnev_python_template-5.3.0 → binnev_python_template-6.0.0}/tests/test_greeter.py +0 -0
@@ -1,37 +1,16 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: binnev-python-template
3
- Version: 5.3.0
3
+ Version: 6.0.0
4
4
  Summary: Add your description here
5
5
  Author-email: Robin Neville <robin.m.neville@gmail.com>
6
6
  License-Expression: MIT
7
7
  Project-URL: Homepage, https://github.com/binnev/python-template
8
8
  Requires-Python: >=3.13
9
9
  Description-Content-Type: text/markdown
10
- Requires-Dist: fastapi>=0.115.12
11
- Requires-Dist: httpx>=0.28.1
12
- Requires-Dist: typer>=0.15.4
13
- Requires-Dist: uvicorn>=0.34.2
14
- Provides-Extra: dev
15
- Requires-Dist: pytest>=8.3.5; extra == "dev"
16
- Requires-Dist: pytest-asyncio>=1.0.0; extra == "dev"
17
- Requires-Dist: pytest-dotenv>=0.5.2; extra == "dev"
18
- Requires-Dist: pytest-watcher>=0.4.3; extra == "dev"
19
- Requires-Dist: pytest-cov>=6.1.1; extra == "dev"
20
- Requires-Dist: pytest-xdist>=3.6.1; extra == "dev"
21
- Requires-Dist: pytest-sugar>=1.0.0; extra == "dev"
22
- Requires-Dist: pytest-better-parametrize>=0.2.0; extra == "dev"
23
- Requires-Dist: coverage>=7.8.0; extra == "dev"
24
- Requires-Dist: ruff>=0.11.10; extra == "dev"
25
- Requires-Dist: mypy>=1.15.0; extra == "dev"
26
- Requires-Dist: mkdocs>=1.6.1; extra == "dev"
27
- Requires-Dist: mkdocs-material>=9.6.14; extra == "dev"
28
- Requires-Dist: mkdocstrings[python]>=0.29.1; extra == "dev"
29
- Requires-Dist: mkdocs-mermaid2-plugin>=1.2.1; extra == "dev"
30
- Requires-Dist: mike>=2.1.3; extra == "dev"
31
- Requires-Dist: commitizen>=4.7.2; extra == "dev"
32
- Requires-Dist: pre-commit>=4.2.0; extra == "dev"
33
- Requires-Dist: build>=1.2.2.post1; extra == "dev"
34
- Requires-Dist: twine>=6.1.0; extra == "dev"
10
+ Provides-Extra: cli
11
+ Requires-Dist: typer>=0.27.3; extra == "cli"
12
+ Provides-Extra: api
13
+ Requires-Dist: fastapi[standard]>=0.162.0; extra == "api"
35
14
 
36
15
  # Python project template
37
16
  This project is a template for new python projects. It contains up-to-date tooling for tests, docs, versioning, and dependency management.
@@ -1,37 +1,16 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: binnev-python-template
3
- Version: 5.3.0
3
+ Version: 6.0.0
4
4
  Summary: Add your description here
5
5
  Author-email: Robin Neville <robin.m.neville@gmail.com>
6
6
  License-Expression: MIT
7
7
  Project-URL: Homepage, https://github.com/binnev/python-template
8
8
  Requires-Python: >=3.13
9
9
  Description-Content-Type: text/markdown
10
- Requires-Dist: fastapi>=0.115.12
11
- Requires-Dist: httpx>=0.28.1
12
- Requires-Dist: typer>=0.15.4
13
- Requires-Dist: uvicorn>=0.34.2
14
- Provides-Extra: dev
15
- Requires-Dist: pytest>=8.3.5; extra == "dev"
16
- Requires-Dist: pytest-asyncio>=1.0.0; extra == "dev"
17
- Requires-Dist: pytest-dotenv>=0.5.2; extra == "dev"
18
- Requires-Dist: pytest-watcher>=0.4.3; extra == "dev"
19
- Requires-Dist: pytest-cov>=6.1.1; extra == "dev"
20
- Requires-Dist: pytest-xdist>=3.6.1; extra == "dev"
21
- Requires-Dist: pytest-sugar>=1.0.0; extra == "dev"
22
- Requires-Dist: pytest-better-parametrize>=0.2.0; extra == "dev"
23
- Requires-Dist: coverage>=7.8.0; extra == "dev"
24
- Requires-Dist: ruff>=0.11.10; extra == "dev"
25
- Requires-Dist: mypy>=1.15.0; extra == "dev"
26
- Requires-Dist: mkdocs>=1.6.1; extra == "dev"
27
- Requires-Dist: mkdocs-material>=9.6.14; extra == "dev"
28
- Requires-Dist: mkdocstrings[python]>=0.29.1; extra == "dev"
29
- Requires-Dist: mkdocs-mermaid2-plugin>=1.2.1; extra == "dev"
30
- Requires-Dist: mike>=2.1.3; extra == "dev"
31
- Requires-Dist: commitizen>=4.7.2; extra == "dev"
32
- Requires-Dist: pre-commit>=4.2.0; extra == "dev"
33
- Requires-Dist: build>=1.2.2.post1; extra == "dev"
34
- Requires-Dist: twine>=6.1.0; extra == "dev"
10
+ Provides-Extra: cli
11
+ Requires-Dist: typer>=0.27.3; extra == "cli"
12
+ Provides-Extra: api
13
+ Requires-Dist: fastapi[standard]>=0.162.0; extra == "api"
35
14
 
36
15
  # Python project template
37
16
  This project is a template for new python projects. It contains up-to-date tooling for tests, docs, versioning, and dependency management.
@@ -0,0 +1,6 @@
1
+
2
+ [api]
3
+ fastapi[standard]>=0.162.0
4
+
5
+ [cli]
6
+ typer>=0.27.3
@@ -2,27 +2,28 @@
2
2
  urls = { Homepage = "https://github.com/binnev/python-template" }
3
3
 
4
4
  name = "binnev-python-template"
5
- version = "5.3.0"
5
+ version = "6.0.0"
6
6
  authors = [{ name = "Robin Neville", email = "robin.m.neville@gmail.com" }]
7
7
  description = "Add your description here"
8
8
  readme = "README.md"
9
9
  requires-python = ">=3.13"
10
10
  license = "MIT"
11
- dependencies = [
12
- "fastapi>=0.115.12",
13
- "httpx>=0.28.1",
14
- "typer>=0.15.4",
15
- "uvicorn>=0.34.2",
16
- ]
11
+ # These are core dependencies that are always included when publishing to pypi
12
+ dependencies = []
17
13
 
18
14
  [project.scripts]
19
15
  calculator = "src.cli.calculator:calculator_app"
20
16
  greeter = "src.cli.greeter:greeter_app"
21
17
 
22
- [tool.setuptools.packages.find]
23
- include = ["src*"]
24
-
18
+ # These are optional dependencies that ARE included when publishing to pypi, but
19
+ # the consumer needs to explicitly request them e.g. `uv add myproject[cli]`
25
20
  [project.optional-dependencies]
21
+ cli = ["typer>=0.27.3"] # `uv tool install binnev-python-template[cli]`
22
+ api = ["fastapi[standard]>=0.162.0"]
23
+
24
+ # These are local-only dev dependencies which are NOT included when publishing
25
+ # to pypi
26
+ [dependency-groups]
26
27
  dev = [
27
28
  "pytest>=8.3.5",
28
29
  "pytest-asyncio>=1.0.0",
@@ -46,6 +47,9 @@ dev = [
46
47
  "twine>=6.1.0",
47
48
  ]
48
49
 
50
+ [tool.setuptools.packages.find]
51
+ include = ["src*"]
52
+
49
53
  [tool.pytest.ini_options]
50
54
  asyncio_mode = "auto"
51
55
  asyncio_default_fixture_loop_scope = "session"
@@ -5,3 +5,7 @@ from .calculator import calculator_router
5
5
  app = FastAPI()
6
6
 
7
7
  app.include_router(calculator_router, prefix="/calculator")
8
+
9
+
10
+ if __name__ == "__main__":
11
+ app()
@@ -1,2 +1,2 @@
1
1
  __app_name__ = "python-template"
2
- __version__ = "5.3.0"
2
+ __version__ = "6.0.0"
@@ -1,26 +0,0 @@
1
- fastapi>=0.115.12
2
- httpx>=0.28.1
3
- typer>=0.15.4
4
- uvicorn>=0.34.2
5
-
6
- [dev]
7
- pytest>=8.3.5
8
- pytest-asyncio>=1.0.0
9
- pytest-dotenv>=0.5.2
10
- pytest-watcher>=0.4.3
11
- pytest-cov>=6.1.1
12
- pytest-xdist>=3.6.1
13
- pytest-sugar>=1.0.0
14
- pytest-better-parametrize>=0.2.0
15
- coverage>=7.8.0
16
- ruff>=0.11.10
17
- mypy>=1.15.0
18
- mkdocs>=1.6.1
19
- mkdocs-material>=9.6.14
20
- mkdocstrings[python]>=0.29.1
21
- mkdocs-mermaid2-plugin>=1.2.1
22
- mike>=2.1.3
23
- commitizen>=4.7.2
24
- pre-commit>=4.2.0
25
- build>=1.2.2.post1
26
- twine>=6.1.0