Skip to content

Releases: pocketpy/pocketpy

v2.1.4

13 Nov 08:52

Choose a tag to compare

v2.1.4 Pre-release
Pre-release

Full Changelog: v2.1.3...v2.1.4

v2.1.3

15 Oct 08:00
e39e631

Choose a tag to compare

What's Changed

  • improve docs on debugging and profiling
  • make dict with string keys noexcept. It will uses a fast path hash instead of the general py_hash
  • disable finally cuz it is buggy
  • refactor exception system and fix a lot of bugs when nesting try..except.. clause
  • fix a bug of @property
  • support maxlen config for collections.deque
  • add time.perf_counter
  • add typing.TypedDict and typing.NotRequired
  • reimpl str.format to use f-string algorithm
  • support %, / and __divmod__ for float objects
  • fix leak and improve pickle module
  • Add support for some missing escape sequences #399

New Contributors

Full Changelog: v2.1.1...v2.1.3

v2.1.1

27 Aug 09:35
b6a6aa8

Choose a tag to compare

A lot of code were changed & a lot of bugs were fixed!!

What's Changed (Auto Generated)

New Contributors

Full Changelog: v2.0.8...v2.1.1

v2.0.8

09 Apr 05:55

Choose a tag to compare

What's Changed (Auto Generated)

  • Fixed typos in documentation, comments, and code by @AryanK37 in #346
  • Fix line number reporting in trace functions for function calls by @lightovernight in #348
  • Remove redundant CMake setup steps in pybind11 workflow by @lightovernight in #350
  • fix: ensure isprint() receives unsigned char to prevent MSVC debug as… by @lightovernight in #349
  • Add typing.(TypeAlias, NewType, Never, assert_never) for type checkers by @hcarty in #357
  • fix: handle hex escapes in strings and reject invalid escapes by @attaulasad in #358

New Contributors

Full Changelog: v2.0.6...v2.0.8

v2.0.6

02 Mar 08:15
8a3bdd7

Choose a tag to compare

What's Changed (Generated)

Misc

  • add libhv module
  • add getchar to py_Callbacks
  • fix a bug of c11_vector__extend
  • fix a bug of large_objects
  • fix memory leak of new allocator
  • intern ascii literals to improve performance

New Contributors

Full Changelog: v2.0.5...v2.0.6

v2.0.5

13 Jan 05:02
8024f46

Choose a tag to compare

What's Changed

  • use cpython % and // impl
  • add colorcvt module
  • add py_importlib_reload and importlib module
  • add py_interrupt and set single handler for REPL
  • add PK_LOW_MEMORY_MODE
  • reduce type's memory cost
  • allow customize malloc, realloc and free
  • make C99 compilers work
  • fix win32 clang build by @trim21 in #317
  • avoid undefined behavior signed int overflow by @trim21 in #318
  • fix pybind11 implementation for error_already_set by @KevinEady in #321

New Contributors

Full Changelog: v2.0.4...v2.0.5

v2.0.4

23 Dec 03:55

Choose a tag to compare

This version fixes some bugs and improves code quality.

Changes

  1. add pickle module
  2. raise error on mismatched eq/ne
  3. fix a bug of 32-bit
  4. support empty tuple ()
  5. improve json

Full Changelog: v2.0.3...v2.0.4

v2.0.3

07 Dec 12:41

Choose a tag to compare

This version fixes some bugs and improves code quality.

Changes

  1. fix some type annotation usage e.g. int | None.
  2. fix some builtins hash functions
  3. fix a severe bug of dict
  4. clean up #defines
  5. improve array2d
  6. fix a bug of super
  7. fix a bug of context manager

Full Changelog: v2.0.2...v2.0.3

v2.0.2

21 Nov 02:57
b5a443e

Choose a tag to compare

This version fixes some bugs and improves code quality.

Changes

  1. Fix a bug of random module which uses a wrong initial seed.
  2. Fix #315 about py_switchvm.
  3. Improve PK_ENABLE_OS and add PK_BUILD_WITH_IPO to cmake options.
  4. Add conio module which provides _kbhit and _getch functions for desktop platforms.
  5. Fix True not False bug of parser.
  6. Fix ** associativity bug. 2**2**3 now evaluates to 256 instead of 64.
  7. Add __float__ and __int__ and __round__.
  8. Add py_bindstaticmethod.
  9. Fix str.split. It behaves the same as cpython now.
  10. Fix a bug of closure for generator functions.
  11. Support vec* unpack, e.g. x, y = vec2i(1, 2).

Full Changelog: v2.0.1...v2.0.2

v2.0.1

30 Oct 07:47

Choose a tag to compare

This is the first stable release of pocketpy.

Changes

  1. __import__ now supports loading dynamic library. The library should have a exported C function py_module_initialize
  2. Fix a bug about clock_gettime by @AstroAir
  3. Add builtin function input() and tuple.__lt__
  4. yield from now can return value and yield implicit yield None
  5. next now can take default
  6. Support PEP695
  7. Fix a multi-line function definition bug
  8. Add bytes.__len__ and improve ord()
  9. Support finally syntax