Release Notes
1.0
- Release Date:
2025-11-09
Disable CGI on Python 3.15 (see #64). Python 3.15 will drop support for CGI, removing the parent classes we relied onto. Thanks @mtelka for spotting this.
GitHub CI configuration now runs tests from Python 3.8 to 3.15 (alpha). The code is manually tested on Python 2.7 and 3.6 Docker containers before releases.
Bumping version to 1.0 as we didn’t have big issues for a while and we can consider the project stable.
0.4.3.4
- Release Date:
2025-03-03
0.4.3.3
- Release Date:
2024-06-14
Added support for
decimal.Decimalobjects (see #60). Thanks @pourhouse for this improvement.
0.4.3.2
- Release Date:
2022-02-19
Reordered
PooledJSONRPCServerinheritance definition (#55)Migration of Continuous Integration:
Use PyTest instead of Nose
Run CI with GitHub Actions instead of Travis-CI
0.4.3.2
- Release Date:
2021-09-28
Removed remaining print statements (#52)
0.4.3
- Release Date:
2021-09-26
ServerProxykeeps the given query string, as before 0.4.2. This release fixes #51, and a unit test has been added to ensure there won’t be any regression again on this featureJSON library selection is now made in the
jsonrpclib.jsonlibmodule, using a set of handler classes. This will ease the addition of new libraries.Added support for ujson
Fixed Travis-CI builds (migrated from .org to .com and bypassed the coveralls issue with ppc64le)
Fixed an issue with the CGI test in Python 3-only environments
0.4.2
- Release Date:
2020-11-09
Use
urlparsefromurllib.parse(Python 3) orurlparse(Python 2) to prepare for the deprecation ofurllib.parse.splittype. Thanks to @citrus-it and @markmcclain for this fix. (see #44 and #45 for more details)Unix socket clients now send
localhostasHost:HTTP field instead of the path to the socket (see #47). Thanks @markmcclain for this fix.Added a
TransportErrorexception, subclass ofProtocolError, which provides more details (see #49). Thanks @markmcclain for this improvement.
0.4.1
- Release Date:
2020-04-12
Fixed a size computation issue in the request handler (see #42)
0.4.0
- Release Date:
2019-01-13
Added back support of Unix sockets on both server and client side. Note: HTTPS is not supported on server-side Unix sockets
Fixed the CGI request handler
Fixed the request handler wrapping on server side
Documentation is now hosted on ReadTheDocs: https://jsonrpclib-pelix.readthedocs.io/
0.3.2
- Release Date:
2018-10-26
Fixed a memory leak in the Thread Pool, causing the
PooledJSONRPCServerto crash after some uptime (see #35). Thanks @animalmutch for reporting it.
0.3.1
- Release Date:
2017-06-27
Hide dunder methods from remote calls (thanks to @MarcSchmitzer). This avoids weird behaviours with special/meta methods (
__len__,__add__, …). See #32 for reference.
0.3.0
- Release Date:
2017-04-27
Handle the potentially incomplete
xmlrpc.serverpackage when thefuturepackage is used (thanks to @MarcSchmitzer).
0.2.9
- Release Date:
2016-12-12
Added support for enumerations (
enum.Enumclasses, added in Python 3.4).Removed tests for
pypy3as it doesn’t work withpipanymore.
0.2.8
- Release Date:
2016-08-23
Clients can now connect servers using basic authentication. The server URL must be given using this format:
http://user:password@server.The thread pool has been updated to reflect the fixes contributed by @Paltoquet for the iPOPO project.
0.2.7
- Release Date:
2016-06-12
Application of the
TransportMixinfix developed by @MarcSchmitzer (#26).
0.2.6
- Release Date:
2015-08-24
Removed support for Python 2.6.
Added a
__repr__method to the_Methodclass.Project is now tested against Python 3.4 and Pypy 3 on Travis-CI.
0.2.5
- Release Date:
2015-02-28
Corrects the
PooledJSONRPCServer.Stops the thread pool of the
PooledJSONRPCServerinserver_close().Corrects the
Config.copy()method: it now uses a copy of local classes and serialization handlers instead of sharing those dictionaries.
0.2.4
- Release Date:
2015-02-16
Added a thread pool to handle requests.
Corrects the handling of reused request sockets on the server side.
Corrects the
additional_headerfeature: now supports different headers for different proxies (thanks to @MarcSchmitzer).Adds a
datafield to error responses (thanks to @MarcSchmitzer and @mbra).
0.2.3
- Release Date:
2015-01-16
Added support for a custom
SSLContexton client side.
0.2.2
- Release Date:
2014-12-23
Fixed support for IronPython.
Fixed Python 2.6 compatibility in tests.
Added logs on server side.
0.2.1
- Release Date:
2014-09-18
Return
Noneinstead of an empty list on empty replies.Better lookup of the custom serializer to look for.
0.2.0
- Release Date:
2014-08-28
Code review.
Fixed propagation of configuration through
jsonclass(thanks to @dawryn).
0.1.9
- Release Date:
2014-06-09
Fixed compatibility with JSON-RPC 1.0.
Propagate configuration through
jsonclass(thanks to @dawryn).
0.1.8
- Release Date:
2014-06-05
Enhanced support for bean inheritance.
0.1.7
- Release Date:
2014-06-02
0.1.6.1
- Release Date:
2013-10-25
Fixed loading of recursive bean fields (beans can contain other beans).
ServerProxycan now be closed using:client("close")().
0.1.6
- Release Date:
2013-10-14
Fixed bean marshalling.
Added support for
setandfrozensetvalues.Changed configuration singleton to
Configinstances.
0.1.5
- Release Date:
2013-06-20
Requests with ID 0 are not considered notifications anymore.
Fixed memory leak due to keeping history in
ServerProxy.Content-Typecan be configured.Better feeding of the JSON parser (avoid missing parts of a multi-bytes character).
Code formatting/compatibility enhancements.
Applied enhancements found on other forks:
Less strict error response handling from drdaeman.
In case of a non-predefined error, raise an
AppErrorand give access toerror.data, from tuomassalo.
0.1.4
- Release Date:
2013-05-22
First published version of this fork, with support for Python 3.
Version number was following the original project one