peopledoc / eslint-config-peopledoc

ESLint config for PeopleDoc frontend projects
MIT License
1 stars 1 forks source link

Update to follow ember last changes and split ember in 3 configs (JS-190) #48

Closed GreatWizard closed 4 years ago

GreatWizard commented 4 years ago

⚠️ Breaking change

Update ember configs in order to be compliant with recent ember version (#48)

Our previous dependencies wasn't updated to follow new code from ember 3.12~3.15.

Impacts of the update

New .eslintrc.js files

If you were using ember-feature-flag and the old withFeature helper, please consider update your code by using:

import { enableFeature } from 'ember-feature-flags/test-support';

Source: https://github.com/kategengler/ember-feature-flags#test-helpers

New warning:

Warn every usage of jquery, that can help in order to detect legacy code.

New errors:
// Before
import Service from '@ember/service'
import { inject as service } from '@ember/service'

// After
import Service, { inject as service } from '@ember/service'
// Before
{
 a: {},
 b: {}
}

// After
{
 a: {},

 b: {}
}

See https://eslint.org/docs/rules/padding-line-between-statements

// Before
      if (user.get('id')) {
        context.type = 'employee'
        context.userId = user.get('id')
      }
      if (user.get('language')) {
        context.userLanguage = user.get('language')
      }

// After
      if (user.get('id')) {
        context.type = 'employee'
        context.userId = user.get('id')
      }

      if (user.get('language')) {
        context.userLanguage = user.get('language')
      }

See https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/no-relative-parent-imports.md

💡 eslint can fix almost all new rules for you: eslint . --fix