Repository navigation
Update dependency jsonrpcclient to v4.2.1 - #40
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/jsonrpcclient-4.x
branch
from
November 6, 2026 05:56
832d83d to
17a65fb
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==4.0.3→==4.2.1Release Notes
bensynapse/jsonrpcclient (jsonrpcclient)
v4.2.1Compare Source
already keeps those Pythons on 4.x, so the warning asked for nothing. It
also broke test suites that turn warnings into errors.
v4.2.0Compare Source
Warnings about what 5.0 changes, so an upgrade doesn't surprise you. Nothing
else changes. Each is a
FutureWarning, which Python shows by default.methodthat isn't a string, orparamsthat aren't a list, tuple ordict, warn. 4.x sends the request anyway. 5.0 raises
TypeError. Thiscovers
request,notificationand their variants.parse_json(..., strict=...)warns. 4.x passesstricton tojson.loads. In 5.0 it turns on stricter checks of the response instead.parse(json.loads(text, strict=False))keeps thejson.loadsoption.Python 3.11 or later, and pip keeps installing 4.x on older Pythons.
Two more changes can't be detected at run time, so they don't warn. In 5.0
parseon a batch returns a list, not an iterator, sonext(parse(batch))stops working. And
InvalidResponsestops subclassingKeyErrorandTypeError. The5.0 plan
lists everything that changes.
v4.1.0Compare Source
See Migration
for what to check when upgrading.
Changed
parseandparse_jsonnow raiseInvalidResponsefor an empty responsebatch. They used to return an empty iterator and silently accept the invalid
reply.
resultanderror, anderroris not null,parsenow returns anError. It used to returnOk(result=None)and dropthe server's error. JSON-RPC 2.0 doesn't allow both, but JSON-RPC 1.0 style
servers send
"result": nullwith an error.resultand a non-nullerrorthat isn't an objectwith
codeandmessage(for example a string,falseor""),parsenow raises
InvalidResponse. 4.0 returnedOkand ignored the error.parse_jsonon JSON that isn't an object or array, such as"pong", used tosay "Use parse_json on strings". It now says it expected an object.
parsegiven bytes now raises the same "Use parse_json on strings" error asa str.
notificationsends tuple params as a list, the same asrequestdoes.The JSON output is unchanged, but the returned dict now holds a list.
Added
InvalidResponsewith a message that says whatis wrong, for example
missing 'id'. It subclassesKeyErrorandTypeError, which earlier versions raised, so existingexceptclausesstill catch it.
Documentation
parsedocstring now says that a batch gives a one-pass lazy iterator,not a list.
guide, and one page per transport. New guides cover notifications, batches,
ids, error handling, typing and threads.
v4.0.4Compare Source
This release fixes the links on the PyPI page. The 4.0.3 page linked to the
project's old website domain, which now belongs to someone else and serves a
gambling site. Issue #229 was closed when the link changed in this repository,
but PyPI keeps showing the old link until a new release is published
(#229, #230). The links now point to
https://bensynapse.github.io/jsonrpcclient/ and
https://github.com/bensynapse/jsonrpcclient.
request_hex,request_randomandrequest_uuidare now safe to call fromseveral threads at once. Before, they could raise
ValueError: generator already executing, and free-threaded Python could crash. The iterators fromjsonrpcclient.id_generatorsare thread-safe too.paramsaccepts a list. The*_jsonfunctions returnstr, andparsehas overloads, so a type checker knows a dict gives one response anda list gives an iterator.
parse_jsonused to be typed asAny. Code thatuses its result without an
isinstancecheck now needs one to pass mypy.__version__.free-threaded 3.14. Older Pythons will keep installing 4.0.3.
GitHub Actions with build attestations.
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.