summaryrefslogtreecommitdiffstats
path: root/Cargo.toml
AgeCommit message (Collapse)Author
2023-01-05Don't select a cryptograhic backend in non-leaf crates.Justus Winter
- This way, only the leaf package has to concern itself with the selection of a cryptographic backend for Sequoia. Notably, we don't have to repeat all of sequoia-openpgp's features in all crates that use sequoia-openpgp. - Enable the new feature resolver which allows for this method. - A complication arises because we want to make `cargo test` work by default for the intermediate crates without developers having to select a cryptographic backend. To make that work, we implicitly select a backend in the dev dependencies which are enabled when compiling the tests. To make it even more convenient, we select the most convenient backend, which is CNG for Windows and Nettle, our default, for every other platform. - Now that we have implicitly selected CNG on Windows for running the tests, when the user wants to use Nettle on Windows, and does `cargo test --features sequoia-openpgp/crypto-nettle`, then two backends are selected: the implicitly selected CNG and the explicitly selected Nettle. In this case, we detect that an implicit selection has been made, and ignore the implicitly selected backend. Now, this has already been compiled by cargo (remember that we cannot influence the set of dependencies at the time the build script is run), but we can still ignore the implicit backend using conditional compilation (i.e. it will not be included in the resulting binary). The same happens on non-Windows platforms where Nettle is the implicit default for tests when the user explicitly requests a different backend. In both cases, Nettle and CNG are slim wrappers around native libraries, so the wasted compilation time is low.
2021-12-10Remove the ffi crates.Justus Winter
- Remove the general-purpose ffi crates. They will be moved into their own repository. Note that we consider general-purpose ffi crates to be a dead end: exposing Sequoia's interface requires a large number of types and functions, and using the interface from C turned out to be verbose and error-prone. Instead, we prefer to write point solutions in Rust that implement exactly the functionality the downstream consumer needs, then expose this via ffi bindings. - See https://gitlab.com/sequoia-pgp/sequoia-ffi.
2021-11-25store: Drop crate.Justus Winter
- The store has never been really used, and never reached a maturity where it was useful. And, we're on the verge of replacing it with the Shared PGP Certificate Directory.
2021-07-09sqv: Move to https://gitlab.com/sequoia-pgp/sequoia-sqvNora Widdecke
- From this point on, the crate sequoia-sqv will be maintained in its own repository.
2021-03-31ipc: Incorporate sequoia-core crate as a core module.Wiktor Kwapisiewicz
- This moves all functionality from sequoia_core crate as an inner `core` module of the ipc crate. - The `core` module has to be public as other crates depend on `core::Context` either directly (store, ffi) or indirectly (store through ffi crate). - Remove the `core` crate completely.
2021-01-04sop: Move to https://gitlab.com/sequoia-pgp/sequoia-sopJustus Winter
- From this point on, the crate sequoia-sop will be maintained in its own repository.
2020-10-14sq: Rename module to 'sequoia-sq'.Justus Winter
2020-10-06Remove top-level sequoia packageIgor Matuszewski
This runs into surprising interactions when trying to build member packages with other than default feature set. See https://gitlab.com/sequoia-pgp/sequoia/-/issues/575 for more info.
2020-08-21Release 0.19.0.v0.19.0Justus Winter
2020-07-31Release 0.18.0.v0.18.0Justus Winter
2020-06-12Release 0.17.0.v0.17.0Justus Winter
2020-04-21sop: An implementation of the Stateless OpenPGP CLI using Sequoia.Justus Winter
- This adds a new frontend to Sequoia that implements the Stateless OpenPGP Command Line Interface. - Compared to sq, sop has a much smaller feature set and hence a smaller set of dependencies. It is less opinionated, and tries to faithfully implement the SOP protocol. We will use it to test Sequoia using the OpenPGP Interoperability Test Suite.
2020-04-03Release 0.16.0.v0.16.0Justus Winter
2020-03-04Release 0.15.0.v0.15.0Justus Winter
2020-02-07Release 0.14.0.v0.14.0Justus Winter
2020-02-06autocrypt: New crate.Justus Winter
- Move the autocrypt-related functionality to a new crate. - Fixes #424.
2019-12-20Release 0.13.0.v0.13.0Justus Winter
2019-11-25Release 0.12.0.v0.12.0Justus Winter
2019-10-31Change license to GPLv2+.Neal H. Walfield
2019-10-30Update authors.Neal H. Walfield
2019-10-25Release 0.11.0.v0.11.0Justus Winter
2019-10-25rfc2822,openpgp: Move rfc2822 crate to be a private mod in openpgpNeal H. Walfield
- The rfc2822 crate doesn't implement all of RFC 2822. Moreover, it includes a number of extensions. This makes rfc2822 a misnomer. - RFC 2822 is actually obsoleted by RFC 5322. This means that if we ever add support for RFC 5322, it will be an even worse misnomer. - Move the whole crate into the openpgp crate. Note: we don't directly export the API; it is only used internally by packet::userid. - Closes #279.
2019-09-06Release 0.10.0.v0.10.0Justus Winter
2019-07-15Switch to Rust 2018.Justus Winter
2019-07-08Release 0.9.0.v0.9.0Justus Winter
2019-06-14Release 0.8.0.v0.8.0Justus Winter
2019-05-10Release 0.7.0.v0.7.0Justus Winter
2019-05-03ipc: New crate.Justus Winter
2019-04-12Release 0.6.0.v0.6.0Justus Winter
- Also bump rfc2822 to 0.6.0. After all, we create tags for the versions.
2019-04-12New crate sequoia-rfc2822.Neal H. Walfield
- An RFC 2882 mail name-addr parser.
2019-03-28Point to the version-specific documentation.Justus Winter
2019-03-14Release 0.5.0.v0.5.0Justus Winter
2019-02-19Release 0.4.0.v0.4.0Justus Winter
2019-01-31When building in release mode, include debug symbolsNeal H. Walfield
2019-01-17openpgp-ffi: New crate.Justus Winter
- This creates a new crate, 'sequoia-openpgp-ffi', and moves a handful of functions from 'sequoia-ffi' to it. - The 'sequoia-ffi' crate is a superset of the 'sequoia-openpgp-ffi' crate. This is accomplished by some include! magic. - My first attempt involved having 'sequoia-ffi' depend on 'sequoia-openpgp-ffi', so that the former just re-exports the symbols. However, that turned out to be unreliable, and might be not what we want, because it could also duplicate parts of Rust's standard library. - Fixes #144.
2019-01-16ffi-macros: New crate.Justus Winter
- This crate contains macros for Sequoia's FFI crate(s). Having it in a separate crate means that we can share it when we split the FFI crate into two. - More importantly, we need a separate crate if we want to create procedural macros. - As first macro, this patch adds ffi_catch_abort that wraps a function's body in a catch_unwind block, aborting on panics.
2018-12-18Release 0.3.0.v0.3.0Justus Winter
2018-12-07guide: New crate.Justus Winter
- Our previous guide published on our web site quickly bitrotted away. This guide, however, is tested as part of Sequoia's test suite, making sure that it stays in sync.
2018-11-27Fix the gitlab badges.Justus Winter
2018-11-26Release 0.2.0.v0.2.0Justus Winter
2018-11-26sqv: Move sqv into a new crate.Justus Winter
- This allows us to use sequoia-openpgp without compression support reducing binary size and trusted computing base.
2018-11-24Rename the openpgp crate to sequoia-openpgp.Justus Winter
2018-11-24Fix mail address.Justus Winter
2018-11-24Make cargo package happy.Justus Winter
2018-11-24Update packaging metadata in preparation for a release.Justus Winter
2018-03-13Add some metadata and a README with build instructions.Justus Winter
2018-01-03Remove the 'sequoia' binary.Justus Winter
2017-12-21tool: New crate.Justus Winter
- A command line tool to interact with Sequoia. Useful for debugging and development.
2017-12-13Split up Sequoia.Justus Winter
- Split up into six crates: buffered-reader, openpgp, sequoia-core, sequoia-ffi, sequoia-net, and sequoia-store. - Adjust imports accordingly.
2017-12-12Retrieve and send keys using the hkps? protocol.Justus Winter
- Use hyper for http, hyper-tls for https. - Provide an easy constructor for the hkps pool. - Add ffi glue.