Files
chatmail-core/deltachat-rpc-server
link2xt 2d7af15124 build: update all crates to Rust 2024 edition
Largest change is in the FFI crate.
With 2024 (but not 2021) edition unsafe code
inside unsafe functions should be marked separately
so we can mark exactly the code that is unsafe.
Some CFFI functions even have no unsafe code inside.

Most interesting change is that .strdup()
functions are not marked as unsafe anymore.
They are allocating memory and return raw pointers,
but there is nothing unsafe about it.
Only using the returned raw pointers is unsafe.
This way calls to .strdup() don't have to be marked
with unsafe{} blocks.
2026-07-27 23:48:11 +00:00
..

Delta Chat RPC server

This program provides a JSON-RPC 2.0 interface to DeltaChat over standard I/O.

Install

To download binary pre-builds check the releases page. Rename the downloaded binary to deltachat-rpc-server and add it to your PATH.

To install from source run:

cargo install --git https://github.com/chatmail/core/ deltachat-rpc-server

The deltachat-rpc-server executable will be installed into $HOME/.cargo/bin that should be available in your PATH.

Usage

To use just run deltachat-rpc-server command. The accounts folder will be created in the current working directory unless DC_ACCOUNTS_PATH is set:

export DC_ACCOUNTS_PATH=$HOME/delta/
deltachat-rpc-server

The common use case for this program is to create bindings to use Delta Chat core from programming languages other than Rust, for example:

  1. Python: https://pypi.org/project/deltachat-rpc-client/
  2. Go: https://github.com/deltachat/deltachat-rpc-client-go/

Run deltachat-rpc-server --version to check the version of the server. Run deltachat-rpc-server --openrpc to get OpenRPC specification of the provided JSON-RPC API.