jsonrpc-base


Namejsonrpc-base JSON
Version 2.2.0 PyPI version JSON
download
home_pagehttp://github.com/emlove/jsonrpc-base
SummaryA JSON-RPC client library base interface
upload_time2023-12-11 17:13:43
maintainer
docs_urlNone
authorEmily Love Mills
requires_python
licenseBSD
keywords json-rpc base
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            jsonrpc-base: a compact JSON-RPC client library interface supporting multiple backends
=======================================================================================================

.. image:: https://github.com/emlove/jsonrpc-base/actions/workflows/main.yml/badge.svg
    :target: https://github.com/emlove/jsonrpc-base/actions/workflows/main.yml
.. image:: https://coveralls.io/repos/emlove/jsonrpc-base/badge.svg
    :target: https://coveralls.io/r/emlove/jsonrpc-base

This is a compact and simple JSON-RPC client implementation interface python code. This code is forked from https://github.com/gciotta/jsonrpc-requests

Main Features
-------------

* Python 3.6, 3.7, 3.8 & 3.9 compatible
* Supports nested namespaces (eg. `app.users.getUsers()`)
* 100% test coverage

Usage
-----

See `jsonrpc-async <https://github.com/emlove/jsonrpc-async>`_ and `jsonrpc-websocket <https://github.com/emlove/jsonrpc-websocket>`_ for example implementations.

Tests
-----
Install the Python tox package and run ``tox``, it'll test this package with various versions of Python.

Changelog
---------
2.2.0 (2023-12-11)
~~~~~~~~~~~~~~~~~~
- Omit params attribute when empty `(#9) <https://github.com/emlove/jsonrpc-base/pull/9>`_ `@Makman2 <https://github.com/Makman2>`_

2.1.1 (2022-05-03)
~~~~~~~~~~~~~~~~~~
- Unpin test dependencies

2.1.0 (2021-05-03)
~~~~~~~~~~~~~~~~~~
- Use uuid4 for request IDs

2.0.0 (2021-03-16)
~~~~~~~~~~~~~~~~~~
- BREAKING CHANGE: `Allow single mapping as a positional parameter. <https://github.com/emlove/jsonrpc-base/pull/6>`_
  Previously, when calling with a single dict as a parameter (example: ``server.foo({'bar': 0})``), the mapping was used as the JSON-RPC keyword parameters. This made it impossible to send a mapping as the first and only positional parameter. If you depended on the old behavior, you can recreate it by spreading the mapping as your method's kwargs. (example: ``server.foo(**{'bar': 0})``)

1.1.0 (2020-08-24)
~~~~~~~~~~~~~~~~~~
- Support for async server request handlers

1.0.3 (2019-11-12)
~~~~~~~~~~~~~~~~~~
- Forwards compatibility for Python 3.9. `(#4) <https://github.com/emlove/jsonrpc-base/pull/4>`_ `@a1fred <https://github.com/a1fred>`_

1.0.2 (2018-08-23)
~~~~~~~~~~~~~~~~~~
- Improved support for JSON-RPC v1 servers. `(#2) <https://github.com/emlove/jsonrpc-base/pull/2>`_ `@tdivis <https://github.com/tdivis>`_

1.0.1 (2018-07-06)
~~~~~~~~~~~~~~~~~~
- Falsey values are no longer treated as None for message IDs, or request parameters.

Credits
-------
`@gciotta <https://github.com/gciotta>`_ for creating the base project `jsonrpc-requests <https://github.com/gciotta/jsonrpc-requests>`_.

`@mbroadst <https://github.com/mbroadst>`_ for providing full support for nested method calls, JSON-RPC RFC
compliance and other improvements.

`@vaab <https://github.com/vaab>`_ for providing api and tests improvements, better RFC compliance.

            

