From f52d5421951c0ae1429a7634a03b2414e148bcfd Mon Sep 17 00:00:00 2001 From: Gaurav Munjal Date: Thu, 29 Oct 2026 00:41:06 -0400 Subject: [PATCH 1/4] SCF-2416: upgrade ember-cli-babel to v8 ember-cli-babel ^8.3.2 is the first release that no longer pins @babel/runtime 7.12.18. Following ember-cli-babel 8's UPGRADING guide for v1 addons, @babel/core moves from devDependencies into dependencies. ember-cli-babel 8 removed the includePolyfill option, so ember-cli-build.js stops passing it. Co-Authored-By: Claude Opus 5.5 --- ember-cli-build.js | 3 - package.json | 4 +- yarn.lock | 133 ++++++++++++++++++++++++++++++++++++++++----- 3 files changed, 122 insertions(+), 18 deletions(-) diff --git a/ember-cli-build.js b/ember-cli-build.js index 7fc683fa6..b7b9c04cb 100644 --- a/ember-cli-build.js +++ b/ember-cli-build.js @@ -18,9 +18,6 @@ module.exports = function (defaults) { const options = { 'ember-bootstrap': {}, - 'ember-cli-babel': { - includePolyfill: !!process.env.BABELPOLYFILL, - }, autoImport: { forbidEval: true, }, diff --git a/package.json b/package.json index 84c69226b..504072b76 100644 --- a/package.json +++ b/package.json @@ -69,6 +69,7 @@ "mocha/js-yaml": "^4.3.2" }, "dependencies": { + "@babel/core": "^7.29.0", "@ember/render-modifiers": "^2.1.0", "@ember/string": "^3.1.1", "@embroider/macros": "^1.8.3", @@ -78,7 +79,7 @@ "broccoli-merge-trees": "^4.2.0", "chalk": "^4.1.1", "ember-auto-import": "^2.2.0", - "ember-cli-babel": "^7.26.10", + "ember-cli-babel": "^8.3.2", "ember-cli-build-config-editor": "0.5.1", "ember-cli-htmlbars": "^5.7.2", "ember-cli-version-checker": "^5.1.2", @@ -104,7 +105,6 @@ "tracked-toolbox": "^1.2.3" }, "devDependencies": { - "@babel/core": "^7.0.0-0", "@babel/eslint-parser": "^7.22.15", "@babel/plugin-proposal-decorators": "^7.23.2", "@ember/optional-features": "^2.0.0", diff --git a/yarn.lock b/yarn.lock index 06928423e..e68b4f5e6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16,7 +16,7 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.29.7.tgz#6f0237f0f36d2e51c0570a636faed9d2d0efe629" integrity sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg== -"@babel/core@^7.0.0-0", "@babel/core@^7.12.0", "@babel/core@^7.13.8", "@babel/core@^7.16.10", "@babel/core@^7.16.7", "@babel/core@^7.3.4": +"@babel/core@^7.12.0", "@babel/core@^7.13.8", "@babel/core@^7.16.10", "@babel/core@^7.16.7", "@babel/core@^7.29.0", "@babel/core@^7.3.4": version "7.29.7" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.29.7.tgz#80c10b17248082968b57a857b91640971f2070f7" integrity sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA== @@ -270,7 +270,7 @@ "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.16.7", "@babel/plugin-proposal-decorators@^7.23.2": +"@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.16.7", "@babel/plugin-proposal-decorators@^7.23.2", "@babel/plugin-proposal-decorators@^7.29.7": version "7.29.7" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.29.7.tgz#ebc57bd4d711df920a553de8a456a3a020ce0d72" integrity sha512-EtU0Hi3GvrTqD56xKmZvV/uCXK2ZbwVNPNLAquVItcAZpUhkXwWlo3Fmj0c2LxgSf2I8IDULeAepwNP1OefLXg== @@ -675,7 +675,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-runtime@^7.13.9": +"@babel/plugin-transform-runtime@^7.13.9", "@babel/plugin-transform-runtime@^7.29.7": version "7.29.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.29.7.tgz#7c7fb6e2a46dce67e278b6cc84421c1d16da5695" integrity sha512-xmAscdE/AsqRW7vutbPNoUmu/nF5SrLKPs7aoJgEjo35lLKA/Bc0i2rMv/hr1+Y0o1bQCiVtith3u2vdgRL39Q== @@ -723,7 +723,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-typescript@^7.13.0", "@babel/plugin-transform-typescript@^7.16.8": +"@babel/plugin-transform-typescript@^7.13.0", "@babel/plugin-transform-typescript@^7.16.8", "@babel/plugin-transform-typescript@^7.29.7": version "7.29.9" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.29.9.tgz#963dc446aea3fafcab8ffe217329263f5613feb6" integrity sha512-FFwIwzU+7SCOuxxV4YtJql6T9981ZVTm+FHO5GhVsRqCTdy0WwrEZh3l42ARpXruJUDGOptdduHW6Zr7pNPLNg== @@ -790,7 +790,7 @@ core-js "^2.6.5" regenerator-runtime "^0.13.4" -"@babel/preset-env@^7.16.5", "@babel/preset-env@^7.16.7": +"@babel/preset-env@^7.16.5", "@babel/preset-env@^7.16.7", "@babel/preset-env@^7.29.7": version "7.29.7" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.29.7.tgz#5e2ab5e764b493fdefc99c43aeaa70a9533a37fd" integrity sha512-GYzX36n1nsciIb0uyH0GHwxwtNwPQIcpxSeiVLDtG/B7jB5xXgchnmL1f/jCX5o+pwnaDBtO60ONSJhEBJfxYA== @@ -883,7 +883,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.21.0": +"@babel/runtime@^7.21.0", "@babel/runtime@^7.29.7": version "7.29.10" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.29.10.tgz#fe9920782f7ee34029165ac6f272984917a1641b" integrity sha512-NpugTzbKgGrNe45Ui32cN8vCFFMxVtP/9rtfwv0nP5FRDAjvYBxJcLVpYA9mr1jxP6cnIT7x9LUzuDTbWYYNRA== @@ -2545,6 +2545,17 @@ babel-plugin-module-resolver@^4.1.0: reselect "^4.0.0" resolve "^1.13.1" +babel-plugin-module-resolver@^5.0.0: + version "5.0.3" + resolved "https://registry.yarnpkg.com/babel-plugin-module-resolver/-/babel-plugin-module-resolver-5.0.3.tgz#13f03cf29048ad7e0239e6a1c4dcc669d199f394" + integrity sha512-h8h6H71ZvdLJZxZrYkaeR30BojTaV7O9GfqacY14SNj5CNB8ocL9tydNzTC0JrnNN7vY3eJhwCmkDj7tuEUaqQ== + dependencies: + find-babel-config "^2.1.1" + glob "^9.3.3" + pkg-up "^3.1.0" + reselect "^4.1.7" + resolve "^1.22.8" + babel-plugin-polyfill-corejs2@^0.4.14, babel-plugin-polyfill-corejs2@^0.4.15: version "0.4.17" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.17.tgz#198f970f1c99a856b466d1187e88ce30bd199d91" @@ -2795,6 +2806,20 @@ broccoli-babel-transpiler@^7.8.0: rsvp "^4.8.4" workerpool "^3.1.1" +broccoli-babel-transpiler@^8.0.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/broccoli-babel-transpiler/-/broccoli-babel-transpiler-8.1.0.tgz#e6cb17dbb82725daf92b0fedc3668a610d4026a4" + integrity sha512-ca3QcjNzX7umqQ06PeDDjAf2WJ9DcgzoECuXT638YDpNC+gCJeoDDKYk0KieeE7VeX7YHyrkfyynQzMvZZ/4ew== + dependencies: + broccoli-persistent-filter "^3.0.0" + clone "^2.1.2" + hash-for-dep "^1.4.7" + heimdalljs "^0.2.1" + heimdalljs-logger "^0.1.9" + json-stable-stringify "^1.0.1" + rsvp "^4.8.4" + workerpool "^6.0.2" + broccoli-builder@^0.18.14: version "0.18.14" resolved "https://registry.yarnpkg.com/broccoli-builder/-/broccoli-builder-0.18.14.tgz#4b79e2f844de11a4e1b816c3f49c6df4776c312d" @@ -3022,7 +3047,7 @@ broccoli-output-wrapper@^3.2.5: heimdalljs-logger "^0.1.10" symlink-or-copy "^1.2.0" -broccoli-persistent-filter@^1.1.6, broccoli-persistent-filter@^1.4.3: +broccoli-persistent-filter@^1.1.5, broccoli-persistent-filter@^1.1.6, broccoli-persistent-filter@^1.4.3: version "1.4.6" resolved "https://registry.yarnpkg.com/broccoli-persistent-filter/-/broccoli-persistent-filter-1.4.6.tgz#80762d19000880a77da33c34373299c0f6a3e615" integrity sha512-0RejLwoC95kv4kta8KAa+FmECJCK78Qgm8SRDEK7YyU0N9Cx6KpY3UCDy9WELl3mCXLN8TokNxc7/hp3lL4lfw== @@ -3061,7 +3086,7 @@ broccoli-persistent-filter@^2.2.1, broccoli-persistent-filter@^2.3.0: sync-disk-cache "^1.3.3" walk-sync "^1.0.0" -broccoli-persistent-filter@^3.1.2: +broccoli-persistent-filter@^3.0.0, broccoli-persistent-filter@^3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/broccoli-persistent-filter/-/broccoli-persistent-filter-3.1.3.tgz#aca815bf3e3b0247bd0a7b567fdb0d0e08c99cc2" integrity sha512-Q+8iezprZzL9voaBsDY3rQVl7c7H5h+bvv8SpzCZXPZgfBFCbx7KFQ2c3rZR6lW5k4Kwoqt7jG+rZMUg67Gwxw== @@ -3133,7 +3158,7 @@ broccoli-source@^2.1.2: resolved "https://registry.yarnpkg.com/broccoli-source/-/broccoli-source-2.1.2.tgz#e9ae834f143b607e9ec114ade66731500c38b90b" integrity sha512-1lLayO4wfS0c0Sj50VfHJXNWf94FYY0WUhxj0R77thbs6uWI7USiOWFqQV5dRmhAJnoKaGN4WyLGQbgjgiYFwQ== -broccoli-source@^3.0.0: +broccoli-source@^3.0.0, broccoli-source@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/broccoli-source/-/broccoli-source-3.0.1.tgz#fd581b2f3877ca1338f724f6ef70acec8c7e1444" integrity sha512-ZbGVQjivWi0k220fEeIUioN6Y68xjMy0xiLAc0LdieHI99gw+tafU8w0CggBDYVNsJMKUr006AZaM7gNEwCxEg== @@ -3191,6 +3216,14 @@ broccoli-stew@^3.0.0: symlink-or-copy "^1.2.0" walk-sync "^1.1.3" +broccoli-string-replace@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/broccoli-string-replace/-/broccoli-string-replace-0.1.2.tgz#1ed92f85680af8d503023925e754e4e33676b91f" + integrity sha512-QHESTrrrPlKuXQNWsvXawSQbV2g34wCZ5oKgd6bntdOuN8VHxbg1BCBHqVY5HxXJhWelimgGxj3vI7ECkyij8g== + dependencies: + broccoli-persistent-filter "^1.1.5" + minimatch "^3.0.3" + broccoli-terser-sourcemap@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/broccoli-terser-sourcemap/-/broccoli-terser-sourcemap-4.1.1.tgz#4c26696e07a822e1fc91fb48c5b6d6c70d5ca9b2" @@ -4532,7 +4565,7 @@ ember-cli-babel-plugin-helpers@^1.0.0, ember-cli-babel-plugin-helpers@^1.1.1: resolved "https://registry.yarnpkg.com/ember-cli-babel-plugin-helpers/-/ember-cli-babel-plugin-helpers-1.1.1.tgz#5016b80cdef37036c4282eef2d863e1d73576879" integrity sha512-sKvOiPNHr5F/60NLd7SFzMpYPte/nnGkq/tMIfXejfKHIhaiIkYFqX8Z9UFTKWLLn+V7NOaby6niNPZUdvKCRw== -ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.13.0, ember-cli-babel@^7.17.2, ember-cli-babel@^7.19.0, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.23.1, ember-cli-babel@^7.26.10, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.6, ember-cli-babel@^7.7.3: +ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.13.0, ember-cli-babel@^7.17.2, ember-cli-babel@^7.19.0, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.23.1, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.6, ember-cli-babel@^7.7.3: version "7.26.11" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.26.11.tgz#50da0fe4dcd99aada499843940fec75076249a9f" integrity sha512-JJYeYjiz/JTn34q7F5DSOjkkZqy8qwFOOxXfE6pe9yEJqWGu4qErKxlz8I22JoVEQ/aBUO+OcKTpmctvykM9YA== @@ -4568,6 +4601,40 @@ ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.13.0, ember- rimraf "^3.0.1" semver "^5.5.0" +ember-cli-babel@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-8.3.2.tgz#e34944c104a280a3dcc7f1e3c136bdfb483901f7" + integrity sha512-Thvqx+jwGYhimYbkkL0gwhwMlhghTIR3uQ9R0yNaTjBIttZIfSWJ/2W40kaJlwhnsElXq7zbFjZcff22p6nzCg== + dependencies: + "@babel/helper-compilation-targets" "^7.29.7" + "@babel/plugin-proposal-decorators" "^7.29.7" + "@babel/plugin-transform-class-properties" "^7.29.7" + "@babel/plugin-transform-class-static-block" "^7.29.7" + "@babel/plugin-transform-modules-amd" "^7.29.7" + "@babel/plugin-transform-private-methods" "^7.29.7" + "@babel/plugin-transform-private-property-in-object" "^7.29.7" + "@babel/plugin-transform-runtime" "^7.29.7" + "@babel/plugin-transform-typescript" "^7.29.7" + "@babel/preset-env" "^7.29.7" + "@babel/runtime" "^7.29.7" + amd-name-resolver "^1.3.1" + babel-plugin-debug-macros "^0.3.4" + babel-plugin-ember-data-packages-polyfill "^0.1.2" + babel-plugin-ember-modules-api-polyfill "^3.5.0" + babel-plugin-module-resolver "^5.0.0" + broccoli-babel-transpiler "^8.0.0" + broccoli-debug "^0.6.4" + broccoli-funnel "^3.0.8" + broccoli-source "^3.0.1" + broccoli-string-replace "^0.1.2" + calculate-cache-key-for-tree "^2.0.0" + clone "^2.1.2" + ember-cli-babel-plugin-helpers "^1.1.1" + ember-cli-version-checker "^5.1.2" + ensure-posix-path "^1.0.2" + resolve-package-path "^4.0.3" + semver "^7.3.8" + ember-cli-blueprint-test-helpers@^0.19.1: version "0.19.2" resolved "https://registry.yarnpkg.com/ember-cli-blueprint-test-helpers/-/ember-cli-blueprint-test-helpers-0.19.2.tgz#9e563cd81ab39931253ced0982c5d02475895401" @@ -6285,6 +6352,13 @@ find-babel-config@^1.1.0, find-babel-config@^1.2.0: json5 "^1.0.2" path-exists "^3.0.0" +find-babel-config@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/find-babel-config/-/find-babel-config-2.1.2.tgz#2841b1bfbbbcdb971e1e39df8cbc43dafa901716" + integrity sha512-ZfZp1rQyp4gyuxqt1ZqjFGVeVBvmpURMqdIWXbPRfB97Bf6BzdK/xSIbylEINzQ0kB5tlDQfn9HkNXXWsqTqLg== + dependencies: + json5 "^2.2.3" + find-cache-dir@^3.3.1: version "3.3.2" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" @@ -6828,6 +6902,16 @@ glob@^5.0.10: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^9.3.3: + version "9.3.5" + resolved "https://registry.yarnpkg.com/glob/-/glob-9.3.5.tgz#ca2ed8ca452781a3009685607fdf025a899dfe21" + integrity sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q== + dependencies: + fs.realpath "^1.0.0" + minimatch "^8.0.2" + minipass "^4.2.4" + path-scurry "^1.6.1" + global-modules@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" @@ -8433,6 +8517,11 @@ lowercase-keys@^2.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -8729,7 +8818,7 @@ mini-css-extract-plugin@^2.5.2: schema-utils "^4.0.0" tapable "^2.2.1" -minimatch@*, "minimatch@2 || 3", minimatch@3.0.4, minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2, minimatch@^3.1.5: +minimatch@*, "minimatch@2 || 3", minimatch@3.0.4, minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2, minimatch@^3.1.5, minimatch@^8.0.2: version "3.1.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.5.tgz#580c88f8d5445f2bd6aa8f3cadefa0de79fbd69e" integrity sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w== @@ -8773,6 +8862,16 @@ minipass@^2.2.0: safe-buffer "^5.1.2" yallist "^3.0.0" +minipass@^4.2.4: + version "4.2.8" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-4.2.8.tgz#f0010f64393ecfc1d1ccb5f582bcaf45f48e1a3a" + integrity sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ== + +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": + version "7.1.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.3.tgz#79389b4eb1bb2d003a9bba87d492f2bd37bdc65b" + integrity sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A== + mixin-deep@^1.2.0: version "1.3.2" resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" @@ -9434,6 +9533,14 @@ path-root@^0.1.1: dependencies: path-root-regex "^0.1.0" +path-scurry@^1.6.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-to-regexp@^1.7.0: version "1.9.0" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.9.0.tgz#5dc0753acbf8521ca2e0f137b4578b917b10cf24" @@ -10072,7 +10179,7 @@ reselect@^3.0.1: resolved "https://registry.yarnpkg.com/reselect/-/reselect-3.0.1.tgz#efdaa98ea7451324d092b2b2163a6a1d7a9a2147" integrity sha512-b/6tFZCmRhtBMa4xGqiiRp9jh9Aqi2A687Lo265cN0/QohJQEBPiQ52f4QB6i0eF3yp3hmLL21LSGBcML2dlxA== -reselect@^4.0.0: +reselect@^4.0.0, reselect@^4.1.7: version "4.1.8" resolved "https://registry.yarnpkg.com/reselect/-/reselect-4.1.8.tgz#3f5dc671ea168dccdeb3e141236f69f02eaec524" integrity sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ== @@ -12209,7 +12316,7 @@ workerpool@^3.1.1: object-assign "4.1.1" rsvp "^4.8.4" -workerpool@^6.1.4, workerpool@^6.1.5, workerpool@^6.4.0: +workerpool@^6.0.2, workerpool@^6.1.4, workerpool@^6.1.5, workerpool@^6.4.0: version "6.5.1" resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.5.1.tgz#060f73b39d0caf97c6db64da004cd01b4c099544" integrity sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA== From 0f69c6342091d5f194d455d38aa7e29c2824ca66 Mon Sep 17 00:00:00 2001 From: Gaurav Munjal Date: Thu, 29 Oct 2026 00:42:54 -0400 Subject: [PATCH 2/4] SCF-2416: upgrade ember-cli-htmlbars to v6 and ember-auto-import to ^2.6.3 The 5.4 addon blueprint's versions of the two addon build dependencies. Co-Authored-By: Claude Opus 5.5 --- package.json | 4 ++-- yarn.lock | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 504072b76..f10f9c21d 100644 --- a/package.json +++ b/package.json @@ -78,10 +78,10 @@ "broccoli-funnel": "^3.0.6", "broccoli-merge-trees": "^4.2.0", "chalk": "^4.1.1", - "ember-auto-import": "^2.2.0", + "ember-auto-import": "^2.6.3", "ember-cli-babel": "^8.3.2", "ember-cli-build-config-editor": "0.5.1", - "ember-cli-htmlbars": "^5.7.2", + "ember-cli-htmlbars": "^6.3.0", "ember-cli-version-checker": "^5.1.2", "ember-concurrency": "^2.1.2", "ember-decorators": "^6.1.0", diff --git a/yarn.lock b/yarn.lock index e68b4f5e6..29b72708c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4499,7 +4499,7 @@ ember-a11y-testing@^4.0.7: fs-extra "^10.0.0" validate-peer-dependencies "^2.0.0" -ember-auto-import@^1.11.2, ember-auto-import@^2.10.0, ember-auto-import@^2.2.0, ember-auto-import@^2.4.1, ember-auto-import@^2.5.0, ember-auto-import@^2.6.0, ember-auto-import@^2.6.1: +ember-auto-import@^1.11.2, ember-auto-import@^2.10.0, ember-auto-import@^2.4.1, ember-auto-import@^2.5.0, ember-auto-import@^2.6.0, ember-auto-import@^2.6.1, ember-auto-import@^2.6.3: version "2.13.1" resolved "https://registry.yarnpkg.com/ember-auto-import/-/ember-auto-import-2.13.1.tgz#d939af31eb711c75c94b74a33ac2c8e5c57c2686" integrity sha512-MjxJK2nfCJmmQI/rju2TrycmAa1AxmTarfvygbcrrgW0s4WeZHtbGXCO2z1lW9wfrShqeTo/o+3Mgk+9xcDTWg== @@ -4732,7 +4732,7 @@ ember-cli-get-component-path-option@^1.0.0: resolved "https://registry.yarnpkg.com/ember-cli-get-component-path-option/-/ember-cli-get-component-path-option-1.0.0.tgz#0d7b595559e2f9050abed804f1d8eff1b08bc771" integrity sha512-k47TDwcJ2zPideBCZE8sCiShSxQSpebY2BHcX2DdipMmBox5gsfyVrbKJWIHeSTTKyEUgmBIvQkqTOozEziCZA== -ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1, ember-cli-htmlbars@^5.7.2: +ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1: version "5.7.2" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-5.7.2.tgz#e0cd2fb3c20d85fe4c3e228e6f0590ee1c645ba8" integrity sha512-Uj6R+3TtBV5RZoJY14oZn/sNPnc+UgmC8nb5rI4P3fR/gYoyTFIZSXiIM7zl++IpMoIrocxOrgt+mhonKphgGg== @@ -4754,7 +4754,7 @@ ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1, ember-cli-htmlbars@^5.7.2: strip-bom "^4.0.0" walk-sync "^2.2.0" -ember-cli-htmlbars@^6.0.1, ember-cli-htmlbars@^6.1.1: +ember-cli-htmlbars@^6.0.1, ember-cli-htmlbars@^6.1.1, ember-cli-htmlbars@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-6.3.0.tgz#ac85f2bbd09788992ab7f9ca832cd044fb8e5798" integrity sha512-N9Y80oZfcfWLsqickMfRd9YByVcTGyhYRnYQ2XVPVrp6jyUyOeRWmEAPh7ERSXpp8Ws4hr/JB9QVQrn/yZa+Ag== From 3bc3d2e2ca9dffe9bdc6e2702e8b2b4b2e7f9f5b Mon Sep 17 00:00:00 2001 From: Gaurav Munjal Date: Thu, 29 Oct 2026 10:18:30 -0400 Subject: [PATCH 3/4] SCF-2416: remove ember-in-element-polyfill and ember-named-blocks-polyfill Both polyfills are no-ops on Ember >= 3.25, and ember-bootstrap now requires Ember >= 4.8 (upstream #1854). Each one still pulled in ember-cli-babel 7. BsAlert's docs no longer suggest installing the named blocks polyfill. Co-Authored-By: Claude Opus 5.5 --- addon/components/bs-alert.js | 4 ---- package.json | 2 -- yarn.lock | 22 ++-------------------- 3 files changed, 2 insertions(+), 26 deletions(-) diff --git a/addon/components/bs-alert.js b/addon/components/bs-alert.js index bbad72857..0c36c0a24 100644 --- a/addon/components/bs-alert.js +++ b/addon/components/bs-alert.js @@ -36,10 +36,6 @@ import arg from 'ember-bootstrap/utils/decorators/arg'; The header is rendered using a `

