Changelog for deltachat-core’s Python bindings



  • fix Chat.get_mute_duration()


  • emit “ac_member_removed” event (with ‘actor’ being the removed contact) for when a user leaves a group.

  • fix create_contact(addr) when addr is the self-contact.


  • uses latest 1.40+ Delta Chat core

  • refactored internals to use plugin-approach

  • introduced PerAccount and Global hooks that plugins can implement

  • introduced ac_member_added() and ac_member_removed() plugin events.

  • introduced two documented examples for an echo and a group-membership tracking plugin.


  • use latest core 1.25.0

  • refine tests and some internal changes to core bindings


  • lots of new Python APIs

  • use rust core-beta23

  • introduce automatic versioning via setuptools_scm, based on py-X.Y.Z tags

  • integrate latest DCC core-rust with dc_close() fixes

  • provide a account.shutdown() method and improve termination logic also in tests. also fixes output-clubbering during test runs.


  • use new experimental full-Rust Delta Chat core

  • support Autocrypt Setup Messages

  • remove synchronous events

  • use CircleCI for continuous integration and packaging of Linux wheels

  • use docker image for building wheels

  • fix code documentation links


  • build against latest deltachat core (0.41 ++) with RPGP compiled in

  • streamline package building

  • allow installing from package index


  • adapt to deleted and new event names



  • now depends on core tagged as v0.23.0

  • drop send_image and other helper methods in favor of just a Chat.send_file() that takes all kinds of media types

  • introduce Message.get_mime_headers() which returns the headers for an incoming message if the save_mime_headers config option is set.

  • add Message.time_received attribute, now returning an unaware datetime

  • set_config() and get_config() now throw an error if a config option does not exist

  • some API renames


  • add Account.get_infostring() to show low-level info about account state


  • add Chat.delete(), Chat.send_image() and Chat.send_file()

  • renamed Chat.send_text_message to Chat.send_text() (all other send methods also have no “_msg” at the end as it’s pretty clear Chat.send_X is going to send a message to the chat)

  • new Account.create_message() to create new messages that are not in the database (yet)

  • refined logging of events which now shows relative timestamps


  • initial release with full low level C-API, and a first high level API