From e47ce42548494803370d17d2ef84efacab9923c8 Mon Sep 17 00:00:00 2001 From: Buck Doyle Date: Wed, 17 Feb 2021 15:01:44 -0600 Subject: [PATCH] Update Ember/Ember CLI to 3.20 (#9641) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This doesn’t include Ember Data, as we are still back on 3.12. Most changes are deprecation updates, linting fixes, and dependencies. It can be read commit-by-commit, though many of them are mechanical and skimmable. For the new linting exclusions, I’ve added them to the Tech Debt list. The decrease in test count is because linting is no longer included in ember test. There’s a new deprecation warning in the logs that can be fixed by updating Ember Power Select but when I tried that it caused it to render incorrectly, so I decided to ignore it for now and address it separately. --- ui/.eslintrc.js | 11 +- ui/app/adapters/application.js | 6 +- ui/app/app.js | 2 +- ui/app/components/agent-monitor.js | 2 +- ui/app/components/das/dismissed.hbs | 2 +- ui/app/components/das/error.hbs | 2 +- ui/app/components/das/recommendation-card.hbs | 2 +- ui/app/components/exec/task-group-parent.js | 6 +- ui/app/components/fs/browser.js | 6 +- ui/app/components/fs/directory-entry.js | 2 +- ui/app/components/fs/file.js | 6 +- ui/app/components/global-search/match.js | 2 +- ui/app/components/job-editor.js | 3 +- ui/app/components/line-chart.js | 16 +- ui/app/components/list-accordion.js | 2 +- ui/app/components/primary-metric.js | 6 +- ui/app/components/scale-events-chart.js | 2 +- ui/app/components/server-agent-row.js | 1 + ui/app/components/task-row.js | 2 +- ui/app/controllers/clients/index.js | 6 +- ui/app/controllers/csi/volumes/index.js | 2 +- ui/app/controllers/jobs/index.js | 6 +- ui/app/controllers/jobs/job/task-group.js | 2 +- ui/app/controllers/optimize.js | 4 + ui/app/controllers/topology.js | 4 +- ui/app/mixins/searchable.js | 12 +- ui/app/mixins/sortable-factory.js | 3 +- ui/app/models/agent.js | 6 +- ui/app/models/allocation.js | 7 +- ui/app/models/deployment.js | 7 +- ui/app/models/drain-strategy.js | 2 +- ui/app/models/evaluation.js | 5 +- ui/app/models/group-scaling.js | 2 +- ui/app/models/host-volume.js | 2 +- ui/app/models/job-plan.js | 6 +- ui/app/models/job-scale.js | 4 +- ui/app/models/job-summary.js | 5 +- ui/app/models/job-version.js | 5 +- ui/app/models/job.js | 9 +- ui/app/models/lifecycle.js | 2 +- ui/app/models/namespace.js | 4 +- ui/app/models/network.js | 2 +- ui/app/models/node-attributes.js | 2 +- ui/app/models/node-driver.js | 2 +- ui/app/models/node-event.js | 2 +- ui/app/models/node.js | 6 +- ui/app/models/placement-failure.js | 2 +- ui/app/models/plugin.js | 4 +- ui/app/models/policy.js | 4 +- ui/app/models/port.js | 2 +- ui/app/models/recommendation-summary.js | 5 +- ui/app/models/recommendation.js | 5 +- ui/app/models/reschedule-event.js | 2 +- ui/app/models/resources.js | 2 +- ui/app/models/scale-event.js | 2 +- ui/app/models/service.js | 2 +- ui/app/models/sidecar-proxy-upstream.js | 2 +- ui/app/models/storage-controller.js | 3 +- ui/app/models/storage-node.js | 3 +- ui/app/models/task-event.js | 2 +- .../models/task-group-deployment-summary.js | 2 +- ui/app/models/task-group-scale.js | 6 +- ui/app/models/task-group-summary.js | 2 +- ui/app/models/task-group.js | 10 +- ui/app/models/task-state.js | 2 +- ui/app/models/task.js | 2 +- ui/app/models/token.js | 6 +- ui/app/models/volume-definition.js | 2 +- ui/app/models/volume-mount.js | 4 +- ui/app/models/volume.js | 5 +- ui/app/router.js | 2 +- ui/app/serializers/application.js | 2 +- ui/app/services/system.js | 3 - ui/app/services/token.js | 2 - .../templates/allocations/allocation/fs.hbs | 2 +- .../allocations/allocation/index.hbs | 2 +- .../allocations/allocation/task/fs.hbs | 2 +- .../allocations/allocation/task/index.hbs | 2 +- .../allocations/allocation/task/logs.hbs | 2 +- ui/app/templates/application.hbs | 3 +- ui/app/templates/clients/client/index.hbs | 2 +- ui/app/templates/clients/client/monitor.hbs | 2 +- ui/app/templates/clients/index.hbs | 2 +- .../components/multi-select-dropdown.hbs | 2 +- ui/app/templates/csi/plugins/index.hbs | 2 +- .../csi/plugins/plugin/allocations.hbs | 2 +- ui/app/templates/csi/plugins/plugin/index.hbs | 2 +- ui/app/templates/csi/volumes/index.hbs | 2 +- ui/app/templates/csi/volumes/volume.hbs | 2 +- ui/app/templates/exec-loading.hbs | 2 +- ui/app/templates/exec.hbs | 2 +- ui/app/templates/head.hbs | 1 - ui/app/templates/jobs/index.hbs | 2 +- ui/app/templates/jobs/job/allocations.hbs | 2 +- ui/app/templates/jobs/job/definition.hbs | 2 +- ui/app/templates/jobs/job/deployments.hbs | 2 +- ui/app/templates/jobs/job/evaluations.hbs | 2 +- ui/app/templates/jobs/job/index.hbs | 2 +- ui/app/templates/jobs/job/task-group.hbs | 2 +- ui/app/templates/jobs/job/versions.hbs | 2 +- ui/app/templates/jobs/run.hbs | 2 +- ui/app/templates/servers/index.hbs | 2 +- ui/app/templates/servers/server/index.hbs | 2 +- ui/app/templates/servers/server/monitor.hbs | 2 +- ui/app/templates/settings/tokens.hbs | 2 +- ui/app/templates/topology.hbs | 2 +- .../utils/classes/allocation-stats-tracker.js | 8 +- ui/app/utils/classes/node-stats-tracker.js | 6 +- ui/config/ember-cli-update.json | 21 + ui/package.json | 34 +- ui/tests/acceptance/job-detail-test.js | 1 + ui/tests/helpers/module-for-job.js | 1 + .../integration/components/job-diff-test.js | 4 +- .../integration/components/job-editor-test.js | 4 +- .../components/lifecycle-chart-test.js | 2 +- .../components/list-pagination-test.js | 4 +- .../integration/components/list-table-test.js | 2 +- ui/tests/test-helper.js | 4 +- ui/tests/unit/serializers/application-test.js | 4 +- ui/tests/unit/utils/log-test.js | 10 +- ui/yarn.lock | 1213 +++++++++-------- 121 files changed, 878 insertions(+), 794 deletions(-) delete mode 100644 ui/app/templates/head.hbs create mode 100644 ui/config/ember-cli-update.json diff --git a/ui/.eslintrc.js b/ui/.eslintrc.js index cf31b345c..99a0745c2 100644 --- a/ui/.eslintrc.js +++ b/ui/.eslintrc.js @@ -37,7 +37,8 @@ module.exports = { ], 'ember/classic-decorator-hooks': 'error', 'ember/classic-decorator-no-classic-methods': 'error', - 'ember/no-jquery': 'error', + 'ember/no-get': 'off', + 'ember/no-mixins': 'off', }, overrides: [ // node files @@ -60,13 +61,9 @@ module.exports = { node: true, }, plugins: ['node'], - rules: Object.assign({}, require('eslint-plugin-node').configs.recommended.rules, { - // add your custom rules and overrides for node files here - - // this can be removed once the following is fixed - // https://github.com/mysticatea/eslint-plugin-node/issues/77 + rules: { 'node/no-unpublished-require': 'off' - }), + }, }, { files: [ diff --git a/ui/app/adapters/application.js b/ui/app/adapters/application.js index a2f977aee..9250f72b2 100644 --- a/ui/app/adapters/application.js +++ b/ui/app/adapters/application.js @@ -1,6 +1,6 @@ import { inject as service } from '@ember/service'; -import { computed, get } from '@ember/object'; -import RESTAdapter from 'ember-data/adapters/rest'; +import { computed } from '@ember/object'; +import RESTAdapter from '@ember-data/adapter/rest'; import codesForError from '../utils/codes-for-error'; import removeRecord from '../utils/remove-record'; import { default as NoLeaderError, NO_LEADER } from '../utils/no-leader-error'; @@ -92,7 +92,7 @@ export default class ApplicationAdapter extends RESTAdapter { urlForFindRecord(id, modelName) { let path; let url = []; - let host = get(this, 'host'); + let host = this.host; let prefix = this.urlPrefix(); if (modelName) { diff --git a/ui/app/app.js b/ui/app/app.js index d8e2088b6..71dd798ec 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -1,7 +1,7 @@ import Application from '@ember/application'; import Resolver from 'ember-resolver'; import loadInitializers from 'ember-load-initializers'; -import config from './config/environment'; +import config from 'nomad-ui/config/environment'; export default class App extends Application { modulePrefix = config.modulePrefix; diff --git a/ui/app/components/agent-monitor.js b/ui/app/components/agent-monitor.js index 79188ed09..fe596e220 100644 --- a/ui/app/components/agent-monitor.js +++ b/ui/app/components/agent-monitor.js @@ -23,7 +23,7 @@ export default class AgentMonitor extends Component { isStreaming = true; logger = null; - @computed('level', 'client.id', 'server.id') + @computed('client.id', 'level', 'server.{id,region}') get monitorParams() { assert( 'Provide a client OR a server to AgentMonitor, not both.', diff --git a/ui/app/components/das/dismissed.hbs b/ui/app/components/das/dismissed.hbs index ff2ffbaf3..c13da68a8 100644 --- a/ui/app/components/das/dismissed.hbs +++ b/ui/app/components/das/dismissed.hbs @@ -15,7 +15,7 @@ data-test-understood class='button is-info' type='button' - {{@on 'click' this.understoodClicked}} + {{on 'click' this.understoodClicked}} >Understood