` element by default. You can customize that one by setting `@headerTag` argument of ``. - Using named block syntax as shown above may require to install - [ember-named-blocks-polyfill](https://github.com/ember-polyfills/ember-named-blocks-polyfill) - in your project depending on the Ember version used. - *Note that only invoking the component in a template as shown above is considered part of its public API. Extending from it (subclassing) is generally not supported, and may break at any time.* @class Alert diff --git a/package.json b/package.json index f10f9c21d..72e8c89ca 100644 --- a/package.json +++ b/package.json @@ -87,8 +87,6 @@ "ember-decorators": "^6.1.0", "ember-element-helper": "^0.7.1", "ember-focus-trap": "^1.0.0", - "ember-in-element-polyfill": "^1.0.1", - "ember-named-blocks-polyfill": "^0.2.4", "ember-on-helper": "^0.1.0", "ember-popper-modifier": "^3.0.0", "ember-ref-bucket": "^4.1.0", diff --git a/yarn.lock b/yarn.lock index 29b72708c..bbfa0d49f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4565,7 +4565,7 @@ ember-cli-babel-plugin-helpers@^1.0.0, ember-cli-babel-plugin-helpers@^1.1.1: resolved "https://registry.yarnpkg.com/ember-cli-babel-plugin-helpers/-/ember-cli-babel-plugin-helpers-1.1.1.tgz#5016b80cdef37036c4282eef2d863e1d73576879" integrity sha512-sKvOiPNHr5F/60NLd7SFzMpYPte/nnGkq/tMIfXejfKHIhaiIkYFqX8Z9UFTKWLLn+V7NOaby6niNPZUdvKCRw== -ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.13.0, ember-cli-babel@^7.17.2, ember-cli-babel@^7.19.0, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.23.1, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.6, ember-cli-babel@^7.7.3: +ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.13.0, ember-cli-babel@^7.17.2, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.6, ember-cli-babel@^7.7.3: version "7.26.11" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.26.11.tgz#50da0fe4dcd99aada499843940fec75076249a9f" integrity sha512-JJYeYjiz/JTn34q7F5DSOjkkZqy8qwFOOxXfE6pe9yEJqWGu4qErKxlz8I22JoVEQ/aBUO+OcKTpmctvykM9YA== @@ -4732,7 +4732,7 @@ ember-cli-get-component-path-option@^1.0.0: resolved "https://registry.yarnpkg.com/ember-cli-get-component-path-option/-/ember-cli-get-component-path-option-1.0.0.tgz#0d7b595559e2f9050abed804f1d8eff1b08bc771" integrity sha512-k47TDwcJ2zPideBCZE8sCiShSxQSpebY2BHcX2DdipMmBox5gsfyVrbKJWIHeSTTKyEUgmBIvQkqTOozEziCZA== -ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1: +ember-cli-htmlbars@^5.7.1: version "5.7.2" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-5.7.2.tgz#e0cd2fb3c20d85fe4c3e228e6f0590ee1c645ba8" integrity sha512-Uj6R+3TtBV5RZoJY14oZn/sNPnc+UgmC8nb5rI4P3fR/gYoyTFIZSXiIM7zl++IpMoIrocxOrgt+mhonKphgGg== @@ -5123,16 +5123,6 @@ ember-focus-trap@^1.0.0: "@embroider/addon-shim" "^1.0.0" focus-trap "^6.7.1" -ember-in-element-polyfill@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ember-in-element-polyfill/-/ember-in-element-polyfill-1.0.1.tgz#143504445bb4301656a2eaad42644d684f5164dd" - integrity sha512-eHs+7D7PuQr8a1DPqsJTsEyo3FZ1XuH6WEZaEBPDa9s0xLlwByCNKl8hi1EbXOgvgEZNHHi9Rh0vjxyfakrlgg== - dependencies: - debug "^4.3.1" - ember-cli-babel "^7.23.1" - ember-cli-htmlbars "^5.3.1" - ember-cli-version-checker "^5.1.2" - ember-load-initializers@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ember-load-initializers/-/ember-load-initializers-2.1.2.tgz#8a47a656c1f64f9b10cecdb4e22a9d52ad9c7efa" @@ -5161,14 +5151,6 @@ ember-modifier@^3.0.0, "ember-modifier@^3.2.0 || ^4.0.0", ember-modifier@^3.2.7: ember-cli-typescript "^5.0.0" ember-compatibility-helpers "^1.2.5" -ember-named-blocks-polyfill@^0.2.4: - version "0.2.5" - resolved "https://registry.yarnpkg.com/ember-named-blocks-polyfill/-/ember-named-blocks-polyfill-0.2.5.tgz#d5841406277026a221f479c815cfbac6cdcaeecb" - integrity sha512-OVMxzkfqJrEvmiky7gFzmuTaImCGm7DOudHWTdMBPO7E+dQSunrcRsJMgO9ZZ56suqBIz/yXbEURrmGS+avHxA== - dependencies: - ember-cli-babel "^7.19.0" - ember-cli-version-checker "^5.1.1" - ember-on-helper@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/ember-on-helper/-/ember-on-helper-0.1.0.tgz#c8b1fef9173fc8546c4933b57ecd7ffbcebad99e" From 8eb7ad3810104bee54f6faacb692cc4c0d3c2ef7 Mon Sep 17 00:00:00 2001 From: Gaurav Munjal Date: Thu, 29 Oct 2026 10:47:48 -0400 Subject: [PATCH 4/4] SCF-2416: drop @ember/string BsCollapse's camelize call was the only use of @ember/string, and it only ever turned "scroll-height"/"offset-width" and the like into property names, so it's inlined (upstream #1849). New tests cover the expanded size for both @collapseDimension values. Co-Authored-By: Claude Opus 5.5 --- addon/components/bs-collapse.js | 4 +-- package.json | 1 - .../components/bs-collapse-test.js | 30 +++++++++++++++++++ yarn.lock | 7 ----- 4 files changed, 32 insertions(+), 10 deletions(-) diff --git a/addon/components/bs-collapse.js b/addon/components/bs-collapse.js index 473875abc..af9ec9412 100644 --- a/addon/components/bs-collapse.js +++ b/addon/components/bs-collapse.js @@ -2,7 +2,6 @@ import { action } from '@ember/object'; import Component from '@glimmer/component'; import { isNone } from '@ember/utils'; import { next } from '@ember/runloop'; -import { camelize } from '@ember/string'; import transitionEnd from 'ember-bootstrap/utils/transition-end'; import deprecateSubclassing from 'ember-bootstrap/utils/deprecate-subclassing'; import { ref } from 'ember-ref-bucket'; @@ -223,7 +222,8 @@ export default class Collapse extends Component { let collapseElement = this._element; let prefix = action === 'show' ? 'scroll' : 'offset'; - let measureProperty = camelize(`${prefix}-${this.collapseDimension}`); + let dimension = this.collapseDimension; + let measureProperty = `${prefix}${dimension.charAt(0).toUpperCase()}${dimension.slice(1)}`; return collapseElement[measureProperty]; } diff --git a/package.json b/package.json index 72e8c89ca..72639294a 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,6 @@ "dependencies": { "@babel/core": "^7.29.0", "@ember/render-modifiers": "^2.1.0", - "@ember/string": "^3.1.1", "@embroider/macros": "^1.8.3", "@embroider/util": "^1.13.3", "broccoli-debug": "^0.6.3", diff --git a/tests/integration/components/bs-collapse-test.js b/tests/integration/components/bs-collapse-test.js index 1b8fb3040..18951688a 100644 --- a/tests/integration/components/bs-collapse-test.js +++ b/tests/integration/components/bs-collapse-test.js @@ -100,6 +100,36 @@ module('Integration | Component | bs-collapse', function (hooks) { assert.dom('.collapse').hasAttribute('style', ''); }); + test('expanding measures the scroll height of the content', async function (assert) { + this.set('collapsed', true); + await render( + hbs`
` + ); + this.element.querySelector('#content').style.height = '50px'; + this.set('collapsed', false); + + await waitFor('.collapsing[style*=height]'); + await delay(100); + + assert.dom('.collapsing').hasAttribute('style', 'height: 50px;'); + }); + + test('expanding with @collapseDimension="width" measures the scroll width of the content', async function (assert) { + this.set('collapsed', true); + await render( + hbs`
` + ); + let content = this.element.querySelector('#content'); + content.style.width = '300px'; + content.style.height = '10px'; + this.set('collapsed', false); + + await waitFor('.collapsing[style*=width]'); + await delay(100); + + assert.dom('.collapsing').hasAttribute('style', 'width: 300px;'); + }); + test('it passes accessibility checks', async function (assert) { await render(hbs`

Just some content

`); diff --git a/yarn.lock b/yarn.lock index bbfa0d49f..8d3b570e1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1020,13 +1020,6 @@ ember-cli-babel "^7.26.11" ember-modifier-manager-polyfill "^1.2.0" -"@ember/string@^3.1.1": - version "3.1.1" - resolved "https://registry.yarnpkg.com/@ember/string/-/string-3.1.1.tgz#0a5ac0d1e4925259e41d5c8d55ef616117d47ff0" - integrity sha512-UbXJ+k3QOrYN4SRPHgXCqYIJ+yWWUg1+vr0H4DhdQPTy8LJfyqwZ2tc5uqpSSnEXE+/1KopHBE5J8GDagAg5cg== - dependencies: - ember-cli-babel "^7.26.6" - "@ember/test-helpers@^2.9.6": version "2.9.6" resolved "https://registry.yarnpkg.com/@ember/test-helpers/-/test-helpers-2.9.6.tgz#42b08eb6cd6d631bdee042acc42af6f97c1393c9"