Skip to content

Linters unification #433

@bydawen

Description

@bydawen

Description

There is an issue, that in the different MFE repositories and related packages, we have different configurations for stylelint, eslint, tsconfig. We have appropriate repositories to unify these configurations:

The right solution should be to install the necessary configurations in each MFE repository and reuse them with minimal modification (overrides), if necessary. Currently, these modifications (overrides) of the base configurations are not minimal. After analysis of the MFE repos it can be sorted by minimal/minor/high overrides for the linters configurations or the absence of any of it.

Here's tables with corresponding linter config/overrides:

MFE name stylelint-config-edx eslint typescript-config
frontend-app-authn - .eslintrc.js with additional modifiers -
frontend-app-account - .eslintrc.js -
frontend-component-footer - .eslintrc.js -
frontend-component-header - .eslintrc.js tsconfig.json with additional modifiers (MINOR)
frontend-app-authoring .stylelintrc.json with additional overides .eslintrc.js with additional modifiers tsconfig.json with additional modifiers (MINOR)
frontend-app-discussions - .eslintrc.js with additional modifiers tsconfig.json with additional modifiers (MINOR)
frontend-app-profile - .eslintrc.js -
frontend-app-learner-dashboard - .eslintrc.js with additional modifiers tsconfig.json with additional modifiers (MINOR)
frontend-app-communications - .eslintrc.js with additional modifiers (MINOR) tsconfig.json with additional modifiers (MINOR)
frontend-app-learning - .eslintrc.js with additional modifiers tsconfig.json with additional modifiers (MINOR)
frontend-app-gradebook - .eslintrc.js with additional modifiers -
frontend-app-learner-record - .eslintrc.js with additional modifiers (MINOR) -
frontend-app-ora-grading - .eslintrc.js with additional modifiers -
frontend-app-ora - .eslintrc.js with additional modifiers tsconfig.json with additional modifiers (MINOR)
frontend-app-catalog .stylelintrc.json with additional overides .eslintrc.js with additional modifiers tsconfig.json with additional modifiers (MINOR)
frontend-template-application - .eslintrc.js -
paragon .stylelintrc.json with additional overides .eslintrc.js with additional modifiers tsconfig.json with additional modifiers (MINOR)
frontend-lib-special-exams - .eslintrc.js -
frontend-app-publisher .stylelintrc.json with additional overides .eslintrc.js -
frontend-app-admin-portal - .eslintrc.js with additional modifiers tsconfig.json with additional modifiers (MINOR)
frontend-build - .eslintrc.js with additional modifiers (MINOR) tsconfig.json with additional modifiers (MINOR)
frontend-platform - .eslintrc.js with additional modifiers -
frontend-plugin-framework - .eslintrc.js with additional modifiers (MINOR) -
edx-bootstrap .stylelintrc.json with additional overides (MINOR) - -
openedx/cypress-e2e-tests - .eslintrc.js with additional modifiers (MINOR) -

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions