Migrate to newer shippai version

This commit is contained in:
Markus Unterwaditzer 2018-04-24 20:17:59 +02:00
parent ec79d8b18e
commit a61d51bc8f
8 changed files with 107 additions and 61 deletions

93
rust/Cargo.lock generated
View file

@ -15,12 +15,12 @@ dependencies = [
[[package]]
name = "backtrace"
version = "0.3.5"
version = "0.3.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"backtrace-sys 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.39 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-demangle 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -30,8 +30,8 @@ name = "backtrace-sys"
version = "0.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cc 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.39 (registry+https://github.com/rust-lang/crates.io-index)",
"cc 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -60,7 +60,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "cc"
version = "1.0.8"
version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@ -81,7 +81,7 @@ name = "error-chain"
version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"backtrace 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -89,7 +89,7 @@ name = "failure"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"backtrace 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"failure_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -132,7 +132,7 @@ dependencies = [
[[package]]
name = "libc"
version = "0.2.39"
version = "0.2.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@ -150,28 +150,44 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
"cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.39 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
"void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "proc-macro2"
version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "quote"
version = "0.3.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "quote"
version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "rand"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.39 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "remove_dir_all"
version = "0.5.0"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
@ -195,10 +211,21 @@ dependencies = [
[[package]]
name = "shippai"
version = "0.1.1"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"shippai_derive 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "shippai_derive"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
"syn 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -211,6 +238,16 @@ dependencies = [
"unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "syn"
version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"proc-macro2 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
"quote 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "synom"
version = "0.11.3"
@ -234,7 +271,7 @@ version = "0.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
"remove_dir_all 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
"remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -247,9 +284,14 @@ name = "unicode-xid"
version = "0.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "unicode-xid"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "uuid"
version = "0.6.2"
version = "0.6.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@ -262,11 +304,11 @@ version = "0.1.0"
dependencies = [
"atomicwrites 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.39 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
"sha2 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"shippai 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"uuid 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
"shippai 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"uuid 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)",
"vobject 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@ -305,13 +347,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[metadata]
"checksum arrayref 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "0fd1479b7c29641adbd35ff3b5c293922d696a92f25c8c975da3e0acbc87258f"
"checksum atomicwrites 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7739334b1bdd4f80a35a51f4459494e6cd78807cf57bd829e4f01945190b7de6"
"checksum backtrace 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ebbbf59b1c43eefa8c3ede390fcc36820b4999f7914104015be25025e0d62af2"
"checksum backtrace 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ebbe525f66f42d207968308ee86bc2dd60aa5fab535b22e616323a173d097d8e"
"checksum backtrace-sys 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "44585761d6161b0f57afc49482ab6bd067e4edef48c12a152c237eb0203f7661"
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5"
"checksum bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b3c30d3802dfb7281680d6285f2ccdaa8c2d8fee41f93805dba5c4cf50dc23cf"
"checksum block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a076c298b9ecdb530ed9d967e74a6027d6a7478924520acddcddc24c1c8ab3ab"
"checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40"
"checksum cc 1.0.8 (registry+https://github.com/rust-lang/crates.io-index)" = "d9324127e719125ec8a16e6e509abc4c641e773621b50aea695af3f005656d61"
"checksum cc 1.0.10 (registry+https://github.com/rust-lang/crates.io-index)" = "8b9d2900f78631a5876dc5d6c9033ede027253efcd33dd36b1309fc6cab97ee0"
"checksum cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c819a1287eb618df47cc647173c5c4c66ba19d888a6e50d605672aed3140de"
"checksum digest 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "00a49051fef47a72c9623101b19bd71924a45cca838826caae3eaa4d00772603"
"checksum error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3"
@ -321,22 +363,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
"checksum generic-array 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ef25c5683767570c2bbd7deba372926a55eaae9982d7726ee2a1050239d45b9d"
"checksum libc 0.2.39 (registry+https://github.com/rust-lang/crates.io-index)" = "f54263ad99207254cf58b5f701ecb432c717445ea2ee8af387334bdd1a03fdff"
"checksum libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)" = "6fd41f331ac7c5b8ac259b8bf82c75c0fb2e469bbf37d2becbba9a6a2221965b"
"checksum log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "89f010e843f2b1a31dbd316b3b8d443758bc634bed37aabade59c686d644e0a2"
"checksum nix 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a2c5afeb0198ec7be8569d666644b574345aad2e95a53baf3a532da3e0f3fb32"
"checksum proc-macro2 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b16749538926f394755373f0dfec0852d79b3bd512a5906ceaeb72ee64a4eaa0"
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
"checksum quote 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9949cfe66888ffe1d53e6ec9d9f3b70714083854be20fd5e271b232a017401e8"
"checksum rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5"
"checksum remove_dir_all 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "dfc5b3ce5d5ea144bb04ebd093a9e14e9765bcfec866aecda9b6dec43b3d1e24"
"checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5"
"checksum rustc-demangle 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11fb43a206a04116ffd7cfcf9bcb941f8eb6cc7ff667272246b0a1c74259a3cb"
"checksum sha2 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7daca11f2fdb8559c4f6c588386bed5e2ad4b6605c1442935a7f08144a918688"
"checksum shippai 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c342d76b09cc95857d435bb96f03c1eac8218c819e799adcc1225bdc7fe48ede"
"checksum shippai 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c6f9aeb41e06c9d8079d36b997575dc0290b11066c27684c4fb868e429e01b90"
"checksum shippai_derive 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c7a8bd6070ae7fc692908ec3853348566e5c0576c6b9d1a683813430a19b4961"
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
"checksum syn 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)" = "91b52877572087400e83d24b9178488541e3d535259e04ff17a63df1e5ceff59"
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
"checksum synstructure 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3a761d12e6d8dcb4dcf952a7a89b475e3a9d69e4a69307e01a470977642914bd"
"checksum tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
"checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169"
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
"checksum uuid 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d4670e1e935f7edd193a413f802e2ee52274aed62a09ccaab1656515c9c53a66"
"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
"checksum uuid 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8630752f979f1b6b87c49830a5e3784082545de63920d59fbaac252474319447"
"checksum vobject 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6041995691036270fabeb41975ca858f3b5113b82eea19a4f276bfb8b32e9ae4"
"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
"checksum winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "04e3bd221fcbe8a271359c04f21a76db7d0c6028862d1bb5512d85e1e2eb5bb3"

View file

@ -11,7 +11,7 @@ crate-type = ["cdylib"]
vobject = "0.4.2"
sha2 = "0.7.0"
failure = "0.1"
shippai = "0.1.1"
shippai = "0.2"
atomicwrites = "0.2.0"
uuid = { version = "0.6", features = ["v4"] }
libc = "0.2"

View file

@ -2,37 +2,39 @@ use failure;
pub type Fallible<T> = Result<T, failure::Error>;
#[derive(Debug, Fail)]
shippai_export!();
#[derive(Debug, Fail, Shippai)]
#[fail(display = "The item cannot be parsed")]
pub struct ItemUnparseable;
#[derive(Debug, Fail)]
#[derive(Debug, Fail, Shippai)]
#[fail(display = "Unexpected version {}, expected {}", found, expected)]
pub struct UnexpectedVobjectVersion {
pub found: String,
pub expected: String,
}
#[derive(Debug, Fail)]
#[derive(Debug, Fail, Shippai)]
#[fail(display = "Unexpected component {}, expected {}", found, expected)]
pub struct UnexpectedVobject {
pub found: String,
pub expected: String,
}
#[derive(Debug, Fail)]
#[derive(Debug, Fail, Shippai)]
#[fail(display = "Item '{}' not found", href)]
pub struct ItemNotFound {
pub href: String,
}
#[derive(Debug, Fail)]
#[derive(Debug, Fail, Shippai)]
#[fail(display = "The href '{}' is already taken", href)]
pub struct ItemAlreadyExisting {
pub href: String,
}
#[derive(Debug, Fail)]
#[derive(Debug, Fail, Shippai)]
#[fail(display = "A wrong etag for '{}' was provided. Another client's requests might \
conflict with vdirsyncer.",
href)]
@ -40,7 +42,7 @@ pub struct WrongEtag {
pub href: String,
}
#[derive(Debug, Fail)]
#[derive(Debug, Fail, Shippai)]
#[fail(display = "The mtime for '{}' has unexpectedly changed. Please close other programs\
accessing this file.",
filepath)]
@ -50,7 +52,7 @@ pub struct MtimeMismatch {
pub unsafe fn export_result<V>(
res: Result<V, failure::Error>,
c_err: *mut *mut exports::ShippaiError,
c_err: *mut *mut ShippaiError,
) -> Option<V> {
match res {
Ok(v) => Some(v),
@ -60,15 +62,3 @@ pub unsafe fn export_result<V>(
}
}
}
pub mod exports {
shippai_export! {
super::ItemUnparseable as ITEM_UNPARSEABLE,
super::UnexpectedVobjectVersion as UNEXPECTED_VOBJECT_VERSION,
super::UnexpectedVobject as UNEXPECTED_VOBJECT,
super::ItemNotFound as ITEM_NOT_FOUND,
super::ItemAlreadyExisting as ITEM_ALREADY_EXISTING,
super::WrongEtag as WRONG_ETAG,
super::MtimeMismatch as MTIME_MISMATCH
}
}

View file

@ -227,7 +227,7 @@ pub mod exports {
pub unsafe extern "C" fn vdirsyncer_with_uid(
c: *mut Item,
uid: *const c_char,
err: *mut *mut exports::ShippaiError,
err: *mut *mut ShippaiError,
) -> *mut Item {
let uid_cstring = CStr::from_ptr(uid);
if let Some(x) = export_result((*c).with_uid(uid_cstring.to_str().unwrap()), err) {
@ -240,7 +240,7 @@ pub mod exports {
#[no_mangle]
pub unsafe extern "C" fn vdirsyncer_get_hash(
c: *mut Item,
err: *mut *mut exports::ShippaiError,
err: *mut *mut ShippaiError,
) -> *const c_char {
if let Some(x) = export_result((*c).get_hash(), err) {
CString::new(x).unwrap().into_raw()

View file

@ -12,7 +12,7 @@ extern crate sha2;
mod item;
mod storage;
mod errors;
pub mod errors;
pub mod exports {
use std::ffi::CStr;
@ -20,7 +20,6 @@ pub mod exports {
pub use super::item::exports::*;
pub use super::storage::exports::*;
pub use super::errors::exports::*;
#[no_mangle]
pub unsafe extern "C" fn vdirsyncer_free_str(s: *const c_char) {

View file

@ -15,7 +15,7 @@ pub unsafe extern "C" fn vdirsyncer_storage_free(storage: *mut Box<Storage>) {
#[no_mangle]
pub unsafe extern "C" fn vdirsyncer_storage_list(
storage: *mut Box<Storage>,
err: *mut *mut exports::ShippaiError,
err: *mut *mut ShippaiError,
) -> *mut VdirsyncerStorageListing {
if let Some(x) = export_result((**storage).list(), err) {
Box::into_raw(Box::new(VdirsyncerStorageListing {
@ -32,7 +32,7 @@ pub unsafe extern "C" fn vdirsyncer_storage_list(
pub unsafe extern "C" fn vdirsyncer_storage_get(
storage: *mut Box<Storage>,
c_href: *const c_char,
err: *mut *mut exports::ShippaiError,
err: *mut *mut ShippaiError,
) -> *mut VdirsyncerStorageGetResult {
let href = CStr::from_ptr(c_href);
if let Some((item, href)) = export_result((**storage).get(href.to_str().unwrap()), err) {
@ -49,7 +49,7 @@ pub unsafe extern "C" fn vdirsyncer_storage_get(
pub unsafe extern "C" fn vdirsyncer_storage_upload(
storage: *mut Box<Storage>,
item: *mut Item,
err: *mut *mut exports::ShippaiError,
err: *mut *mut ShippaiError,
) -> *mut VdirsyncerStorageUploadResult {
if let Some((href, etag)) = export_result((**storage).upload((*item).clone()), err) {
Box::into_raw(Box::new(VdirsyncerStorageUploadResult {
@ -67,7 +67,7 @@ pub unsafe extern "C" fn vdirsyncer_storage_update(
c_href: *const c_char,
item: *mut Item,
c_etag: *const c_char,
err: *mut *mut exports::ShippaiError,
err: *mut *mut ShippaiError,
) -> *const c_char {
let href = CStr::from_ptr(c_href);
let etag = CStr::from_ptr(c_etag);
@ -88,7 +88,7 @@ pub unsafe extern "C" fn vdirsyncer_storage_delete(
storage: *mut Box<Storage>,
c_href: *const c_char,
c_etag: *const c_char,
err: *mut *mut exports::ShippaiError,
err: *mut *mut ShippaiError,
) {
let href = CStr::from_ptr(c_href);
let etag = CStr::from_ptr(c_etag);
@ -104,7 +104,7 @@ pub unsafe extern "C" fn vdirsyncer_storage_buffered(storage: *mut Box<Storage>)
#[no_mangle]
pub unsafe extern "C" fn vdirsyncer_storage_flush(
storage: *mut Box<Storage>,
err: *mut *mut exports::ShippaiError,
err: *mut *mut ShippaiError,
) {
let _ = export_result((**storage).flush(), err);
}

View file

@ -24,14 +24,24 @@ void shippai_free_failure(ShippaiError *t);
void shippai_free_str(char *t);
const char *shippai_get_cause_display(ShippaiError *t);
const char *shippai_get_cause_name(ShippaiError *t);
const char *shippai_get_cause_names(void);
const char *shippai_get_debug(ShippaiError *t);
const char *shippai_get_display(ShippaiError *t);
bool shippai_is_error_ItemAlreadyExisting(ShippaiError *t);
bool shippai_is_error_ItemNotFound(ShippaiError *t);
bool shippai_is_error_ItemUnparseable(ShippaiError *t);
bool shippai_is_error_MtimeMismatch(ShippaiError *t);
bool shippai_is_error_UnexpectedVobject(ShippaiError *t);
bool shippai_is_error_UnexpectedVobjectVersion(ShippaiError *t);
bool shippai_is_error_WrongEtag(ShippaiError *t);
bool vdirsyncer_advance_storage_listing(VdirsyncerStorageListing *listing);
void vdirsyncer_free_item(Item *c);

View file

@ -37,7 +37,7 @@ requirements = [
milksnake,
'shippai >= 0.1.1',
'shippai >= 0.2.2',
]