Prepare release candidate 2.0-rc1

This commit is contained in:
Marcel Müller
2018-05-08 09:53:46 +02:00
parent 3168f8dcf5
commit f0283edfc7
6 changed files with 49 additions and 8 deletions
+3 -3
View File
@@ -6,9 +6,9 @@ rust:
- stable
script:
- |
cargo build --features yaml,bin &&
cargo test --features yaml,bin &&
cargo doc --features yaml,bin
cargo build --features yaml_enc,bin_enc,ron_enc &&
cargo test --features yaml_enc,bin_enc,ron_enc &&
cargo doc --features yaml_enc,bin_enc,ron_enc
env:
global:
- secure: RFX1Ke3uk8ZdrAGwKPP7FXqQfC6bkGMDzV5ut9s5da6ClvoafosJF4RBvXi5j8KhQP9Kyow7Z8IwtTExNHMIjlE0MguHsYdFBdkj9HdjrqBQHThx5vMOq3VY3bNq9ah83Q6idoTTpQvoZ380BSHznHz8E3rmKGbEA0Z1NigWlT8DFfgqI5nTa64/bvD8IzMTjkLax4pq1SjsG8v+UgwNxkuYE6Yl/mpQJ/xTCGYiFHLKk4EW8z2I5DcK/XqY+w42uFDP2BRvXdzuS937A0lGZtAiK3sKJCBDq/2Ulkz4+onkAo9QT0k9Eea9dSoxXDk3RJHzDb5wLANtubxAWyTKiyTlO3I81ogPmHevSv3xDXXwLBjPxwwIRI1qt/01Nod4yIT4fWfIxcW+rY/W5P4v5QbvAJ079v8be1lnwCEFP55WXfTFEypvKUmNpCTeY9nAKiLywpQuibi/TuHmVH+R9xWlJaXrJ8+fM+dkl57V7AnIKs3nnYmE/c5guUakJ46QVZZtSQRcFfD0QeZPM5WaqAjiZ52eP4y/Mi5Rjg4/noLjXoR3YWYxWZsT5b7U2hv/wEMTzERgHev3aPZttO7gr3ug/FDv0TP6PKPCLd/i+g0w4RKRGArcAXIBWHdeEhfOYuC8Q93gl3d/qutvgGdWF4sdBpaPRcwmaWD+FoEWjWQ=
+3 -3
View File
@@ -3,12 +3,12 @@ authors = ["Marcel Müller <neikos@neikos.email>"]
description = "A modular and configurable database"
documentation = "https://docs.rs/rustbreak"
homepage = "https://github.com/TheNeikos/rustbreak"
keywords = ["database", "simple", "fast", "daybreak", "rustbreak"]
keywords = ["database", "simple", "fast", "rustbreak"]
license = "MPL-2.0"
name = "rustbreak"
readme = "README.md"
repository = "https://github.com/TheNeikos/rustbreak"
version = "2.0.0"
version = "2.0.0-rc1"
[dependencies]
failure = "0.1.1"
@@ -36,7 +36,7 @@ serde_derive = "1"
tempfile = "3"
[features]
default = ["ron_enc"]
default = []
ron_enc = ["ron"]
bin_enc = ["bincode", "base64"]
yaml_enc = ["serde_yaml"]
+38
View File
@@ -28,6 +28,44 @@ Features
- Threadsafe
- ron, bincode, or yaml storage
Quickstart
----------
Add this to your `Cargo.toml`:
```toml
[dependencies.rustbreak]
version = "2"
features = ["ron_enc"] # You can also use "yaml_enc" or "bin_enc"
# Check the documentation to add your own!
```
```rust
# extern crate failure;
# extern crate rustbreak;
# use std::collections::HashMap;
use rustbreak::{MemoryDatabase, deser::Ron};
# fn main() {
# let func = || -> Result<(), failure::Error> {
let db = MemoryDatabase::<HashMap<u32, String>, Ron>::memory(HashMap::new())?;
println!("Writing to Database");
db.write(|db| {
db.insert(0, String::from("world"));
db.insert(1, String::from("bar"));
});
db.read(|db| {
// db.insert("foo".into(), String::from("bar"));
// The above line will not compile since we are only reading
println!("Hello: {:?}", db.get(&0));
})?;
# return Ok(()); };
# func().unwrap();
# }
```
Usage
-----
+2 -1
View File
@@ -51,6 +51,7 @@ fn do_main() -> Result<(), failure::Error> {
fn main() {
if let Err(e) = do_main() {
println!("An error has occurred at: \n{}", e.backtrace());
eprintln!("An error has occurred at: \n{}", e.backtrace());
::std::process::exit(1);
}
}
+2 -1
View File
@@ -47,7 +47,8 @@ fn do_main() -> Result<(), failure::Error> {
fn main() {
if let Err(e) = do_main() {
println!("An error has occurred at: \n{}", e.backtrace());
eprintln!("An error has occurred at: \n{}", e.backtrace());
::std::process::exit(1);
}
}
+1
View File
@@ -45,6 +45,7 @@ impl Backend for FileBackend {
self.0.seek(SeekFrom::Start(0)).context(error::RustbreakErrorKind::Backend)?;
self.0.set_len(0).context(error::RustbreakErrorKind::Backend)?;
self.0.write_all(data).context(error::RustbreakErrorKind::Backend)?;
self.0.sync_all().context(error::RustbreakErrorKind::Backend)?;
Ok(())
}
}