diff --git a/CHANGELOG.md b/CHANGELOG.md index ff829d8..8b4b821 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Change Log +## [9.0.0][] - 2024-08-14 + +- Update eslint to 9.x: Rewrite rules to plain format +- Drop node.js 18.x support and add node.js 22 support +- Update repository structure, CI, and badges +- Update dependencies and package file structure + ## [8.2.1][] - 2023-07-20 - Update dependencies and package file structure diff --git a/README.md b/README.md index 1e5ff42..e72cfeb 100644 --- a/README.md +++ b/README.md @@ -1,51 +1,40 @@ # eslint-config-metarhia -[![Build Status][travis-badge]][travis-url] -[![Greenkeeper badge](https://badges.greenkeeper.io/metarhia/eslint-config-metarhia.svg)](https://greenkeeper.io/) +Opinionated [ESLint](https://eslint.org/) config and de-facto JavaScript +styleguide for [Metarhia](https://github.com/metarhia/) projects. -Opinionated [ESLint][] config and de-facto JavaScript styleguide for -[Metarhia][] projects. +[![ci status](https://github.com/metarhia/eslint-config-metarhia/workflows/Testing%20CI/badge.svg)](https://github.com/metarhia/eslint-config-metarhia/actions?query=workflow%3A%22Testing+CI%22+branch%3Amaster) +[![snyk](https://snyk.io/test/github/metarhia/eslint-config-metarhia/badge.svg)](https://snyk.io/test/github/metarhia/eslint-config-metarhia) +[![npm version](https://badge.fury.io/js/eslint-config-metarhia.svg)](https://badge.fury.io/js/eslint-config-metarhia) +[![npm downloads/month](https://img.shields.io/npm/dm/eslint-config-metarhia.svg)](https://www.npmjs.com/package/eslint-config-metarhia) +[![npm downloads](https://img.shields.io/npm/dt/eslint-config-metarhia.svg)](https://www.npmjs.com/package/eslint-config-metarhia) ## Usage -1. Install ESLint, this config and required plugins: +1. Install ESLint and this config: - ```console - npm i -D eslint eslint-plugin-import eslint-config-metarhia - ``` - -2. Add `"extends": "metarhia"` to your `.eslintrc`. - -## Contributing - -Please adhere to [Conventional Commits][] styleguide for commit messages -(`npm install` creates a Git hook that lints your commit messages, and they are -also checked on CI, but please write them properly beforehand so that they don't -get rejected. If that happens locally while committing, though, don't worry, -your commit message isn't lost, you can still find it in `.git/COMMIT_EDITMSG`). +```console +npm i -D eslint eslint-config-metarhia +``` -### Releasing +2. Import `eslint-config-metarhia` in `.eslint.config.js`, add additional rules, + export everything together. -Collaborators can release new versions using +```js +const config = require('eslint-config-metarhia'); -```console -npm run release -git push origin master --follow-tags -npm publish +module.exports = [ + config, + { + rules: { + 'no-unused-vars': 'warn', + }, + }, +]; ``` -This will update the version in `package.json` and `package-lock.json` -according to semantic versioning using commit messages to determine whether it -is a patch, minor or major release, update the changelog, tag the new version -in Git, and publish it to npm registry. - ## License -MIT. See the [LICENSE][] file for details. - -[conventional commits]: https://conventionalcommits.org/ -[eslint]: https://eslint.org/ -[license]: LICENSE -[metarhia]: https://github.com/metarhia -[travis-badge]: https://travis-ci.org/metarhia/eslint-config-metarhia.svg?branch=master -[travis-url]: https://travis-ci.org/metarhia/eslint-config-metarhia +Copyright (c) 2017-2024 [Metarhia contributors](https://github.com/metarhia/eslint-config-metarhia/graphs/contributors). +eslint-config-metarhia is [MIT licensed](./LICENSE).\ +eslint-config-metarhia is a part of [Metarhia](https://github.com/metarhia) technology stack. diff --git a/SECURITY.md b/SECURITY.md index 36f7349..65f5242 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -9,6 +9,7 @@ | 8.0.x | :x: | | 8.1.x | :x: | | 8.2.x | :white_check_mark: | +| 9.0.x | :white_check_mark: | ## Reporting a Vulnerability diff --git a/package-lock.json b/package-lock.json index e01c797..469638d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "eslint-config-metarhia", - "version": "8.2.2", + "version": "9.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "eslint-config-metarhia", - "version": "8.2.2", + "version": "9.0.0", "license": "MIT", "devDependencies": { "eslint": "^9.9.0", @@ -15,7 +15,7 @@ "prettier": "^3.1.0" }, "engines": { - "node": "18 || 20 || 21 || 22" + "node": "20 || 21 || 22" }, "funding": { "type": "patreon", diff --git a/package.json b/package.json index 4973fdf..39fdb54 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "eslint-config-metarhia", - "version": "8.2.2", + "version": "9.0.0", "author": "Alexey Orlenko ", "license": "MIT", "description": "ESLint config for Metarhia projects", @@ -16,7 +16,7 @@ "main": "index.js", "files": ["rules/", "scripts/"], "engines": { - "node": "18 || 20 || 21 || 22" + "node": "20 || 21 || 22" }, "repository": { "type": "git",