NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #2388 most downloaded on PyPI
A Rust-like result type for Python
Last release 2 years ago
no release in 18 months
Release timing varies
gaps range from 8 days to 8 months
Nearly every release is documented
notes for 22 of 22 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
27 releases · first in 2015
[added] Add inspect() and inspect_err() methods
[added] Add inspect() and inspect_err() methods (#185)[fixed] PyPI not showing description
[fixed] PyPI not showing description (#176)Nothing published for this version
One column per quarter.
[added] Add map_async for async functions
[added] Add map_async for async functions (#165)[fixed] Add do_async() to handle edge case in do() involving multiple inlined awaits (#149)[added] Add support for Python 3.12 (#157)[added] Add do function to support Haskell-style do-notation
[added] Add do function to support Haskell-style do-notation (#149)[added] is_ok and is_err type guard functions as alternatives to isinstance checks
[added] is_ok and is_err type guard functions as alternatives to isinstance checks (#69)[added] Add and_then_async for async functions (#148)[fixed] Use self._value instead of deprecated self.value in Err.expect and Err.unwrap to avoid raising a warning
[fixed] Use self._value instead of deprecated self.value in Err.expect and Err.unwrap to avoid raising a warning (#133)[changed] Include captured Err value when expect and unwrap are called and an UnwrapError is raised (#98, #132)
[changed] Include captured Err value when expect and unwrap are called and an UnwrapError is raised (#98, #132)[fixed] Pattern matching deprecation warning
[removed] Drop support for Python 3.7 (#126)[fixed] Pattern matching deprecation warning (#128)[changed] Minor internal implementation details (#129, #130)[deprecated] value property to access the inner value (#37, #121)
[changed] Ok now requires an explicit value during instantiation. Please
check out [MIGRATING.md], it will guide you through the necessary change in
your codebase.[deprecated] value property to access the inner value (#37, #121)[added] ok_value and err_value to access the inner value more safely (#37, #121)Nothing published for this version
[fixed] Make python version check PEP 484 compliant
[fixed] Make python version check PEP 484 compliant (#118)[added] as_async_result decorator to turn regular async functions into
Result returning ones (#116)[added] Implement unwrap_or_raise
[added] Implement unwrap_or_raise (#95)[added] Add support for Python 3.11 (#107)[changed] Narrowing of return types on methods of Err and Ok. (#106)[fixed] Fix failing type inference for Result.map and similar method
unions (#106)[added] as_result decorator to turn regular functions into Result returning ones (#33, 71)
[added] as_result decorator to turn regular functions into
Result returning ones (#33, 71)[removed] Drop support for Python 3.6 (#49)[added] Implement unwrap_or_else (#74), and_then (#90) and or_else (#90)Nothing published for this version
[removed] Drop support for Python 3.5
[removed] Drop support for Python 3.5 (#34)[added] Add support for Python 3.9 and 3.10 (#50)[changed] Make the Ok type covariant in regard to its wrapped type T.
Likewise for Err in regard to E. This should result in more intuitive
type checking behaviour. For instance, Err[TypeError] will get recognized
as a subtype of Err[Exception] by type checkers. See PEP 438 for a
detailed explanation of covariance and its implications.[added] Add support for Python 3.10 pattern matching (#47)[changed] Ok and Err now define __slots__ to save memory (#55, #58)[changed] The generic type of UnwrapError.result now explicitly specifies Any (#67)Nothing published for this version
IMPORTANT: This release a big API refactoring to make the API more type safe. Unfortunately this means some breaking changes. Please check out [MIGRAT…
IMPORTANT: This release a big API refactoring to make the API more type safe. Unfortunately this means some breaking changes. Please check out [MIGRATING.md], it will guide you through the necessary changes in your codebase.
Ok and Err classes (#17, #27)Nothing published for this version
[added] Implement map, map_err, map_or and map_or_else
map, map_err, map_or and map_or_else (#19)unwrap_err and expect_err methods (#26)Result[E, T] to Result[T, E] to match Rust/OCaml/F# (#7)[added] Add py.typed for PEP561 package compliance
py.typed for PEP561 package compliance (#16)[added] Add unwrap, unwrap_or and expect
unwrap, unwrap_or and expect (#9)[deprecated] Python 2 support is deprecated and will be removed in the 0.4 release
__ne__, __hash__ and __repr__- [added] __eq__ magic method
__eq__ magic method[added] Convenience default: Ok() == Ok(True)
Ok() == Ok(True)- [fixed] Import bugfix
[MIGRATING.md]: https://github.com/rustedpy/result/blob/main/MIGRATING.md [Unreleased]: https://github.com/rustedpy/result/compare/v0.17.0...HEAD [0.1
Your coding agent can read these notes before it upgrades. Set up the MCP server →