Skip to content

Releases: tomerfiliba-org/rpyc

6.0.1: bug fixes for proxy cache, get method, id pack, and streams

25 Sep 04:33
Compare
Choose a tag to compare

6.0.1

Date: 2024-09-24

  • Minor fixes to class module id packs and related unittest assertions
  • #559 closes #558 which reported issues with proxy cache referrant race conditions, get_method errors, and stream issues
  • #557 fix pytest issues reported in #544

6.0.0: Fixed RCE from __array__

23 Feb 23:46
0194cbd
Compare
Choose a tag to compare

6.0.0

Date: 2024-02-23

  • #551 Resolves security issue that results in RCE. The fix breaks backwards compatibility for those that rely on the __array__ attribute used by numpy. This RCE is only exploitable when the server-side gets the attribute __array__ and calls it (e.g., np.array(x)). This issues effects all versions since major release 4.

5.3.1: Resolved timeout and thread binding issues

22 Feb 03:48
ec5fbe5
Compare
Choose a tag to compare

5.3.1

Date: 2023-02-21

  • #527 Resolved timeout issue that was introduced in 5.2.1
  • #525 and #524 Fixed experimental thread binding struct for platforms where unsigned long is 8-bits
    • While the fix for thread binding is not backwards compatible, it only impacts people using an experimental feature. Hence, I did a patch version bump.

5.3.0: 3.11 is now supported, experimental threading support

26 Nov 06:29
60608d4
Compare
Choose a tag to compare

5.3.0

Date: 2022-11-25

  • #515 Support for Python 3.11 is available after teleportation bug fix
  • #507 Experimental support for threading is added (default is disabled for now)
  • #516 Resolved server-side exceptions due to the logic for checking if a name is in ModuleNamespace
  • #511 Improved documentation on the life-cycle of a netref/proxy-object

Thread binding logic is still very experimental. Feel free to provide feedback, contributions, or alternative design options.

5.2.3 Fixed classic and registry entrypoints

04 Aug 03:51
fc3ec13
Compare
Choose a tag to compare

5.2.3

Date: 2022-08-03

  • #503 rpyc_classic.py and rpyc_registry.py are tracked by pyproject.toml and should resolve now. Moreover, they can now be resolved without their file suffixes as well.

5.2.1: Decorators, SSL updates, and more!

31 Jul 00:30
4d6f6e9
Compare
Choose a tag to compare

5.2.1

Date: 2022-07-30

  • #494 Added support for using decorators to expose methods (see #292)
  • #499 Allow BgServingThread serve and sleep intervals to be customized
  • #498 Avoid redefining hasattr_static on every check_attr` call
  • #489 Updated SSL context usage to avoid deprecated aspects and changes
  • #485 Add a configurable timeout on the zero deploy close method
  • #484 Fixed --mode CLI argument for rpyc_registry
  • #479 Fixed propagation of AttributeErrors raised by exposed descriptors
  • #476 Allow filtering by host on list_services
  • #493 and #502 Improved documentation and fixed typos
  • #492 Some work around race conditions but proper fix is rather involved (see #491)

5.2.0 was skipped due to PyPi not allowing file name reuse

5.1.0: Bug fixes (i.e. deadlocks) and list Registry services feature

26 Feb 23:34
7e425e4
Compare
Choose a tag to compare
  • Added types.MappingProxyType to builtin_types #470
  • Updated documentation #469
  • Fixed spradic dealock issues from wait within AsyncResult #463 and #455
  • Fixed chained Classic RPyC connections #460
  • Added ability to list Registry services #452
  • Fixed bug that prevented RPyC from running on systems without SSL #451
  • Fixed unexpected behavior with respect to auto_register #445
  • Fixed propagation of chunk_size parameter for download_dir #433

5.0.1: Fixed inspect.isfunction and prevent install on unsupported versions

11 Jan 19:21
a62f258
Compare
Choose a tag to compare
  • Fixed unexpected behavior when using inspect.isfunction #426
  • Now prevents installation of RPyC on unsupported versions of python #429

5.0.0: Various improvements and backwards incompatible changes

26 Dec 07:42
659976d
Compare
Choose a tag to compare

Backwards Incompatible:

  • RPyC 5.0.0 cannot teleport functions to earlier versions
  • Deprecated Python 2 support to coincide with it's EOL

Improvements:

  • Server hostname default supports IPv4 and IPv6 by using the wildcard address #425
  • Added docker/docker-compose.yml for Python 3.6, 3.7, 3.8, 3.9, and 3.10 containers to improve local workflow
  • Fixed pickle failure on windows for connect_multiprocess and connect_thread #412
  • Fixed teleport function behavior for keyword-only arguments with default #422
  • Improved documentation on custom exception handling
  • Fixed IPv6 support for server #407
  • Added a simple asynchrounous service example #400

4.1.5

25 Apr 05:27
8e01100
Compare
Choose a tag to compare
  • Fixed mutable object used as kwarg for Server ctor
  • Corrections to teleport example
  • Lowered GIL-lock acquires for <64kb within channel sends to address slowness