{"id":15542953,"url":"https://github.com/onechiporenko/eslint-plugin-ember-cleanup","last_synced_at":"2025-04-23T17:20:56.894Z","repository":{"id":57229820,"uuid":"50723710","full_name":"onechiporenko/eslint-plugin-ember-cleanup","owner":"onechiporenko","description":"Check Ember-code for some potential issues","archived":false,"fork":false,"pushed_at":"2024-04-06T05:53:20.000Z","size":122,"stargazers_count":8,"open_issues_count":4,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-03T12:27:24.002Z","etag":null,"topics":["ember","eslint","eslint-plugin"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/onechiporenko.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-01-30T12:21:52.000Z","updated_at":"2017-12-28T19:56:42.000Z","dependencies_parsed_at":"2024-06-19T19:04:54.059Z","dependency_job_id":"8ae28e14-958a-42ac-b64c-012812bccf56","html_url":"https://github.com/onechiporenko/eslint-plugin-ember-cleanup","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onechiporenko%2Feslint-plugin-ember-cleanup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onechiporenko%2Feslint-plugin-ember-cleanup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onechiporenko%2Feslint-plugin-ember-cleanup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/onechiporenko%2Feslint-plugin-ember-cleanup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/onechiporenko","download_url":"https://codeload.github.com/onechiporenko/eslint-plugin-ember-cleanup/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250477828,"owners_count":21437049,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ember","eslint","eslint-plugin"],"created_at":"2024-10-02T12:25:00.221Z","updated_at":"2025-04-23T17:20:56.851Z","avatar_url":"https://github.com/onechiporenko.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eslint-plugin-ember-cleanup\n\n[![Build Status](https://travis-ci.org/onechiporenko/eslint-plugin-ember-cleanup.svg)](https://travis-ci.org/onechiporenko/eslint-plugin-ember-cleanup)\n[![npm version](https://badge.fury.io/js/eslint-plugin-ember-cleanup.png)](http://badge.fury.io/js/eslint-plugin-ember-cleanup)\n[![License](http://img.shields.io/:license-mit-blue.svg)](http://doge.mit-license.org)\n[![Downloads](http://img.shields.io/npm/dm/eslint-plugin-ember-cleanup.svg)](https://www.npmjs.com/package/eslint-plugin-ember-cleanup)\n\n## Installation\n\nYou'll first need to install [ESLint](http://eslint.org):\n\n```\n$ npm i eslint --save-dev\n```\n\nNext, install `eslint-plugin-ember-cleanup`:\n\n```\n$ npm install eslint-plugin-ember-cleanup --save-dev\n```\n\n**Note:** If you installed ESLint globally (using the `-g` flag) then you must also install `eslint-plugin-ember-cleanup` globally.\n\n## Usage\n\nAdd `ember-cleanup` to the plugins section of your `.eslintrc` configuration file. You can omit the `eslint-plugin-` prefix:\n\n```json\n{\n  \"plugins\": [\n    \"ember-cleanup\"\n  ],\n  \"extends\": [\n    \"eslint:recommended\",\n    \"plugin:ember-cleanup/recommended\"\n  ]\n}\n```\n\n## Supported Rules\n\n| Rule | Description |\n|----- | ------------|\n| [max-dep-keys](./docs/rules/max-dep-keys.md)| Checks number of dependent keys |\n| [no-settimeout](./docs/rules/no-settimeout.md) | Proposes to use `run`-methods instead of `setTimeout` |\n| [no-throw](./docs/rules/no-throw.md) | Proposes to use `assert` from `@ember/debug` instead of throwing errors |\n| [no-typeof](./docs/rules/no-typeof.md) | Proposes to use `typeOf` from `@ember/utils` instead of  built-in `typeof` for some types check |\n| [cp-brace-expansion](./docs/rules/cp-brace-expansion.md) | Checks dependent keys for possibility to do brace expansion |\n| [no-is-array](./docs/rules/no-is-array.md) | Checks for array detection and propose to use `isArray` from `@ember/array` |\n| [no-this-in-dep-keys](./docs/rules/no-this-in-dep-keys.md) | Checks dependent keys for `this.`-prefix |\n| [one-level-each](./docs/rules/one-level-each.md) | Checks `@each` usage in the dependent keys |\n| [square-brackets](./docs/rules/square-brackets.md) | Checks `[]` usage in the dependent keys |\n| [no-multi-dots](./docs/rules/no-multi-dots.md) | Checks dependent keys to not contain `..` |\n| [no-typo-in-dep-keys](./docs/rules/no-typo-in-dep-keys.md) | Checks possible typos in the dependent keys (it doesn't check short keys) |\n| [cp-macro-args-limit](./docs/rules/cp-macro-args-limit.md) | Checks dependent keys count |\n| [cp-macro-not-key](./docs/rules/cp-macro-not-key.md) | Checks arguments for computed macros to not be dependent keys |\n| [no-expr-in-dep-keys](./docs/rules/no-expr-in-dep-keys.md) | Checks dependent keys to not contain expressions |\n| [no-empty-declaration](./docs/rules/no-empty-declaration.md) | Disallow empty `extend` for Ember Objects |\n| [cp-macro-alias](./docs/rules/cp-macro-alias.md) | Looks for Computed Properties that look like `computed.alias` but are written as 'general' CP |\n| [super-args](./docs/rules/super-args.md) | Checks potential invalid calls `_super` without `...` |\n| [route-model-return](./docs/rules/route-model-return.md) | Checks that `model` hook returns a value |\n| [no-dep-keys-loop](./docs/rules/no-dep-keys-loop.md) | Checks for loops in the dependent keys |\n\nDeprecated and removed:\n\n| Rule | Reason |\n|------|--------|\n| `no-declare-obj-components` | Use `ember/avoid-leaking-state-in-ember-objects` from [eslint-plugin-ember](https://github.com/ember-cli/eslint-plugin-ember) |\n| `no-set-in-getter` | Use `ember/no-side-effects` from [eslint-plugin-ember](https://github.com/ember-cli/eslint-plugin-ember) |\n| `no-dup-keys` | Use `ember/no-duplicate-dependent-keys` from [eslint-plugin-ember](https://github.com/ember-cli/eslint-plugin-ember) |\n| `destructuring` | It's not needed for modules API |\n| `no-define-property` | `defineProperty` is private, so it must not be used at all |\n| `no-console` | Proposed `Ember.Logger` is private, so rule may be replaced with `no-console` from ESLint | \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonechiporenko%2Feslint-plugin-ember-cleanup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fonechiporenko%2Feslint-plugin-ember-cleanup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fonechiporenko%2Feslint-plugin-ember-cleanup/lists"}