![pnpm 9.5 Introduces Catalogs: Shareable Dependency Version Specifiers](https://cdn.sanity.io/images/cgdhsj6q/production/c06a5b74512bcc6da29d38cef96a454fa947810d-1024x1024.webp?w=400&fit=max&auto=format)
Security News
pnpm 9.5 Introduces Catalogs: Shareable Dependency Version Specifiers
pnpm 9.5 introduces a Catalogs feature, enabling shareable dependency version specifiers, reducing merge conflicts and improving support for monorepos.
@typescript-eslint/utils
Advanced tools
Package description
The @typescript-eslint/utils package provides utility functions and types that are used across the TypeScript ESLint project. It's designed to help with the development of ESLint rules, parsers, and plugins by providing a consistent set of tools for working with TypeScript code. This package is particularly useful for those creating custom ESLint rules or integrating TypeScript more deeply into their ESLint configurations.
AST Utilities
AST Utilities provide functions to work with Abstract Syntax Tree (AST) nodes. These utilities can help in identifying node types, such as checking if a node is an identifier or a literal, which is useful when writing custom ESLint rules.
import { ASTUtils } from '@typescript-eslint/utils';
const { isIdentifier, isLiteral } = ASTUtils;
Type Checking
This feature allows rule developers to access TypeScript's type checker, enabling them to perform more sophisticated analyses, such as type inference or type checking, within their custom ESLint rules.
import { ESLintUtils } from '@typescript-eslint/utils';
const { getParserServices } = ESLintUtils;
const parserServices = getParserServices(context);
const checker = parserServices.program.getTypeChecker();
ESLint Rule Creation
Provides a utility for creating ESLint rules with a consistent structure and metadata. This is particularly useful for developers creating custom rules for projects that use TypeScript.
import { ESLintUtils } from '@typescript-eslint/utils';
const createRule = ESLintUtils.RuleCreator(name => `https://example.com/rule/${name}`);
const myRule = createRule({
name: 'my-custom-rule',
meta: { /* rule metadata */ },
defaultOptions: [],
create(context) { /* rule implementation */ }
});
This package provides a set of ESLint rules that help ensure proper import/export syntax and order. While it focuses on module syntax, it doesn't offer TypeScript-specific utilities or type checking capabilities like @typescript-eslint/utils.
Similar to @typescript-eslint/utils, eslint-utils provides utility functions for working with ESLint and AST nodes. However, it is not specifically tailored for TypeScript, lacking direct integrations with TypeScript's type system and parser.
Changelog
Readme
@typescript-eslint/utils
Utilities for working with TypeScript + ESLint together.
š See https://typescript-eslint.io/packages/utils for documentation on this package.
See https://typescript-eslint.io for general documentation on typescript-eslint, the tooling that allows you to run ESLint and Prettier on TypeScript code.
FAQs
Unknown package
The npm package @typescript-eslint/utils receives a total of 26,628,955 weekly downloads. As such, @typescript-eslint/utils popularity was classified as popular.
We found that @typescript-eslint/utils demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.Ā It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 9.5 introduces a Catalogs feature, enabling shareable dependency version specifiers, reducing merge conflicts and improving support for monorepos.
Security News
A threat actor on BreachForums is selling an unverified npm vulnerability for account takeover, but npm has not officially confirmed the existence of this security concern.
Security News
Cyber insurance rates are dropping as the market matures, according to a new report projecting global premiums to reach $43 billion by 2030, driven by international market uptake and growth in the SME sector.