Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,11 @@ updates:
labels: [⬆️ Lock]
multi-ecosystem-group: lock
patterns: ["*"]
- package-ecosystem: pre-commit
directory: "/"
labels: [⬆️ Lock]
multi-ecosystem-group: lock
patterns: ["*"]
- package-ecosystem: uv
directory: "/"
labels: [⬆️ Lock]
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-drafter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ jobs:
update_release_draft:
runs-on: ubuntu-slim
steps:
- uses: release-drafter/release-drafter@v6
- uses: release-drafter/release-drafter@v7
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
15 changes: 8 additions & 7 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ repos:
- id: check-useless-excludes

- repo: https://github.com/ComPWA/policy
rev: 0.8.7
rev: 0.8.9
hooks:
- id: check-dev-files
args:
Expand Down Expand Up @@ -61,7 +61,7 @@ repos:
metadata.vscode

- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.15.2
rev: v0.15.10
hooks:
- id: ruff-check
args: [--fix]
Expand Down Expand Up @@ -107,14 +107,14 @@ repos:
- id: taplo-format

- repo: https://github.com/pappasam/toml-sort
rev: v0.24.3
rev: v0.24.4
hooks:
- id: toml-sort
args:
- --in-place

- repo: https://github.com/python-jsonschema/check-jsonschema
rev: 0.36.2
rev: 0.37.1
hooks:
- id: check-jsonschema
name: Check CITATION.cff
Expand All @@ -127,12 +127,13 @@ repos:
pass_filenames: false

- repo: https://github.com/streetsidesoftware/cspell-cli
rev: v9.7.0
rev: v10.0.0
hooks:
- id: cspell
language_version: 25.9.0

- repo: https://github.com/editorconfig-checker/editorconfig-checker.python
rev: 3.6.0
rev: 3.6.1
hooks:
- id: editorconfig-checker
name: editorconfig
Expand All @@ -153,6 +154,6 @@ repos:
types_or: [python, pyi, jupyter]

- repo: https://github.com/astral-sh/uv-pre-commit
rev: 0.10.5
rev: 0.11.6
hooks:
- id: uv-lock
4 changes: 2 additions & 2 deletions docs/amplitude-analysis/analytic-continuation.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@
"analytic_breit_wigner_builder = RelativisticBreitWignerBuilder(\n",
" form_factor=True,\n",
" energy_dependent_width=True,\n",
" phsp_factor=PhaseSpaceFactorSWave,\n",
" phsp_factor=PhaseSpaceFactorSWave, # ty:ignore[invalid-argument-type]\n",
")\n",
"model_builder.dynamics.assign(\"D0\", create_non_dynamic_with_ff)\n",
"model_builder.dynamics.assign(\"a(0)(980)0\", analytic_breit_wigner_builder)\n",
Expand Down Expand Up @@ -236,7 +236,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.13.12"
"version": "3.13.13"
}
},
"nbformat": 4,
Expand Down
3 changes: 2 additions & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ def create_tensorflow_inventory() -> None:
if os.path.exists("tensorflow.inv"):
return
subprocess.check_call(
("sphobjinv", "convert", "-o", "zlib", "tensorflow.txt"),
("sphobjinv", "convert", "-o", "zlib", "tensorflow.txt"), # noqa: S607
)


Expand All @@ -45,6 +45,7 @@ def get_tensorflow_url() -> str:
create_tensorflow_inventory()
set_intersphinx_version_remapping({
"matplotlib": {"3.5.1": "3.5.0"},
"pandas": {"3.0.2": "3.0.1"},
"scipy": {"1.7.3": "1.7.1"},
})

Expand Down
4 changes: 2 additions & 2 deletions docs/usage/caching.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -381,7 +381,7 @@
" \"x\": (-1, +1),\n",
" \"y\": (-1, +1),\n",
"}\n",
"domain_generator = NumpyDomainGenerator(boundaries)\n",
"domain_generator = NumpyDomainGenerator(boundaries) # ty:ignore[invalid-argument-type]\n",
"rng = NumpyUniformRNG()\n",
"domain = domain_generator.generate(10_000, rng)"
]
Expand Down Expand Up @@ -486,7 +486,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.13.12"
"version": "3.13.13"
}
},
"nbformat": 4,
Expand Down
5 changes: 4 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,10 @@ pwa = [
"tensorwaves[phsp]",
]
scipy = ["scipy >=1"]
tf = ["tensorflow >=2.12"]
tf = [
"tensorboard",
"tensorflow >=2.12",
]

