Skip to content

fix: keep Request and Response parameters per instance (1.2.1) - #21

Merged
ddiazpinto merged 3 commits into
release/1.xfrom
fix/1.x-shared-state
Oct 4, 2026
Merged

ddiazpinto merged 3 commits into
release/1.xfrom
fix/1.x-shared-state

Conversation

@ddiazpinto

Copy link
Copy Markdown
Owner

Summary

  • Request and Response no longer share their parameters across instances (affects every release up to 1.2.0): a parsed response could carry a previous response's fields, and a request could carry another customer's data, such as the Bizum mobile number.
  • Known parameters that are absent read as None instead of raising KeyError.
  • CI also runs on release/1.x; adds a Poetry-aware release workflow (Trusted Publishing, pypi environment).
  • Version 1.2.1 and pyproject metadata normalization (homepage and authors).

Testing

  • 15 tests pass; the two new regression tests fail on the 1.2.0 code.
  • ruff 0.1.3 (the locked version) is clean.
  • Local python -m build and twine check pass for the sdist and the wheel.

Request and Response stored their parameters in a class-level dict, so
every instance in a process shared it: a parsed response could carry
fields of a previous one, and a request could carry another customer's
data. Each instance now gets its own dict, and known parameters that
are absent read as None.
The release workflow publishes through Trusted Publishing when a v* tag
is pushed, after checking the tag against [tool.poetry].version.
Version bump, changelog entry and pyproject metadata normalization
(homepage and authors).
@ddiazpinto
ddiazpinto merged commit 6ed6020 into release/1.x Oct 4, 2026
1 check passed
@ddiazpinto
ddiazpinto deleted the fix/1.x-shared-state branch October 4, 2026 01:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant