From e8f3e2eee84a0df1f4e289bf24bd97184845dea1 Mon Sep 17 00:00:00 2001 From: Jeldrik Hanschke Date: Fri, 4 Dec 2020 21:17:20 +0100 Subject: [PATCH 1/4] support Ember Bootstrap v4.5 --- addon/components/bs-form/element.js | 2 +- package.json | 2 +- yarn.lock | 80 ++++++++++++++++++++--------- 3 files changed, 59 insertions(+), 25 deletions(-) diff --git a/addon/components/bs-form/element.js b/addon/components/bs-form/element.js index 1818b8f..e7a179c 100644 --- a/addon/components/bs-form/element.js +++ b/addon/components/bs-form/element.js @@ -25,6 +25,6 @@ export default class ValidatedBsFormElement extends BsFormElement { warnings; setupValidations() { - defineProperty(this, '_attrValidations', readOnly(`model.validations.attrs.${this.property}`)); + defineProperty(this, '_attrValidations', readOnly(`args.model.validations.attrs.${this.args.property}`)); } } diff --git a/package.json b/package.json index 41909df..37149e3 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "bootstrap": "^4.5.3", "broccoli-asset-rev": "^3.0.0", "ember-auto-import": "^1.7.0", - "ember-bootstrap": "^4.4.0", + "ember-bootstrap": "^4.5.0", "ember-cli": "~3.21.0", "ember-cli-dependency-checker": "^3.2.0", "ember-cli-inject-live-reload": "^2.0.2", diff --git a/yarn.lock b/yarn.lock index 49f242b..b091371 100644 --- a/yarn.lock +++ b/yarn.lock @@ -783,7 +783,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-runtime@^7.12.0": +"@babel/plugin-transform-runtime@^7.12.0", "@babel/plugin-transform-runtime@^7.12.1": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.12.1.tgz#04b792057eb460389ff6a4198e377614ea1e7ba5" integrity sha512-Ac/H6G9FEIkS2tXsZjL4RAdS3L3WHxci0usAnz7laPWUmFiGtj7tIASChqKZMHTSQTQY6xDbOq+V1/vIq3QrWg== @@ -978,6 +978,13 @@ dependencies: regenerator-runtime "^0.13.4" +"@babel/runtime@^7.12.5": + version "7.12.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.12.5.tgz#410e7e487441e1b360c29be715d870d9b985882e" + integrity sha512-plcc+hbExy3McchJCEQG3knOsuh3HH+Prx1P6cLIkET/0dLuQDEnrT+s27Axgc9bqfsmNUNHfscgMUdBpC9xfg== + dependencies: + regenerator-runtime "^0.13.4" + "@babel/template@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.4.tgz#3251996c4200ebc71d1a8fc405fba940f36ba278" @@ -1119,23 +1126,27 @@ walk-sync "^1.1.3" wrap-legacy-hbs-plugin-if-needed "^1.0.1" -"@embroider/core@0.28.0": - version "0.28.0" - resolved "https://registry.yarnpkg.com/@embroider/core/-/core-0.28.0.tgz#d005e718ac8e8d87f24d7adcaefe5b8b607b2ff3" - integrity sha512-uzY04htrbOdkGpE7KBEnV46EFl91i06+zYKKfUPqO37NMP+yMLaevEpTF87wLJnj9hWw7Z49/ybPNgKR+RbjHw== +"@embroider/core@0.33.0": + version "0.33.0" + resolved "https://registry.yarnpkg.com/@embroider/core/-/core-0.33.0.tgz#0fb1752d6e34ea45368e65c42e13220a57ffae76" + integrity sha512-Kd3W4vBJCSwskVislwldhuoe1RtdA04lRr2r2ccnPI4msCXxLn292WBaS7/x0LdEu2EMO5ffRDeQva2/xoS4Yg== dependencies: "@babel/core" "^7.12.3" "@babel/parser" "^7.12.3" "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-transform-runtime" "^7.12.1" + "@babel/runtime" "^7.12.5" "@babel/traverse" "^7.12.1" "@babel/types" "^7.12.1" - "@embroider/macros" "0.28.0" + "@embroider/macros" "0.33.0" assert-never "^1.1.0" babel-plugin-syntax-dynamic-import "^6.18.0" - broccoli-persistent-filter "^2.2.2" - broccoli-plugin "^3.0.0" - broccoli-source "^1.1.0" + broccoli-node-api "^1.7.0" + broccoli-persistent-filter "^3.1.2" + broccoli-plugin "^4.0.1" + broccoli-source "^3.0.0" debug "^3.1.0" + escape-string-regexp "^4.0.0" fast-sourcemap-concat "^1.4.0" filesize "^4.1.2" fs-extra "^7.0.1" @@ -1148,7 +1159,7 @@ pkg-up "^2.0.0" resolve "^1.8.1" resolve-package-path "^1.2.2" - semver "^5.5.0" + semver "^7.3.2" strip-bom "^3.0.0" typescript-memoize "^1.0.0-alpha.3" walk-sync "^1.1.3" @@ -1169,20 +1180,20 @@ resolve "^1.8.1" semver "^5.6.0" -"@embroider/macros@0.28.0", "@embroider/macros@^0.28.0": - version "0.28.0" - resolved "https://registry.yarnpkg.com/@embroider/macros/-/macros-0.28.0.tgz#95f9006f3ebfa515453d38afd74e7aca1303ba2c" - integrity sha512-QWlJf4svkEvMSbGB2R0zWixYZWWUOW8cAPRAxcG8U/CUI70IQQvsPWBjZ+jn4CRKB0EffCfQD6zcTckjhFT1nA== +"@embroider/macros@0.33.0", "@embroider/macros@^0.33.0": + version "0.33.0" + resolved "https://registry.yarnpkg.com/@embroider/macros/-/macros-0.33.0.tgz#d5826ea7565bb69b57ba81ed528315fe77acbf9d" + integrity sha512-nl/1zRn+Wd3MO8Bb+YPqHmFl/2vwQLTsEB6Zt+K9bWXsM/kA+dPCeeCReLN6PbkMP16xxqtNSIrQ8Y49hnWjpg== dependencies: "@babel/core" "^7.12.3" "@babel/traverse" "^7.12.1" "@babel/types" "^7.12.1" - "@embroider/core" "0.28.0" + "@embroider/core" "0.33.0" assert-never "^1.1.0" ember-cli-babel "^7.23.0" lodash "^4.17.10" resolve "^1.8.1" - semver "^5.6.0" + semver "^7.3.2" "@eslint/eslintrc@^0.2.1": version "0.2.1" @@ -3562,6 +3573,23 @@ broccoli-persistent-filter@^3.1.0: symlink-or-copy "^1.0.1" sync-disk-cache "^2.0.0" +broccoli-persistent-filter@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/broccoli-persistent-filter/-/broccoli-persistent-filter-3.1.2.tgz#41da6b9577be09a170ecde185f2c5a6099f99c4e" + integrity sha512-CbU95RXXVyy+eJV9XTiHUC7NnsY3EvdVrGzp3YgyvO2bzXZFE5/GzDp4X/VQqX+jsk4qyT1HvMOF0sD1DX68TQ== + dependencies: + async-disk-cache "^2.0.0" + async-promise-queue "^1.0.3" + broccoli-plugin "^4.0.3" + fs-tree-diff "^2.0.0" + hash-for-dep "^1.5.0" + heimdalljs "^0.2.1" + heimdalljs-logger "^0.1.7" + promise-map-series "^0.2.1" + rimraf "^3.0.0" + symlink-or-copy "^1.0.1" + sync-disk-cache "^2.0.0" + broccoli-plugin@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/broccoli-plugin/-/broccoli-plugin-1.1.0.tgz#73e2cfa05f8ea1e3fc1420c40c3d9e7dc724bf02" @@ -5095,7 +5123,7 @@ ember-assign-polyfill@^2.6.0: ember-cli-babel "^7.20.5" ember-cli-version-checker "^2.0.0" -ember-auto-import@^1.5.3, ember-auto-import@^1.6.0, ember-auto-import@^1.7.0: +ember-auto-import@^1.5.3, ember-auto-import@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/ember-auto-import/-/ember-auto-import-1.7.0.tgz#dd809fbe3d40647f2af443072405094d0e77ecf5" integrity sha512-onp7XZKwiit3BgkOPV/obi3fvLJmDNKTTjRsVtYz63yWeyT3ahiM8BIvJYzHGL4cxlGLvwpTJy2HYBDs6ZtvoQ== @@ -5129,13 +5157,13 @@ ember-auto-import@^1.5.3, ember-auto-import@^1.6.0, ember-auto-import@^1.7.0: walk-sync "^0.3.3" webpack "^4.43.0" -ember-bootstrap@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/ember-bootstrap/-/ember-bootstrap-4.4.0.tgz#5f73a5f10f067296e59e9bad1f95a83a455881e6" - integrity sha512-UybyKND5YJqKS11yCkBhEuAu3fSEIFAC0+jNrzpj47h0y88ahnL8Zr+/36JWqHPftB7X2euZAqkUucble2CTEA== +ember-bootstrap@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/ember-bootstrap/-/ember-bootstrap-4.5.0.tgz#ad8f3d96811492451e9b2a11f906a1fcccc0540b" + integrity sha512-Ievt8dSn5ojhnZsn9oEPPJs24mll4nBNbVOM6SpXU3v8Y1Xb++j+jtkLK85XG3usI0OyXownplMAQD/EFal3/w== dependencies: "@ember/render-modifiers" "^1.0.2" - "@embroider/macros" "^0.28.0" + "@embroider/macros" "^0.33.0" "@glimmer/component" "^1.0.2" "@glimmer/tracking" "^1.0.2" broccoli-debug "^0.6.3" @@ -5144,7 +5172,7 @@ ember-bootstrap@^4.4.0: broccoli-stew "^3.0.0" broccoli-string-replace "^0.1.2" chalk "^4.1.0" - ember-auto-import "^1.6.0" + ember-auto-import "^1.7.0" ember-cli-babel "^7.23.0" ember-cli-build-config-editor "0.5.1" ember-cli-htmlbars "^5.1.2" @@ -6169,6 +6197,11 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + escodegen@^1.11.0, escodegen@^1.14.1: version "1.14.3" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503" @@ -9374,6 +9407,7 @@ minipass-fetch@^1.1.2: resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.3.1.tgz#6d09556764474119ed79e270bc98b9c76d12c8e2" integrity sha512-N0ddPAD8OZnoAHUYj1ZH4ZJVna+ucy7if777LrdeIV1ko8f46af4jbyM5EC1gN4xc9Wq5c3C38GnxRJ2gneXRA== dependencies: + encoding "^0.1.12" minipass "^3.1.0" minipass-sized "^1.0.3" minizlib "^2.0.0" From 379f60f3d69400746aaa6078e503cc627119950c Mon Sep 17 00:00:00 2001 From: Jeldrik Hanschke Date: Sun, 6 Dec 2020 19:09:24 +0100 Subject: [PATCH 2/4] add support for Ember Bootstrap <= 4.4 --- .github/workflows/ci.yml | 1 + addon/components/bs-form/element.js | 8 ++++++-- config/ember-try.js | 10 +++++++++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 323d8ca..47af65e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -62,6 +62,7 @@ jobs: - ember-canary - ember-default-with-jquery - ember-classic + - ember-bootstrap-4.4 steps: - name: Checkout code uses: actions/checkout@v2 diff --git a/addon/components/bs-form/element.js b/addon/components/bs-form/element.js index e7a179c..a1d9a20 100644 --- a/addon/components/bs-form/element.js +++ b/addon/components/bs-form/element.js @@ -1,5 +1,5 @@ import { not, notEmpty, and, readOnly } from '@ember/object/computed'; -import { defineProperty } from '@ember/object'; +import { defineProperty, get } from '@ember/object'; import BsFormElement from 'ember-bootstrap/components/bs-form/element'; export default class ValidatedBsFormElement extends BsFormElement { @@ -25,6 +25,10 @@ export default class ValidatedBsFormElement extends BsFormElement { warnings; setupValidations() { - defineProperty(this, '_attrValidations', readOnly(`args.model.validations.attrs.${this.args.property}`)); + if (typeof this.args === 'object') { + defineProperty(this, '_attrValidations', readOnly(`args.model.validations.attrs.${this.args.property}`)); + } else { + defineProperty(this, '_attrValidations', readOnly(`model.validations.attrs.${this.property}`)); + } } } diff --git a/config/ember-try.js b/config/ember-try.js index 779a4f9..376abd5 100644 --- a/config/ember-try.js +++ b/config/ember-try.js @@ -73,7 +73,15 @@ module.exports = async function() { edition: 'classic' } } - } + }, + { + name: 'ember-bootstrap-4.4', + npm: { + devDependencies: { + 'ember-bootstrap': '~4.4.0' + } + } + }, ] }; }; From 416f4b54d7d6a38da76b8f9ed637083daa316036 Mon Sep 17 00:00:00 2001 From: Jeldrik Hanschke Date: Sun, 6 Dec 2020 19:11:32 +0100 Subject: [PATCH 3/4] fix linting --- addon/components/bs-form/element.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addon/components/bs-form/element.js b/addon/components/bs-form/element.js index a1d9a20..7f70309 100644 --- a/addon/components/bs-form/element.js +++ b/addon/components/bs-form/element.js @@ -1,5 +1,5 @@ import { not, notEmpty, and, readOnly } from '@ember/object/computed'; -import { defineProperty, get } from '@ember/object'; +import { defineProperty } from '@ember/object'; import BsFormElement from 'ember-bootstrap/components/bs-form/element'; export default class ValidatedBsFormElement extends BsFormElement { From 3b2171f9a970574f395a36ca8b0f34bd2ba9dd69 Mon Sep 17 00:00:00 2001 From: Jeldrik Hanschke Date: Mon, 7 Dec 2020 10:08:46 +0100 Subject: [PATCH 4/4] continue if ember-canary fails --- .github/workflows/ci.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 47af65e..bb1edaa 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,6 +51,7 @@ jobs: test-try: name: Additional Tests runs-on: ubuntu-latest + continue-on-error: ${{ matrix.allow-failure }} needs: - test strategy: @@ -59,10 +60,13 @@ jobs: - ember-lts-3.16 - ember-release - ember-beta - - ember-canary - ember-default-with-jquery - ember-classic - ember-bootstrap-4.4 + allow-failure: [false] + include: + - scenario: ember-canary + allow-failure: true steps: - name: Checkout code uses: actions/checkout@v2