dignifiedquire
d091857cef
refactor(imex): remove dc_mprintf
2019-09-16 07:59:41 +02:00
dignifiedquire
72a9ca0aa5
refactor(receive_imf): remove dc_mprintf
2019-09-16 07:58:08 +02:00
dignifiedquire
84bf1ec6e7
refactor(tools): no more dc_mprintf
2019-09-16 07:58:08 +02:00
dignifiedquire
0bf3d20e07
fix and implement ffi tranlation
2019-09-15 23:40:08 +02:00
dignifiedquire
5486ac5b9f
refacor: use an enum for events
2019-09-15 23:40:08 +02:00
Alexander Krotov
ac12b2e643
chore(key): remove unused *fingerprint_c functions
2019-09-15 19:32:16 +02:00
dignifiedquire
16c281a9b7
refactor(context): safe interface
2019-09-15 16:36:31 +02:00
dignifiedquire
413e3eb62d
apply more CR
2019-09-15 16:36:31 +02:00
dignifiedquire
f31f341a50
feat: enforce Debug implementations and remove mod types
2019-09-15 16:36:31 +02:00
dignifiedquire
c2501258b6
apply CR feedback
2019-09-15 16:36:31 +02:00
dignifiedquire
de1e3e1d4f
refactor(context): remove last unsafe bits from the context struct
2019-09-15 16:36:31 +02:00
Floris Bruynooghe
a3f64d4e95
Handle new Context creation API on the FFI
...
This adopts the FFI API to use the new Context::new() and
Contest::drop() Rust-style APIs while preserving the semantics of the
existing FFI API. It introduces a wrapper around the context which
keeps an optional reference to the actual context, changing dc_open()
and dc_close() to create/destroy the actual reference.
This changes the events emitted on closing slightly: they only get
emitted when dc_close() was called while the context was open. While
dc_close() remains idempotent in that it can still be called safely
multiple times, the close events will only occur if the context is
actually closed.
2019-09-15 02:37:13 +02:00
Floris Bruynooghe
afc9a31080
Remove dc_open call
...
A new context is now created by calling Context::new and therefore you
always have a valid context. This is much more in Rust style and will
allow a lot of furture simplifications on the context itself.
The FFI layer has not yet been adjusted in this commit and thus will
fail.
2019-09-15 02:37:13 +02:00
Simon Laux
e5699e8ba9
Merge pull request #517 from deltachat/fix_get_draft
...
Fix get_draft to just return null and not produce errors if there's no
2019-09-14 23:39:09 +02:00
Floris Bruynooghe
8a7143b791
Return a Result<Option<Message>> for get_draft
...
The function can fail, so we need to still have an error return as
well as a no-draft return.
Add tests.
2019-09-14 23:00:13 +02:00
björn petersen
79d23909b5
fix 'this message is not encrypted' error in verified groups ( #522 )
2019-09-14 18:55:19 +02:00
Alexander Krotov
24fe4740d3
Merge pull request #498 from deltachat/return_bool
...
Resolve "should return bool" TODOs
2019-09-14 14:31:50 +00:00
Alexander Krotov
51bf875826
Use DC_LP_* constants in configure module
2019-09-14 13:22:59 +03:00
Alexander Krotov
f9ce6c7c81
Use DC_LP_* constants in auto_outlook.rs
2019-09-14 13:16:21 +03:00
Alexander Krotov
2e91c3d334
Use DC_LP_* constants in auto_mozilla.rs
2019-09-14 13:14:35 +03:00
Alexander Krotov
d1b762af04
Make DC_LP_* constants public
2019-09-14 13:14:18 +03:00
Alexander Krotov
e1e02839d1
Return bool from dc_mimefactory_render
2019-09-14 12:06:33 +03:00
Alexander Krotov
50a812ea5e
Return bool from mailmime_transfer_decode
2019-09-14 12:03:10 +03:00
Alexander Krotov
27a4adb9c6
Return bool from export_key_to_asc_file
2019-09-14 12:03:10 +03:00
Alexander Krotov
3932d8f48f
Return bool from export_self_keys
2019-09-14 12:03:10 +03:00
Alexander Krotov
d978a8e0a2
Return bool from {import,export}_backup
2019-09-14 12:03:10 +03:00
Alexander Krotov
fad49e08d7
message.rs: resolve "should return bool" TODOs
2019-09-14 12:03:10 +03:00
Alexander Krotov
0f67b16f29
Return bool from add_contact_to_chat_ex
2019-09-14 12:03:10 +03:00
Alexander Krotov
97edd23910
Return bool from add_to_chat_contacts_table
2019-09-14 12:03:10 +03:00
Alexander Krotov
400ab2cdab
Return bool from dc_msg_get_showpadlock
2019-09-14 12:03:10 +03:00
jikstra
db20ecf985
Remove println
2019-09-13 22:35:31 +02:00
jikstra
75b7de712a
Fix get_draft to just return null and not produce errors if there's no
...
draft
2019-09-13 18:19:52 +02:00
Alexander Krotov
48ffef7955
Store In-Reply-To header as Option<String>
2019-09-13 11:43:48 +03:00
Alexander Krotov
055796e6b3
Merge pull request #496 from KAction/safe
...
Make dc_msg_get_file return PathBuf, not char*
2019-09-13 00:43:28 +00:00
B. Petersen
34433c4962
support additional placeholder in stock-string
2019-09-12 23:44:40 +02:00
Alexander Krotov
6d1076e1f6
Mark dc_imex() as safe
2019-09-12 23:43:25 +02:00
Dmitry Bogatov
bb4081e503
Rename query_row_col to query_get_value
...
Since function `query_row_col` no longer accept column number argument,
it is misleading to mention column in its name.
2019-09-12 18:42:12 +00:00
Dmitry Bogatov
bef25ad5f6
Avoid excessive allocation in dc_search_msgs
2019-09-12 17:12:26 +00:00
Dmitry Bogatov
f47652e72d
Change argument type of write_asc_to_file from const char * to &Path
2019-09-12 17:12:23 +00:00
Dmitry Bogatov
7c4d7fb3dd
Make Aheader::from_imffields accept &str, not const char *
2019-09-12 06:32:13 +00:00
Dmitry Bogatov
cdfc7281d0
Simplify Sql.query_row_col function
...
Function `query_row` executes query and calls callback function to process
row returned. Function query_row_col() is special case, that provides
callback function, which returns value of one particular column of row,
ignoring others.
In all cases, that particular column was 0 (first and only column of
query result), since there is no point to select more than one column
with this function -- they are discarded anyway.
This commit removes that redundancy, removing column number argument of
query_row_col() function and adjusting call sites accordingly.
2019-09-12 05:01:06 +00:00
Dmitry Bogatov
500e80784a
Replace some of context.sql.get_config() with context.get_config()
...
Pattern `context.sql.get_config(context, {foo})` is unnecessary
redundant in Rust: unlike C, Rust has associated functions (methods).
2019-09-12 04:41:06 +00:00
Dmitry Bogatov
c5803d9b4c
Remove useless catch-all pattern-matching
2019-09-12 04:17:00 +00:00
Dmitry Bogatov
ebac00fbde
Use safe version of dc_write_file
...
* src/key.rs(write_asc_to_file): simplify code using safe version of
dc_write_file() function
2019-09-12 04:11:44 +00:00
Dmitry Bogatov
f198ce29b1
Drop unsafe version of dc_get_abs_path
2019-09-12 04:11:43 +00:00
Dmitry Bogatov
df47e0ed63
Use safe version of dc_get_abs_path.
...
* src/dc_mimefactory.rs(build_body_file): use safe version of
dc_get_abs_path() function.
2019-09-12 04:10:05 +00:00
Dmitry Bogatov
477470ff70
Make dc_msg_get_file return PathBuf, not char*
...
Adjust call sites as apporiate:
* src/dc_imex.rs(dc_continue_key_transfer): use if-let pattern
with dc_read_file_safe() and dc_msg_get_file()
* src/message.rs(dc_msg_get_setupcodebegin): ditto
* src/message.rs(dc_get_msg_info): simplify code to print information
about file inside a message.
* src/message.rs(dc_msg_get_file): simplify function using
dc_get_abs_path_safe()
* deltachat-ffi/src/lib.rs(dc_msg_get_file): convert PathBuf to `char *`
to preserve C API
2019-09-12 04:10:05 +00:00
Floris Bruynooghe
aefddf7f5e
Remove context refrence from Contact struct
...
This will allow the Rust Context API to be refactored without breaking
the C API. Full details in #476 aka
a0b5e32f98
2019-09-11 23:53:48 +02:00
Floris Bruynooghe
5ce27b16f1
Remove context refernce from Chatlist
...
See #476 aka a0b5e32f98 for full
rationale. Tl;dr it allows us to evolve the Rust API while keeping
the FFI API identical.
2019-09-11 23:53:48 +02:00
Floris Bruynooghe
8302d6833d
Remove context ref from Chat struct
...
Leaving the C API untouched. See #476 aka
a0b5e32f98 for more extensive rationale.
2019-09-11 23:53:48 +02:00