パッケージの詳細

@homer0/eslint-plugin

homer0338MIT12.0.10

My custom configurations for ESLint.

readme

Packages

Monorepo for unrelated Node packages of personal use, like my eslint-plugin, and packages that are small enough and/or not ready to have their own repository, like aurelia-extract-clean-loader.

Types

Public packages

These packages are meant to be used by anyone, that's why the "public", and these are the reasons they are here and not on their own repository:

  • If they are small: Having to maintain an entire repository (ESLint, Husky, Jest, etc.) for a one-file-package is too much of an effort; the situation may change if a package gets some contributors, as managing issues and PR on a monorepo of unrelated packages would be kind of tedious.
  • If they are MVPs: I may be trying to validate the idea behind a package before moving to its own repository; again, maintaining a repository is not easy.

They're on /packages/public, and there's the list:

🚀 API utils

A really basic client to work with an API endpoints requests.

🧬 Deep assign

Deep merge (and copy) of objects and Arrays using native spread syntax.

🕗 Deferred

Small utility to create a deferred promise

🏠 Env utils

A really small service to centralize the place where you read and write environment variables, and check if you are running on development or production.

💥 Error handler

Listens for uncaught exceptions and unhandled promises rejections, and logs them out with full detail.

🚚 Events hub

A simple implementation of a pubsub service for handling events.

💫 Extend promise

Extend a Promise by injecting custom properties using a Proxy. The custom properties will be available on the promise chain no matter how many thens, catchs or finallys are added.

💉 jimple

An extended version of the Jimple lib, with extra features.

✅ NestJS Zod Lite

A smaller version of the deprecated nestjs-zod package to validate DTOs.

🧰 Object utils

A small collection of utility methods to work with objects. It relies on extend for deep merge and copy.

📦 Package info

A tiny service that reads the contents of the project's package.json, sync & async.

🗂 Path utils

An easy way to manage locations and build paths relative to those locations on a Node app.

🪄 React SSR config

A way to have dynamic config sent from SSR and accessible in the client.

⚓️ Root file

Import or require a file for the project root.

⚙️ Simple config

A very simple configuration management for your projects. It takes care of loading, activating, switching and merging configuration files.

💬 Simple logger

A small service to log messages in the console.

📚 Simple storage

A service that allows you to build functionalities that relay on browser storage (session/local), and simplifies the way you work it.

🗄 FS Cache

Small cache utility that uses the file system and supports TTL.

☢️ TS Async Import

A wrapper to do dynamic imports in TypeScript contexts that target CommonJS.

Personal

These packages are related to personal configuration and/or tooling; the only difference with the "public packages" is that I'll probably won't accept feature/change requests for them.

Development

This repository uses Lerna for managing the publication and the version of the packages, and NPM for the dependencies.

Linting

The entire repository is linted using ESLint and custom plugin you can find in packages/personal/eslint-plugin.

There are two scripts you can use to lint files:

  • pnpm run lint will use lint-staged to run ESLint on the files that are staged.
  • pnpm run lint:all will lint the entire repository.

Tests

To run the tests of all the packages that have you just need to run npm test, but if you want to run the tests for a single package, you can use the following command:

pnpm test -- --scope [package-name-with-scope]

And if you need to send extra arguments to that package tests, you'll have to use two double dashes to separate them:

pnpm test -- --scope [package-name-with-scope] -- -- [...args]

更新履歴

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

12.0.10 (2025-04-14)

Bug Fixes

  • eslint-plugin: remove forOf instead of forIn from exception (d607703)

12.0.9 (2025-04-13)

Bug Fixes

  • eslint-plugin: allow for...of loops (8f10ab2)
  • eslint-plugin: disable no-await-in-loop (7aef3ef)
  • monorepo: update dependencies (3b99d37)

12.0.8 (2025-01-25)

Bug Fixes

  • eslint-plugin: change engines req (e5e7fd4)
  • monorepo: update dependencies (42fa7f3)

12.0.7 (2024-11-09)

Bug Fixes

  • monorepo: update dependencies (3cf8287)