[project.readme]
content-type = "text/markdown"
Expand Down
2 changes: 1 addition & 1 deletion src/tensorwaves/function/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ def __init__(
argument_order: Iterable[str],
parameters: Mapping[str, ParameterValue],
) -> None:
self.__function = PositionalArgumentFunction(function, argument_order) # ty:ignore[invalid-argument-type]
self.__function = PositionalArgumentFunction(function, argument_order)
self.__parameters = dict(parameters)

def __call__(self, data: DataSample) -> np.ndarray:
Expand Down
16 changes: 10 additions & 6 deletions src/tensorwaves/function/sympy/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -356,9 +356,13 @@ def fast_lambdify( # noqa: PLR0913
top_expression, symbols, backend, use_cse=use_cse, use_jit=use_jit
)

sorted_top_symbols = sorted(sub_expressions, key=str) # ty:ignore[no-matching-overload]
sorted_top_symbols = sorted(sub_expressions, key=str)
top_function = lambdify(
top_expression, sorted_top_symbols, backend, use_cse=use_cse, use_jit=use_jit
top_expression,
sorted_top_symbols, # ty:ignore[invalid-argument-type]
backend,
use_cse=use_cse,
use_jit=use_jit,
)
sub_functions: list[Callable] = []
for symbol in tqdm(
Expand All @@ -367,7 +371,7 @@ def fast_lambdify( # noqa: PLR0913
unit="expr",
disable=not _use_progress_bar(),
):
sub_expression = sub_expressions[symbol]
sub_expression = sub_expressions[symbol] # ty:ignore[invalid-argument-type]
sub_function = lambdify(
sub_expression, symbols, backend, use_cse=use_cse, use_jit=use_jit
)
Expand All @@ -384,7 +388,7 @@ def recombined_function(*args: Any) -> Any:

def _collect_constant_sub_expressions(
expression: sp.Basic, free_symbols: Iterable[sp.Basic]
) -> set[sp.Expr]:
) -> set[sp.Basic]:
import sympy as sp

free_symbol_set = set(free_symbols)
Expand All @@ -393,7 +397,7 @@ def _collect_constant_sub_expressions(

def iterate_constant_sub_expressions(
expression: sp.Basic,
) -> Generator[sp.Expr, None, None]:
) -> Generator[sp.Basic, None, None]:
if isinstance(expression, sp.Atom):
return
if _get_free_symbols(expression) & free_symbol_set:
Expand Down Expand Up @@ -438,7 +442,7 @@ def extract_constant_sub_expressions(
free_symbols = set(free_symbols)
over_defined = free_symbols - _get_free_symbols(expression)
if over_defined:
over_defined_symbols = sorted(over_defined, key=str) # ty:ignore[no-matching-overload]
over_defined_symbols = sorted(over_defined, key=str)
symbol_names = ", ".join(map(str, over_defined_symbols))
if len(over_defined) == 1:
text = f"Symbol {symbol_names} does"
Expand Down
4 changes: 2 additions & 2 deletions tests/data/test_transform.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ def test_identity_chain(self, extend: bool):
x, y, v, w = sp.symbols("x y v w")
transform1 = _create_transformer({v: 2 * x - 5, w: -0.2 * y + 3})
transform2 = _create_transformer({x: 0.5 * (v + 5), y: 5 * (3 - w)})
chained_transform = ChainedDataTransformer([transform1, transform2], extend) # ty:ignore[invalid-argument-type]
chained_transform = ChainedDataTransformer([transform1, transform2], extend)
rng = np.random.default_rng(seed=0)
data = {"x": rng.uniform(size=100), "y": rng.uniform(size=100)}
transformed_data = chained_transform(data)
Expand All @@ -35,7 +35,7 @@ def test_identity_chain(self, extend: bool):

def test_single_chain(self):
transform = IdentityTransformer()
chained_transform = ChainedDataTransformer([transform]) # ty:ignore[invalid-argument-type]
chained_transform = ChainedDataTransformer([transform])
data = {
"x": np.ones(5),
"y": np.ones(5),
Expand Down
3 changes: 2 additions & 1 deletion tests/optimizer/test_fit_simple_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
from tensorwaves.estimator import UnbinnedNLL
from tensorwaves.function.sympy import create_parametrized_function
from tensorwaves.optimizer.callbacks import (
Callback,
CallbackList,
CSVSummary,
TFSummary,
Expand Down Expand Up @@ -132,7 +133,7 @@ def test_optimize_all_parameters(
original_nll = estimator(function.parameters)

callback_file = output_dir / f"simple_fit_{backend}_{optimizer_type.__name__}"
callbacks = [
callbacks: list[Callback] = [
CSVSummary(f"{callback_file}.csv"),
YAMLSummary(f"{callback_file}.yml"),
]
Expand Down
Loading
Loading