
Die Kernbibliothek für Delta -Chat, geschrieben in Rost
Um den offiziellen Compiler für die Rust -Programmiersprache und den Cargo -Paket -Manager herunterzuladen und zu installieren, führen Sie den Befehl in Ihrer Benutzerumgebung aus:
$ curl https://sh.rustup.rs -sSf | sh
Unter Windows müssen Sie möglicherweise auch Perl installieren, um Deltachat-Core kompilieren zu können.
Kompilieren und führen Sie Delta Chat Core -Befehlszeilen -Dienstprogramm mit cargo zusammen:
$ cargo run --locked -p deltachat-repl -- ~/deltachat-db
wobei ~/deltachat-db die Datenbankdatei ist. Delta Chat erstellt es, wenn es nicht existiert.
Optional installieren Sie deltachat-repl Binary mit
$ cargo install --locked --path deltachat-repl/
und rennen als
$ deltachat-repl ~/deltachat-db
Konfigurieren Sie Ihr Konto (falls bereits konfiguriert):
Delta Chat Core is awaiting your commands.
> set addr [email protected]
> set mail_pw yourpassword
> configure
Stellen Sie eine Verbindung zu Ihrem Mailserver her (falls bereits konfiguriert):
> connect
Erstellen Sie einen Kontakt:
> addcontact [email protected]
Command executed successfully.
Listenkontakte auflisten:
> listcontacts
Contact#10: <name unset> <[email protected]>
Contact#1: Me √√ <[email protected]>
Erstellen Sie einen Chat mit Ihrem Freund und senden Sie eine Nachricht:
> createchat 10
Single#10 created successfully.
> chat 10
Single#10: [email protected] [[email protected]]
> send hi
Message sent.
Wenn [email protected] Deltachat verwendet, jedoch keine Nachricht erhalten, ist es ratsam, Spam -Ordner zu überprüfen. Es ist bekannt, dass mindestens gmx.com solche Testmeldungen als Spam behandeln, sofern nicht mit Weboberflächen anders angegeben.
Listen Sie Nachrichten in einem Chat auf:
> chat
Für weitere Befehle Typ:
> help
$ git clone https://github.com/deltachat/deltachat-core-rust.git
$ cd deltachat-core-rust
$ cmake -B build . -DCMAKE_INSTALL_PREFIX=/usr
$ cmake --build build
$ sudo cmake --install build
# run tests
$ cargo test --all
# build c-ffi
$ cargo build -p deltachat_ffi --release DCC_MIME_DEBUG : Wenn die ausgehende und eingehende Nachricht festgelegt wird
RUST_LOG=async_imap=trace,async_smtp=trace : Aktivieren Sie die IMAP- und SMTP -Verfolgung zusätzlich zu Info -Nachrichten.
Einige Tests sind teuer und mit #[ignore] markiert, um diese Verwendung des Arguments für den Test --ignored (nicht zur Frachtung selbst) zu verwenden:
$ cargo test -- --ignored Installieren Sie cargo-bolero mit
$ cargo install cargo-boleroFuzzing -Tests durchführen mit
$ cd fuzz
$ cargo bolero test fuzz_mailparse --release=false -s NONE Corpus wird unter fuzz/fuzz_targets/corpus erstellt. Dort können Sie Ersteingänge hinzufügen. Für fuzz_mailparse Zielcorpus kann mit ../test-data/message/*.eml bevölkert werden.
Mit AFL anstelle von libfuzzer zu laufen:
$ cargo bolero test fuzz_format_flowed --release=false -e afl -s NONEvendored : Wenn OpenSSL für TLS verwendet wird, bündelt dies eine mitgeführte Version. Um die Updates aus dem Provider-DB zum Kern hinzuzufügen, rennen Sie:
./src/provider/update.py ../provider-db/_providers/ > src/provider/data.rs
Sprachbindungen sind verfügbar für:
Die folgenden "Frontend" -Projekte verwenden die Rost-Bibliothek oder seine Sprachbindungen:
Verabredet / ungerecht, wenn Sie diese Sprachen mögen, können Sie sie gerne unterhalten. Wenn Sie Fragen haben, die wir Ihnen helfen, stellen Sie bitte die Probleme. ↩ ↩ 2 ↩ 3