
Security News
Rust RFC Proposes a Security Tab on crates.io for RustSec Advisories
Rustâs crates.io team is advancing an RFC to add a Security tab that surfaces RustSec vulnerability and unsoundness advisories directly on crate pages.
@xpring-eng/eslint-config-base
Advanced tools
Xpring's base TS ESLint config, following our styleguide
@xpring-eng/eslint-config-baseA super-strict TypeScript linting configuration for enforcing best practices.
First, install the needed development dependencies:
# Ensure TypeScript and the TS ESLint parser are installed
npm install --save-dev typescript @typescript-eslint/parser
# Ensure ESLint & Prettier are installed
npm install --save-dev eslint prettier
# Install plugins used by @xpring-eng/eslint-config-base
npm install --save-dev @typescript-eslint/eslint-plugin eslint-plugin-import eslint-plugin-prettier eslint-plugin-jsdoc eslint-plugin-tsdoc eslint-plugin-array-func eslint-plugin-eslint-comments eslint-plugin-node
# Install the Xpring ESLint config
npm install --save-dev @xpring-eng/eslint-config-base
Then, configure your ESLint to use the Xpring configuration. An example ESLint configuration is provided below:
module.exports = {
root: true,
// Make ESLint compatible with TypeScript
parser: '@typescript-eslint/parser',
parserOptions: {
// Enable linting rules with type information from our tsconfig
tsconfigRootDir: __dirname,
project: ['./tsconfig.json'],
// Allow the use of imports / ES modules
sourceType: 'module',
ecmaFeatures: {
// Enable global strict mode
impliedStrict: true,
},
},
// Specify global variables that are predefined
env: {
node: true, // Enable node global variables & Node.js scoping
es2020: true, // Add all ECMAScript 2020 globals and automatically set the ecmaVersion parser option to ES2020
},
plugins: [],
// extends: ['@xpring-eng/eslint-config-base'],
extends: ['@xpring-eng/eslint-config-base/loose'],
rules: {},
overrides: [],
}
We provide two different configurations.
The stricter configuration is @xpring-eng/eslint-config-base, which is configured to provide best practices for a mature TS project.
However, while transitioning to this linting configuration, it is useful to have a less strict configuration to work with.
The looser configuration is @xpring-eng/eslint-config-base/loose.
The looser configuration differs in the following ways:
no-unsafe-* rules from @typescript-eslint are disabledFAQs
Xpring's base TS ESLint config, following our styleguide
We found that @xpring-eng/eslint-config-base demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 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
Rustâs crates.io team is advancing an RFC to add a Security tab that surfaces RustSec vulnerability and unsoundness advisories directly on crate pages.

Security News
/Research
Socket found a Rust typosquat (finch-rust) that loads sha-rust to steal credentials, using impersonation and an unpinned dependency to auto-deliver updates.

Research
/Security Fundamentals
A pair of typosquatted Go packages posing as Googleâs UUID library quietly turn helper functions into encrypted exfiltration channels to a paste site, putting developer and CI data at risk.