Skip to content

Releases: ZechCodes/Tramp

Add Matches & Top Level Imports (corrected build)

Choose a tag to compare

@ZechCodes ZechCodes released this 25 Mar 23:11

Matches

Adds the new matches module, a collection of protocols that can be used in match/case to identify if an object implements a certain dunder protocol. Currently Tramp includes these matches:

  • AsyncContextManager
  • AsyncIterable
  • AsyncIterator
  • Awaitable
  • Callable
  • ContextManager
  • Iterable
  • Iterator

Top Level Imports

Additionally, this release adds all Tramp modules to the top level __init__.py so that modules can be imported without a dot name

from tramp import matches

Correct Build

This version is the same as 2025.3.001 except it corrects the pyproject.toml to fix the build error related to the format of the authors field.

Add Matches & Top Level Imports

Choose a tag to compare

@ZechCodes ZechCodes released this 25 Mar 23:05

Matches

Adds the new matches module, a collection of protocols that can be used in match/case to identify if an object implements a certain dunder protocol. Currently Tramp includes these matches:

  • AsyncContextManager
  • AsyncIterable
  • AsyncIterator
  • Awaitable
  • Callable
  • ContextManager
  • Iterable
  • Iterator

Top Level Imports

Additionally, this release adds all Tramp modules to the top level __init__.py so that modules can be imported without a dot name

from tramp import matches

0.1.17 - Protected Strings Added

Choose a tag to compare

@ZechCodes ZechCodes released this 21 Nov 16:16

This release adds a protected string type that prevents sensitive data from being leaked in strings unless explicitly allowed.

0.1.15 - Add AsyncBatchIterator

Choose a tag to compare

@ZechCodes ZechCodes released this 21 Nov 00:34

Adds a AsyncBatchIterator for iterating through batched results returned by a coroutine.

0.15.0 - Improve Container and Result types

Choose a tag to compare

@ZechCodes ZechCodes released this 15 Nov 19:09
  • Container types can now be empty
  • Result builder now morphs into a result type in place at runtime to allow for a more straightforward interface

0.1.14 - Add Optional.wrap

Choose a tag to compare

@ZechCodes ZechCodes released this 14 Nov 20:28
4eae2c9

Adds Optional.wrap to wrap a value in an optional. It'll return Some(value) unless the value is None which results in a Nothing() optional.

0.1.13 - PEP 649 Imitation

Choose a tag to compare

@ZechCodes ZechCodes released this 05 Nov 01:27
2bffc65

Reimplement the annotations module to imitate [PEP 649])(https://peps.python.org/pep-0649/) and provide a barebones implementation of get_annotations that only supports Format.FORWARDREF.

0.1.12 - Add AsCompleted

Choose a tag to compare

@ZechCodes ZechCodes released this 02 Nov 19:40
50e038a

Adds AsCompleted to simplify iterating tasks as they complete.

0.1.11 - Singletons & Optionals Bug Fix

Choose a tag to compare

@ZechCodes ZechCodes released this 01 Oct 18:26
  • Added a singleton decorator
  • Fixed a bug with Optionals where Nothing wouldn't match with itself

0.1.10

Choose a tag to compare

@ZechCodes ZechCodes released this 27 Sep 21:00
  • Simplify how sentinel is implemented. It no longer returns a tuple, just the new sentinel type
  • Improve the sentinel repr's
  • Correct Optional type hinting by making Optional.Nothing the type Nothing not an instance of it
  • Add a proper readme