Skip to content

Releases: Code0x58/alternative

0.2.0

10 May 13:54

Choose a tag to compare

Highlights

  • Public type information is now shipped from alternative.pyi, keeping alternative.py focused on runtime behavior.
  • Alternatives now support instance methods, @classmethod, and @staticmethod, including descriptor-aware IDE and type checker behavior.
  • Documentation snippets are collected as individual pytest tests with Sybil, so examples in the docs stay executable.
  • The dev and CI checks now include pyright, stubtest, packaging validation, and PyCharm type probes.
  • Package versions are now derived from Git tags with hatch-vcs. Publishing this release will build version 0.2.0 from the release tag.

Publishing this draft will trigger the PyPI publish workflow.

What's Changed

  • Refactor Alternatives pytest parameter selection into testable helpers by @Code0x58 in #5
  • tests: strengthen pytest pair-parametrize tests and signature validation by @Code0x58 in #6
  • Docs: reference example test files in README and clarify benchmark example docstring by @Code0x58 in #7
  • Capture and surface registration call-site labels for Implementations (debug mode) by @Code0x58 in #8
  • Disallow adding Implementation objects from a different Alternatives set by @Code0x58 in #9
  • Remove unused Mutability enum and small docs/cleanup by @Code0x58 in #10
  • Revise README to clarify usage, pytest patterns, and debug/debugging behavior by @Code0x58 in #11
  • Refactor internals: make callsite helpers private, rename sentinel and error classes, add all by @Code0x58 in #12
  • Add ruff lint check to CI by @Code0x58 in #13
  • Add MIT license and package metadata; tidy README wording by @Code0x58 in #15
  • Fix typing transparency for alternative decorators by @Code0x58 in #14
  • Support Python 3.10 and align typing/CI tooling by @Code0x58 in #16
  • [codex] Add Read the Docs documentation by @Code0x58 in #17
  • [codex] Add typed method alternatives and tested docs by @Code0x58 in #18

Full Changelog: 0.1.0...0.2.0

Initial release

16 Nov 21:43
6594c5d

Choose a tag to compare

0.1.0

Fix publish.yml