-
Notifications
You must be signed in to change notification settings - Fork 132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update __spreadArray helper #151
Conversation
Can someone review please? We would need to ship an updated |
@DanielRosenwasser can you let me know when this is published? As far as versioning is concerned, this is a backwards compatible change (the only slight difference would be for |
@rbuckton it sounds like for any existing user (ignoring people manually writing out weird references to tslib), this is backwards-compatible. Otherwise, it's just enabling TypeScript 4.4 to make a breaking change. Is that accurate? |
I'm going to version this as 2.3.0. |
Its not even a breaking change. TS 4.4 would work with old tslib, but would be slower and have the older incorrect array-packing behavior, and TS 4.3 will work with the new tslib and likely be faster but mostly maintaining the older incorrect array-packing behavior. |
2.3.0 should be available shortly. |
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [tslib](https://www.typescriptlang.org/) ([source](https://github.com/Microsoft/tslib)) | [`2.6.2` -> `2.6.3`](https://renovatebot.com/diffs/npm/tslib/1.14.1/2.6.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tslib/2.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tslib/2.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tslib/1.14.1/2.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tslib/1.14.1/2.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>Microsoft/tslib (tslib)</summary> ### [`v2.6.3`](https://github.com/microsoft/tslib/releases/tag/v2.6.3) [Compare Source](https://github.com/Microsoft/tslib/compare/v2.6.2...v2.6.3) #### What's Changed - 'await using' normative changes by [@​rbuckton](https://github.com/rbuckton) in [https://github.com/microsoft/tslib/pull/258](https://github.com/microsoft/tslib/pull/258) **Full Changelog**: microsoft/tslib@v2.6.2...v2.6.3 ### [`v2.6.2`](https://github.com/microsoft/tslib/releases/tag/v2.6.2): tslib 2.6.2 [Compare Source](https://github.com/Microsoft/tslib/compare/v2.6.1...v2.6.2) #### What's Changed - Fix path to `exports["module"]["types"]` by [@​andrewbranch](https://github.com/andrewbranch) in [https://github.com/microsoft/tslib/pull/217](https://github.com/microsoft/tslib/pull/217) **Full Changelog**: microsoft/tslib@v2.6.1...v2.6.2 ### [`v2.6.1`](https://github.com/microsoft/tslib/releases/tag/v2.6.1): tslib 2.6.1 [Compare Source](https://github.com/Microsoft/tslib/compare/2.6.0...v2.6.1) #### What's Changed - Allow functions as values in \__addDisposableResource by [@​rbuckton](https://github.com/rbuckton) in [https://github.com/microsoft/tslib/pull/215](https://github.com/microsoft/tslib/pull/215) - Stop using es6 syntax in the es6 file by [@​andrewbranch](https://github.com/andrewbranch) in [https://github.com/microsoft/tslib/pull/216](https://github.com/microsoft/tslib/pull/216) **Full Changelog**: microsoft/tslib@2.6.0...v2.6.1 ### [`v2.6.0`](https://github.com/microsoft/tslib/releases/tag/2.6.0): tslib 2.6.0 [Compare Source](https://github.com/Microsoft/tslib/compare/v2.5.3...2.6.0) #### What's Changed - Add helpers for `using` and `await using` by [@​rbuckton](https://github.com/rbuckton) in [https://github.com/microsoft/tslib/pull/213](https://github.com/microsoft/tslib/pull/213) **Full Changelog**: microsoft/tslib@v2.5.3...2.6.0 ### [`v2.5.3`](https://github.com/microsoft/tslib/releases/tag/v2.5.3): tslib 2.5.3 [Compare Source](https://github.com/Microsoft/tslib/compare/2.5.2...v2.5.3) #### What's Changed - Do not reference tslib.es6.js from package.json exports by [@​andrewbranch](https://github.com/andrewbranch) in [https://github.com/microsoft/tslib/pull/208](https://github.com/microsoft/tslib/pull/208) **Full Changelog**: microsoft/tslib@2.5.2...v2.5.3 ### [`v2.5.2`](https://github.com/microsoft/tslib/releases/tag/2.5.2): tslib 2.5.2 [Compare Source](https://github.com/Microsoft/tslib/compare/2.5.1...2.5.2) This release [explicitly re-exports helpers](https://github.com/microsoft/tslib/pull/204) to work around TypeScript's incomplete symbol resolution for tslib. ### [`v2.5.1`](https://github.com/microsoft/tslib/releases/tag/2.5.1): tslib 2.5.1 [Compare Source](https://github.com/Microsoft/tslib/compare/2.5.0...2.5.1) This release of tslib provides fixes for two issues. First, [it reverses the order of `init` hooks provided by decorators](https://github.com/microsoft/tslib/pull/202) to correctly reflect proposed behavior. Second, it [corrects the `exports` field of tslib's `package.json` and provides accurate declaration files](https://github.com/microsoft/tslib/pull/202) so that it may be consumed under the `node16` and `bundler` settings for `moduleResolution.` ### [`v2.5.0`](https://github.com/microsoft/tslib/releases/tag/2.5.0): tslib 2.5.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.4.1...2.5.0) #### What's New - Fix asyncDelegator reporting done too early by [@​apendua](https://github.com/apendua) in [https://github.com/microsoft/tslib/pull/187](https://github.com/microsoft/tslib/pull/187) - Add support for TypeScript 5.0's `__esDecorate` and related helpers by [@​rbuckton](https://github.com/rbuckton) in [https://github.com/microsoft/tslib/pull/193](https://github.com/microsoft/tslib/pull/193) **Full Changelog**: microsoft/tslib@2.4.1...2.5.0 ### [`v2.4.1`](https://github.com/microsoft/tslib/releases/tag/2.4.1): tslib 2.4.1 [Compare Source](https://github.com/Microsoft/tslib/compare/2.4.0...2.4.1) This release contains [fixes for early `return`s and `throw`s invoked on generators](https://github.com/microsoft/tslib/pull/186). ### [`v2.4.0`](https://github.com/microsoft/tslib/releases/tag/2.4.0): tslib 2.4.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.3.1...2.4.0) This release includes the `__classPrivateFieldIn` helper as well as an update to `__createBinding` to reduce indirection between multiple re-exports. ### [`v2.3.1`](https://github.com/microsoft/tslib/releases/tag/2.3.1): tslib 2.3.1 [Compare Source](https://github.com/Microsoft/tslib/compare/2.3.0...2.3.1) This release updates the `__spreadArray` helper for TypeScript 4.4 to correctly operate on collections that are not "concat-spreadable" such as the DOM's `NodeList`s and `HTMLCollection`s. ### [`v2.3.0`](https://github.com/microsoft/tslib/releases/tag/2.3.0): tslib 2.3.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.2.0...2.3.0) This release updates tslib to use TypeScript 4.4's upcoming `__spreadArray` helper which correctly preserves sparse array inputs (e.g. arrays containing "missing" elements like `[1, 2, , 4]`). This new version of `__spreadArray` is backwards-compatible and is often also faster. See [https://github.com/microsoft/tslib/pull/151](https://github.com/microsoft/tslib/pull/151) for more details. ### [`v2.2.0`](https://github.com/microsoft/tslib/releases/tag/2.2.0): tslib 2.2.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.1.0...2.2.0) This release supports TypeScript 4.3's new functionality for ECMAScript private methods and accessors, and private static class members. It does so by expanding the scope of `__classPrivateFieldGet` and `__classPrivateFieldSet`. See [https://github.com/microsoft/tslib/pull/146](https://github.com/microsoft/tslib/pull/146) for more details. ### [`v2.1.0`](https://github.com/microsoft/tslib/releases/tag/2.1.0): tslib 2.1.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.0.3...2.1.0) This release adds a new `__spreadArray` helper which avoids side-effects compared to the now-deprecated `__spreadArrays` and `__spread` helpers. See [https://github.com/microsoft/tslib/pull/133](https://github.com/microsoft/tslib/pull/133) for more details. This release also provides a more-specific error message when extending from a type which is not a function and not null. See [https://github.com/microsoft/tslib/pull/138](https://github.com/microsoft/tslib/pull/138) for more details. ### [`v2.0.3`](https://github.com/microsoft/tslib/releases/tag/2.0.3): Webpack 5 Compatibility - 2.x [Compare Source](https://github.com/Microsoft/tslib/compare/2.0.2...2.0.3) Full discussion in the [webpack issue](https://github.com/webpack/webpack/issues/11613) ### [`v2.0.2`](https://github.com/microsoft/tslib/releases/tag/2.0.2): ES Module Support [Compare Source](https://github.com/Microsoft/tslib/compare/2.0.1...2.0.2) This release adds support for using tslib in Node using esmodule imports, further context in [#​126](https://github.com/Microsoft/tslib/issues/126) and the related issues. ### [`v2.0.1`](https://github.com/microsoft/tslib/releases/tag/2.0.1): Minor release for TS 4.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.0.0...2.0.1) 1. Use Object.prototype.hasOwnProperty.call. 2. Skip default when iterating exports in \__importStar. 3. Shorter parameter name in \__exportStar. ### [`v2.0.0`](https://github.com/microsoft/tslib/releases/tag/2.0.0): tslib 2.0.0 [Compare Source](https://github.com/Microsoft/tslib/compare/v1.14.1...2.0.0) This release changes `__exportStar` and `__importStar` to use `__createBinding` which is incompatible with versions of TypeScript older than 3.9 (i.e. 3.8 and below). </details> --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MTMuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQxMy4yIiwidGFyZ2V0QnJhbmNoIjoiZGV2IiwibGFiZWxzIjpbImNob3JlIiwiZGVwZW5kZW5jaWVzIl19--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [tslib](https://www.typescriptlang.org/) ([source](https://github.com/Microsoft/tslib)) | [`2.6.2` -> `2.6.3`](https://renovatebot.com/diffs/npm/tslib/1.14.1/2.6.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tslib/2.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tslib/2.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tslib/1.14.1/2.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tslib/1.14.1/2.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>Microsoft/tslib (tslib)</summary> ### [`v2.6.3`](https://github.com/microsoft/tslib/releases/tag/v2.6.3) [Compare Source](https://github.com/Microsoft/tslib/compare/v2.6.2...v2.6.3) #### What's Changed - 'await using' normative changes by [@​rbuckton](https://github.com/rbuckton) in [https://github.com/microsoft/tslib/pull/258](https://github.com/microsoft/tslib/pull/258) **Full Changelog**: microsoft/tslib@v2.6.2...v2.6.3 ### [`v2.6.2`](https://github.com/microsoft/tslib/releases/tag/v2.6.2): tslib 2.6.2 [Compare Source](https://github.com/Microsoft/tslib/compare/v2.6.1...v2.6.2) #### What's Changed - Fix path to `exports["module"]["types"]` by [@​andrewbranch](https://github.com/andrewbranch) in [https://github.com/microsoft/tslib/pull/217](https://github.com/microsoft/tslib/pull/217) **Full Changelog**: microsoft/tslib@v2.6.1...v2.6.2 ### [`v2.6.1`](https://github.com/microsoft/tslib/releases/tag/v2.6.1): tslib 2.6.1 [Compare Source](https://github.com/Microsoft/tslib/compare/2.6.0...v2.6.1) #### What's Changed - Allow functions as values in \__addDisposableResource by [@​rbuckton](https://github.com/rbuckton) in [https://github.com/microsoft/tslib/pull/215](https://github.com/microsoft/tslib/pull/215) - Stop using es6 syntax in the es6 file by [@​andrewbranch](https://github.com/andrewbranch) in [https://github.com/microsoft/tslib/pull/216](https://github.com/microsoft/tslib/pull/216) **Full Changelog**: microsoft/tslib@2.6.0...v2.6.1 ### [`v2.6.0`](https://github.com/microsoft/tslib/releases/tag/2.6.0): tslib 2.6.0 [Compare Source](https://github.com/Microsoft/tslib/compare/v2.5.3...2.6.0) #### What's Changed - Add helpers for `using` and `await using` by [@​rbuckton](https://github.com/rbuckton) in [https://github.com/microsoft/tslib/pull/213](https://github.com/microsoft/tslib/pull/213) **Full Changelog**: microsoft/tslib@v2.5.3...2.6.0 ### [`v2.5.3`](https://github.com/microsoft/tslib/releases/tag/v2.5.3): tslib 2.5.3 [Compare Source](https://github.com/Microsoft/tslib/compare/2.5.2...v2.5.3) #### What's Changed - Do not reference tslib.es6.js from package.json exports by [@​andrewbranch](https://github.com/andrewbranch) in [https://github.com/microsoft/tslib/pull/208](https://github.com/microsoft/tslib/pull/208) **Full Changelog**: microsoft/tslib@2.5.2...v2.5.3 ### [`v2.5.2`](https://github.com/microsoft/tslib/releases/tag/2.5.2): tslib 2.5.2 [Compare Source](https://github.com/Microsoft/tslib/compare/2.5.1...2.5.2) This release [explicitly re-exports helpers](https://github.com/microsoft/tslib/pull/204) to work around TypeScript's incomplete symbol resolution for tslib. ### [`v2.5.1`](https://github.com/microsoft/tslib/releases/tag/2.5.1): tslib 2.5.1 [Compare Source](https://github.com/Microsoft/tslib/compare/2.5.0...2.5.1) This release of tslib provides fixes for two issues. First, [it reverses the order of `init` hooks provided by decorators](https://github.com/microsoft/tslib/pull/202) to correctly reflect proposed behavior. Second, it [corrects the `exports` field of tslib's `package.json` and provides accurate declaration files](https://github.com/microsoft/tslib/pull/202) so that it may be consumed under the `node16` and `bundler` settings for `moduleResolution.` ### [`v2.5.0`](https://github.com/microsoft/tslib/releases/tag/2.5.0): tslib 2.5.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.4.1...2.5.0) #### What's New - Fix asyncDelegator reporting done too early by [@​apendua](https://github.com/apendua) in [https://github.com/microsoft/tslib/pull/187](https://github.com/microsoft/tslib/pull/187) - Add support for TypeScript 5.0's `__esDecorate` and related helpers by [@​rbuckton](https://github.com/rbuckton) in [https://github.com/microsoft/tslib/pull/193](https://github.com/microsoft/tslib/pull/193) **Full Changelog**: microsoft/tslib@2.4.1...2.5.0 ### [`v2.4.1`](https://github.com/microsoft/tslib/releases/tag/2.4.1): tslib 2.4.1 [Compare Source](https://github.com/Microsoft/tslib/compare/2.4.0...2.4.1) This release contains [fixes for early `return`s and `throw`s invoked on generators](https://github.com/microsoft/tslib/pull/186). ### [`v2.4.0`](https://github.com/microsoft/tslib/releases/tag/2.4.0): tslib 2.4.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.3.1...2.4.0) This release includes the `__classPrivateFieldIn` helper as well as an update to `__createBinding` to reduce indirection between multiple re-exports. ### [`v2.3.1`](https://github.com/microsoft/tslib/releases/tag/2.3.1): tslib 2.3.1 [Compare Source](https://github.com/Microsoft/tslib/compare/2.3.0...2.3.1) This release updates the `__spreadArray` helper for TypeScript 4.4 to correctly operate on collections that are not "concat-spreadable" such as the DOM's `NodeList`s and `HTMLCollection`s. ### [`v2.3.0`](https://github.com/microsoft/tslib/releases/tag/2.3.0): tslib 2.3.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.2.0...2.3.0) This release updates tslib to use TypeScript 4.4's upcoming `__spreadArray` helper which correctly preserves sparse array inputs (e.g. arrays containing "missing" elements like `[1, 2, , 4]`). This new version of `__spreadArray` is backwards-compatible and is often also faster. See [https://github.com/microsoft/tslib/pull/151](https://github.com/microsoft/tslib/pull/151) for more details. ### [`v2.2.0`](https://github.com/microsoft/tslib/releases/tag/2.2.0): tslib 2.2.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.1.0...2.2.0) This release supports TypeScript 4.3's new functionality for ECMAScript private methods and accessors, and private static class members. It does so by expanding the scope of `__classPrivateFieldGet` and `__classPrivateFieldSet`. See [https://github.com/microsoft/tslib/pull/146](https://github.com/microsoft/tslib/pull/146) for more details. ### [`v2.1.0`](https://github.com/microsoft/tslib/releases/tag/2.1.0): tslib 2.1.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.0.3...2.1.0) This release adds a new `__spreadArray` helper which avoids side-effects compared to the now-deprecated `__spreadArrays` and `__spread` helpers. See [https://github.com/microsoft/tslib/pull/133](https://github.com/microsoft/tslib/pull/133) for more details. This release also provides a more-specific error message when extending from a type which is not a function and not null. See [https://github.com/microsoft/tslib/pull/138](https://github.com/microsoft/tslib/pull/138) for more details. ### [`v2.0.3`](https://github.com/microsoft/tslib/releases/tag/2.0.3): Webpack 5 Compatibility - 2.x [Compare Source](https://github.com/Microsoft/tslib/compare/2.0.2...2.0.3) Full discussion in the [webpack issue](https://github.com/webpack/webpack/issues/11613) ### [`v2.0.2`](https://github.com/microsoft/tslib/releases/tag/2.0.2): ES Module Support [Compare Source](https://github.com/Microsoft/tslib/compare/2.0.1...2.0.2) This release adds support for using tslib in Node using esmodule imports, further context in [#​126](https://github.com/Microsoft/tslib/issues/126) and the related issues. ### [`v2.0.1`](https://github.com/microsoft/tslib/releases/tag/2.0.1): Minor release for TS 4.0 [Compare Source](https://github.com/Microsoft/tslib/compare/2.0.0...2.0.1) 1. Use Object.prototype.hasOwnProperty.call. 2. Skip default when iterating exports in \__importStar. 3. Shorter parameter name in \__exportStar. ### [`v2.0.0`](https://github.com/microsoft/tslib/releases/tag/2.0.0): tslib 2.0.0 [Compare Source](https://github.com/Microsoft/tslib/compare/v1.14.1...2.0.0) This release changes `__exportStar` and `__importStar` to use `__createBinding` which is incompatible with versions of TypeScript older than 3.9 (i.e. 3.8 and below). </details> --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MTMuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQxMy4yIiwidGFyZ2V0QnJhbmNoIjoiZGV2IiwibGFiZWxzIjpbImNob3JlIiwiZGVwZW5kZW5jaWVzIl19--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Updates the
__spreadArray
helper to align with microsoft/TypeScript#44527