Skip to content

Bump django-modern-rpc from 1.1.0 to 2.0.0#4175

Draft
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/pip/django-modern-rpc-2.0.0
Draft

Bump django-modern-rpc from 1.1.0 to 2.0.0#4175
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/pip/django-modern-rpc-2.0.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot bot commented on behalf of github Nov 11, 2025

Bumps django-modern-rpc from 1.1.0 to 2.0.0.

Release notes

Sourced from django-modern-rpc's releases.

v2.0.0 (2025-11-10)

Improvements

  • The new API, heavily inspired from tools like FastAPI or django-ninja, encapsulate the procedures registration in a dedicated RpcServer instance. This removes the need to lookup modules based on settings.MODERNRPC_METHODS_MODULES value, so modernrpc does not need to be added to settings.INSTALLED_APPS anymore.
  • RpcNamespace were added to provide a better organization of procedures. Each one can be registered in a previously defined RpcServer.
  • It is now possible to register async procedures. Both sync (legacy) and async procedures are served by the default view (synchronous)
  • For improved performances with async procedures, an async view has been added and can be used as a replacement to expose procedures. The async_view can serve both sync and async procedures.
  • Error handling has been improved, allowing executing a callback function when an exception is caught and before an RPC error response is built.
  • The authentication process has been improved. Multiple callbacks can be configured at server-level, namespace-level or directly on a specific remote procedure.
  • It is now possible to configure different backends to deserialize XML-RPC and JSON-RPC requests and to serialize XML-RPC and JSON-RPC responses. Alternative backends may provide more features, configuration options, specific types support or better performances.

Breaking Changes

  • Complete architecture redesign: The library now uses a server-based approach instead of entry points
  • Removed the RPCEntryPoint class-based view in favor of the new function based views provided by RpcServer class
  • Removed automatic procedure registration via MODERNRPC_METHODS_MODULES setting
  • Removed HTML documentation generation through entry points
  • Changed the way procedures access request context, now using the context_target parameter
  • Some settings were removed:
    • MODERNRPC_METHODS_MODULES
    • MODERNRPC_LOG_EXCEPTIONS
    • MODERNRPC_DEFAULT_ENTRYPOINT_NAME
    • MODERNRPC_JSON_DECODER
    • MODERNRPC_JSON_ENCODER
    • MODERNRPC_XMLRPC_USE_BUILTIN_TYPES
    • MODERNRPC_XMLRPC_ALLOW_NONE
    • MODERNRPC_XMLRPC_DEFAULT_ENCODING

Misc

  • Added support for Django 5.2 and 6.0
  • Added support for Python 3.14
  • Dropped support of Django < 3.2
  • Dropped support of Python 3.7
Changelog

Sourced from django-modern-rpc's changelog.

v2.0.0

Release date: 2025-11-10

Improvements

  • The new API, heavily inspired from tools like FastAPI or django-ninja, encapsulate the procedures registration in a dedicated RpcServer instance. This removes the need to lookup modules based on settings.MODERNRPC_METHODS_MODULES value, so modernrpc does not need to be added to settings.INSTALLED_APPS anymore.
  • RpcNamespace were added to provide a better organization of procedures. Each one can be registered in a previously defined RpcServer.
  • It is now possible to register async procedures. Both sync (legacy) and async procedures are served by the default view (synchronous)
  • For improved performances with async procedures, an async view has been added and can be used as a replacement to expose procedures. The async_view can serve both sync and async procedures.
  • Error handling has been improved, allowing executing a callback function when an exception is caught and before an RPC error response is built.
  • The authentication process has been improved. Multiple callbacks can be configured at server-level, namespace-level or directly on a specific remote procedure.
  • It is now possible to configure different backends to deserialize XML-RPC and JSON-RPC requests and to serialize XML-RPC and JSON-RPC responses. Alternative backends may provide more features, configuration options, specific types support or better performances.

Breaking Changes

  • Complete architecture redesign: The library now uses a server-based approach instead of entry points
  • Removed the RPCEntryPoint class-based view in favor of the new function based views provided by RpcServer class
  • Removed automatic procedure registration via MODERNRPC_METHODS_MODULES setting
  • Removed HTML documentation generation through entry points
  • Changed the way procedures access request context, now using the context_target parameter
  • Some settings were removed:
    • MODERNRPC_METHODS_MODULES
    • MODERNRPC_LOG_EXCEPTIONS
    • MODERNRPC_DEFAULT_ENTRYPOINT_NAME
    • MODERNRPC_JSON_DECODER
    • MODERNRPC_JSON_ENCODER
    • MODERNRPC_XMLRPC_USE_BUILTIN_TYPES
    • MODERNRPC_XMLRPC_ALLOW_NONE
    • MODERNRPC_XMLRPC_DEFAULT_ENCODING

Misc

  • Added support for Django 5.2 and 6.0
  • Added support for Python 3.14
  • Dropped support of Django < 3.2
  • Dropped support of Python 3.7
Commits

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Nov 11, 2025
@atodorov atodorov marked this pull request as draft November 12, 2025 18:35
@dependabot dependabot bot force-pushed the dependabot/pip/django-modern-rpc-2.0.0 branch from 6f08170 to a6868c3 Compare November 28, 2025 08:13
Bumps [django-modern-rpc](https://github.com/alorence/django-modern-rpc) from 1.1.0 to 2.0.0.
- [Release notes](https://github.com/alorence/django-modern-rpc/releases)
- [Changelog](https://github.com/alorence/django-modern-rpc/blob/main/CHANGELOG.md)
- [Commits](alorence/django-modern-rpc@1.1.0...2.0.0)

---
updated-dependencies:
- dependency-name: django-modern-rpc
  dependency-version: 2.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/pip/django-modern-rpc-2.0.0 branch from a6868c3 to 35a69f6 Compare November 28, 2025 14:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update Python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants