Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
118 commits
Select commit Hold shift + click to select a range
2e287f7
chore: fork as eslint-plugin-rxjs-x
JasonWeinzierl Nov 1, 2024
c292d78
refactor: rename source to src
JasonWeinzierl Nov 1, 2024
70f4107
test: rename tests to .test.ts
JasonWeinzierl Nov 1, 2024
6c28ba7
chore: yarn 4.5.1
JasonWeinzierl Nov 1, 2024
e867d75
refactor: remove eslint-etc from dependencies
JasonWeinzierl Nov 1, 2024
ef001fb
refactor: remove requireindex from dependencies
JasonWeinzierl Nov 1, 2024
31b43dc
fix: make sure typeAnnotation exists
JasonWeinzierl Nov 1, 2024
2b90145
feat!: ESLint v9 support
JasonWeinzierl Nov 1, 2024
33f23df
docs: add reasoning to no-async-subscribe
JasonWeinzierl Nov 1, 2024
26b2ee3
feat: add requiresTypeChecking to meta.docs
JasonWeinzierl Nov 1, 2024
bd710b1
chore: build output with unbuild
JasonWeinzierl Nov 1, 2024
915553c
chore: specify quote_type=single
JasonWeinzierl Nov 1, 2024
2071126
chore: add code coverage and github-actions reporter
JasonWeinzierl Nov 1, 2024
22253ee
chore: install lcov in CI
JasonWeinzierl Nov 1, 2024
d963e2e
chore: fix repository url protocol
JasonWeinzierl Nov 1, 2024
9e485cd
chore: fix coverage files path
JasonWeinzierl Nov 1, 2024
3ab2e58
chore: add release script
JasonWeinzierl Nov 1, 2024
5d0c259
chore: release v0.0.1
JasonWeinzierl Nov 1, 2024
25fe704
chore: add license and npm badges
JasonWeinzierl Nov 1, 2024
f460633
test: coverage on plugin and recommended config (#1)
JasonWeinzierl Nov 1, 2024
2d330aa
fix: plugin types are wrong in CJS (#2)
JasonWeinzierl Nov 1, 2024
bd60e9e
chore: release v0.0.2
JasonWeinzierl Nov 1, 2024
218ae7b
style: add vitest lint plugin and fix new errors
JasonWeinzierl Nov 4, 2024
804812c
chore: exclude build scripts from code coverage
JasonWeinzierl Nov 4, 2024
c64f9f6
fix: remove tsutils and tsutils-etc (#3)
JasonWeinzierl Nov 4, 2024
2e82594
chore: release v0.1.0
JasonWeinzierl Nov 4, 2024
0b47390
fix: more CJS compatibility (#4)
JasonWeinzierl Nov 5, 2024
a83af05
docs: auto-generate rule docs (#5)
JasonWeinzierl Nov 5, 2024
6589991
chore: update CHANGELOG
JasonWeinzierl Nov 5, 2024
00a6e93
chore: fix lint-docs script
JasonWeinzierl Nov 5, 2024
ee705d2
docs: add meta.schema descriptions to rule options (#6)
JasonWeinzierl Nov 5, 2024
caec820
chore: prep v0.2.0
JasonWeinzierl Nov 5, 2024
fe8f2b0
chore: release v0.2.0
JasonWeinzierl Nov 5, 2024
6cfe283
docs: better example of installation
JasonWeinzierl Nov 5, 2024
07206eb
chore(ci): only report coverage once
JasonWeinzierl Nov 7, 2024
e7d0d70
chore(deps): decrease min tseslint version (#10)
JasonWeinzierl Nov 7, 2024
6c6a2b7
chore: prep v0.2.1
JasonWeinzierl Nov 7, 2024
b6ff846
chore: release v0.2.1
JasonWeinzierl Nov 7, 2024
1693df0
fix: broken imports in esm + typescript <5.5 (#11)
JasonWeinzierl Nov 7, 2024
0ae7e33
chore: prep v0.2.2
JasonWeinzierl Nov 7, 2024
fd66879
chore: release v0.2.2
JasonWeinzierl Nov 7, 2024
90b03e6
chore: rxjs as optional peer dependency
JasonWeinzierl Nov 7, 2024
9d41fd3
chore(deps-dev): bump internal rxjs to 7.8.1
JasonWeinzierl Nov 7, 2024
6870c8a
chore(deps-dev): keep internal node types at lowest supported version
JasonWeinzierl Nov 7, 2024
ef2f886
fix(no-ignored-replay-buffer): check config bufferSize (#12)
JasonWeinzierl Nov 8, 2024
59d5ade
chore: prep v0.2.3
JasonWeinzierl Nov 8, 2024
b6fdecf
chore: release v0.2.3
JasonWeinzierl Nov 8, 2024
bb05898
docs: fix toObservable asObservable typo
JasonWeinzierl Nov 8, 2024
b7a0a7b
test: remove mapTo in favor of map
JasonWeinzierl Nov 8, 2024
39be258
chore: deprecate rxjs-x/macro (#13)
JasonWeinzierl Nov 9, 2024
ce875a0
chore: prep v0.2.4
JasonWeinzierl Nov 9, 2024
37f8027
chore: release v0.2.4
JasonWeinzierl Nov 9, 2024
6586071
chore: add dependabot on dev deps and GHA
JasonWeinzierl Nov 12, 2024
bc9e50b
chore: dependency-type development
JasonWeinzierl Nov 12, 2024
3c98b7b
chore: increase dev dependencies
JasonWeinzierl Nov 12, 2024
6001a8e
chore(ci): add write permissions to ci token
JasonWeinzierl Nov 12, 2024
7220e8b
chore(deps-dev): bump @vitest/eslint-plugin from 1.1.7 to 1.1.8 in th…
dependabot[bot] Nov 12, 2024
8d8f5e9
chore(deps-dev): bump the typescript-eslint group with 2 updates (#17)
dependabot[bot] Nov 12, 2024
8196648
chore(deps-dev): bump bumpp from 9.8.0 to 9.8.1 (#20)
dependabot[bot] Nov 12, 2024
54398f9
chore: enforce 90% code coverage
JasonWeinzierl Nov 12, 2024
3c93ed3
chore(deps-dev): bump eslint-plugin-import-x from 4.4.0 to 4.4.2 (#18)
dependabot[bot] Nov 12, 2024
4ee7938
chore(deps-dev): bump markdownlint-cli2 from 0.14.0 to 0.15.0 (#19)
dependabot[bot] Nov 12, 2024
e3a1f8c
test: fix tests failing to import other virtual files
JasonWeinzierl Nov 12, 2024
8d5bbc9
chore: rename vitest config to avoid CJS warning
JasonWeinzierl Nov 12, 2024
cc439b1
chore(deps-dev): bump vitest from 2.1.4 to 2.1.5
JasonWeinzierl Nov 13, 2024
4bd72fd
refactor: remove unnecessary functions from getTypeServices (#23)
JasonWeinzierl Nov 14, 2024
9ecd973
chore(deps-dev): bump @eslint/plugin-kit from 0.2.2 to 0.2.3
JasonWeinzierl Nov 16, 2024
02fdffd
feat(throw-error)!: stop linting throw statements (#22)
JasonWeinzierl Nov 16, 2024
994ff25
feat(ban-operators)!: type check, report in place (#25)
JasonWeinzierl Nov 16, 2024
9bd896e
feat(no-ignored-default-value): new rule for enforcing defaultValue (…
JasonWeinzierl Nov 16, 2024
3b96352
chore: prep v0.3.0
JasonWeinzierl Nov 16, 2024
6fe72f0
chore: release v0.3.0
JasonWeinzierl Nov 16, 2024
d6a105d
chore: allow duplicate headings unless siblings
JasonWeinzierl Nov 16, 2024
2d09b5e
docs: standardize changelog format, add detail
JasonWeinzierl Nov 16, 2024
a5e51b1
docs(no-async-subscribe): additional explanation (#26)
JasonWeinzierl Nov 16, 2024
bda8626
chore(deps-dev): drop tsx dependency
JasonWeinzierl Nov 16, 2024
46e105f
fix(no-ignored-error): check observer object too (#27)
JasonWeinzierl Nov 16, 2024
4023c7a
chore: prep v0.3.1
JasonWeinzierl Nov 16, 2024
502ad43
chore: release v0.3.1
JasonWeinzierl Nov 16, 2024
4ddd13f
chore(deps-dev): bump eslint-plugin-n from 17.13.1 to 17.13.2 (#29)
dependabot[bot] Nov 18, 2024
d12958c
chore(deps-dev): bump eslint-plugin-eslint-plugin from 6.3.1 to 6.3.2…
dependabot[bot] Nov 18, 2024
05862a3
chore(no-compat): deprecated. compat is gone from RxJS v7+ (#32)
JasonWeinzierl Nov 18, 2024
cec2d60
feat(no-topromise): suggest `lastValueFrom` or `firstValueFrom` (#38)
JasonWeinzierl Nov 21, 2024
e3b8090
feat(prefer-root-operators): new rule (#34)
JasonWeinzierl Nov 22, 2024
59cfaf0
chore: prep v0.3.2
JasonWeinzierl Nov 22, 2024
a722e58
chore: release v0.3.2
JasonWeinzierl Nov 22, 2024
1d1ea64
docs: contributing guidelines
JasonWeinzierl Nov 22, 2024
83a01e2
docs: migration instructions
JasonWeinzierl Nov 22, 2024
ac21fb1
chore(deps-dev): bump cross-spawn from 7.0.3 to 7.0.6 (#44)
JasonWeinzierl Nov 24, 2024
93ef8e8
feat(no-implicit-any-catch)!: default to allow explicit any (#42)
JasonWeinzierl Nov 24, 2024
f2bf3fa
feat(strict): add strict configuration (#41)
JasonWeinzierl Nov 24, 2024
95af8bd
docs: changes for v0.4.0
JasonWeinzierl Nov 24, 2024
8d452cc
chore: release v0.4.0
JasonWeinzierl Nov 24, 2024
10c3d20
chore(deps-dev): bump the typescript-eslint group with 2 updates (#45)
dependabot[bot] Nov 25, 2024
e06705b
chore(deps-dev): bump typescript from 5.6.3 to 5.7.2 (#47)
dependabot[bot] Nov 25, 2024
b4b1c07
chore(deps-dev): bump @stylistic/eslint-plugin from 2.10.1 to 2.11.0 …
dependabot[bot] Nov 25, 2024
02b66bc
chore(deps-dev): bump eslint-plugin-n from 17.13.2 to 17.14.0 (#49)
dependabot[bot] Nov 25, 2024
3181826
chore(ci): set up publish workflow (#53)
JasonWeinzierl Nov 26, 2024
b7c567e
chore: yarn 4.5.3 (#52)
JasonWeinzierl Nov 26, 2024
2eea523
docs: changes for 0.4.1
JasonWeinzierl Nov 26, 2024
2484aa1
chore: release v0.4.1
JasonWeinzierl Nov 26, 2024
1a2e615
test: fix error msg in unit tests might be [Object object] (#54)
JasonWeinzierl Nov 26, 2024
1268dc8
feat(no-floating-observables)!: replace `no-ignored-observable` (#55)
JasonWeinzierl Nov 28, 2024
ada5d55
feat(recommended)!: add four rules to recommended (#56)
JasonWeinzierl Nov 28, 2024
3b338fd
docs: changes for 0.5.0
JasonWeinzierl Nov 28, 2024
b122a8f
chore: release v0.5.0
JasonWeinzierl Nov 28, 2024
41c7be8
feat(no-misused-observables): new rule (#58)
JasonWeinzierl Dec 3, 2024
52ba4ca
chore(deps-dev): bump the vitest group with 3 updates (#62)
dependabot[bot] Dec 3, 2024
7ea5273
chore(dependabot): don't update node types automatically (#69)
JasonWeinzierl Dec 3, 2024
76c2775
chore(deps-dev): bump the vitest group with 3 updates (#70)
dependabot[bot] Dec 3, 2024
598a2ea
chore(deps-dev): eslint 9.16, tseslint 8.17 (#74)
JasonWeinzierl Dec 3, 2024
c3b3b33
feat: add `name` to each configuration (#75)
JasonWeinzierl Dec 3, 2024
8adecf3
docs: changes for v0.5.1
JasonWeinzierl Dec 3, 2024
f453132
chore: release v0.5.1
JasonWeinzierl Dec 3, 2024
6cc1d61
feat: Add `no-subscribe-in-pipe` rule to forbid calling `subscribe` w…
Danevandy99 Aug 19, 2024
7448e49
chore: Add docs and readme link
Danevandy99 Aug 20, 2024
3a064cc
Making requested changes
Danevandy99 Dec 4, 2024
150d235
Update src/rules/no-subscribe-in-pipe.ts
Danevandy99 Dec 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 0 additions & 26 deletions .circleci/config.yml

This file was deleted.

3 changes: 3 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ indent_size = 2
insert_final_newline = true
trim_trailing_whitespace = true

[*.{js,ts}]
quote_type = single

[*.md]
indent_size = 4
insert_final_newline = false
Expand Down
13 changes: 0 additions & 13 deletions .eslintrc.json

This file was deleted.

12 changes: 0 additions & 12 deletions .github/FUNDING.yml

This file was deleted.

33 changes: 33 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: weekly

- package-ecosystem: npm
directory: "/"
schedule:
interval: weekly
open-pull-requests-limit: 10
allow:
- dependency-type: development
ignore:
- dependency-name: "@types/node"
update-types:
- version-update:semver-major
- version-update:semver-minor
versioning-strategy: increase
groups:
vitest:
patterns:
- "vitest"
- "@vitest/*"
typescript-eslint:
patterns:
- "typescript-eslint"
- "@typescript-eslint/*"
eslint:
patterns:
- "eslint"
- "@eslint/*"
57 changes: 57 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
on:
push:
branches:
- main
pull_request: {}
workflow_call: {}

concurrency:
group: '${{ github.workflow }} - ${{ github.head_ref || github.ref }}'
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

permissions:
contents: read
pull-requests: write

jobs:

check:
strategy:
matrix:
node-version: [18, 20]

runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Setup LCOV
uses: hrishikesh-kadam/setup-lcov@v1
- name: Setup Yarn
run: corepack enable

- name: Install Packages
run: yarn install

- name: Type Check
run: yarn typecheck

- name: Lint
run: yarn lint

- name: Test Coverage
run: yarn coverage

- name: Report Coverage
if: ${{ matrix.node-version == 20 && github.event_name == 'pull_request' }}
uses: zgosalvez/github-actions-report-lcov@v4
with:
coverage-files: coverage/lcov.info
minimum-coverage: 90
github-token: ${{ secrets.GITHUB_TOKEN }}
update-comment: true
45 changes: 45 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
on:
workflow_dispatch: {}
release:
types:
- published

jobs:
check:
uses: ./.github/workflows/ci.yml
secrets: inherit

publish:
needs: check

runs-on: ubuntu-latest

permissions:
contents: read
id-token: write

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: lts/*
registry-url: 'https://registry.npmjs.com'
check-latest: true
- name: Setup Yarn
run: corepack enable

- name: Install Packages
run: yarn install

- name: Build
run: yarn build

- name: Publish
run: |
npm install -g npm@latest
npm publish --provenance
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
138 changes: 133 additions & 5 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,133 @@
yarn-error.log
/build
/dist
/node_modules
/temp
# Node.gitignore

# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
.pnpm-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# Snowpack dependency directory (https://snowpack.dev/)
web_modules/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional stylelint cache
.stylelintcache

# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variable files
.env
.env.development.local
.env.test.local
.env.production.local
.env.local

# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache

# Next.js build output
.next
out

# Nuxt.js build / generate output
.nuxt
dist

# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and not Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public

# vuepress build output
.vuepress/dist

# vuepress v2.x temp and cache directory
.temp
.cache

# Docusaurus cache and generated files
.docusaurus

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# TernJS port file
.tern-port

# Stores VSCode versions used for testing VSCode extensions
.vscode-test

# yarn v2
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*

4 changes: 0 additions & 4 deletions .husky/pre-commit

This file was deleted.

6 changes: 6 additions & 0 deletions .markdownlint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"line-length": false,
"MD024": {
"siblings_only": true
}
}
17 changes: 0 additions & 17 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,5 @@
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "mocha",
"program": "${workspaceFolder}/node_modules/mocha/bin/_mocha",
"args": [
"-r",
"ts-node/register",
"--timeout",
"999999",
"--colors",
"${workspaceFolder}/tests/rules/*.ts",
],
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen",
"protocol": "inspector"
}
]
}
5 changes: 4 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
{
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"typescript.tsdk": "node_modules\\typescript\\lib"
}
}
1 change: 1 addition & 0 deletions .yarnrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
nodeLinker: node-modules
Loading