WIP: Resolve "i18n linters - ESLint Vue"
What does this MR do?
-
Configure vue-i18n for gitlab -
Lint gitlab -
#63457 (closed) Autofix gitlab repo -
#63458 (moved) Log issues for non-autofixable lints
-
-
#63560 (closed) Integrate vue-i18n plugin into gitlab -
Publish eslint-plugin-vue-i18n -
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/31124/diffs?commit_id=d46af03ef3eacbeb858e4fde67cb4e4bf8412811 Apply to master -
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/31124/diffs?commit_id=f418214deccbdd9178c5582156a378cde2a94def eslint-disable all the outstanding lint errors that were not autofixed
-
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation created/updated or follow-up review issue created -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Performance and testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team
Closes #57969 (moved)
Merge request reports
Activity
changed milestone to %12.0
assigned to @ekigbo
added 365 commits
-
8bfc3a26...29883453 - 362 commits from branch
master
- 6f609f4e - Added no-bare-strings rule
- b1eeb7cb - WIP: Added codemod before autofix vue i18n offences
- bcb31996 - wip - autofix
Toggle commit list-
8bfc3a26...29883453 - 362 commits from branch
8 Errors ab2ef1ec: The commit subject must contain at least three words ab2ef1ec: Commits that change 30 or more lines across at least three files must describe these changes in the commit body 62046056: The commit subject must contain at least three words 62046056: The commit subject must start with a capital letter 44bbbcc2: Commits that change 30 or more lines across at least three files must describe these changes in the commit body 71a89085: The commit subject and body must be separated by a blank line 71a89085: Commits that change 30 or more lines across at least three files must describe these changes in the commit body 016aa507: The commit subject and body must be separated by a blank line 4 Warnings This merge request is quite big (more than 1496 lines changed), please consider splitting it into multiple merge requests. ced64737: This commit’s subject line is acceptable, but please try to reduce it to 50 characters. This merge request has introduced duplicated yarn dependencies. This merge request changed files with disabled eslint rules. Please consider fixing them. 1 Message This merge request includes changes to Vue files that have both CE and EE versions. Commit message standards
One or more commit messages do not meet our Git commit message standards. For more information on how to write a good commit message, take a look at How to Write a Git Commit Message.
Here is an example of a good commit message:
Reject ruby interpolation in externalized strings When using ruby interpolation in externalized strings, they can't be detected. Which means they will never be presented to be translated. To mix variables into translations we need to use `sprintf` instead. Instead of: _("Hello #{subject}") Use: _("Hello %{subject}") % { subject: 'world' }
This is an example of a bad commit message:
updated README.md
This commit message is bad because although it tells us that README.md is updated, it doesn't tell us why or how it was updated.
Duplicate yarn dependencies
The following dependencies should be de-duplicated:
Package "@babel/plugin-transform-named-capturing-groups-regex" wants ^7.4.4 and could get 7.4.5, but got 7.4.4
Package "@babel/plugin-transform-regenerator" wants ^7.4.4 and could get 7.4.5, but got 7.4.4
Package "@babel/preset-env" wants ^7.4.4 and could get 7.4.5, but got 7.4.4
Package "acorn" wants ^6.0.1 and could get 6.1.1, but got 6.0.5
Package "acorn" wants ^6.0.2 and could get 6.1.1, but got 6.0.5
Package "acorn" wants ^6.0.5 and could get 6.1.1, but got 6.0.5
Package "browserslist" wants ^4.4.1 and could get 4.6.3, but got 4.6.0
Package "browserslist" wants ^4.5.2 and could get 4.6.3, but got 4.6.0
Package "browserslist" wants ^4.5.4 and could get 4.6.3, but got 4.6.0
Package "caniuse-lite" wants ^1.0.30000932 and could get 1.0.30000975, but got 1.0.30000969
Package "caniuse-lite" wants ^1.0.30000967 and could get 1.0.30000975, but got 1.0.30000969
Package "core-js-compat" wants ^3.0.0 and could get 3.1.4, but got 3.0.1
Package "core-js" wants ^3.1.3 and could get 3.1.4, but got 3.1.3
Package "dom-serializer" wants 0 and could get 0.1.1, but got 0.1.0
Package "domelementtype" wants 1 and could get 1.3.1, but got 1.3.0
Package "domelementtype" wants ^1.3.0 and could get 1.3.1, but got 1.3.0
Package "domutils" wants ^1.5.1 and could get 1.5.1, but got 1.6.2
Package "electron-to-chromium" wants ^1.3.133 and could get 1.3.165, but got 1.3.135
Package "htmlparser2" wants ^3.10.0 and could get 3.10.1, but got 3.10.0
Package "htmlparser2" wants ^3.9.0 and could get 3.10.1, but got 3.10.0
Package "ignore" wants ^5.0.4 and could get 5.1.2, but got 5.0.5
Package "node-releases" wants ^1.1.19 and could get 1.1.23, but got 1.1.19
Package "parse5" wants ^5 and could get 5.1.0, but got 5.0.0
Package "readable-stream" wants ^3.0.6 and could get 3.4.0, but got 3.0.6
Package "regexp-tree" wants ^0.1.0 and could get 0.1.10, but got 0.1.0
Package "semver" wants ^6.0.0 and could get 6.1.1, but got 6.0.0
Package "write-file-atomic" wants ^2.3.0 and could get 2.4.1, but got 2.4.3
Please run the following command and commit the changes to
yarn.lock
:node_modules/.bin/yarn-deduplicate --strategy fewer yarn.lock \ && yarn install
Disabled eslint rules
The following files have disabled
eslint
rules. Please consider fixing them:app/assets/javascripts/clusters/components/application_row.vue
app/assets/javascripts/vue_shared/components/deprecated_modal.vue
transform.js
Run the following command for more details
node_modules/.bin/eslint --report-unused-disable-directives --no-inline-config \ 'app/assets/javascripts/clusters/components/application_row.vue' \ 'app/assets/javascripts/vue_shared/components/deprecated_modal.vue' \ 'transform.js'
Reviewer roulette
Changes that require review have been detected! A merge request is normally reviewed by both a reviewer and a maintainer in its primary category (e.g. frontend or backend), and by a maintainer in all other categories.
To spread load more evenly across eligible reviewers, Danger has randomly picked a candidate for each review slot. Feel free to override this selection if you think someone else would be better-suited, or the chosen person is unavailable.
Once you've decided who will review this merge request, mention them as you normally would! Danger does not (yet?) automatically notify them for you.
Category Reviewer Maintainer frontend Scott Hampton ( @shampton
)Kushal Pandya ( @kushalpandya
)These files couldn't be categorised, so Danger was unable to suggest a reviewer. Please consider creating a merge request to add support for them.
i18n/cleanup.sh
i18n/create-branch.sh
i18n/create-mr.sh
i18n/create-patch.sh
i18n/exec.sh
Vue
<template>
in CE and EESome Vue files in CE have a counterpart in EE. (For example,
path/to/file.vue
andee/path/to/file.vue
.)When run in the context of CE, the
<template>
of the CE Vue file is used. When run in the context of EE, the<template>
of the EE Vue file is used.It's easy to accidentally make a change to a CE
<template>
that should appear in both CE and EE without making the change in both places. When this happens, the change only takes effect in CE.The following Vue files were changed as part of this merge request that include both a CE and EE version of the file:
app/assets/javascripts/vue_merge_request_widget/mr_widget_options.vue
If you made a change to the
<template>
of any of these Vue files that should be visible in both CE and EE, please ensure you have made your change to both versions of the file.A better alternative
An even better alternative is to refactor this component to only use a single template for both CE and EE. More info on this approach here: https://docs.gitlab.com/ee/development/ee_features.html#template-tag
Generated by
DangerEdited by 🤖 GitLab Bot 🤖added 43 commits
-
bcb31996...02fad28a - 39 commits from branch
master
- c7b079e3 - Added no-bare-strings rule
- bb4acd8c - WIP: Added codemod before autofix vue i18n offences
- ac1168cc - wip - autofix
- df59e038 - WIP: Testing autofix
Toggle commit list-
bcb31996...02fad28a - 39 commits from branch
marked the checklist item Add autofixing capability as completed
added 23 commits
-
df59e038...c3d77232 - 20 commits from branch
master
- a4ce6cf1 - Added no-bare-strings rule
- 422b7d8e - WIP: Added codemod before autofix vue i18n offences
- e2ffb03e - WIP: Testing autofix
Toggle commit list-
df59e038...c3d77232 - 20 commits from branch
changed milestone to %12.1
added 144 commits
Toggle commit listremoved estimationneeded label
added 1181 commits
-
ab2ef1ec...9e0a66c4 - 1173 commits from branch
master
- 9b2d8e05 - Added no-bare-strings rule
- 8abaf6c6 - WIP: Added codemod before autofix vue i18n offences
- b3172e6e - WIP: Testing autofix
-
a1b3b2c2 - WIP: autofix
-
f4866dab - WIP: Prettier
- e43384c5 - i18n helpers
- cfc42ef4 - Updated scripts
- 2458686d - Added i18n bash helpers
Toggle commit list-
ab2ef1ec...9e0a66c4 - 1173 commits from branch
mentioned in issue #65095 (closed)
changed milestone to %12.2
added missed:12.1 label
marked the checklist item #63458 (moved) Log issues for non-autofixable lints as completed
marked the checklist item #63560 (closed) Integrate vue-i18n plugin into gitlab as completed
Closing since all aspects are covered in other MRs/Issues, moving the list to the main issue at #57969 (moved)
mentioned in issue #57969 (moved)
added devopsmanage label