mirror of
https://github.com/idanoo/GoScrobble.git
synced 2024-11-26 18:35:14 +00:00
62 lines
1.4 KiB
Markdown
62 lines
1.4 KiB
Markdown
|
# `import/no-deprecated`
|
||
|
|
||
|
Reports use of a deprecated name, as indicated by a JSDoc block with a `@deprecated`
|
||
|
tag or TomDoc `Deprecated: ` comment.
|
||
|
|
||
|
using a JSDoc `@deprecated` tag:
|
||
|
|
||
|
```js
|
||
|
// @file: ./answer.js
|
||
|
|
||
|
/**
|
||
|
* this is what you get when you trust a mouse talk show
|
||
|
* @deprecated need to restart the experiment
|
||
|
* @returns {Number} nonsense
|
||
|
*/
|
||
|
export function multiply(six, nine) {
|
||
|
return 42
|
||
|
}
|
||
|
```
|
||
|
|
||
|
will report as such:
|
||
|
|
||
|
```js
|
||
|
import { multiply } from './answer' // Deprecated: need to restart the experiment
|
||
|
|
||
|
function whatever(y, z) {
|
||
|
return multiply(y, z) // Deprecated: need to restart the experiment
|
||
|
}
|
||
|
```
|
||
|
|
||
|
or using the TomDoc equivalent:
|
||
|
|
||
|
```js
|
||
|
// Deprecated: This is what you get when you trust a mouse talk show, need to
|
||
|
// restart the experiment.
|
||
|
//
|
||
|
// Returns a Number nonsense
|
||
|
export function multiply(six, nine) {
|
||
|
return 42
|
||
|
}
|
||
|
```
|
||
|
|
||
|
Only JSDoc is enabled by default. Other documentation styles can be enabled with
|
||
|
the `import/docstyle` setting.
|
||
|
|
||
|
|
||
|
```yaml
|
||
|
# .eslintrc.yml
|
||
|
settings:
|
||
|
import/docstyle: ['jsdoc', 'tomdoc']
|
||
|
```
|
||
|
|
||
|
### Worklist
|
||
|
|
||
|
- [x] report explicit imports on the import node
|
||
|
- [x] support namespaces
|
||
|
- [x] should bubble up through deep namespaces (#157)
|
||
|
- [x] report explicit imports at reference time (at the identifier) similar to namespace
|
||
|
- [x] mark module deprecated if file JSDoc has a @deprecated tag?
|
||
|
- [ ] don't flag redeclaration of imported, deprecated names
|
||
|
- [ ] flag destructuring
|