Friedel Ziegelmayer 8a0fc609e6 The big sqlite refactor
* refactor: safe sql access

* Clean up the worst rebase mistakes

* Some more progress on the rebase fallout and this branch

* upgrade and compile again

* cleanup from rebase

* example of how to prepare now

* rebase fixes

* add sql.query_map

* less preparation

* more improvements in sql code

* fix string truncation

* more prepare conversions

* most prep done

* fix tests

* fix ffi

* fix last prepares

* fix segfaults and some queries

* use r2d2 pool

* fix dc_job sql call, to reduce contention

* try newer rust

* No more vararg printing (drop dc_log_)

* ignore expected errors

* fix: uses exists instead of execute where needed

* fix: get_contacts logic was broken

* fix: contact creation

* test on 32bit linux

* ci: try running 32bit without cross

* undo 32bit tests

* refactor: rename dc_sqlite3 to sql

* fix: safer string conversions

* more string fixes

* try fixing appveyor build to 64bit

* chore(ci): hardcode target

* chore(ci): appveyor

* some cleanup work

* try fix darwin

* fix and improve sql escaping

* fix various bugs

* fix chat deletion

* refactor: cleanup config values and move to their own file

* refactor: move more methods onto the sql struct

* dont panic on failed state loading

* first round of cr

* one more cr fix

* stop using strange defaults

* remove unused escapes
2019-07-18 00:24:45 +02:00
2019-07-18 00:24:45 +02:00
2019-07-18 00:24:45 +02:00
2019-07-18 00:24:45 +02:00
2019-07-18 00:24:45 +02:00
2019-07-18 00:24:45 +02:00
2019-04-27 21:26:53 +02:00
2019-07-18 00:24:45 +02:00
2019-07-18 00:24:45 +02:00
2019-05-07 14:00:33 +01:00
2019-07-18 00:24:45 +02:00
2019-06-19 19:02:42 +02:00
2019-06-08 17:13:25 +02:00
2019-06-08 17:13:25 +02:00
2019-07-18 00:24:45 +02:00

Delta Chat Rust

Project porting deltachat-core to rust

CircleCI build status Appveyor build status

Current commit on deltachat/deltachat-core: 12ef73c8e76185f9b78e844ea673025f56a959ab.

Installing Rust and Cargo

To download and install the official compiler for the Rust programming language, and the Cargo package manager, run the command in your user environment:

curl https://sh.rustup.rs -sSf | sh

Using the CLI client

Compile and run Delta Chat Core using cargo:

cargo run --example repl -- /path/to/db

Configure your account (if not already configured):

Delta Chat Core is awaiting your commands.
> set addr your@email.org
> set mail_pw yourpassword
> configure

Connect to your mail server (if already configured):

> connect

Create a contact:

> addcontact yourfriends@email.org
Command executed successfully.

List contacts:

> listcontacts
Contact#10: <name unset> <yourfriends@email.org>
Contact#1: Me √√ <your@email.org>

Create a chat with your friend and send a message:

> createchat 10
Single#10 created successfully.
> chat 10
Single#10: yourfriends@email.org [yourfriends@email.org]
> send hi
Message sent.

List messages when inside a chat:

> chat

For more commands type:

> help

Development

# run tests
$ cargo test --all
# build c-ffi
$ cargo build -p deltachat_ffi --release

Features

  • vendored: When using Openssl for TLS, this bundles a vendored version.
  • nightly: Enable nightly only performance and security related features.
  • ringbuf: Enable the use of slice_deque in pgp.
Description
Chatmail Rust Core library, used by Android/iOS/desktop chatmail apps, bindings and bots 📧
Readme MPL-2.0 103 MiB
Languages
Rust 74.4%
Tcl 9.1%
Python 8.8%
C 4.9%
DIGITAL Command Language 1.1%
Other 1.7%