mirror of
https://github.com/astral-sh/ruff.git
synced 2026-10-28 10:45:37 +08:00
Summary -- This PR fixes astral-sh/ty#2484 by moving our SARIF rendering from `ruff_linter` into `ruff_db` and wiring that up as an output format for ty. The first commit introduces the metadata and makes some other preparatory changes to the SARIF emitter in Ruff. The second commit then moves the emitter to `ruff_db` and removes the remaining Ruff-specific calls. The third commit then wires that up to ty's CLI. Test Plan -- Existing tests, adapted to `ruff_db`, as well as a new ty CLI test
1404 lines
40 KiB
TOML
1404 lines
40 KiB
TOML
# 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_python_parser"
|
|
item = "lexer::Lexer::<'src>::current_range"
|
|
kind = "inherent_method"
|
|
level = "expect"
|
|
reason = "lets downstream lexer callers inspect the current token range"
|
|
|
|
[[override]]
|
|
lint = "hawk::unnecessary_public"
|
|
crate = "ruff_python_parser"
|
|
item = "lexer::Lexer::<'src>::current_flags"
|
|
kind = "inherent_method"
|
|
level = "expect"
|
|
reason = "lets downstream lexer callers inspect the current token flags"
|
|
|
|
[[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_ambiguous_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 = "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::unnecessary_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 = "ruff_db"
|
|
item = "system::command::Command::env_clear"
|
|
kind = "inherent_method"
|
|
level = "expect"
|
|
reason = "command environment methods mirror the standard library Command API"
|
|
|
|
[[override]]
|
|
lint = "hawk::dead_public"
|
|
crate = "ruff_db"
|
|
item = "system::command::Command::env"
|
|
kind = "inherent_method"
|
|
level = "expect"
|
|
reason = "command environment methods mirror the standard library Command API"
|
|
|
|
[[override]]
|
|
lint = "hawk::dead_public"
|
|
crate = "ruff_db"
|
|
item = "system::command::Command::env_remove"
|
|
kind = "inherent_method"
|
|
level = "expect"
|
|
reason = "command environment methods mirror the standard library Command 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"
|
|
|
|
[[exclude]]
|
|
crate = "unicode_names2"
|
|
file = "crates/ruff_unicode_names2/src/lib.rs"
|
|
reason = "kept compatible with the upstream unicode_names2 crate"
|
|
|
|
[[exclude]]
|
|
crate = "unicode_names2_generator"
|
|
file = "crates/ruff_unicode_names2_generator/src/lib.rs"
|
|
reason = "kept compatible with the upstream unicode_names2_generator crate"
|