birm 0.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.
birm-0.0.0/PKG-INFO ADDED
@@ -0,0 +1,93 @@
1
+ Metadata-Version: 2.3
2
+ Name: birm
3
+ Version: 0.0.0
4
+ Summary: Bayesian Impulse-Response Modeling
5
+ License: Apache 2.0
6
+ Requires-Dist: pymc>=6.3.2
7
+ Requires-Python: >=3.12, <3.15
8
+ Project-URL: Homepage, https://github.com/hrmerrill/birm
9
+ Project-URL: Documentation, https://hrmerrill.github.io/birm
10
+ Description-Content-Type: text/markdown
11
+
12
+ # `birm`: Bayesian Impulse-Response Modeling
13
+
14
+ # UNDER CONSTRUCTION
15
+
16
+ None of the below is true yet.
17
+
18
+ <p align="center">
19
+ <img src="https://img.shields.io/pypi/v/birm?style=flat-square&color=111111&label=pypi" alt="pypi">
20
+ <img src="https://github.com/hrmerrill/birm/actions/workflows/ci.yml/badge.svg?style=flat-square" alt="CI">
21
+ <img src="https://raw.githubusercontent.com/hrmerrill/birm/badges/coverage.svg" alt="coverage">
22
+ <img src="https://raw.githubusercontent.com/hrmerrill/birm/badges/interrogate_badge.svg" alt="docstring coverage">
23
+ </p>
24
+
25
+ ## About
26
+
27
+ TODO
28
+
29
+ ## Example
30
+
31
+ TODO
32
+
33
+ ## For Developers
34
+
35
+ ### Setup
36
+
37
+ ```bash
38
+ uv sync # install package + dev dependencies into .venv
39
+ ```
40
+
41
+ ### Development workflow
42
+
43
+ All changes should be made on a branch and merged to `main` via pull request.
44
+
45
+ ```bash
46
+ git checkout -b feat/my-feature # or fix/, docs/, refactor/, etc.
47
+
48
+ # ... make changes ...
49
+
50
+ make format # auto-fix formatting and lint violations
51
+ make check # lint, type-check, and verify docstring coverage
52
+ make test # run tests with coverage (90% minimum)
53
+ make docs-serve # preview docs locally at http://127.0.0.1:8000
54
+
55
+ git push -u origin feat/my-feature
56
+ # open a pull request on GitHub
57
+ ```
58
+
59
+ CI runs `make check` and `make test` automatically on every push and pull request. A PR cannot be merged if CI fails.
60
+
61
+ ### What triggers what
62
+
63
+ | Action | CI checks | Docs deployed | Package published |
64
+ |---|---|---|---|
65
+ | Push to any branch / open PR | ✓ | | |
66
+ | Merge to `main` | ✓ | ✓ | |
67
+ | Push a `v*` tag | | | ✓ |
68
+
69
+ **Docs-only change** (e.g. fix a typo in `docs/` or a docstring): open a PR and merge to `main`. Docs redeploy automatically, no tag needed.
70
+
71
+ **Code-only change** (e.g. bug fix): merge to `main`, then tag when ready to publish (see below). Docs will also redeploy on merge, reflecting any updated docstrings.
72
+
73
+ ### Publishing a new package version
74
+
75
+ 1. Bump the version in `pyproject.toml`:
76
+ ```bash
77
+ # choose one:
78
+ make patch # 0.1.0 → 0.1.1 (bug fixes)
79
+ make minor # 0.1.0 → 0.2.0 (new features)
80
+ make major # 0.1.0 → 1.0.0 (breaking changes)
81
+ ```
82
+ 2. Commit, tag, and push:
83
+ ```bash
84
+ git add pyproject.toml
85
+ git commit -m "chore: bump version to v0.x.x"
86
+ git tag v0.x.x
87
+ git push && git push --tags
88
+ ```
89
+
90
+ Pushing the tag triggers the publish workflow, which runs the test suite and publishes the package to PyPI. Check that the release appeared:
91
+
92
+ - Package: https://pypi.org/project/birm/
93
+ - Docs: https://hrmerrill.github.io/birm/
birm-0.0.0/README.md ADDED
@@ -0,0 +1,82 @@
1
+ # `birm`: Bayesian Impulse-Response Modeling
2
+
3
+ # UNDER CONSTRUCTION
4
+
5
+ None of the below is true yet.
6
+
7
+ <p align="center">
8
+ <img src="https://img.shields.io/pypi/v/birm?style=flat-square&color=111111&label=pypi" alt="pypi">
9
+ <img src="https://github.com/hrmerrill/birm/actions/workflows/ci.yml/badge.svg?style=flat-square" alt="CI">
10
+ <img src="https://raw.githubusercontent.com/hrmerrill/birm/badges/coverage.svg" alt="coverage">
11
+ <img src="https://raw.githubusercontent.com/hrmerrill/birm/badges/interrogate_badge.svg" alt="docstring coverage">
12
+ </p>
13
+
14
+ ## About
15
+
16
+ TODO
17
+
18
+ ## Example
19
+
20
+ TODO
21
+
22
+ ## For Developers
23
+
24
+ ### Setup
25
+
26
+ ```bash
27
+ uv sync # install package + dev dependencies into .venv
28
+ ```
29
+
30
+ ### Development workflow
31
+
32
+ All changes should be made on a branch and merged to `main` via pull request.
33
+
34
+ ```bash
35
+ git checkout -b feat/my-feature # or fix/, docs/, refactor/, etc.
36
+
37
+ # ... make changes ...
38
+
39
+ make format # auto-fix formatting and lint violations
40
+ make check # lint, type-check, and verify docstring coverage
41
+ make test # run tests with coverage (90% minimum)
42
+ make docs-serve # preview docs locally at http://127.0.0.1:8000
43
+
44
+ git push -u origin feat/my-feature
45
+ # open a pull request on GitHub
46
+ ```
47
+
48
+ CI runs `make check` and `make test` automatically on every push and pull request. A PR cannot be merged if CI fails.
49
+
50
+ ### What triggers what
51
+
52
+ | Action | CI checks | Docs deployed | Package published |
53
+ |---|---|---|---|
54
+ | Push to any branch / open PR | ✓ | | |
55
+ | Merge to `main` | ✓ | ✓ | |
56
+ | Push a `v*` tag | | | ✓ |
57
+
58
+ **Docs-only change** (e.g. fix a typo in `docs/` or a docstring): open a PR and merge to `main`. Docs redeploy automatically, no tag needed.
59
+
60
+ **Code-only change** (e.g. bug fix): merge to `main`, then tag when ready to publish (see below). Docs will also redeploy on merge, reflecting any updated docstrings.
61
+
62
+ ### Publishing a new package version
63
+
64
+ 1. Bump the version in `pyproject.toml`:
65
+ ```bash
66
+ # choose one:
67
+ make patch # 0.1.0 → 0.1.1 (bug fixes)
68
+ make minor # 0.1.0 → 0.2.0 (new features)
69
+ make major # 0.1.0 → 1.0.0 (breaking changes)
70
+ ```
71
+ 2. Commit, tag, and push:
72
+ ```bash
73
+ git add pyproject.toml
74
+ git commit -m "chore: bump version to v0.x.x"
75
+ git tag v0.x.x
76
+ git push && git push --tags
77
+ ```
78
+
79
+ Pushing the tag triggers the publish workflow, which runs the test suite and publishes the package to PyPI. Check that the release appeared:
80
+
81
+ - Package: https://pypi.org/project/birm/
82
+ - Docs: https://hrmerrill.github.io/birm/
@@ -0,0 +1,98 @@
1
+ [project]
2
+ name = "birm"
3
+ version = "0.0.0"
4
+ description = "Bayesian Impulse-Response Modeling"
5
+ readme = "README.md"
6
+ requires-python = ">=3.12,<3.15"
7
+ dependencies = ["pymc>=6.3.2"]
8
+
9
+ [project.license]
10
+ text = "Apache 2.0"
11
+
12
+ [project.urls]
13
+ Homepage = "https://github.com/hrmerrill/birm"
14
+ Documentation = "https://hrmerrill.github.io/birm"
15
+
16
+ [build-system]
17
+ requires = ["uv_build>=0.11.14,<0.12.0"]
18
+ build-backend = "uv_build"
19
+
20
+ [dependency-groups]
21
+ dev = [
22
+ "mkdocs-material>=9.5",
23
+ "mkdocstrings[python]>=0.25",
24
+ "genbadge[coverage]>=1.1",
25
+ "bump-my-version>=1.5.1",
26
+ "interrogate>=1.7.0",
27
+ "pytest>=9.1.1",
28
+ "pytest-cov>=7.1.0",
29
+ "ruff>=0.16.8",
30
+ "ty>=0.0.1",
31
+ ]
32
+
33
+ [tool.ruff]
34
+ line-length = 100
35
+ target-version = "py314"
36
+
37
+ [tool.ruff.lint]
38
+ select = [
39
+ "E",
40
+ "F",
41
+ "I",
42
+ "N",
43
+ "D",
44
+ "UP",
45
+ "B",
46
+ "SIM",
47
+ ]
48
+ ignore = [
49
+ "D100",
50
+ "D104",
51
+ "N803",
52
+ "N806",
53
+ ]
54
+
55
+ [tool.ruff.lint.pydocstyle]
56
+ convention = "numpy"
57
+
58
+ [tool.ruff.format]
59
+ quote-style = "double"
60
+ indent-style = "space"
61
+
62
+ [tool.interrogate]
63
+ ignore-init-method = true
64
+ ignore-magic = true
65
+ ignore-module = true
66
+ fail-under = 80
67
+ exclude = ["tests"]
68
+ color = true
69
+
70
+ [tool.pytest.ini_options]
71
+ testpaths = ["tests"]
72
+ pythonpath = ["src"]
73
+ addopts = "-q --cov=birm --cov-report=term-missing --cov-fail-under=90"
74
+
75
+ [tool.coverage.run]
76
+ source = ["birm"]
77
+
78
+ [tool.coverage.report]
79
+ show_missing = true
80
+
81
+ [tool.bumpversion]
82
+ current_version = "0.0.0"
83
+ commit = true
84
+ tag = true
85
+ message = "chore: bump version {current_version} → {new_version}"
86
+
87
+ [[tool.bumpversion.files]]
88
+ filename = "pyproject.toml"
89
+ search = 'version = "{current_version}"'
90
+ replace = 'version = "{new_version}"'
91
+
92
+ [[tool.bumpversion.files]]
93
+ filename = "src/birm/__init__.py"
94
+ search = '__version__ = "{current_version}"'
95
+ replace = '__version__ = "{new_version}"'
96
+
97
+ [[tool.bumpversion.files]]
98
+ filename = "VERSION"
@@ -0,0 +1,93 @@
1
+ [project]
2
+ name = "birm"
3
+ version = "0.0.0"
4
+ description = "Bayesian Impulse-Response Modeling"
5
+ readme = "README.md"
6
+ license = { text = "Apache 2.0" }
7
+ requires-python = ">=3.12,<3.15"
8
+ dependencies = [
9
+ "pymc>=6.3.2",
10
+ ]
11
+
12
+ [project.urls]
13
+ Homepage = "https://github.com/hrmerrill/birm"
14
+ Documentation = "https://hrmerrill.github.io/birm"
15
+
16
+ [build-system]
17
+ requires = ["uv_build>=0.11.14,<0.12.0"]
18
+ build-backend = "uv_build"
19
+
20
+ [dependency-groups]
21
+ dev = [
22
+ "mkdocs-material>=9.5",
23
+ "mkdocstrings[python]>=0.25",
24
+ "genbadge[coverage]>=1.1",
25
+ "bump-my-version>=1.5.1",
26
+ "interrogate>=1.7.0",
27
+ "pytest>=9.1.1",
28
+ "pytest-cov>=7.1.0",
29
+ "ruff>=0.16.8",
30
+ "ty>=0.0.1",
31
+ ]
32
+
33
+ [tool.ruff]
34
+ line-length = 100
35
+ target-version = "py314"
36
+
37
+ [tool.ruff.lint]
38
+ select = ["E", "F", "I", "N", "D", "UP", "B", "SIM"]
39
+ ignore = [
40
+ "D100", # covered by interrogate
41
+ "D104", # ignore empty files
42
+ "N803", # ML convention: uppercase X for feature matrices
43
+ "N806", # ML convention: uppercase X_tr, X_va, X_te
44
+ ]
45
+
46
+ [tool.ruff.lint.pydocstyle]
47
+ convention = "numpy"
48
+
49
+ [tool.ruff.format]
50
+ quote-style = "double"
51
+ indent-style = "space"
52
+
53
+ [tool.interrogate]
54
+ ignore-init-method = true
55
+ ignore-magic = true
56
+ ignore-module = true
57
+ fail-under = 80
58
+ exclude = ["tests"]
59
+ color = true
60
+
61
+ [tool.pytest.ini_options]
62
+ testpaths = ["tests"]
63
+ pythonpath = ["src"]
64
+ addopts = "-q --cov=birm --cov-report=term-missing --cov-fail-under=90"
65
+
66
+ [tool.coverage.run]
67
+ source = ["birm"]
68
+
69
+ [tool.coverage.report]
70
+ show_missing = true
71
+
72
+ # ---------------------------------------------------------------------------
73
+ # bump-my-version
74
+ # ---------------------------------------------------------------------------
75
+
76
+ [tool.bumpversion]
77
+ current_version = "0.0.0"
78
+ commit = true
79
+ tag = true
80
+ message = "chore: bump version {current_version} → {new_version}"
81
+
82
+ [[tool.bumpversion.files]]
83
+ filename = "pyproject.toml"
84
+ search = 'version = "{current_version}"'
85
+ replace = 'version = "{new_version}"'
86
+
87
+ [[tool.bumpversion.files]]
88
+ filename = "src/birm/__init__.py"
89
+ search = '__version__ = "{current_version}"'
90
+ replace = '__version__ = "{new_version}"'
91
+
92
+ [[tool.bumpversion.files]]
93
+ filename = "VERSION"
@@ -0,0 +1 @@
1
+ __version__ = "0.0.0"