rslint

module
v0.3.4-0...-8ea63fc Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 6, 2026 License: MIT

README ΒΆ

Rslint Banner

Rslint

discord channel npm version downloads license CodSpeed

Rslint is a high-performance, ESLint-compatible linter for JavaScript and TypeScript.

Powered by TypeScript's native compiler, it delivers a faster drop-in experience with type-aware rules and optional type checking in the same run.

✨ Goals

  • πŸš€ Lightning Fast: Powered by TypeScript's native compiler, delivering 20-40x faster linting performance compared to traditional ESLint setups.
  • ⚑ Minimal Configuration: Typed linting enabled by default with minimal setup required β€” no complex configuration needed.
  • πŸ“¦ Best Effort ESLint Compatible: Compatible with most ESLint and TypeScript-ESLint configurations, significantly reducing migration costs.
  • 🎯 TypeScript First: Uses TypeScript Compiler semantics as the single source of truth, ensuring 100% consistency and eliminating edge-case bugs.
  • πŸ› οΈ Project-Level Analysis: Performs cross-module analysis by default, enabling more powerful semantic analysis than file-level linting.
  • 🏒 Monorepo Ready: First-class support for large-scale monorepos with TypeScript project references and workspace configurations.
  • πŸ“‹ Batteries Included: Ships with all existing TypeScript-ESLint rules and widely-used ESLint rules out of the box.
  • πŸ”§ Extensible: Exposes AST, type information, and global checker data for writing custom rules with complex cross-module analysis.

βœ… Current Status

Rslint provides built-in support for 500+ high-performance rules, all implemented natively, including all typescript-eslint rules and nearly all rules from @eslint/js. It is also compatible with ESLint flat config and most ESLint plugins, making it easier to adopt in existing ESLint projects.

πŸš€ Getting Started

See Guide.

πŸ“– Architecture Overview

πŸ¦€ Rstack

Rslint is part of Rstack, the fast, unified JavaScript toolchain for developers and agents.

Name Description Version
Rspack Bundler npm version
Rsbuild Build tool npm version
Rslib Library development tool npm version
Rspress Static site generator npm version
Rsdoctor Build analyzer npm version
Rstest Testing framework npm version
Rslint Linter npm version

🀝 Contribution

Please read the Contributing Guide and let's build Rslint together.

Code of Conduct

This repo has adopted the ByteDance Open Source Code of Conduct. Please check Code of conduct for more details.

πŸ’¬ Community

Come chat with us on Discord! Rslint team and users are active there, and we're always looking for contributions.

πŸ™ Credits

Rslint has been inspired by several outstanding projects in the community:

  • @auvred - The original author of tsgolint, from which Rslint is forked. We are deeply grateful for his pioneering work and innovative approach to TypeScript linting.
  • @JamesHenry - The creator of typescript-eslint, who has provided valuable guidance and suggestions for Rslint's development.
  • @JoshuaKGoldberg - For his insightful blog series "If I Wrote a Linter" which provided valuable architectural insights for modern linter design.
  • The typescript-eslint team - Rslint's configuration design and test cases have been significantly influenced by and adapted from typescript-eslint's excellent implementation.
  • The ESLint team - Rslint builds upon the foundational work of ESLint, the pioneering JavaScript linter that established the standards and patterns for static code analysis in the JavaScript ecosystem.
  • The Rust Clippy team - Rslint draws inspiration from Clippy's approach to compiler-integrated linting, bringing similar TypeScript-native analysis to the JavaScript ecosystem.
  • The TypeScript project - Powers Rslint's high-performance TypeScript parsing and semantic analysis capabilities through its Go compiler.

πŸ“– License

Rslint is MIT licensed.

Directories ΒΆ

