blob: abe71d8b70e510606350991e5b3c2dd9c64e44af [file] [edit]
# Keep intentional uniform field visibility audited instead of excluding whole files.
preserve-uniform-field-visibility = true
[[production]]
package = "ruff"
bin = "ruff"
reason = "shipped Ruff binary"
[[production]]
package = "ty"
bin = "ty"
reason = "shipped ty type checker binary"
[[production]]
package = "ruff_python_formatter"
bin = "ruff_python_formatter"
reason = "workspace formatter development binary"
[[production]]
package = "ruff_dev"
bin = "ruff_dev"
reason = "workspace development binary"
[[production]]
package = "ty_completion_bench"
bin = "ty_completion_bench"
reason = "workspace completion benchmark binary"
[[production]]
package = "ty_completion_eval"
bin = "ty_completion_eval"
reason = "workspace completion evaluation binary"
# Keep this list in sync with workspace packages that define doctests.
[[doctest]]
package = "ruff_annotate_snippets"
[[doctest]]
package = "ruff_cache"
[[doctest]]
package = "ruff_db"
[[doctest]]
package = "ruff_formatter"
[[doctest]]
package = "ruff_linter"
[[doctest]]
package = "ruff_notebook"
[[doctest]]
package = "ruff_options_metadata"
[[doctest]]
package = "ruff_python_ast"
[[doctest]]
package = "ruff_python_parser"
[[doctest]]
package = "ruff_python_stdlib"
[[doctest]]
package = "ruff_python_trivia"
[[doctest]]
package = "ruff_source_file"
[[doctest]]
package = "ruff_text_size"
[[doctest]]
package = "ruff_workspace"
[[doctest]]
package = "ty_module_resolver"
[[doctest]]
package = "ty_python_semantic"
# Keep APIs used by targets outside Hawk's workspace analysis.
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_codegen"
item = "generator::Generator::<'a>::unparse_suite"
kind = "inherent_method"
level = "expect"
reason = "the standalone fuzz crate uses this method"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_trivia"
item = "cursor::EOF_CHAR"
kind = "constant"
level = "expect"
reason = "public cursor documentation links to this end-of-file sentinel"
# Keep APIs referenced by public documentation or paired with sibling APIs.
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "format_element::BestFittingVariants::most_expanded"
kind = "inherent_method"
level = "expect"
reason = "public best-fitting macro documentation links to this variant accessor"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "printer::printer_options::LineEnding::as_str"
kind = "inherent_method"
level = "expect"
reason = "public line-ending settings documentation links to this representation accessor"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "settings::TargetVersion::linter_version"
kind = "inherent_method"
level = "expect"
reason = "preserves the public parser and linter target-version accessor pair"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_parser"
item = "Parsed::<T>::has_no_syntax_errors"
kind = "inherent_method"
level = "expect"
reason = "preserves the public syntax-validity predicate API"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_workspace"
item = "settings::FormatterSettings::resolve_target_version"
kind = "inherent_method"
level = "expect"
reason = "public formatter settings fields direct callers to this resolver"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_python_semantic"
item = "semantic_model::SemanticModel::<'db>::scope"
kind = "inherent_method"
level = "expect"
reason = "preserves the documented semantic-model scope navigation API"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_python_semantic"
item = "types::set_theoretic::UnionType::<'db>::from_two_elements"
kind = "inherent_method"
level = "expect"
reason = "public union construction documentation recommends this optimized constructor"
# Keep the public code-component accessor API symmetric.
[[override]]
lint = "hawk::dead_public"
crate = "ruff_linter"
item = "codes::NoqaCode::prefix"
kind = "inherent_method"
level = "expect"
reason = "preserves the intentional symmetric prefix and suffix accessor API"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "codes::NoqaCode::suffix"
kind = "inherent_method"
level = "expect"
reason = "preserves the intentional symmetric prefix and suffix accessor API"
# Keep the public edit-operation predicate API symmetric.
[[override]]
lint = "hawk::dead_public"
crate = "ruff_diagnostics"
item = "edit::Edit::is_deletion"
kind = "inherent_method"
level = "expect"
reason = "preserves the intentional symmetric edit-operation predicate API"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_diagnostics"
item = "edit::Edit::is_insertion"
kind = "inherent_method"
level = "expect"
reason = "preserves the intentional symmetric edit-operation predicate API"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_diagnostics"
item = "edit::Edit::is_replacement"
kind = "inherent_method"
level = "expect"
reason = "preserves the intentional symmetric edit-operation predicate API"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "IndentStyle::is_space"
kind = "inherent_method"
level = "expect"
reason = "preserves the intentional symmetric indent-style predicate API"
# Keep the public printer-options builder API uniform.
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "printer::printer_options::PrinterOptions::with_line_width"
kind = "inherent_method"
level = "expect"
reason = "preserves the intentional uniform printer-options builder API"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "printer::printer_options::PrinterOptions::with_indent"
kind = "inherent_method"
level = "expect"
reason = "preserves the intentional uniform printer-options builder API"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "printer::printer_options::PrinterOptions::with_tab_width"
kind = "inherent_method"
level = "expect"
reason = "preserves the intentional uniform printer-options builder API"
# Keep public APIs retained during cleanup review.
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "buffer::VecBuffer::<'a, Context>::take_vec"
kind = "inherent_method"
level = "expect"
reason = "formatter buffers support both consuming and reusable element extraction"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "format_element::LineMode::is_hard"
kind = "inherent_method"
level = "expect"
reason = "public line modes retain their classification predicate"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "format_element::FormatElement::is_tag"
kind = "inherent_method"
level = "expect"
reason = "public format elements retain their tag inspection API"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "format_element::FormatElement::is_start_tag"
kind = "inherent_method"
level = "expect"
reason = "public format elements retain their tag inspection API"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "format_element::tag::Condition::if_fits_on_line"
kind = "inherent_method"
level = "expect"
reason = "conditional formatting constructors intentionally cover fits and breaks variants"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "format_element::tag::VerbatimKind::is_bogus"
kind = "inherent_method"
level = "expect"
reason = "public verbatim kinds retain their classification predicate"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "SimpleFormatContext::with_source_code"
kind = "inherent_method"
level = "expect"
reason = "the public simple formatting context supports source-backed downstream tests and examples"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "Printed::new_empty"
kind = "inherent_method"
level = "expect"
reason = "public formatter results retain their empty constructor"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "Printed::range"
kind = "inherent_method"
level = "expect"
reason = "public formatter results expose their covered source range"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "Printed::into_sourcemap"
kind = "inherent_method"
level = "expect"
reason = "formatter results expose borrowed, owned, and take-based source map access"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "Printed::take_sourcemap"
kind = "inherent_method"
level = "expect"
reason = "formatter results expose borrowed, owned, and take-based source map access"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "Printed::verbatim"
kind = "inherent_method"
level = "expect"
reason = "public formatter results expose verbatim text and range metadata"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "Printed::verbatim_ranges"
kind = "inherent_method"
level = "expect"
reason = "formatter results expose borrowed and take-based verbatim range access"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "Printed::take_verbatim_ranges"
kind = "inherent_method"
level = "expect"
reason = "formatter results expose borrowed and take-based verbatim range access"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "FormatOwnedWithRule::<T, R, C>::with_item"
kind = "inherent_method"
level = "expect"
reason = "the public owned-format adapter retains its builder API"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "FormatOwnedWithRule::<T, R, C>::with_options"
kind = "inherent_method"
level = "expect"
reason = "the public owned-format adapter retains its builder API"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "printer::printer_options::PrintWidth::new"
kind = "inherent_method"
level = "expect"
reason = "the public print-width wrapper retains its explicit constructor"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "printer::printer_options::SourceMapGeneration::is_disabled"
kind = "inherent_method"
level = "expect"
reason = "source map generation exposes symmetric enabled and disabled predicates"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_ast"
item = "helpers::map_starred"
kind = "function"
level = "expect"
reason = "AST helpers consistently unwrap callable, subscripted, and starred expressions"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_parser"
item = "error::ParseError::error"
kind = "inherent_method"
level = "expect"
reason = "downstream parser clients can consume a parse error into its error kind"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_parser"
item = "Parsed::<T>::as_result"
kind = "inherent_method"
level = "expect"
reason = "downstream parser clients retain borrowed result conversion"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_parser"
item = "Parsed::<ruff_python_ast::ModExpression>::into_expr"
kind = "inherent_method"
level = "expect"
reason = "parsed expressions retain borrowed and consuming accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "binding::Binding::<'a>::is_deleted"
kind = "inherent_method"
level = "expect"
reason = "the public binding API retains its deleted-state query"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "cfg::graph::ControlFlowGraph::<'stmt>::predecessors"
kind = "inherent_method"
level = "expect"
reason = "the public control-flow graph supports downstream predecessor inspection"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "model::SemanticModel::<'a>::node"
kind = "inherent_method"
level = "expect"
reason = "the public semantic model retains node navigation for downstream analyses"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "model::SemanticModel::<'a>::in_runtime_required_annotation"
kind = "inherent_method"
level = "expect"
reason = "semantic model predicates intentionally expose each annotation context"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "model::SemanticModel::<'a>::in_simple_string_type_definition"
kind = "inherent_method"
level = "expect"
reason = "semantic model predicates intentionally expose each string type context"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "model::SemanticModel::<'a>::in_dunder_all_definition"
kind = "inherent_method"
level = "expect"
reason = "semantic model predicates retain the documented dunder-all context query"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "model::TypingOnlyBindingsStatus::is_allowed"
kind = "inherent_method"
level = "expect"
reason = "typing-only binding status exposes symmetric allowed and disallowed predicates"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "reference::ResolvedReference::in_annotated_type_alias_value"
kind = "inherent_method"
level = "expect"
reason = "resolved references expose their complete semantic context interface"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "semantic_model::SemanticModel::<'db>::file_path"
kind = "inherent_method"
level = "expect"
reason = "the public semantic model exposes its file identity and source locations"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "semantic_model::SemanticModel::<'db>::line_index"
kind = "inherent_method"
level = "expect"
reason = "the public semantic model exposes its file identity and source locations"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "formatter::Formatter::<'_, Context>::state_snapshot"
kind = "inherent_method"
level = "expect"
reason = "formatter clients use snapshots to restore state after speculative formatting"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "formatter::Formatter::<'_, Context>::restore_state_snapshot"
kind = "inherent_method"
level = "expect"
reason = "formatter clients use snapshots to restore state after speculative formatting"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_formatter"
item = "formatter::FormatterSnapshot"
kind = "struct"
level = "expect"
reason = "formatter clients use snapshots to restore state after speculative formatting"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "binding::Binding::<'a>::is_deferred_type_alias"
kind = "inherent_method"
level = "expect"
reason = "binding predicates intentionally expose the distinct type-alias classifications"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_semantic"
item = "binding::Binding::<'a>::is_type_alias"
kind = "inherent_method"
level = "expect"
reason = "binding predicates intentionally expose the distinct type-alias classifications"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_source_file"
item = "line_index::OneIndexed::checked_add"
kind = "inherent_method"
level = "expect"
reason = "one-indexed arithmetic intentionally provides checked and saturating operations"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_source_file"
item = "line_index::OneIndexed::checked_sub"
kind = "inherent_method"
level = "expect"
reason = "one-indexed arithmetic intentionally provides checked and saturating operations"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_text_size"
item = "size::TextSize::saturating_add"
kind = "inherent_method"
level = "expect"
reason = "TextSize intentionally provides both checked and saturating arithmetic"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_text_size"
item = "size::TextSize::saturating_sub"
kind = "inherent_method"
level = "expect"
reason = "TextSize intentionally provides both checked and saturating arithmetic"
[[override]]
lint = "hawk::dead_public"
crate = "ty_project"
item = "db::changes::ChangeResult::custom_stdlib_changed"
kind = "inherent_method"
level = "expect"
reason = "change results expose both project and custom-stdlib invalidation state"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_ast"
item = "expression::StringLikePart::<'a>::as_string_literal"
kind = "inherent_method"
level = "expect"
reason = "string-like AST parts intentionally expose consistent typed accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_ast"
item = "name::Name::join"
kind = "inherent_method"
level = "expect"
reason = "the AST name wrapper intentionally mirrors common string operations"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_ast"
item = "token::TokenKind::is_non_soft_keyword"
kind = "inherent_method"
level = "expect"
reason = "token kind predicates intentionally cover every keyword classification"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_python_ast"
item = "token::tokens::TokenIterWithContext::<'a>::nesting"
kind = "inherent_method"
level = "expect"
reason = "token iterator context intentionally exposes all tracked parser state"
[[override]]
lint = "hawk::dead_public"
crate = "ty_ide"
item = "symbols::FlatSymbols::get"
kind = "inherent_method"
level = "expect"
reason = "flat and hierarchical symbol collections intentionally share lookup APIs"
[[override]]
lint = "hawk::dead_public"
crate = "ty_ide"
item = "symbols::FlatSymbols::len"
kind = "inherent_method"
level = "expect"
reason = "flat and hierarchical symbol collections intentionally share collection APIs"
[[override]]
lint = "hawk::dead_public"
crate = "ty_ide"
item = "symbols::HierarchicalSymbols::get"
kind = "inherent_method"
level = "expect"
reason = "flat and hierarchical symbol collections intentionally share lookup APIs"
[[override]]
lint = "hawk::dead_public"
crate = "ty_ide"
item = "symbols::HierarchicalSymbols::len"
kind = "inherent_method"
level = "expect"
reason = "flat and hierarchical symbol collections intentionally share collection APIs"
[[override]]
lint = "hawk::dead_public"
crate = "ty_module_resolver"
item = "module_glob::ModuleNameMatch::is_none"
kind = "inherent_method"
level = "expect"
reason = "module glob match predicates intentionally cover every result variant"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "lint::Level::is_error"
kind = "inherent_method"
level = "expect"
reason = "lint level predicates intentionally cover every severity"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "lint::Level::is_warn"
kind = "inherent_method"
level = "expect"
reason = "lint level predicates intentionally cover every severity"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "lint::Level::is_ignore"
kind = "inherent_method"
level = "expect"
reason = "lint level predicates intentionally cover every severity"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "lint::LintStatus::deprecated"
kind = "inherent_method"
level = "expect"
reason = "lint status constructors intentionally cover every lifecycle state"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "lint::LintRegistryBuilder::register_alias"
kind = "inherent_method"
level = "expect"
reason = "the lint registry intentionally supports aliases before the first alias is added"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "lint::LintRegistry::aliases"
kind = "inherent_method"
level = "expect"
reason = "lint registry queries intentionally cover aliases and removed rules"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "lint::LintRegistry::removed"
kind = "inherent_method"
level = "expect"
reason = "lint registry queries intentionally cover aliases and removed rules"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "lint::RuleSelection::enabled"
kind = "inherent_method"
level = "expect"
reason = "rule selections intentionally support iteration with and without severity"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_semantic"
item = "lint::RuleSelection::iter"
kind = "inherent_method"
level = "expect"
reason = "rule selections intentionally support iteration with and without severity"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "frozen::FrozenMap::<K, V>::iter_mut"
kind = "inherent_method"
level = "expect"
reason = "the frozen map intentionally mirrors standard map iteration APIs"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "frozen::FrozenMap::<K, V>::values"
kind = "inherent_method"
level = "expect"
reason = "the frozen map intentionally mirrors standard map iteration APIs"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "rank::RankBitBox::is_empty"
kind = "inherent_method"
level = "expect"
reason = "the rank bit collection intentionally provides matching len and is_empty APIs"
[[override]]
lint = "hawk::dead_public"
crate = "ruff_graph"
item = "ModuleImports::is_empty"
kind = "inherent_method"
level = "expect"
reason = "module import collections intentionally provide matching len and is_empty APIs"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "line_width::LineLengthFromIntError::0"
kind = "field"
level = "expect"
reason = "the conversion error exposes the rejected line length to callers"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "rules::pep8_naming::settings::IgnoreNames::matches"
kind = "inherent_method"
level = "expect"
reason = "public settings support downstream configuration and validation"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "rules::pep8_naming::settings::IgnoreNames::from_patterns"
kind = "inherent_method"
level = "expect"
reason = "public settings support downstream configuration and validation"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "settings::LinterSettings::with_target_version"
kind = "inherent_method"
level = "expect"
reason = "public test helpers use this builder from downstream crates"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "settings::LinterSettings::with_preview_mode"
kind = "inherent_method"
level = "expect"
reason = "public test helpers use this builder from downstream crates"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "settings::LinterSettings::with_external_rules"
kind = "inherent_method"
level = "expect"
reason = "public test helpers use this builder from downstream crates"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_workspace"
item = "configuration::FormatConfiguration::from_options"
kind = "inherent_method"
level = "expect"
reason = "workspace configuration types retain public constructors for downstream integrations"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_workspace"
item = "configuration::AnalyzeConfiguration::from_options"
kind = "inherent_method"
level = "expect"
reason = "workspace configuration types retain public constructors for downstream integrations"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_project"
item = "db::testing::TestDb::take_salsa_events"
kind = "inherent_method"
level = "expect"
reason = "the testing feature exposes database event assertions to downstream tests"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "completion::Completion::builtin"
kind = "field"
level = "expect"
reason = "completion metadata remains visible to downstream test and protocol adapters"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "completion::Completion::is_type_check_only"
kind = "field"
level = "expect"
reason = "completion metadata remains visible to downstream test and protocol adapters"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "completion::Completion::is_context_specific"
kind = "field"
level = "expect"
reason = "completion metadata remains visible to downstream test and protocol adapters"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "symbols::HierarchicalSymbols::is_empty"
kind = "inherent_method"
level = "expect"
reason = "symbol collections intentionally provide matching len and is_empty APIs"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "symbols::SymbolKind::to_string"
kind = "inherent_method"
level = "expect"
reason = "symbol kinds expose their protocol-facing names to downstream adapters"
[[override]]
lint = "hawk::dead_public"
crate = "ty_static"
item = "env_vars::EnvVars::XDG_CONFIG_HOME"
kind = "inherent_associated_constant"
level = "expect"
reason = "consumed by the generated environment-variable reference"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_db"
item = "system::command::Command::get_current_dir"
kind = "inherent_method"
level = "expect"
reason = "command descriptions expose a complete argument builder and inspection API"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "expression::Expression::<'db>::program"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "predicate::PatternPredicate::<'db>::file"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "predicate::PatternPredicate::<'db>::python_file"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "predicate::PatternPredicate::<'db>::program"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "statement::StatementInner::<'db>::file"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "statement::StatementInner::<'db>::python_file"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "statement::StatementInner::<'db>::program"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "unpack::Unpack::<'db>::file"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "unpack::Unpack::<'db>::python_file"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
[[override]]
lint = "hawk::dead_public"
crate = "ty_python_core"
item = "unpack::Unpack::<'db>::program"
kind = "inherent_method"
level = "expect"
reason = "semantic ingredients expose consistent file, scope, and program accessors"
# Keep public APIs whose narrower visibility would break a uniform interface or
# activate compiler lints that Rust intentionally suppresses for public APIs.
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "format_element::PrintMode::is_flat"
kind = "inherent_method"
level = "expect"
reason = "print mode predicates intentionally expose a consistent public interface"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "format_element::PrintMode::is_expanded"
kind = "inherent_method"
level = "expect"
reason = "print mode predicates intentionally expose a consistent public interface"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "format_element::tag::GroupMode::is_flat"
kind = "inherent_method"
level = "expect"
reason = "group mode predicates intentionally expose a consistent public interface"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "formatter::Formatter::<'buf, Context>::intern_vec"
kind = "inherent_method"
level = "expect"
reason = "the public formatter API supports interning prebuilt format elements"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_formatter"
item = "IndentStyle::as_str"
kind = "inherent_method"
level = "expect"
reason = "public indentation settings expose their stable string representation"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "registry::<impl codes::Rule>::url"
kind = "inherent_method"
level = "expect"
reason = "public rule metadata includes its documentation URL"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_linter"
item = "settings::types::PythonVersion::as_tuple"
kind = "inherent_method"
level = "expect"
reason = "public Python version settings expose their numeric representation"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_codegen"
item = "generator::Generator::<'a>::with_mode"
kind = "inherent_method"
level = "expect"
reason = "the public generator builder intentionally exposes its output mode"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_codegen"
item = "stylist::Indentation::new"
kind = "inherent_method"
level = "expect"
reason = "the public indentation wrapper retains its explicit constructor"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_formatter"
item = "AsFormat"
kind = "reexport"
level = "expect"
reason = "generated formatter implementations expose this public extension trait"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_formatter"
item = "FormattedIter"
kind = "reexport"
level = "expect"
reason = "generated formatter implementations expose this public iterator adapter"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_formatter"
item = "FormattedIterExt"
kind = "reexport"
level = "expect"
reason = "generated formatter implementations expose this public extension trait"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_formatter"
item = "IntoFormat"
kind = "reexport"
level = "expect"
reason = "generated formatter implementations expose this public extension trait"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_formatter"
item = "options::QuoteStyle::as_str"
kind = "inherent_method"
level = "expect"
reason = "public quote-style settings expose their stable string representation"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_parser"
item = "semantic_errors::YieldOutsideFunctionKind::is_await"
kind = "inherent_method"
level = "expect"
reason = "semantic error variants intentionally expose their classification predicate"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_semantic"
item = "cfg::visualize::draw_cfg"
kind = "function"
level = "expect"
reason = "the control-flow graph visualizer remains available to downstream debugging tools"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_semantic"
item = "cfg::visualize::MermaidNode::with_content"
kind = "inherent_method"
level = "expect"
reason = "the public control-flow graph visualization API retains its node constructor"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_python_semantic"
item = "cfg::visualize::DirectedGraph"
kind = "trait"
level = "expect"
reason = "the control-flow graph visualizer remains available to downstream debugging tools"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_source_file"
item = "newlines::LineEnding::len"
kind = "inherent_method"
level = "expect"
reason = "line-ending values expose consistent byte and text length APIs"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ruff_source_file"
item = "newlines::LineEnding::text_len"
kind = "inherent_method"
level = "expect"
reason = "line-ending values expose consistent byte and text length APIs"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "all_symbols::AllSymbolInfo::<'db>::name_in_file"
kind = "inherent_method"
level = "expect"
reason = "auto-import symbol results intentionally expose their complete metadata interface"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "all_symbols::AllSymbolInfo::<'db>::qualified"
kind = "inherent_method"
level = "expect"
reason = "auto-import symbol results intentionally expose their complete metadata interface"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "all_symbols::AllSymbolInfo::<'db>::kind"
kind = "inherent_method"
level = "expect"
reason = "auto-import symbol results intentionally expose their complete metadata interface"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "all_symbols::AllSymbolInfo::<'db>::deprecated"
kind = "inherent_method"
level = "expect"
reason = "auto-import symbol results intentionally expose their complete metadata interface"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "all_symbols::AllSymbolInfo::<'db>::module"
kind = "inherent_method"
level = "expect"
reason = "auto-import symbol results intentionally expose their complete metadata interface"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "all_symbols::AllSymbolInfo::<'db>::file"
kind = "inherent_method"
level = "expect"
reason = "auto-import symbol results intentionally expose their complete metadata interface"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "AllSymbolInfo"
kind = "reexport"
level = "expect"
reason = "the public auto-import API re-exports its result type"
[[override]]
lint = "hawk::unnecessary_public"
crate = "ty_ide"
item = "all_symbols"
kind = "reexport"
level = "expect"
reason = "the public auto-import API re-exports its query function"
# Keep the generated AST and its hand-written companion APIs consistent across
# node types, visitors, and string literal kinds.
[[exclude]]
crate = "ruff_python_ast"
file = "crates/ruff_python_ast/src/generated.rs"
reason = "generated from crates/ruff_python_ast/ast.toml"
[[exclude]]
crate = "ruff_python_ast"
file = "crates/ruff_python_ast/src/nodes.rs"
reason = "AST node APIs intentionally provide a consistent interface across node types"
[[exclude]]
crate = "ruff_python_ast"
file = "crates/ruff_python_ast/src/comparable.rs"
reason = "the comparable AST intentionally mirrors the full AST hierarchy"
[[exclude]]
crate = "ruff_python_ast"
file = "crates/ruff_python_ast/src/statement_visitor.rs"
reason = "AST walk functions intentionally provide a consistent interface across node types"
[[exclude]]
crate = "ruff_python_ast"
file = "crates/ruff_python_ast/src/visitor.rs"
reason = "AST walk functions intentionally provide a consistent interface across node types"
[[exclude]]
crate = "ruff_python_ast"
file = "crates/ruff_python_ast/src/visitor/source_order.rs"
reason = "AST walk functions intentionally provide a consistent interface across node types"
[[exclude]]
crate = "ruff_python_ast"
file = "crates/ruff_python_ast/src/visitor/transformer.rs"
reason = "AST walk functions intentionally provide a consistent interface across node types"
[[exclude]]
crate = "ruff_python_ast"
file = "crates/ruff_python_ast/src/str_prefix.rs"
reason = "string prefix APIs intentionally provide a consistent interface across literal kinds"
[[exclude]]
crate = "ruff_python_literal"
file = "crates/ruff_python_literal/src/escape.rs"
reason = "string and bytes escape APIs intentionally provide a consistent interface"
[[exclude]]
crate = "ruff_python_literal"
file = "crates/ruff_python_literal/src/cformat.rs"
reason = "C-style string and bytes format APIs intentionally provide a consistent interface"
# Preserve complete wrapper and DSL interfaces whose methods intentionally
# mirror their underlying abstractions.
[[exclude]]
crate = "ruff_db"
file = "crates/ruff_db/src/files/path.rs"
reason = "file path variant accessors intentionally cover every backing path type"
[[exclude]]
crate = "ruff_db"
file = "crates/ruff_db/src/system/path.rs"
reason = "system path wrappers intentionally mirror the supported UTF-8 path API"
[[exclude]]
crate = "ruff_db"
file = "crates/ruff_db/src/vendored/path.rs"
reason = "vendored path wrappers intentionally mirror the supported UTF-8 path API"
[[exclude]]
crate = "ruff_db"
file = "crates/ruff_db/src/system.rs"
reason = "system abstractions intentionally expose a consistent interface across backends"
[[exclude]]
crate = "ruff_db"
file = "crates/ruff_db/src/system/memory_fs.rs"
reason = "the in-memory system intentionally mirrors the public filesystem interface"
[[exclude]]
crate = "ruff_db"
file = "crates/ruff_db/src/system/walk_directory.rs"
reason = "directory walking intentionally exposes a complete backend-neutral interface"
[[exclude]]
crate = "ruff_db"
file = "crates/ruff_db/src/testing.rs"
reason = "public test helpers are consumed by downstream crates with the testing feature"
[[exclude]]
crate = "ruff_db"
file = "crates/ruff_db/src/vendored.rs"
reason = "the vendored filesystem intentionally mirrors the public filesystem interface"
[[exclude]]
crate = "ruff_index"
file = "crates/ruff_index/src/slice.rs"
reason = "indexed slices intentionally mirror the supported slice API"
[[exclude]]
crate = "ruff_index"
file = "crates/ruff_index/src/vec.rs"
reason = "indexed vectors intentionally mirror the supported vector API"
[[exclude]]
crate = "ruff_linter"
file = "crates/ruff_linter/src/source_kind.rs"
reason = "source kind accessors intentionally cover every source representation"
[[exclude]]
crate = "ruff_linter"
file = "crates/ruff_linter/src/test.rs"
reason = "public test helpers are consumed by downstream crates with the testing feature"
# Preserve interfaces that are consumed outside the native Rust workspace.
[[exclude]]
crate = "ruff_wasm"
file = "crates/ruff_wasm/src/lib.rs"
reason = "public exports are consumed by JavaScript"
[[exclude]]
crate = "ty_wasm"
file = "crates/ty_wasm/src/lib.rs"
reason = "public exports are consumed by JavaScript"
# Keep generated and upstream-compatible APIs in sync with their sources.
[[exclude]]
crate = "ruff_notebook"
file = "crates/ruff_notebook/src/schema.rs"
reason = "generated from the Jupyter Notebook schema"
[[exclude]]
crate = "ruff_formatter"
file = "crates/ruff_formatter/src/prelude.rs"
reason = "the public formatter prelude intentionally provides a complete downstream import surface"
[[exclude]]
crate = "annotate_snippets"
file = "crates/ruff_annotate_snippets/src/lib.rs"
reason = "kept compatible with the upstream annotate-snippets crate"
[[exclude]]
crate = "annotate_snippets"
file = "crates/ruff_annotate_snippets/src/level.rs"
reason = "kept compatible with the upstream annotate-snippets crate"
[[exclude]]
crate = "annotate_snippets"
file = "crates/ruff_annotate_snippets/src/renderer/mod.rs"
reason = "kept compatible with the upstream annotate-snippets crate"
[[exclude]]
crate = "annotate_snippets"
module = "renderer::render"
reason = "kept compatible with the upstream annotate-snippets crate"
[[exclude]]
crate = "annotate_snippets"
module = "renderer::source_map"
reason = "kept compatible with the upstream annotate-snippets crate"
[[exclude]]
crate = "annotate_snippets"
module = "renderer::styled_buffer"
reason = "kept compatible with the upstream annotate-snippets crate"
[[exclude]]
crate = "annotate_snippets"
file = "crates/ruff_annotate_snippets/src/snippet.rs"
reason = "kept compatible with the upstream annotate-snippets crate"