git-atomic 0.1.1

Split multi-component commits into isolated per-component branches
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 = "2024"
name = "git-atomic"
version = "0.1.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Split multi-component commits into isolated per-component branches"
homepage = "https://github.com/aRustyDev/git-atomic"
readme = "README.md"
keywords = [
    "git",
    "atomic",
    "commits",
    "branches",
    "monorepo",
]
categories = [
    "command-line-utilities",
    "development-tools",
]
license = "MIT"
repository = "https://github.com/aRustyDev/git-atomic"

[package.metadata.git-cliff.bump]
features_always_bump_minor = true
breaking_always_bump_major = true
initial_tag = "v0.1.0"

[package.metadata.git-cliff.changelog]
header = """
# Changelog

All notable changes to this project will be documented in this file.

"""
body = """
{% if version %}## [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }}
{% else %}## [Unreleased]
{% endif %}{% for group, commits in commits | group_by(attribute="group") %}
    ### {{ group | striptags | trim | upper_first }}
    {% for commit in commits %}
        - {% if commit.scope %}*({{ commit.scope }})* {% endif %}{% if commit.breaking %}[**breaking**] {% endif %}{{ commit.message | upper_first }}{% if commit.github.pr_number %} ([#{{ commit.github.pr_number }}](https://github.com/aRustyDev/git-atomic/pull/{{ commit.github.pr_number }})){% endif %}{% endfor %}
{% endfor %}
"""
trim = true
footer = "<!-- generated by git-cliff -->"

[package.metadata.git-cliff.git]
conventional_commits = true
filter_unconventional = true
require_conventional = false
split_commits = false
protect_breaking_commits = false
filter_commits = false
fail_on_unmatched_commit = false
tag_pattern = "v[0-9].*"
topo_order = false
topo_order_commits = true
sort_commits = "oldest"
recurse_submodules = false

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^Merge"
skip = true

[[package.metadata.git-cliff.git.commit_parsers]]
body = ".*Signed-off-by: dependabot"
skip = true

[[package.metadata.git-cliff.git.commit_parsers]]
message = '^chore\(release\)'
skip = true

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^feat"
group = "<!-- 0 -->✨ Features"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^fix"
group = "<!-- 1 -->🐛 Bug Fixes"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^docs"
group = "<!-- 2 -->📝 Documentation"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^perf"
group = "<!-- 3 -->⚡ Performance"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^refactor"
group = "<!-- 4 -->♻️ Refactor"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^style"
group = "<!-- 5 -->🎨 Styling"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^test"
group = "<!-- 6 -->✅ Testing"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^ci"
group = "<!-- 7 -->👷 CI/CD"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^chore"
group = "<!-- 8 -->🔧 Miscellaneous"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^build"
group = "<!-- 9 -->📦 Build"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^revert"
group = "<!-- 10 -->⏪ Reverts"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^✨"
group = "<!-- 0 -->✨ Features"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🐛"
group = "<!-- 1 -->🐛 Bug Fixes"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🚑"
group = "<!-- 1 -->🐛 Bug Fixes"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🩹"
group = "<!-- 1 -->🐛 Bug Fixes"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^📝"
group = "<!-- 2 -->📝 Documentation"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^⚡"
group = "<!-- 3 -->⚡ Performance"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^♻️"
group = "<!-- 4 -->♻️ Refactor"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🎨"
group = "<!-- 5 -->🎨 Styling"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^💄"
group = "<!-- 5 -->🎨 Styling"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^✅"
group = "<!-- 6 -->✅ Testing"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🧪"
group = "<!-- 6 -->✅ Testing"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^👷"
group = "<!-- 7 -->👷 CI/CD"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^💚"
group = "<!-- 7 -->👷 CI/CD"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🔧"
group = "<!-- 8 -->🔧 Miscellaneous"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🔨"
group = "<!-- 8 -->🔧 Miscellaneous"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^📦"
group = "<!-- 9 -->📦 Build"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^⏪"
group = "<!-- 10 -->⏪ Reverts"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🔒"
group = "<!-- 11 -->🔒 Security"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^⬆️"
group = "<!-- 12 -->⬆️ Dependencies"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^⬇️"
group = "<!-- 12 -->⬆️ Dependencies"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^➕"
group = "<!-- 12 -->⬆️ Dependencies"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^➖"
group = "<!-- 12 -->⬆️ Dependencies"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^📌"
group = "<!-- 12 -->⬆️ Dependencies"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🔥"
group = "<!-- 13 -->🔥 Removed"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^⚰️"
group = "<!-- 13 -->🔥 Removed"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^💥"
group = "<!-- 14 -->💥 Breaking Changes"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🏗️"
group = "<!-- 14 -->💥 Breaking Changes"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🚀"
group = "<!-- 15 -->🚀 Deployment"

[[package.metadata.git-cliff.git.commit_parsers]]
message = "^🔖"
group = "<!-- 15 -->🚀 Deployment"

[[package.metadata.git-cliff.git.link_parsers]]
pattern = '#(\d+)'
href = "https://github.com/aRustyDev/git-atomic/issues/$1"

[[package.metadata.git-cliff.git.link_parsers]]
pattern = 'RFC(\d+)'
text = "ietf-rfc$1"
href = "https://datatracker.ietf.org/doc/html/rfc$1"

[package.metadata.git-cliff.remote.github]
owner = "aRustyDev"
repo = "git-atomic"

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

[[bin]]
name = "git-atomic"
path = "src/main.rs"

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

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

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

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

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

[dependencies.clap]
version = "4.5.55"
features = ["derive"]

[dependencies.figment]
version = "0.10.19"
features = [
    "toml",
    "env",
]

[dependencies.gix]
version = "0.78.0"
features = [
    "tree-editor",
    "revision",
]

[dependencies.globset]
version = "0.4"

[dependencies.owo-colors]
version = "4"

[dependencies.schemars]
version = "1.2.0"
features = ["derive"]

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

[dependencies.serde_json]
version = "1"

[dependencies.thiserror]
version = "2.0.18"

[dependencies.toml]
version = "0.8"

[dependencies.tracing]
version = "0.1"

[dev-dependencies.assert_cmd]
version = "2"

[dev-dependencies.figment]
version = "0.10.19"
features = ["test"]

[dev-dependencies.glob]
version = "0.3"

[dev-dependencies.insta]
version = "1"
features = [
    "json",
    "filters",
]

[dev-dependencies.jsonschema]
version = "0.29"

[dev-dependencies.predicates]
version = "3"

[dev-dependencies.proptest]
version = "1"

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