[package] name = "libpijul" description = "Core library of Pijul, a distributed version control system based on a sound theory of collaborative work." version = "1.0.0-beta.3" repository = "https://nest.pijul.com/pijul/libpijul" documentation = "https://docs.rs/libpijul" authors = ["Pierre-Étienne Meunier <pe@pijul.org>"] edition = "2018" license = "GPL-2.0-or-later" include = [ "Cargo.toml", "src/apply.rs", "src/apply/edge.rs", "src/apply/vertex.rs", "src/missing_context.rs", "src/vector2.rs", "src/path.rs", "src/key.rs", "src/chardetng/mod.rs", "src/chardetng/data.rs", "src/chardetng/tld.rs", "src/working_copy/filesystem.rs", "src/working_copy/mod.rs", "src/working_copy/memory.rs", "src/unrecord/mod.rs", "src/unrecord/working_copy.rs", "src/record.rs", "src/change.rs", "src/change/change_file.rs", "src/change/text_changes.rs", "src/change/noenc.rs", "src/change/parse.rs", "src/change/printable.rs", "src/alive/tarjan.rs", "src/alive/debug.rs", "src/alive/retrieve.rs", "src/alive/dfs.rs", "src/alive/mod.rs", "src/alive/output.rs", "src/fs.rs", "src/vertex_buffer.rs", "src/changestore/filesystem.rs", "src/changestore/mod.rs", "src/changestore/memory.rs", "src/small_string.rs", "src/pristine/path_id.rs", "src/pristine/block.rs", "src/pristine/edge.rs", "src/pristine/merkle.rs", "src/pristine/patch_id.rs", "src/pristine/inode_metadata.rs", "src/pristine/inode.rs", "src/pristine/sanakirja.rs", "src/pristine/mod.rs", "src/pristine/vertex.rs", "src/pristine/hash.rs", "src/pristine/change_id.rs", "src/pristine/inode_vertex.rs", "src/find_alive.rs", "src/tag.rs", "src/tag/txn.rs", "src/text_encoding.rs", "src/tests/performance.rs", "src/tests/file_conflicts.rs", "src/tests/filesystem.rs", "src/tests/missing_context.rs", "src/tests/conflict.rs", "src/tests/clone.rs", "src/tests/change.rs", "src/tests/unrecord.rs", "src/tests/partial.rs", "src/tests/rm_file.rs", "src/tests/mod.rs", "src/tests/add_file.rs", "src/tests/patch.rs", "src/tests/text.rs", "src/tests/diff.rs", "src/output/mod.rs", "src/output/archive.rs", "src/output/output.rs", "src/diff/replace.rs", "src/diff/split.rs", "src/diff/diff.rs", "src/diff/mod.rs", "src/diff/delete.rs", "src/diff/vertex_buffer.rs", "src/diff/bin.rs", "src/lib.rs" ] [features] ondisk-repos = [ "mmap", "zstd", "ignore", "canonical-path", "lru-cache", "tempfile", "path-slash" ] mmap = [ "sanakirja/mmap" ] zstd = [ "zstd-seekable" ] text-changes = [ "regex" ] dump = [ "tokio" ] default = [ "ondisk-repos", "text-changes", "dump" ] tarball = [ "tar", "flate2" ] [dependencies] sanakirja = { version = "1.2.16", features = [ "crc32" ] } byteorder = "1.4" log = "0.4" serde = "1.0" serde_derive = "1.0" bitflags = "1.3" thiserror = "1.0" blake3 = "1.3" chrono = { version = "0.4", features = ["serde"] } pijul-macros = { path = "../pijul-macros", version = "0.5.0" } bincode = "1.3" data-encoding = "2.3" diffs = "0.4" toml = "0.5" serde_json = "1.0" lazy_static = "1.4" twox-hash = "1.6" crossbeam-deque = "0.8" crossbeam-utils = "0.8" nom = "7" zstd-seekable = { version = "0.1.7", optional = true } cfg-if = "1.0" memchr = "2.4" encoding_rs = "0.8.30" regex = { version = "1.5", optional = true } tokio = { version = "1.15", optional = true, features = ["io-util"] } curve25519-dalek = { version = "3", features = [ "serde" ] } ed25519-dalek = { version = "1.0", features = [ "serde" ] } ignore = { version = "0.4", optional = true } tar = { version = "0.4", optional = true } flate2 = { version = "1.0", optional = true } canonical-path = { version = "2.0", optional = true } lru-cache = { version = "0.1", optional = true } tempfile = { version = "3.1", optional = true } path-slash = { version = "0.1", optional = true } pbkdf2 = { version = "0.9", default-features = false } aes = { version = "0.7", features = [ "ctr" ] } generic-array = "0.14" hmac = "0.11" sha2 = "0.9" rand = "0.8" rand_core = { version = "0.6", features = ["getrandom"] } bs58 = "0.4" adler32 = "1.2" parking_lot = "0.11" [dev-dependencies] env_logger = "0.8" anyhow = "1.0" detone = "1.0" rand = "0.8" rand_chacha = "0.3" quickcheck = "1" quickcheck_macros = "1"