Raw data

            {
    "_id": null,
    "home_page": "http://github.com/emlove/jsonrpc-base",
    "name": "jsonrpc-base",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "json-rpc base",
    "author": "Emily Love Mills",
    "author_email": "emily@emlove.me",
    "download_url": "https://files.pythonhosted.org/packages/b9/54/0b20d7e5e32221d759ad8f4282c03ceb54be6e48b4ff641affd35131f4ce/jsonrpc-base-2.2.0.tar.gz",
    "platform": null,
    "description": "jsonrpc-base: a compact JSON-RPC client library interface supporting multiple backends\n=======================================================================================================\n\n.. image:: https://github.com/emlove/jsonrpc-base/actions/workflows/main.yml/badge.svg\n    :target: https://github.com/emlove/jsonrpc-base/actions/workflows/main.yml\n.. image:: https://coveralls.io/repos/emlove/jsonrpc-base/badge.svg\n    :target: https://coveralls.io/r/emlove/jsonrpc-base\n\nThis is a compact and simple JSON-RPC client implementation interface python code. This code is forked from https://github.com/gciotta/jsonrpc-requests\n\nMain Features\n-------------\n\n* Python 3.6, 3.7, 3.8 & 3.9 compatible\n* Supports nested namespaces (eg. `app.users.getUsers()`)\n* 100% test coverage\n\nUsage\n-----\n\nSee `jsonrpc-async <https://github.com/emlove/jsonrpc-async>`_ and `jsonrpc-websocket <https://github.com/emlove/jsonrpc-websocket>`_ for example implementations.\n\nTests\n-----\nInstall the Python tox package and run ``tox``, it'll test this package with various versions of Python.\n\nChangelog\n---------\n2.2.0 (2023-12-11)\n~~~~~~~~~~~~~~~~~~\n- Omit params attribute when empty `(#9) <https://github.com/emlove/jsonrpc-base/pull/9>`_ `@Makman2 <https://github.com/Makman2>`_\n\n2.1.1 (2022-05-03)\n~~~~~~~~~~~~~~~~~~\n- Unpin test dependencies\n\n2.1.0 (2021-05-03)\n~~~~~~~~~~~~~~~~~~\n- Use uuid4 for request IDs\n\n2.0.0 (2021-03-16)\n~~~~~~~~~~~~~~~~~~\n- BREAKING CHANGE: `Allow single mapping as a positional parameter. <https://github.com/emlove/jsonrpc-base/pull/6>`_\n  Previously, when calling with a single dict as a parameter (example: ``server.foo({'bar': 0})``), the mapping was used as the JSON-RPC keyword parameters. This made it impossible to send a mapping as the first and only positional parameter. If you depended on the old behavior, you can recreate it by spreading the mapping as your method's kwargs. (example: ``server.foo(**{'bar': 0})``)\n\n1.1.0 (2020-08-24)\n~~~~~~~~~~~~~~~~~~\n- Support for async server request handlers\n\n1.0.3 (2019-11-12)\n~~~~~~~~~~~~~~~~~~\n- Forwards compatibility for Python 3.9. `(#4) <https://github.com/emlove/jsonrpc-base/pull/4>`_ `@a1fred <https://github.com/a1fred>`_\n\n1.0.2 (2018-08-23)\n~~~~~~~~~~~~~~~~~~\n- Improved support for JSON-RPC v1 servers. `(#2) <https://github.com/emlove/jsonrpc-base/pull/2>`_ `@tdivis <https://github.com/tdivis>`_\n\n1.0.1 (2018-07-06)\n~~~~~~~~~~~~~~~~~~\n- Falsey values are no longer treated as None for message IDs, or request parameters.\n\nCredits\n-------\n`@gciotta <https://github.com/gciotta>`_ for creating the base project `jsonrpc-requests <https://github.com/gciotta/jsonrpc-requests>`_.\n\n`@mbroadst <https://github.com/mbroadst>`_ for providing full support for nested method calls, JSON-RPC RFC\ncompliance and other improvements.\n\n`@vaab <https://github.com/vaab>`_ for providing api and tests improvements, better RFC compliance.\n",
    "bugtrack_url": null,
    "license": "BSD",
    "summary": "A JSON-RPC client library base interface",
    "version": "2.2.0",
    "project_urls": {
        "Homepage": "http://github.com/emlove/jsonrpc-base"
    },
    "split_keywords": [
        "json-rpc",
        "base"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b9540b20d7e5e32221d759ad8f4282c03ceb54be6e48b4ff641affd35131f4ce",
                "md5": "fe3c89e462767d44d5d7ef139b27469b",
                "sha256": "931a9a37c637b46eec7e1f9ba894655f8241381309e89b948d7d278c29f672ba"
            },
            "downloads": -1,
            "filename": "jsonrpc-base-2.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "fe3c89e462767d44d5d7ef139b27469b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 5810,
            "upload_time": "2023-12-11T17:13:43",
            "upload_time_iso_8601": "2023-12-11T17:13:43.094623Z",
            "url": "https://files.pythonhosted.org/packages/b9/54/0b20d7e5e32221d759ad8f4282c03ceb54be6e48b4ff641affd35131f4ce/jsonrpc-base-2.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-11 17:13:43",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "emlove",
    "github_project": "jsonrpc-base",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "tox": true,
    "lcname": "jsonrpc-base"
}
        
Elapsed time: 0.30738s