ffizer 1.7.1

ffizer is a files and folders initializer / generator. It creates or updates any kind (or part) of project from template(s)
Documentation
[package]
name = "ffizer"
version = "1.7.1"
authors = ["David Bernard"]
description = """ffizer is a files and folders initializer / generator.
It creates or updates any kind (or part) of project from template(s)"""
readme = "README.md"
license = "CC0-1.0"
keywords = ["project", "generator", "template", "skeleton"]
categories = ["command-line-utilities", "development-tools", "template-engine"]
repository = "https://github.com/ffizer/ffizer"
homepage = "https://github.com/ffizer/ffizer"
exclude = ["/azure-pipelines.yml", "/docs/**", "/scripts/**", ".gitignore", "/tests/**"]
edition = "2018"

[dependencies]
console = "0.9.1"
dialoguer = "0.5.0"
difference = "2.0.0"
directories = "2.0.2"
git2 = "0.11.0"
git2_credentials = "0.4.0"
globset = "0.4.4"
handlebars = "2.0.4"
handlebars_misc_helpers = "0.6.0"
human-panic = { version = "1.0.1", optional = true}
indicatif = "0.13.0"
lazy_static ="1.4.0"
regex = "1.3.3"
md5 = "0.7.0"
self_update = { version = "0.10.0", optional = true}
serde = { version = "1.0", features = [ "derive"] }
serde_plain = "0.3.0"
serde_yaml = "0.8"
slog = { version = "2.5.2", features = ["max_level_trace", "release_max_level_warn", "nested-values"] }
slog-term = { version = "2.4.2", optional = true }
slog-stdlog = { version = "4.0.0", optional = true }
snafu = "0.6.2"
structopt = "0.3.8"
walkdir = "2.3.1"

[dev-dependencies]
assert_cmd = "0.12.0"
# rexpect = "0.3"
spectral = "0.6.0"
tempfile = "3.1.0"
test-generator = "0.3.0"
run_script = "0.6.0"
predicates = "1.0.2"

[[bin]]
name = "ffizer"
path = "src/main.rs"
doc = false
# HACK to define dependencies only for cli
# see https://github.com/rust-lang/cargo/issues/1982
required-features = ["cli"]

[target.'cfg(all(unix, not(target_os = "redox")))'.dependencies]
libc = "0.2"
openssl = { version = "0.10", features = ["vendored"] }

[target.'cfg(windows)'.dependencies]
kernel32-sys = "0.2"
winapi = "0.3"

# see https://github.com/johnthagen/min-sized-rust
[profile.release]
# Enables link time optimizations which tells the compiler to optimize code generation at link time and can result in dropping code that is not used.
lto = true
# Stops Rust generating a helpful stack trace and panic message when it panics. With this optimization it will be much harder to figure out what went wrong when the program crashes.
panic = 'abort'
# Tells the compiler to optimize for minimal code size. This will make the code less performant but it will take up less space.
opt-level = 'z'
# Tells the compiler to use only one code generator instead of running several in parallel. Disabling parallel code generation makes the compilation slower but makes all optimizations possible.
codegen-units = 1

[features]
default = ["cli"]
test_remote = [] # feature has no explicit dependencies
cli = ["self_update", "human-panic", "slog-stdlog", "slog-term"]