sem-core 0.6.2

Entity-level semantic diff engine. Extracts functions, classes, and methods from 20 languages via tree-sitter and diffs at the entity level.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "sem-core"
version = "0.6.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Entity-level semantic diff engine. Extracts functions, classes, and methods from 20 languages via tree-sitter and diffs at the entity level."
homepage = "https://github.com/Ataraxy-Labs/sem"
readme = "README.md"
keywords = [
    "diff",
    "semantic",
    "tree-sitter",
    "ast",
    "code-analysis",
]
categories = [
    "development-tools",
    "parser-implementations",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/Ataraxy-Labs/sem"

[features]
default = [
    "git",
    "parallel",
    "grammar-all",
]
git = ["dep:git2"]
grammar-all = [
    "grammar-core",
    "lang-c",
    "lang-cpp",
    "lang-ruby",
    "lang-csharp",
    "lang-php",
    "lang-fortran",
    "lang-swift",
    "lang-elixir",
    "lang-bash",
    "lang-hcl",
    "lang-kotlin",
    "lang-xml",
    "lang-dart",
    "lang-perl",
    "lang-ocaml",
    "lang-scala",
    "lang-zig",
    "lang-nix",
    "lang-svelte",
    "lang-erb",
]
grammar-core = [
    "lang-typescript",
    "lang-javascript",
    "lang-python",
    "lang-go",
    "lang-rust",
    "lang-java",
]
lang-bash = ["dep:tree-sitter-bash"]
lang-c = ["dep:tree-sitter-c"]
lang-cpp = ["dep:tree-sitter-cpp"]
lang-csharp = ["dep:tree-sitter-c-sharp"]
lang-dart = ["dep:tree-sitter-dart"]
lang-elixir = ["dep:tree-sitter-elixir"]
lang-erb = ["dep:tree-sitter-embedded-template"]
lang-fortran = ["dep:tree-sitter-fortran"]
lang-go = ["dep:tree-sitter-go"]
lang-hcl = ["dep:tree-sitter-hcl"]
lang-java = ["dep:tree-sitter-java"]
lang-javascript = ["dep:tree-sitter-javascript"]
lang-kotlin = ["dep:tree-sitter-kotlin-ng"]
lang-nix = ["dep:tree-sitter-nix"]
lang-ocaml = ["dep:tree-sitter-ocaml"]
lang-perl = ["dep:tree-sitter-perl-next"]
lang-php = ["dep:tree-sitter-php"]
lang-python = ["dep:tree-sitter-python"]
lang-ruby = ["dep:tree-sitter-ruby"]
lang-rust = ["dep:tree-sitter-rust"]
lang-scala = ["dep:tree-sitter-scala"]
lang-svelte = ["dep:tree-sitter-htmlx-svelte"]
lang-swift = ["dep:tree-sitter-swift"]
lang-typescript = ["dep:tree-sitter-typescript"]
lang-xml = ["dep:tree-sitter-xml"]
lang-zig = ["dep:tree-sitter-zig"]
parallel = ["dep:rayon"]
wasm = []

[lib]
name = "sem_core"
path = "src/lib.rs"

[[test]]
name = "graph_accuracy"
path = "tests/graph_accuracy.rs"

[[test]]
name = "scope_resolve_bench"
path = "tests/scope_resolve_bench.rs"

[[test]]
name = "verify_bench"
path = "tests/verify_bench.rs"

[dependencies.git2]
version = "0.20"
optional = true

[dependencies.rayon]
version = "1.10"
optional = true

[dependencies.regex]
version = "1"

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.serde_yaml]
version = "0.9"

[dependencies.thiserror]
version = "2"

[dependencies.toml]
version = "0.8"

[dependencies.tree-sitter]
version = "0.26"

[dependencies.tree-sitter-bash]
version = "0.23"
optional = true

[dependencies.tree-sitter-c]
version = "0.23"
optional = true

[dependencies.tree-sitter-c-sharp]
version = "0.23"
optional = true

[dependencies.tree-sitter-cpp]
version = "0.23"
optional = true

[dependencies.tree-sitter-dart]
version = "0.2.0"
optional = true

[dependencies.tree-sitter-elixir]
version = "0.3"
optional = true

[dependencies.tree-sitter-embedded-template]
version = "0.25"
optional = true

[dependencies.tree-sitter-fortran]
version = "0.5"
optional = true

[dependencies.tree-sitter-go]
version = "0.23"
optional = true

[dependencies.tree-sitter-hcl]
version = "1.1"
optional = true

[dependencies.tree-sitter-htmlx-svelte]
version = "0.1.7"
optional = true

[dependencies.tree-sitter-java]
version = "0.23"
optional = true

[dependencies.tree-sitter-javascript]
version = "0.23"
optional = true

[dependencies.tree-sitter-kotlin-ng]
version = "1.1"
optional = true

[dependencies.tree-sitter-nix]
version = "0.3"
optional = true

[dependencies.tree-sitter-ocaml]
version = "0.24"
optional = true

[dependencies.tree-sitter-perl-next]
version = "0.1"
optional = true

[dependencies.tree-sitter-php]
version = "0.23"
optional = true

[dependencies.tree-sitter-python]
version = "0.23"
optional = true

[dependencies.tree-sitter-ruby]
version = "0.23"
optional = true

[dependencies.tree-sitter-rust]
version = "0.23"
optional = true

[dependencies.tree-sitter-scala]
version = "0.26"
optional = true

[dependencies.tree-sitter-swift]
version = "0.7"
optional = true

[dependencies.tree-sitter-typescript]
version = "0.23"
optional = true

[dependencies.tree-sitter-xml]
version = "0.7"
optional = true

[dependencies.tree-sitter-zig]
version = "1.1.2"
optional = true

[dependencies.xxhash-rust]
version = "0.8"
features = ["xxh3"]

[dev-dependencies.tempfile]
version = "3.24.0"