12.0.6 (2024-10-08)

Bug Fixes

  • monorepo: update all dependencies (089b45d)

12.0.5 (2024-05-18)

Bug Fixes

  • monorepo: update all dependencies (b5e4ca8)

12.0.4 (2024-04-06)

Bug Fixes

  • eslint-plugin: extend from transp for next config (78d4fec)
  • eslint-plugin: include slices override to the react config (8957995)
  • monorepo: update all dependencies (89febc8)

12.0.3 (2024-03-19)

Bug Fixes

  • eslint-plugin: add 100 as ignored magic number (c0f5054)

12.0.2 (2024-02-22)

Bug Fixes

  • monorepo: update all dependencies (dfd8005)

12.0.1 (2023-12-23)

Bug Fixes

  • monorepo: update all dependencies (2e55bc2)

12.0.0 (2023-10-02)

Bug Fixes

  • monorepo: drop Node 16 support (41988da)
  • monorepo: update dependencies (e36d163)

BREAKING CHANGES

  • monorepo: Node 16 is not longer supported. Node 18 is the minimum required version now.

11.0.0 (2023-07-29)

Bug Fixes

  • eslint-plugin: update config for Svelte (2b4a473)

BREAKING CHANGES

  • eslint-plugin: The ESLint config for Svelte now requires eslint-plugin-svelte

10.3.2 (2023-07-16)

Bug Fixes

  • monorepo: update all dependencies (c3d837e)

10.3.1 (2023-06-18)

Note: Version bump only for package @homer0/eslint-plugin

10.3.0 (2023-06-18)

Nothing changed in this version, I just messed up the commits.

10.2.2 (2023-06-18)

Bug Fixes

  • eslint-plugin: remove deprecated option from JSDoc plugin (a0938dd)
  • monorepo: update all dependencies (e48d13a)

10.2.1 (2023-03-18)

Bug Fixes

  • eslint-plugin: disable import/no-unresolved for ts (56aad06)

10.2.0 (2023-03-15)

Bug Fixes

  • eslint-plugin: use project as an array in the preset (3d23c53)

Features

  • eslint-plugin: add preset for next (2deeff0)

10.1.2 (2023-03-15)

Bug Fixes

  • eslint-plugin: use project as an array in the preset (3d23c53)

10.1.1 (2023-03-15)

Bug Fixes

  • eslint-plugin: use kebab-case for the next config (1f67dd7)

10.1.0 (2023-03-15)

Bug Fixes

  • eslint-plugin: disable missing import on ts (920ab51)
  • eslint-plugin: update dependencies (873e5c8)
  • eslint-plugin: use ts version of the dot notation rule (34ca9bc)
  • monorepo: update all dependencies (7fe0f9a)

Features

  • eslint-plugin: add base config for next (4900c7e)

10.0.3 (2023-03-05)

Bug Fixes

  • monorepo: update all dependencies (7fe0f9a)

10.0.2 (2023-01-28)

Bug Fixes

  • monorepo: update all dependencies (7618870)

10.0.1 (2022-12-31)

Bug Fixes

  • monorepo: update all dependencies (613418f)

10.0.0 (2022-12-27)

Bug Fixes

  • drop Yarn (e41698c)
  • monorepo: drop Node 14 support (4df5a23)
  • monorepo: update all dependencies (0ba6a5a)

BREAKING CHANGES

  • monorepo: Node 14 is not longer supported. Node 16 is the minimum required version now.

9.1.3 (2022-10-22)

Bug Fixes

9.1.2 (2022-07-17)

Bug Fixes

  • eslint-plugin: disable sort-class-members for ts (b3dcbef)

9.1.1 (2022-07-12)

Bug Fixes

  • monorepo: force publish unpublished tags (ce339bc)

9.1.0 (2022-07-12)

Bug Fixes

  • eslint-plugin: disable extraneous deps for jest (ea6134d)
  • eslint-plugin: disable import rules for Jest (a625815)
  • eslint-plugin: disable max-classes for jest (36cce1a)
  • eslint-plugin: remove separation for async methods (1ecb2e0)
  • monorepo: update all dependencies (fc95b09)

