Pfun Versions Save

Functional, composable, asynchronous, type-safe Python.

0.13.2

6 months ago

Features

  • Support Python 3.11 (contributed by @sdaves) (#125)

0.13.1

2 years ago

Fixes

  • Fix illegal C code generation in Python 3.10 (#101)

Other

  • Enable MyPy plugin compatibility with MyPy 0.950 (#102)

0.13.0

2 years ago

Features:

  • More methods for combining effects asynchronously (#93)
  • Effect.race method which allows racing effects against each other asynchronously (#94)
  • Effect.timeout method which allows timing out effects (#94)
  • Effect.retry and Effect.repeat which allows retrying or repeating effects according to a schedule (#94)
  • pfun.schedule for building schedules (#94)
  • pfun.random for random number generation as an effect (#94)
  • pfun.clock for getting system time and sleeping as an effect (#94)
  • More flexible pfun.Intersection type that enables type inference (#94)
  • pfun.DefaultModules module provider for pfun provided live modules (Files, Clock, Random, Console)

Fixes

  • Support variadic arguments to pfun.effect.combine mypy plugin hook (#92)
  • Improve typing of pfun.maybe (#91)

Other

  • Rename sequence to gather(#95)
  • Rename pfun.ref to pfun.state (#96)

0.12.3

2 years ago

Features

  • pfun now supports lenses through pfun.lens (#86)

0.12.2

2 years ago

Fixes

  • Process and thread pool executors of pfun.effect are now initialized lazily to support running on AWS Lambda (#85)

0.12.1

3 years ago
  • Hypothesis strategies are now published in the module pfun.hypothesis_strategies
  • Adds curried, type-safe operators in the pfun.operator module

0.12.0

3 years ago

Features

  • pfun.effect is now implemented in Cython, which greatly improves trampoline interpretation speed
  • pfun.maybe and pfun.either are now both tagged unions implemented through __bool__, which allows you to narrow the type using if statements instead of the more verbose isinstance

Fixes

0.11.5

3 years ago
  • Ensure compatibility with MyPy 0.800 (@hugosenari )
  • Fix issue where effect.Resource would not properly close resources

0.11.4

3 years ago
  • Fix issue with pfun.files.read_byte with missing r parameter to open (@thomhickey )

0.11.3

3 years ago
  • Allow pfun.effect.catch to accept async functions