# These are the default rules shipped with this version of the determinator library. These rules are embedded into the
# determinator library through `include_str!`.
#
# These rules are applied *after* custom rules, so a custom rule that matches any of the same files will override
# them.

# Standard ignore and other metadata files.
[[path-rule]]
globs = ["**/.gitignore", "**/.gitattributes", ".dockerignore", ".hgignore", ".svnignore", "**/.ignore"]
mark-changed = []

# Files that can affect the global build. Cargo.toml may contain updates to build flags or profile overrides,
# so rebuild everything if it changes. (We could do a more sophisticated analysis in the future.)
[[path-rule]]
globs = ["rust-toolchain", "Cargo.toml", "**/.cargo/config", "**/.cargo/config.toml"]
mark-changed = "all"

# Tool files that don't influence builds or tests.
[[path-rule]]
globs = ["clippy.toml", "rustfmt.toml", ".lintrules/**/*"]
mark-changed = []

# Cargo.lock is ignored, since the determinator does a deeper analysis to figure out which packages changed.
[[path-rule]]
globs = ["Cargo.lock"]
mark-changed = []

# README, LICENSE and other metadata files are ignored throughout the codebase.
[[path-rule]]
globs = ["**/README*", "**/LICENSE*", "**/CONTRIBUTING*", "**/CODE_OF_CONDUCT*", "**/SECURITY*"]
mark-changed = []
