dndwright 0.2.0__tar.gz → 0.3.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.
- {dndwright-0.2.0 → dndwright-0.3.0}/.github/workflows/publish.yml +2 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/PKG-INFO +1 -1
- {dndwright-0.2.0 → dndwright-0.3.0}/pyproject.toml +1 -1
- {dndwright-0.2.0 → dndwright-0.3.0}/tests/test_api_contract.py +13 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/.github/workflows/ci.yml +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/.gitignore +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/CHANGELOG.md +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/LICENSE +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/NOTICE +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/README.md +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/__init__.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/content/__init__.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/content/classes.json +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/content/creatures.json +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/content/generate.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/content/magic_items.json +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/content/species.json +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/ontology/__init__.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/ontology/dnd.yaml +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/ontology/loader.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/__init__.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/adapters.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/assembler.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/character_evaluator.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/components.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/dnd_5e_2024.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/evaluator.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/lookup_tables.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/operations.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/schema.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/src/dndwright/rules/theme_scaling.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/tests/test_content.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/tests/test_engine.py +0 -0
- {dndwright-0.2.0 → dndwright-0.3.0}/tests/test_ontology.py +0 -0
|
@@ -8,6 +8,7 @@ name: Publish to PyPI
|
|
|
8
8
|
on:
|
|
9
9
|
release:
|
|
10
10
|
types: [published]
|
|
11
|
+
workflow_dispatch: # allow manual publish of the current main (version in pyproject)
|
|
11
12
|
|
|
12
13
|
jobs:
|
|
13
14
|
build:
|
|
@@ -32,6 +33,7 @@ jobs:
|
|
|
32
33
|
environment: pypi # must match the "Environment name" in PyPI's publisher config
|
|
33
34
|
permissions:
|
|
34
35
|
id-token: write # REQUIRED for Trusted Publishing (OIDC)
|
|
36
|
+
contents: read
|
|
35
37
|
steps:
|
|
36
38
|
- uses: actions/download-artifact@v4
|
|
37
39
|
with:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dndwright
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.0
|
|
4
4
|
Summary: Domain-neutral D&D 5e (2024) rules & character-sheet computation engine: a data-driven DAG of formulas (ability mods, proficiency, spell DC/slots, HP, AC).
|
|
5
5
|
Project-URL: Homepage, https://github.com/sligara7/dndwright
|
|
6
6
|
Project-URL: Repository, https://github.com/sligara7/dndwright
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "dndwright"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.3.0"
|
|
8
8
|
description = "Domain-neutral D&D 5e (2024) rules & character-sheet computation engine: a data-driven DAG of formulas (ability mods, proficiency, spell DC/slots, HP, AC)."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
@@ -42,6 +42,19 @@ class TestPublicSurface:
|
|
|
42
42
|
assert isinstance(dndwright.__version__, str)
|
|
43
43
|
assert dndwright.__version__.count(".") >= 2
|
|
44
44
|
|
|
45
|
+
def test_version_matches_package_metadata(self):
|
|
46
|
+
# __version__ must match the installed (pyproject) version, so a missed
|
|
47
|
+
# bump can't ship a mislabelled wheel. Skips when run from source.
|
|
48
|
+
import importlib.metadata as md
|
|
49
|
+
|
|
50
|
+
try:
|
|
51
|
+
installed = md.version("dndwright")
|
|
52
|
+
except md.PackageNotFoundError:
|
|
53
|
+
import pytest
|
|
54
|
+
|
|
55
|
+
pytest.skip("dndwright not installed; running from source tree")
|
|
56
|
+
assert installed == dndwright.__version__
|
|
57
|
+
|
|
45
58
|
|
|
46
59
|
class TestKeySignatures:
|
|
47
60
|
def test_evaluate_character_takes_a_mapping(self):
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|