[package]
edition = "2024"
rust-version = "1.85"
name = "rustdiff"
version = "0.1.3"
authors = ["digitalgex <jpajaro@digitalgex.com>"]
build = "build.rs"
include = [
"src/**/*.rs",
"build.rs",
"Cargo.toml",
"Cargo.lock",
"LICENSE",
"README.md",
"data/com.digitalgex.RustDiff.desktop",
"data/com.digitalgex.RustDiff.metainfo.xml",
"data/icons/com.digitalgex.RustDiff.svg",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Semantic JSON & XML diff tool with a native GTK4 desktop UI"
homepage = "https://github.com/jereok91/rustdiff"
readme = "README.md"
keywords = [
"json",
"xml",
"diff",
"gtk4",
"compare",
]
categories = [
"command-line-utilities",
"development-tools",
"gui",
]
license = "GPL-3.0-or-later"
repository = "https://github.com/jereok91/rustdiff"
[package.metadata.deb]
maintainer = "jpajaro <jpajaro@digitalgex.com>"
copyright = "2026, digitalgex"
license-file = [
"LICENSE",
"4",
]
extended-description = """
RustDiff es un comparador semantico de JSON y XML.
Muestra las diferencias entre dos documentos de forma visual,
resaltando anadidos, eliminados y modificados con colores.
"""
depends = "$auto, libgtk-4-1, libadwaita-1-0, libgtksourceview-5-0"
section = "utils"
priority = "optional"
assets = [
[
"target/release/rustdiff",
"usr/bin/",
"755",
],
[
"data/com.digitalgex.RustDiff.desktop",
"usr/share/applications/",
"644",
],
[
"data/com.digitalgex.RustDiff.metainfo.xml",
"usr/share/metainfo/",
"644",
],
[
"data/icons/com.digitalgex.RustDiff.svg",
"usr/share/icons/hicolor/scalable/apps/",
"644",
],
]
[features]
default = []
notifications = ["notify-rust"]
[lib]
name = "rustdiff"
path = "src/lib.rs"
[[bin]]
name = "rustdiff"
path = "src/main.rs"
[dependencies.anyhow]
version = "1"
[dependencies.dirs]
version = "5"
[dependencies.gtk4]
version = "0.9"
features = ["v4_12"]
[dependencies.libadwaita]
version = "0.7"
features = ["v1_5"]
[dependencies.notify-rust]
version = "4"
optional = true
[dependencies.quick-xml]
version = "0.36"
features = [
"serialize",
"async-tokio",
]
[dependencies.rusqlite]
version = "0.31"
features = [
"bundled",
"backup",
]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.similar]
version = "2"
features = [
"text",
"unicode",
]
[dependencies.sourceview5]
version = "0.9"
[dependencies.thiserror]
version = "1"
[dependencies.tokio]
version = "1"
features = [
"rt",
"rt-multi-thread",
"fs",
"time",
"macros",
]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dev-dependencies.arbitrary]
version = "1"
features = ["derive"]
[dev-dependencies.pretty_assertions]
version = "1"
[build-dependencies.pkg-config]
version = "0.3"
[profile.dev]
opt-level = 1
debug = 2
incremental = true
[profile.release]
opt-level = 3
lto = "thin"
codegen-units = 1
panic = "abort"
strip = "symbols"