Features

  • eslint-plugin: add jest+node+ts config (fde6c1d)
  • eslint-plugin: add ts preset (a9b8898)

9.0.2 (2022-04-25)

Bug Fixes

  • eslint-plugin: allow the use of Object (966acc2)
  • eslint-plugin: move node rules out from the ts generic rules (0c7b62e)

9.0.1 (2022-03-27)

Bug Fixes

  • eslint-plugin: move node rules out from the ts generic rules (0c7b62e)

9.0.0 (2022-03-17)

Bug Fixes

  • eslint-plugin: add a different config for ts node (1a50594)
  • eslint-plugin: add the recommended preset (96ee211)
  • eslint-plugin: install missing dependencies (989382c)
  • eslint-plugin: remove alph sort for class members (abe489f)
  • eslint-plugin: update dependencies (82c1f40)
  • monorepo: drop Node 12 support (7966821)

Features

  • eslint-plugin: add React config (645cd45)
  • eslint-plugin: add Svelte config (e3f6bb2)
  • eslint-plugin: add TypeScript configuration (25c5fef)

BREAKING CHANGES

  • monorepo: Node 12 is not longer supported. Node 14 is the minimum required version now.

8.0.2 (2021-10-17)

Bug Fixes

8.0.1 (2021-08-07)

Note: Version bump only for package @homer0/eslint-plugin

8.0.0 (2021-07-25)

Bug Fixes

  • eslint-plugin: update dependencies (c191d8c)

BREAKING CHANGES

  • eslint-plugin: Latest version of eslint-plugin-jsdoc requires Node 12.20, so now this plugins requires too.

7.0.0 (2021-04-11)

Bug Fixes

  • monorepo: drop support for Node 10 (7098299)

BREAKING CHANGES

  • monorepo: The monorepo and the packages no longer support Node 10.

6.0.3 (2021-03-07)

Bug Fixes

  • update dependencies (7437e8c)
  • monorepo: update dependencies (cf78785)

6.0.2 (2021-01-25)

Bug Fixes

6.0.1 (2020-11-28)

Bug Fixes

  • include publishConfig and fix the format of the repository property (4c25780)

6.0.0 (2020-11-05)

Bug Fixes

  • eslint-plugin: allow R.__ (6de6446)
  • eslint-plugin: disable the rule sentences on JSDoc descriptions (ebca8be)
  • eslint-plugin: disallow double quotes (e114ae4)
  • monorepo: update dependencies (cd892a8)

Features

  • eslint-plugin: add variants with Prettier (d845200)

BREAKING CHANGES

  • eslint-plugin: The rule that validates sentences on JSDoc descriptions was removed, and while it's a breaking changes as it won't validate it anymore, the rule expression is broken, as it gets triggered by the template tag.
  • eslint-plugin: Before this commit, using double quotes to avoid escaping a single quote was allowed, but now it will trigger an error.

5.0.2 (2020-08-10)

Bug Fixes

5.0.1 (2020-07-22)

Bug Fixes

5.0.0 (2020-07-11)

Bug Fixes

  • only run release on master (76dcb40)
  • remove the overwrite for comma-dangle (6c4a98e)
  • remove the overwrite for max-classes-per-file (2ef5130)
  • remove the overwrite for prefer-object-spread (f1df7c9)
  • set the preferred type to Object (e71ae90)
  • use github plugin instead of git (27c9beb)

Features

  • add JSDoc and sort-class-members (340a540)
  • add jsdoc configuration (8caf8c3)
  • add the sort-class-members plugin (07354ce)
  • allow the use of the tag parent (4d79c60)
  • exclude 60 from no-magic-numbers (58d9c8e)

BREAKING CHANGES

  • All class members will now have to follow the order set by the sort-class-members plugin configuration.
  • You'll need to stop using Object.assign for most of the basic cases.
  • You now need to add a trailing comma to function parameters.
  • You can't have more than one class per file now.