Path Synopsis
cmd
rslint command
modified based on https://github.com/microsoft/typescript-go/blob/cedc0cbe6c188f9bfe6a51af00c79be48c9ab74d/cmd/tsgo/lsp.go#L1
modified based on https://github.com/microsoft/typescript-go/blob/cedc0cbe6c188f9bfe6a51af00c79be48c9ab74d/cmd/tsgo/lsp.go#L1
tsgo command
internal
api
Package api is the programmatic IPC service used by `--api` mode (consumed by packages/rslint-wasm and packages/rslint-api).
Package api is the programmatic IPC service used by `--api` mode (consumed by packages/rslint-wasm and packages/rslint-api).
api/server
Package server implements rslint's concrete API lint and AST requests.
Package server implements rslint's concrete API lint and AST requests.
config/lint
Package lint resolves already-selected lint targets against their governing configuration.
Package lint resolves already-selected lint targets against their governing configuration.
inspector
Package inspector provides code inspection types and builders for the Playground
Package inspector provides code inspection types and builders for the Playground
ipc
Package ipc is the task-agnostic bidirectional IPC transport between the Go process and a Node peer.
Package ipc is the task-agnostic bidirectional IPC transport between the Go process and a Node peer.
ls
lsp
modified based on https://github.com/microsoft/typescript-go/blob/cedc0cbe6c188f9bfe6a51af00c79be48c9ab74d/internal/lsp/server.go#L1
modified based on https://github.com/microsoft/typescript-go/blob/cedc0cbe6c188f9bfe6a51af00c79be48c9ab74d/internal/lsp/server.go#L1
plugins/import/rules/order
Package order ports eslint-plugin-import's `order` rule to rslint.
Package order ports eslint-plugin-import's `order` rule to rslint.
plugins/jsx_a11y/jsxa11yutil
Package jsxa11yutil contains shared helpers for eslint-plugin-jsx-a11y rule ports.
Package jsxa11yutil contains shared helpers for eslint-plugin-jsx-a11y rule ports.
plugins/jsx_a11y/rules/anchor_ambiguous_text
Package anchor_ambiguous_text ports eslint-plugin-jsx-a11y's `anchor-ambiguous-text` rule.
Package anchor_ambiguous_text ports eslint-plugin-jsx-a11y's `anchor-ambiguous-text` rule.
plugins/jsx_a11y/rules/anchor_has_content
Package anchor_has_content ports eslint-plugin-jsx-a11y's `anchor-has-content` rule.
Package anchor_has_content ports eslint-plugin-jsx-a11y's `anchor-has-content` rule.
plugins/jsx_a11y/rules/anchor_is_valid
Package anchor_is_valid ports eslint-plugin-jsx-a11y's `anchor-is-valid` rule.
Package anchor_is_valid ports eslint-plugin-jsx-a11y's `anchor-is-valid` rule.
plugins/jsx_a11y/rules/aria_activedescendant_has_tabindex
Package aria_activedescendant_has_tabindex ports eslint-plugin-jsx-a11y's `aria-activedescendant-has-tabindex` rule.
Package aria_activedescendant_has_tabindex ports eslint-plugin-jsx-a11y's `aria-activedescendant-has-tabindex` rule.
plugins/jsx_a11y/rules/aria_props
Package aria_props ports eslint-plugin-jsx-a11y's `aria-props` rule.
Package aria_props ports eslint-plugin-jsx-a11y's `aria-props` rule.
plugins/jsx_a11y/rules/aria_proptypes
Package aria_proptypes ports eslint-plugin-jsx-a11y's `aria-proptypes` rule.
Package aria_proptypes ports eslint-plugin-jsx-a11y's `aria-proptypes` rule.
plugins/jsx_a11y/rules/aria_role
Package aria_role ports eslint-plugin-jsx-a11y's `aria-role` rule.
Package aria_role ports eslint-plugin-jsx-a11y's `aria-role` rule.
plugins/jsx_a11y/rules/click_events_have_key_events
Package click_events_have_key_events ports eslint-plugin-jsx-a11y's `click-events-have-key-events` rule.
Package click_events_have_key_events ports eslint-plugin-jsx-a11y's `click-events-have-key-events` rule.
plugins/jsx_a11y/rules/control_has_associated_label
Package control_has_associated_label ports eslint-plugin-jsx-a11y's `control-has-associated-label` rule.
Package control_has_associated_label ports eslint-plugin-jsx-a11y's `control-has-associated-label` rule.
plugins/jsx_a11y/rules/heading_has_content
Package heading_has_content ports eslint-plugin-jsx-a11y's `heading-has-content` rule.
Package heading_has_content ports eslint-plugin-jsx-a11y's `heading-has-content` rule.
plugins/jsx_a11y/rules/html_has_lang
Package html_has_lang ports eslint-plugin-jsx-a11y's `html-has-lang` rule.
Package html_has_lang ports eslint-plugin-jsx-a11y's `html-has-lang` rule.
plugins/jsx_a11y/rules/iframe_has_title
Package iframe_has_title ports eslint-plugin-jsx-a11y's `iframe-has-title` rule.
Package iframe_has_title ports eslint-plugin-jsx-a11y's `iframe-has-title` rule.
plugins/jsx_a11y/rules/interactive_supports_focus
Package interactive_supports_focus ports eslint-plugin-jsx-a11y's `interactive-supports-focus` rule.
Package interactive_supports_focus ports eslint-plugin-jsx-a11y's `interactive-supports-focus` rule.
plugins/jsx_a11y/rules/label_has_associated_control
Package label_has_associated_control ports eslint-plugin-jsx-a11y's `label-has-associated-control` rule.
Package label_has_associated_control ports eslint-plugin-jsx-a11y's `label-has-associated-control` rule.
plugins/jsx_a11y/rules/lang
Package lang ports eslint-plugin-jsx-a11y's `lang` rule.
Package lang ports eslint-plugin-jsx-a11y's `lang` rule.
plugins/jsx_a11y/rules/media_has_caption
Package media_has_caption ports eslint-plugin-jsx-a11y's `media-has-caption` rule.
Package media_has_caption ports eslint-plugin-jsx-a11y's `media-has-caption` rule.
plugins/jsx_a11y/rules/mouse_events_have_key_events
Package mouse_events_have_key_events ports eslint-plugin-jsx-a11y's `mouse-events-have-key-events` rule.
Package mouse_events_have_key_events ports eslint-plugin-jsx-a11y's `mouse-events-have-key-events` rule.
plugins/jsx_a11y/rules/no_access_key
Package no_access_key ports eslint-plugin-jsx-a11y's `no-access-key` rule.
Package no_access_key ports eslint-plugin-jsx-a11y's `no-access-key` rule.
plugins/jsx_a11y/rules/no_aria_hidden_on_focusable
Package no_aria_hidden_on_focusable ports eslint-plugin-jsx-a11y's `no-aria-hidden-on-focusable` rule.
Package no_aria_hidden_on_focusable ports eslint-plugin-jsx-a11y's `no-aria-hidden-on-focusable` rule.
plugins/jsx_a11y/rules/no_autofocus
Package no_autofocus ports eslint-plugin-jsx-a11y's `no-autofocus` rule.
Package no_autofocus ports eslint-plugin-jsx-a11y's `no-autofocus` rule.
plugins/jsx_a11y/rules/no_distracting_elements
Package no_distracting_elements ports eslint-plugin-jsx-a11y's `no-distracting-elements` rule.
Package no_distracting_elements ports eslint-plugin-jsx-a11y's `no-distracting-elements` rule.
plugins/jsx_a11y/rules/no_interactive_element_to_noninteractive_role
Package no_interactive_element_to_noninteractive_role ports eslint-plugin-jsx-a11y's `no-interactive-element-to-noninteractive-role` rule.
Package no_interactive_element_to_noninteractive_role ports eslint-plugin-jsx-a11y's `no-interactive-element-to-noninteractive-role` rule.
plugins/jsx_a11y/rules/no_noninteractive_element_interactions
Package no_noninteractive_element_interactions ports eslint-plugin-jsx-a11y's `no-noninteractive-element-interactions` rule.
Package no_noninteractive_element_interactions ports eslint-plugin-jsx-a11y's `no-noninteractive-element-interactions` rule.
plugins/jsx_a11y/rules/no_noninteractive_element_to_interactive_role
Package no_noninteractive_element_to_interactive_role ports eslint-plugin-jsx-a11y's `no-noninteractive-element-to-interactive-role` rule.
Package no_noninteractive_element_to_interactive_role ports eslint-plugin-jsx-a11y's `no-noninteractive-element-to-interactive-role` rule.
plugins/jsx_a11y/rules/no_noninteractive_tabindex
Package no_noninteractive_tabindex ports eslint-plugin-jsx-a11y's `no-noninteractive-tabindex` rule.
Package no_noninteractive_tabindex ports eslint-plugin-jsx-a11y's `no-noninteractive-tabindex` rule.
plugins/jsx_a11y/rules/no_redundant_roles
Package no_redundant_roles ports eslint-plugin-jsx-a11y's `no-redundant-roles` rule.
Package no_redundant_roles ports eslint-plugin-jsx-a11y's `no-redundant-roles` rule.
plugins/jsx_a11y/rules/no_static_element_interactions
Package no_static_element_interactions ports eslint-plugin-jsx-a11y's `no-static-element-interactions` rule.
Package no_static_element_interactions ports eslint-plugin-jsx-a11y's `no-static-element-interactions` rule.
plugins/jsx_a11y/rules/prefer_tag_over_role
Package prefer_tag_over_role ports eslint-plugin-jsx-a11y's `prefer-tag-over-role` rule.
Package prefer_tag_over_role ports eslint-plugin-jsx-a11y's `prefer-tag-over-role` rule.
plugins/jsx_a11y/rules/role_has_required_aria_props
Package role_has_required_aria_props ports eslint-plugin-jsx-a11y's `role-has-required-aria-props` rule.
Package role_has_required_aria_props ports eslint-plugin-jsx-a11y's `role-has-required-aria-props` rule.
plugins/jsx_a11y/rules/role_supports_aria_props
Package role_supports_aria_props ports eslint-plugin-jsx-a11y's `role-supports-aria-props` rule.
Package role_supports_aria_props ports eslint-plugin-jsx-a11y's `role-supports-aria-props` rule.
plugins/jsx_a11y/rules/scope
Package scope ports eslint-plugin-jsx-a11y's `scope` rule.
Package scope ports eslint-plugin-jsx-a11y's `scope` rule.
plugins/jsx_a11y/rules/tabindex_no_positive
Package tabindex_no_positive ports eslint-plugin-jsx-a11y's `tabindex-no-positive` rule.
Package tabindex_no_positive ports eslint-plugin-jsx-a11y's `tabindex-no-positive` rule.
plugins/react/rules/jsx_equals_spacing
Package jsx_equals_spacing implements jsx-equals-spacing (`react/jsx-equals-spacing`).
Package jsx_equals_spacing implements jsx-equals-spacing (`react/jsx-equals-spacing`).
plugins/react/rules/jsx_first_prop_new_line
Package jsx_first_prop_new_line implements jsx-first-prop-new-line (`react/jsx-first-prop-new-line`).
Package jsx_first_prop_new_line implements jsx-first-prop-new-line (`react/jsx-first-prop-new-line`).
cspell:ignore mdash
plugins/react/rules/jsx_sort_props
Package jsx_sort_props implements react/jsx-sort-props.
Package jsx_sort_props implements react/jsx-sort-props.
plugins/react/rules/no_unknown_property
cspell:disable β€” this file enumerates HTML / SVG / ARIA attribute names verbatim from React and the WHATWG / W3C specs, so it contains many attribute-name tokens (aria-*, SVG presentation attributes, popover / shadowroot attrs, …) that are not in a general English dictionary.
cspell:disable β€” this file enumerates HTML / SVG / ARIA attribute names verbatim from React and the WHATWG / W3C specs, so it contains many attribute-name tokens (aria-*, SVG presentation attributes, popover / shadowroot attrs, …) that are not in a general English dictionary.
plugins/react/rules/sort_comp
Package sort_comp implements react/sort-comp.
Package sort_comp implements react/sort-comp.
plugins/react_hooks/react_hooksutil
Package react_hooksutil holds the AST helpers shared by every rule in the `eslint-plugin-react-hooks` port.
Package react_hooksutil holds the AST helpers shared by every rule in the `eslint-plugin-react-hooks` port.
plugins/react_hooks/rules/exhaustive_deps
Package exhaustive_deps implements the rslint port of upstream `react-hooks/exhaustive-deps`.
Package exhaustive_deps implements the rslint port of upstream `react-hooks/exhaustive-deps`.
plugins/rstest/rules/valid_title
Package valid_title ports eslint-plugin-jest's valid-title to Rstest.
Package valid_title ports eslint-plugin-jest's valid-title to Rstest.
plugins/typescript/rules/no_restricted_imports
Package no_restricted_imports provides the @typescript-eslint/no-restricted-imports rule, which extends the core ESLint no-restricted-imports rule with first-class support for TypeScript-only syntax: `import type ...`, inline `import { type X }`, `import x = require(...)`, `import type x = require(...)`, and `export type ...`.
Package no_restricted_imports provides the @typescript-eslint/no-restricted-imports rule, which extends the core ESLint no-restricted-imports rule with first-class support for TypeScript-only syntax: `import type ...`, inline `import { type X }`, `import x = require(...)`, `import type x = require(...)`, and `export type ...`.
plugins/typescript/rules/strict_boolean_expressions
Package strict_boolean_expressions ports typescript-eslint's `@typescript-eslint/strict-boolean-expressions` rule to rslint.
Package strict_boolean_expressions ports typescript-eslint's `@typescript-eslint/strict-boolean-expressions` rule to rslint.
plugins/typescript/typescriptutil
Package typescriptutil holds helpers shared across typescript-eslint rules.
Package typescriptutil holds helpers shared across typescript-eslint rules.
plugins/unicorn/rules/no_exports_in_scripts
Package no_exports_in_scripts ports eslint-plugin-unicorn's `no-exports-in-scripts` rule.
Package no_exports_in_scripts ports eslint-plugin-unicorn's `no-exports-in-scripts` rule.
plugins/unicorn/rules/no_unreadable_new_expression
Package no_unreadable_new_expression ports eslint-plugin-unicorn's `no-unreadable-new-expression` rule.
Package no_unreadable_new_expression ports eslint-plugin-unicorn's `no-unreadable-new-expression` rule.
plugins/unicorn/rules/prefer_blob_reading_methods
Package prefer_blob_reading_methods ports eslint-plugin-unicorn's `prefer-blob-reading-methods` rule.
Package prefer_blob_reading_methods ports eslint-plugin-unicorn's `prefer-blob-reading-methods` rule.
plugins/unicorn/rules/prefer_node_protocol
Package prefer_node_protocol ports eslint-plugin-unicorn's `prefer-node-protocol` rule.
Package prefer_node_protocol ports eslint-plugin-unicorn's `prefer-node-protocol` rule.
plugins/unicorn/rules/prefer_set_has
Package prefer_set_has ports eslint-plugin-unicorn's `prefer-set-has` rule.
Package prefer_set_has ports eslint-plugin-unicorn's `prefer-set-has` rule.
plugins/unicorn/rules/prefer_string_trim_start_end
Package prefer_string_trim_start_end ports eslint-plugin-unicorn's `prefer-string-trim-start-end` rule.
Package prefer_string_trim_start_end ports eslint-plugin-unicorn's `prefer-string-trim-start-end` rule.
plugins/unicorn/rules/prefer_ternary
Package prefer_ternary mirrors eslint-plugin-unicorn's prefer-ternary rule: simple if/else statements that return or assign a value are rewritten to a ternary, and a let declaration immediately followed by an if (without else) that re-assigns that same variable is folded into a const initialized with the ternary.
Package prefer_ternary mirrors eslint-plugin-unicorn's prefer-ternary rule: simple if/else statements that return or assign a value are rewritten to a ternary, and a let declaration immediately followed by an if (without else) that re-assigns that same variable is folded into a const initialized with the ternary.
plugins/unicorn/rules/prefer_then_catch
Package prefer_then_catch ports eslint-plugin-unicorn's `prefer-then-catch` rule.
Package prefer_then_catch ports eslint-plugin-unicorn's `prefer-then-catch` rule.
program/loader
Package loader assembles run-scoped rslint Programs from configured TypeScript projects and target-plan files.
Package loader assembles run-scoped rslint Programs from configured TypeScript projects and target-plan files.
rule
cspell:ignore Newable
cspell:ignore Newable
rules/no_implied_eval
cspell:ignore sctx
cspell:ignore sctx
rules/no_misleading_character_class
Package no_misleading_character_class implements ESLint's no-misleading-character-class rule on top of the layered regex / JS string utilities in `internal/utils`.
Package no_misleading_character_class implements ESLint's no-misleading-character-class rule on top of the layered regex / JS string utilities in `internal/utils`.
rules/no_useless_backreference
Package no_useless_backreference implements ESLint's no-useless-backreference rule.
Package no_useless_backreference implements ESLint's no-useless-backreference rule.
rules/no_useless_escape
Package no_useless_escape implements ESLint's `no-useless-escape` rule.
Package no_useless_escape implements ESLint's `no-useless-escape` rule.
rules/unicode_bom
Package unicode_bom implements the core ESLint rule `unicode-bom`: a file must begin with a Unicode byte order mark, U+FEFF, under `always`, and must not under `never`.
Package unicode_bom implements the core ESLint rule `unicode-bom`: a file must begin with a Unicode byte order mark, U+FEFF, under `always`, and must not under `never`.
term
Package term owns the CLI's color-output decision.
Package term owns the CLI's color-output decision.
testutil/embedfs
Package embedfs builds vfs roots backed entirely in memory by an embedded filesystem, for locating test fixtures without runtime.Caller (which returns a non-absolute, module-relative path when built with -trimpath).
Package embedfs builds vfs roots backed entirely in memory by an embedded filesystem, for locating test fixtures without runtime.Caller (which returns a non-absolute, module-relative path when built with -trimpath).
testutil/txtarfs
Package txtarfs safely materializes text-only filesystem fixtures stored in golang.org/x/tools/txtar archives.
Package txtarfs safely materializes text-only filesystem fixtures stored in golang.org/x/tools/txtar archives.
utils
cspell:ignore octals
cspell:ignore octals
utils/cfg
Package cfg builds a control-flow graph for one code path root β€” a source file, a function, a class static block, or a class field initializer.
Package cfg builds a control-flow graph for one code path root β€” a source file, a function, a class static block, or a class field initializer.
utils/ecmascript
Package ecmascript holds the pieces of JavaScript's own semantics that a port has to reproduce exactly, where Go's standard library answers a nearby but different question.
Package ecmascript holds the pieces of JavaScript's own semantics that a port has to reproduce exactly, where Go's standard library answers a nearby but different question.
utils/ecmascript/regexp
Package regexp compiles a JavaScript regexp the way JavaScript reads it.
Package regexp compiles a JavaScript regexp the way JavaScript reads it.
utils/isglob
Package isglob ports the npm packages is-glob 4.0.3 and the is-extglob 2.1.1 it pulls in: the question "was this string written as a glob pattern, or is it a plain path?".
Package isglob ports the npm packages is-glob 4.0.3 and the is-extglob 2.1.1 it pulls in: the question "was this string written as a glob pattern, or is it a plain path?".
utils/minimatch3
Package minimatch3 ports minimatch 3.1.5 and the brace-expansion 1.1.16 it pulls in, the glob matcher an ESLint plugin compares paths with.
Package minimatch3 ports minimatch 3.1.5 and the brace-expansion 1.1.16 it pulls in, the glob matcher an ESLint plugin compares paths with.
utils/scope
Package scope reconstructs ESLint's lexical scope model on top of the tsgo AST.
Package scope reconstructs ESLint's lexical scope model on top of the tsgo AST.
utils/test_framework/rules/expect_expect
Package expect_expect holds the framework-neutral traversal shared by jest/expect-expect and rstest/expect-expect.
Package expect_expect holds the framework-neutral traversal shared by jest/expect-expect and rstest/expect-expect.
utils/test_framework/rules/no_conditional_expect
Package no_conditional_expect holds the framework-neutral traversal shared by jest/no-conditional-expect and rstest/no-conditional-expect.
Package no_conditional_expect holds the framework-neutral traversal shared by jest/no-conditional-expect and rstest/no-conditional-expect.
utils/test_framework/rules/no_conditional_in_test
Package no_conditional_in holds the framework-neutral traversal shared by jest/no-conditional-in-test and rstest/no-conditional-in-test.
Package no_conditional_in holds the framework-neutral traversal shared by jest/no-conditional-in-test and rstest/no-conditional-in-test.
utils/test_framework/rules/no_standalone_expect
Package no_standalone_expect holds the framework-neutral traversal shared by jest/no-standalone-expect and rstest/no-standalone-expect.
Package no_standalone_expect holds the framework-neutral traversal shared by jest/no-standalone-expect and rstest/no-standalone-expect.
utils/test_framework/rules/valid_expect
Package valid_expect holds the framework-neutral async-assertion machinery shared by jest/valid-expect and rstest/valid-expect: walking out of a chained .then/.catch, spotting a Promise.all([...]) wrapper, deciding whether the result is awaited or returned, and the async/await fixes.
Package valid_expect holds the framework-neutral async-assertion machinery shared by jest/valid-expect and rstest/valid-expect: walking out of a chained .then/.catch, spotting a Promise.all([...]) wrapper, deciding whether the result is awaited or returned, and the async/await fixes.
utils/test_framework/rules/valid_expect_in_promise
Package valid_expect_in_promise holds the framework-neutral promise-chain collection and consumption analysis shared by Jest and Rstest.
Package valid_expect_in_promise holds the framework-neutral promise-chain collection and consumption analysis shared by Jest and Rstest.
utils/unicode17
Package unicode17 carries the character data Unicode 16.0 and 17.0 added on top of the edition the Go toolchain ships, so that a port of a JavaScript operation answers the way Node does rather than the way Go's tables do.
Package unicode17 carries the character data Unicode 16.0 and 17.0 added on top of the edition the Go toolchain ships, so that a port of a JavaScript operation answers the way Node does rather than the way Go's tables do.
tools
dump_rule_schemas command
Command dump_rule_schemas loads every Go rule and dumps each one's name and options JSON Schema as JSON on stdout, straight from the shared rule catalog β€” the single source of truth for rule IDs/prefixes and declared schemas.
Command dump_rule_schemas loads every Go rule and dumps each one's name and options JSON Schema as JSON on stdout, straight from the shared rule catalog β€” the single source of truth for rule IDs/prefixes and declared schemas.
gen_shims command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL