Back to N8n

Disallow usage of deprecated functions and types from n8n-workflow package (`@n8n/community-nodes/no-deprecated-workflow-functions`)

packages/@n8n/eslint-plugin-community-nodes/docs/rules/no-deprecated-workflow-functions.md

1.37.21.6 KB
Original Source

Disallow usage of deprecated functions and types from n8n-workflow package (@n8n/community-nodes/no-deprecated-workflow-functions)

šŸ’¼ This rule is enabled in the following configs: āœ… recommended, ā˜‘ļø recommendedWithoutN8nCloudSupport.

šŸ’” This rule is manually fixable by editor suggestions.

<!-- end auto-generated rule header -->

Rule Details

Prevents usage of deprecated functions from n8n-workflow package and suggests modern alternatives.

Examples

āŒ Incorrect

typescript
import { IRequestOptions } from 'n8n-workflow';

export class MyNode implements INodeType {
  async execute(this: IExecuteFunctions) {
    // Using deprecated request helper function
    const response = await this.helpers.request({
      method: 'GET',
      url: 'https://api.example.com/data',
    });

    // Using deprecated type
    const options: IRequestOptions = {
      method: 'POST',
      url: 'https://api.example.com/data',
    };

    return [this.helpers.returnJsonArray([response])];
  }
}

āœ… Correct

typescript
import { IHttpRequestOptions } from 'n8n-workflow';

export class MyNode implements INodeType {
  async execute(this: IExecuteFunctions) {
    // Using modern httpRequest helper function
    const response = await this.helpers.httpRequest({
      method: 'GET',
      url: 'https://api.example.com/data',
    });

    // Using modern type
    const options: IHttpRequestOptions = {
      method: 'POST',
      url: 'https://api.example.com/data',
    };

    return [this.helpers.returnJsonArray([response])];
  }
}