pub struct ResolvedConfig {Show 44 fields
pub root: PathBuf,
pub entry_patterns: Vec<String>,
pub ignore_patterns: GlobSet,
pub ignore_findings: FindingIgnoreMatcher,
pub output: OutputFormat,
pub cache_dir: PathBuf,
pub threads: usize,
pub no_cache: bool,
pub cache_max_size_mb: Option<u32>,
pub cache_config_hash: u64,
pub ignore_dependencies: Vec<String>,
pub ignore_unresolved_imports: Vec<GlobMatcher>,
pub ignore_export_rules: Vec<IgnoreExportRule>,
pub compiled_ignore_exports: Vec<CompiledIgnoreExportRule>,
pub compiled_ignore_catalog_references: Vec<CompiledIgnoreCatalogReferenceRule>,
pub compiled_ignore_dependency_overrides: Vec<CompiledIgnoreDependencyOverrideRule>,
pub ignore_exports_used_in_file: IgnoreExportsUsedInFileConfig,
pub used_class_members: Vec<UsedClassMemberRule>,
pub ignore_decorators: Vec<String>,
pub unused_component_props_ignore: Option<Regex>,
pub duplicates: DuplicatesConfig,
pub health: HealthConfig,
pub type_aware: TypeAwareConfig,
pub rules: RulesConfig,
pub boundaries: ResolvedBoundaryConfig,
pub rule_packs: Vec<RulePackDef>,
pub rule_pack_sources: Vec<PathBuf>,
pub production: bool,
pub quiet: bool,
pub external_plugins: Vec<ExternalPluginDef>,
pub dynamically_loaded: Vec<String>,
pub overrides: Vec<ResolvedOverride>,
pub regression: Option<RegressionConfig>,
pub audit: AuditConfig,
pub codeowners: Option<String>,
pub public_packages: Vec<String>,
pub flags: FlagsConfig,
pub security: SecurityConfig,
pub fix: FixConfig,
pub resolve: ResolveConfig,
pub include_entry_exports: bool,
pub auto_imports: bool,
pub max_file_size_bytes: Option<u64>,
pub analysis_snapshot: AnalysisSnapshot,
}Expand description
Fully resolved configuration with all globs pre-compiled.
Fields§
§root: PathBufProject root every analysis path resolves against.
entry_patterns: Vec<String>Manual entry-point globs from the entry config key, matched against
discovered files on top of plugin- and manifest-derived entries.
ignore_patterns: GlobSetCompiled union of user ignorePatterns and the built-in default
ignores (node_modules, dist, minified bundles, …); matching files
are excluded from discovery entirely.
ignore_findings: FindingIgnoreMatcherPost-analysis finding-path matcher built from ignoreFindings; hides
findings without removing files from the module graph.
output: OutputFormatOutput format for this run, passed through from the CLI at resolve time.
cache_dir: PathBufCache directory: cache.dir resolved against the root, or the default
<root>/.fallow.
threads: usizeWorker-thread count, passed through from the CLI at resolve time.
no_cache: boolWhen true, skip reading and writing the persistent caches for this run.
cache_max_size_mb: Option<u32>Extraction-cache size ceiling in megabytes (None = no ceiling), from
the CLI override, FALLOW_CACHE_MAX_SIZE, or cache.maxSizeMb.
cache_config_hash: u64Hash over extraction-affecting config (the sorted external plugin names), mixed into cache keys so plugin changes invalidate cached extractions instead of serving stale results.
ignore_dependencies: Vec<String>Exact package names excluded from both unused-dependency and unlisted-dependency detection.
ignore_unresolved_imports: Vec<GlobMatcher>Compiled globs matched against raw import specifiers (not filesystem
paths) whose unresolved-import findings are suppressed.
ignore_export_rules: Vec<IgnoreExportRule>Raw ignoreExports rules as configured, kept alongside the compiled
form for surfaces that need the original glob text (config editing,
diagnostics).
compiled_ignore_exports: Vec<CompiledIgnoreExportRule>ignoreExports rules with their file globs pre-compiled for matching.
compiled_ignore_catalog_references: Vec<CompiledIgnoreCatalogReferenceRule>ignoreCatalogReferences rules with consumer globs pre-compiled.
compiled_ignore_dependency_overrides: Vec<CompiledIgnoreDependencyOverrideRule>ignoreDependencyOverrides rules ready for matching.
ignore_exports_used_in_file: IgnoreExportsUsedInFileConfigSame-file-use suppression setting for unused-export.
used_class_members: Vec<UsedClassMemberRule>Class-member names, globs, or heritage-scoped rules treated as
framework-used and exempt from unused-class-member.
ignore_decorators: Vec<String>Decorator names stripped of the automatic unused-class-member
exemption that decorated members otherwise receive.
unused_component_props_ignore: Option<Regex>Compiled regex matched against each declared component prop’s local
destructure binding name; a matching prop is exempted from
unused-component-props. None when unusedComponentProps.ignorePattern
is unset. Compiled from the validated raw pattern in Self::resolve.
duplicates: DuplicatesConfigClone-detection settings, passed through unchanged.
health: HealthConfigHealth and complexity thresholds, passed through unchanged.
type_aware: TypeAwareConfigTypeScript semantic-analysis opt-in, passed through unchanged.
rules: RulesConfigPer-rule severities with production-mode adjustments applied: when
Self::production is set, unused-dev-dependencies and
unused-optional-dependencies are forced to off.
boundaries: ResolvedBoundaryConfigResolved architecture boundaries: preset expanded (honoring the
tsconfig rootDir), auto-discovered zones added, and rules validated.
rule_packs: Vec<RulePackDef>Rule packs loaded from the rulePacks config key, in config order.
Validated at config load (load_rule_packs is also the validation
gate in the CLI and programmatic entry points); a pack that fails to
load here is skipped with a tracing::error! as defense in depth.
rule_pack_sources: Vec<PathBuf>Source paths from the rulePacks config key, index-aligned with
Self::rule_packs when every configured pack loaded successfully.
production: boolProduction mode for this analysis pass: test/spec/story/dev files are
excluded from discovery. Out of FallowConfig::resolve this is the
global production bool (super::ProductionConfig::global); the
per-analysis object form and CLI/env overrides are applied post-resolve.
quiet: boolQuiet mode from the CLI: suppress non-essential progress and warning output.
external_plugins: Vec<ExternalPluginDef>External plugin definitions: inline framework entries plus those
discovered from plugins paths, .fallow/plugins/, and root
fallow-plugin-* files (first occurrence of a name wins).
dynamically_loaded: Vec<String>Globs for files loaded dynamically at runtime; matching files are seeded as entry points so they stay reachable.
overrides: Vec<ResolvedOverride>Per-file severity overrides with globs pre-compiled, in config order.
regression: Option<RegressionConfig>Saved regression baseline for --fail-on-regression, when embedded.
audit: AuditConfigIn-repo fallow audit defaults, passed through unchanged.
codeowners: Option<String>Configured CODEOWNERS path override; None probes the standard
locations.
public_packages: Vec<String>Workspace package names (or globs over them) whose public API is treated as externally consumed, making their export surface a reachability root.
flags: FlagsConfigFeature-flag detection settings, passed through unchanged.
security: SecurityConfigSecurity catalogue scoping with requestReceivers normalized
(trimmed, lowercased, deduplicated).
fix: FixConfigfallow fix behavior settings, passed through unchanged.
resolve: ResolveConfigModule-resolver settings (extra exports conditions), passed through
unchanged.
include_entry_exports: boolWhen true, entry-point exports are subject to unused-export
detection instead of being auto-credited as used.
auto_imports: boolWhen true, drop Nuxt convention entry-pattern fallbacks that
nuxt.config does not explicitly declare; auto-import graph edges are
synthesized regardless.
max_file_size_bytes: Option<u64>Source files strictly larger than this many bytes are skipped at
discovery (never read, parsed, or analyzed), guarding against the
out-of-memory blowup a single multi-MB generated/vendored/bundled file
causes (issue #1086). None means no limit. Declaration files
(.d.ts/.d.mts/.d.cts) are exempt regardless of size because they
are reachability roots for global types. Defaults to
DEFAULT_MAX_FILE_SIZE_MB MB; the CLI overrides it post-resolve from
--max-file-size / FALLOW_MAX_FILE_SIZE (0 = unlimited).
analysis_snapshot: AnalysisSnapshotWhich revision this analysis pass describes. Always
AnalysisSnapshot::Current out of FallowConfig::resolve; the CLI
sets AnalysisSnapshot::Base post-resolve for the isolated
audit --base pass so diagnostics can name the base revision.
Implementations§
Source§impl ResolvedConfig
impl ResolvedConfig
Sourcepub fn resolve_rules_for_path(&self, path: &Path) -> RulesConfig
pub fn resolve_rules_for_path(&self, path: &Path) -> RulesConfig
Resolve the effective rules for a given file path. Starts with base rules and applies matching overrides in order.
Trait Implementations§
Source§impl Clone for ResolvedConfig
impl Clone for ResolvedConfig
Source§fn clone(&self) -> ResolvedConfig
fn clone(&self) -> ResolvedConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for ResolvedConfig
impl RefUnwindSafe for ResolvedConfig
impl Send for ResolvedConfig
impl Sync for ResolvedConfig
impl Unpin for ResolvedConfig
impl UnsafeUnpin for ResolvedConfig
impl UnwindSafe for ResolvedConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more