Skip to content

Update dependency core-js to v3 - #68

Closed
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/core-js-3.x
Closed

renovate[bot] wants to merge 1 commit into
masterfrom
renovate/core-js-3.x

Conversation

@renovate

@renovate renovate Bot commented May 31, 2019

Copy link
Copy Markdown

This PR contains the following updates:

Package Type Update Change
core-js dependencies major 2 -> 3

Release Notes

zloirock/core-js

v3.1.4

Compare Source

  • Refactoring. Many minor internal improvements and fixes like:
    • Improved Symbol.keyFor complexity to O(1)
    • Fixed the order of arguments validation in String.prototype.{ endsWith, includes, startsWith }
    • Internal implementation of RegExp#flags helper now respect dotAll flag (mainly ralated to the pure version)
    • Performace optimizations related old V8
    • Etc.

v3.1.3

Compare Source

  • Fixed core-js/features/reflect/delete-metadata entry point
  • Some fixes and improvements of the postinstall script like support npm color config (#​556) or adding support of ADBLOCK env variable
  • Refactoring and some minor fixes

v3.1.2

Compare Source

  • Added a workaround of a strange npx bug on postinstall, #​551

v3.1.1

Compare Source

  • Added one more workaround of alternative not completely correct Symbol polyfills, #​550, #​554
  • Reverted esnext.string.match-all in some entry points for fix autogeneration of core-js-compat/entries and backward @babel/preset-env compatibility

v3.1.0

Compare Source

  • String#matchAll moved to stable ES, exposed Symbol.matchAll, #​516
  • Promise.allSettled moved to stage 3, #​515
  • String#replaceAll moved to stage 2, behavior updated by the spec draft, #​524
  • Promise.any moved to stage 1, #​517
  • Removed es.regexp.flags dependency from es.regexp.to-string, #​536, #​537
  • Fixed IE8- non-enumerable properties support in Object.{ assign, entries, values }, #​541
  • Fixed support of primitives in Object.getOwnPropertySymbols in Chrome 38 / 39, #​539
  • window.postMessage-based task implementation uses location origin over '*', #​542
  • Lookup PromiseConstructor.resolve only once in Promise combinators, tc39/ecma262#​1506
  • Temporarily removed core-js dependency from core-js-compat since it's required for missed at this moment feature
  • Show a message on postinstall
  • Added compat data for Chrome 76, FF 67, Node 12

v3.0.1

Compare Source

  • Fixed some cases of work with malformed URI sequences in URLSearchParams, #​525
  • Added a workaround for a rollup issue, #​513

v3.0.0

Compare Source

  • Features
    • Add new features:
      • Object.fromEntries (ECMAScript 2019)
      • Symbol#description (ECMAScript 2019)
      • New Set methods (stage 2 proposal)
        • Set#difference
        • Set#intersection
        • Set#isDisjointFrom
        • Set#isSubsetOf
        • Set#isSupersetOf
        • Set#symmetricDifference
        • Set#union
      • Promise.allSettled (stage 2 proposal)
      • Getting last item from Array (stage 1 proposal)
        • Array#lastItem
        • Array#lastIndex
      • String#replaceAll (stage 1 proposal)
      • String#codePoints (stage 1 proposal)
      • New collections methods (stage 1 proposal)
        • Map.groupBy
        • Map.keyBy
        • Map#deleteAll
        • Map#every
        • Map#filter
        • Map#find
        • Map#findKey
        • Map#includes
        • Map#keyOf
        • Map#mapKeys
        • Map#mapValues
        • Map#merge
        • Map#reduce
        • Map#some
        • Map#update
        • Set#addAll
        • Set#deleteAll
        • Set#every
        • Set#filter
        • Set#find
        • Set#join
        • Set#map
        • Set#reduce
        • Set#some
        • WeakMap#deleteAll
        • WeakSet#addAll
        • WeakSet#deleteAll
      • compositeKey and compositeSymbol methods (stage 1 proposal)
      • Number.fromString (stage 1 proposal)
      • Math.seededPRNG (stage 1 proposal)
      • Symbol.patternMatch (for stage 1 pattern matching proposal)
      • Symbol.dispose (for stage 1 using statement proposal)
      • Promise.any (with AggregateError) (stage 0 proposal)
      • URL and URLSearchParam from URL standard, also stage 0 proposal to ECMAScript
        • URL
          • URL#href
          • URL#origin
          • URL#protocol
          • URL#username
          • URL#password
          • URL#host
          • URL#hostname
          • URL#port
          • URL#pathname
          • URL#search
          • URL#searchParams
          • URL#hash
          • URL#toString
          • URL#toJSON
        • URLSearchParams
          • URLSearchParams#append
          • URLSearchParams#delete
          • URLSearchParams#get
          • URLSearchParams#getAll
          • URLSearchParams#has
          • URLSearchParams#set
          • URLSearchParams#sort
          • URLSearchParams#toString
          • URLSearchParams#keys
          • URLSearchParams#values
          • URLSearchParams#entries
          • URLSearchParams#@​@​iterator
      • .forEach method on iterable DOM collections (#​329)
    • Improve existing features:
      • Add triggering unhandled Promise rejection events (instead of only global handlers), #​205.
      • Wrap fetch for correct with polyfilled Promise and preventing problems like #​178, #​332, #​371.
      • Add support of @@​isConcatSpreadable to Array#concat.
      • Add support of @@​species to Array#{concat, filter, map, slice, splice}.
      • Add direct .exec calling to RegExp#{@​@​replace, @​@​split, @​@​match, @​@​search}. Also, added fixes for RegExp#exec method. #​411, #​434, #​453, thanks @​nicolo-ribaudo.
      • Correct iterators prototypes chain, related #​261.
      • Correct Typed Arrays prototypes chain, related #​378.
      • Make the internal state of polyfilled features completely unobservable, #​146.
      • Add validation of receiver's internal class to missed non-generic methods.
      • Fix descriptors of global properties.
      • In the version without global pollution, if Object#toString does not support @@​toStringTag, add to wrapped prototypes own toString method with @@​toStringTag logic, see #​199.
    • Update standard features and proposals:
    • Mark ES2016, ES2017, ES2018, ES2019 features as stable:
      • Array#{ flat, flatMap }
      • { Array, %TypedArray% }#includes
      • Object.{ values, entries}
      • Object.getOwnPropertyDescriptors
      • String#{ padStart, padEnd }
      • String#{ trimStart, trimEnd, trimLeft, trimRight }
      • Promise#finally
      • Symbol.asyncIterator
      • Object#__(define|lookup)[GS]etter__
    • Remove obsolete features:
      • Error.isError (withdrawn)
      • System.global and global (replaced by globalThis)
      • Map#toJSON and Set#toJSON (rejected)
      • RegExp.escape (rejected)
      • Reflect.enumerate (removed from the spec)
      • Unnecessary iteration methods from CSSRuleList, MediaList, StyleSheetList
    • No more non-standard features, finally removed:
      • Dict
      • Object.{classof, isObject, define, make}
      • Function#part
      • Number#@​@​iterator
      • String#{escapeHTML, unescapeHTML}
      • delay
    • Add .sham flag to features which can't be properly polyfilled and / or not recommended for usage:
      • Symbol constructor - we can't add new primitives. Object.prototype accessors too expensive.
      • Object.{create, defineProperty, defineProperties, getOwnPropertyDescriptor, getOwnPropertyDescriptos}, Reflect.{defineProperty, getOwnPropertyDescriptor} can't be properly polyfilled without descriptors support.
      • Object.{freeze, seal, preventExtensions}, Reflect.preventExtensions can't be properly polyfilled in ES3 environment.
      • Object.getPrototypeOf can be deceived in ES3 environment.
      • Reflect.construct can't be polyfilled for a correct work with newTarget argument on built-ins.
      • Typed Array constructors polyfill is quite correct but too expensive.
      • URL constructor in engines without descriptors support.
  • Bug and compatibility fixes:
    • Fix deoptimisation of iterators in V8, #​377.
    • Fix import of property before constructor which should contain this property, #​262.
    • Fix some cases of IE11 WeakMap frozen keys fallback, #​384.
    • Fix non-enumerable integer keys issue because of Nashorn ~ JDK8 bug, #​389.
    • Fix Safari 12.0 Array#reverse bug.
    • One more fix for microtasks in iOS related #​339.
    • Added a fallback for Rhino bug, #​440.
    • Many other internal fixes and improvements.
  • Repository:
    • Change core-js repository structure to monorepo with packages in /packages/ directory.
    • Clean-up it, remove all possible duplicates, generated files, etc.
  • Packages:
    • Extract a version without global namespace pollution to a separate core-js-pure package (replacement for core-js/library).
    • Leave only one pair of bundles (global, with all polyfills) and move it to core-js-bundle package.
    • Remove bundling logic from core-js package, leave it only in core-js-builder package.
    • Clean-up packages.
    • Because of all approaches, reduce size of packages from ~2mb for core-js@2 to:
      • ~500kb for core-js package
      • ~440kb for core-js-pure package
    • Finally remove bower.json
  • CommonJS API, namespaces:
    • Add availability configuration of aggressiveness.
    • Move core-js/library to separate core-js-pure package.
    • Because of removing all non-standard features, we no longer need core-js/shim entry point, replace it just with core-js.
    • Move all features from ES5, ES2015, ES2016, ES2017, ES2018 and ES2019 to one namespace for stable ES - it's available as core-js/es, all those features in modules folder has es. prefix.
    • Change prefix for ES proposals from es7. to esnext., they no longer available in core-js/es7, use core-js/stage/* instead of that.
    • Rename core-js(/library)/fn to core-js(-pure)/features for improve readability.
    • Allow more granular inclusion of features from /es/ path (for example, core-js/es/array/from).
    • Add /stable/ entry points as an equal of /features/ for stable features, without proposals.
    • Add /proposals/ entry points for allow include all features from one proposal (for example, core-js/proposals/reflect-metadata).
    • Add /es|stable|features/instance/ entry points for getting polyfill of the related method for passed instance (could be used in cases like babel-runtime).
    • Split typed arrays polyfills. Now you can, for example, load only required method (for example, core-js/es/typed-array/from).
    • Extract well-known symbols definition from es.symbol module for loading only required features, for example, in MS Edge.
    • Rename web.dom namespace to web.dom-collections.
    • Rename es6.regexp.{match, replace, search, split} -> es.string.{match, replace, search, split} - mainly it's fixes / adding support of well-known symbols to string methods, only in second place adding related methods to regexp prototype.
    • Relax /modules/ directory by moving internal modules to /internals/ directory.
    • Remove deprecated array entry points: core-js(/library)/fn/array/{pop, push, reverse, shift, unshift}.
    • core object no longer available in the global version, entry points which previously returned it now returns globalThis object. Also, don't set global core property.
    • Add some missing entry points.
  • Tools, tests, code quality:
    • Added core-js-compat package with:
      • Data about the necessity of core-js modules and API for getting a list of required core-js modules by browserslist query, #​466.
      • Data which modules load by each entry point (mainly useful for tools like @babel/preset-env).
      • Data which modules added in minor versions (mainly useful for tools like @babel/preset-env).
    • core-js-builder package:
      • Added targets option with browserslist query.
      • Removed an option for generation bundle of a version without global namespace pollution - now it's an odd use case.
      • Removed UMD wrapper from a generated code of bundles - we don't need it for a global polyfill.
    • Getting rid of LiveScript, usage another language in JS standard library looks strange and impedes usage of tools like ESLint:
      • Tests are rewritten to JS.
      • Scripts are rewritten to JS.
    • Babel with minimalistic config (which should work anywhere) used on tests.
    • ESLint used on tests and tools.
    • Source code refactored for improving readability.

v2.6.9

Compare Source

  • Some fixes and improvements of the postinstall script like support npm color config (#​556) or adding support of ADBLOCK env variable

v2.6.8

Compare Source

  • Added a workaround of a strange npx bug on postinstall, #​551

v2.6.7

Compare Source

  • Added one more workaround of alternative not completely correct Symbol polyfills, #​550, #​554

v2.6.6

Compare Source

  • Fixed IE8- non-enumerable properties support in Object.{ assign, entries, values }, #​541
  • Fixed support of primitives in Object.getOwnPropertySymbols in Chrome 38 / 39, #​539
  • Show a message on postinstall

v2.6.5

Compare Source

  • Fixed buggy String#padStart and String#padEnd mobile Safari implementations, #​414.

v2.6.4

Compare Source

  • Added a workaround against crushing an old IE11.0.9600.16384 build, #​485.

v2.6.3

Compare Source

  • Added a workaround for babel-minify bug, #​479

v2.6.2

Compare Source

  • Fixed handling of $ in String#replace, #​471

v2.6.1

Compare Source

v2.6.0

Compare Source

  • Add direct .exec calling to RegExp#{@​@​replace, @​@​split, @​@​match, @​@​search}. Also, added fixes for RegExp#exec method. #​428, #​435, #​458, thanks @​nicolo-ribaudo.

v2.5.7

Compare Source

  • Get rid of reserved variable name final, related #​400

v2.5.6

Compare Source

  • Forced replace native Promise in V8 6.6 (Node 10 and Chrome 66) because of a bug with resolving custom thenables
  • Added a workaround for usage buggy native LG WebOS 2 Promise in microtask implementation, #​396
  • Added modern version internal debugging information about used versions

v2.5.5

Compare Source

v2.5.4

Compare Source

  • Fixed one case of deoptimization built-in iterators in V8, related #​377
  • Fixed some cases of iterators feature detection, #​368
  • Fixed manually entered NodeJS domains issue in Promise, #​367
  • Fixed Number.{parseInt, parseFloat} entry points
  • Fixed __(define|lookup)[GS]etter__ export in the library version

v2.5.3

Compare Source

  • Fixed calling onunhandledrejectionhandler multiple times for one Promise chain, #​318
  • Forced replacement of String#{padStart, padEnd} in Safari 10 because of a bug, #​280
  • Fixed Array#@​@​iterator in a very rare version of WebKit, #​236 and #​237
  • One more #​345-related fix

v2.5.2

Compare Source

  • MutationObserver no longer used for microtask implementation in iOS Safari because of bug with scrolling, #​339
  • Fixed JSON.stringify(undefined, replacer) case in the wrapper from the Symbol polyfill, #​345
  • Array() calls changed to new Array() for V8 optimisation

v2.5.1

Compare Source

  • Updated Promise#finally per tc39/proposal-promise-finally#​37
  • Optimized usage of some internal helpers for reducing size of shim version
  • Fixed some entry points for virtual methods

v2.5.0

Compare Source

  • Added Promise#finally stage 3 proposal, #​225
  • Added Promise.try stage 1 proposal
  • Added Array#flatten and Array#flatMap stage 1 proposal
  • Added .of and .from methods on collection constructors stage 1 proposal:
    • Map.of
    • Set.of
    • WeakSet.of
    • WeakMap.of
    • Map.from
    • Set.from
    • WeakSet.from
    • WeakMap.from
  • Added Math extensions stage 1 proposal, #​226:
    • Math.clamp
    • Math.DEG_PER_RAD
    • Math.degrees
    • Math.fscale
    • Math.RAD_PER_DEG
    • Math.radians
    • Math.scale
  • Added Math.signbit stage 1 proposal
  • Updated global stage 3 proposal - added global global object, System.global deprecated
  • Updated Object.getOwnPropertyDescriptors to the final version - it should not create properties if descriptors are undefined
  • Updated the list of iterable DOM collections, #​249, added:
    • CSSStyleDeclaration#@​@​iterator
    • CSSValueList#@​@​iterator
    • ClientRectList#@​@​iterator
    • DOMRectList#@​@​iterator
    • DOMStringList#@​@​iterator
    • DataTransferItemList#@​@​iterator
    • FileList#@​@​iterator
    • HTMLAllCollection#@​@​iterator
    • HTMLCollection#@​@​iterator
    • HTMLFormElement#@​@​iterator
    • HTMLSelectElement#@​@​iterator
    • MimeTypeArray#@​@​iterator
    • NamedNodeMap#@​@​iterator
    • PaintRequestList#@​@​iterator
    • Plugin#@​@​iterator
    • PluginArray#@​@​iterator
    • SVGLengthList#@​@​iterator
    • SVGNumberList#@​@​iterator
    • SVGPathSegList#@​@​iterator
    • SVGPointList#@​@​iterator
    • SVGStringList#@​@​iterator
    • SVGTransformList#@​@​iterator
    • SourceBufferList#@​@​iterator
    • TextTrackCueList#@​@​iterator
    • TextTrackList#@​@​iterator
    • TouchList#@​@​iterator
  • Updated stages of proposals:
  • Updated typed arrays to the modern (ES2016+) arguments validation,
    #​293
  • Fixed %TypedArray%.from Safari bug, #​285
  • Fixed compatibility with old version of Prototype.js, #​278, #​289
  • Function#name no longer cache the result for correct behaviour with inherited constructors, #​296
  • Added errors on incorrect context of collection methods, #​272
  • Fixed conversion typed array constructors to string, fix #​300
  • Fixed Set#size with debugger ReactNative for Android, #​297
  • Fixed an issue with Electron-based debugger, #​230
  • Fixed compatibility with incomplete third-party WeakMap polyfills, #​252
  • Added a fallback for Date#toJSON in engines without native Date#toISOString, #​220
  • Added support for Sphere Dispatch API, #​286
  • Seriously changed the coding style and the ESLint config
  • Updated many dev dependencies (webpack, uglify, etc)
  • Some other minor fixes and optimizations

v2.4.1

Compare Source

  • Fixed script tag for some parsers, #​204, #​216
  • Removed some unused variables, #​217, #​218
  • Fixed MS Edge Reflect.construct and Reflect.apply - they should not allow primitive as argumentsList argument

v2.4.0

Compare Source

  • Added Observable, stage 1 proposal
  • Fixed behavior Object.{getOwnPropertySymbols, getOwnPropertyDescriptor} and Object#propertyIsEnumerable on Object.prototype
  • Reflect.construct and Reflect.apply should throw an error if argumentsList argument is not an object, #​194

v2.3.0

Compare Source

v2.2.2

Compare Source

  • Added conversion -0 to +0 to Array#{indexOf, lastIndexOf}, ES2016 fix
  • Added fixes for some Math methods in Tor Browser
  • Array.{from, of} no longer calls prototype setters
  • Added workaround over Chrome DevTools strange behavior, #​186

v2.2.1

Compare Source

  • Fixed Object.getOwnPropertyNames(window) 2.1+ versions bug, #​181

v2.2.0

Compare Source

  • Added String#matchAll, proposal
  • Added Object#__(define|lookup)[GS]etter__, annex B ES2017
  • Added @@​toPrimitive methods to Date and Symbol
  • Fixed %TypedArray%#slice in Edge ~ 13 (throws with @@​species and wrapped / inherited constructor)
  • Some other minor fixes

v2.1.5

Compare Source

  • Improved support NodeJS domains in Promise#then, #​180
  • Added fallback for Date#toJSON bug in Qt Script, #​173

v2.1.4

Compare Source

  • Added fallback for Symbol polyfill in Qt Script, #​173
  • Added one more fallback for IE11 Script Access Denied error with iframes, #​165

v2.1.3

Compare Source

v2.1.2

Compare Source

  • Some minor Promise fixes:
    • Browsers rejectionhandled event better HTML spec complaint
    • Errors in unhandled rejection handlers should not cause any problems
    • Fixed typo in feature detection

v2.1.1

Compare Source

  • Some Promise improvements:
    • Feature detection:
      • Added detection unhandled rejection tracking support - now it's available everywhere, #​140
      • Added detection @@​species pattern support for completely correct subclassing
      • Removed usage Object.setPrototypeOf from feature detection and noisy console message about it in FF
    • Promise.all fixed for some very specific cases

v2.1.0

Compare Source

  • API:
    • ES5 polyfills are split and logic, used in other polyfills, moved to internal modules
      • All entry point works in ES3 environment like IE8- without core-js/(library/)es5
      • Added all missed single entry points for ES5 polyfills
      • Separated ES5 polyfills moved to the ES6 namespace. Why?
        • Mainly, for prevent duplication features in different namespaces - logic of most required ES5 polyfills changed in ES6+:
          • Already added changes for: Object statics - should accept primitives, new whitespaces lists in String#trim, parse(Int|float), RegExp#toString logic, String#split, etc
          • Should be changed in the future: @@​species and ToLength logic in Array methods, Date parsing, Function#bind, etc
          • Should not be changed only several features like Array.isArray and Date.now
        • Some ES5 polyfills required for modern engines
      • All old entry points should work fine, but in the next major release API can be changed
    • Object.getOwnPropertyDescriptors moved to the stage 3, January TC39 meeting
    • Added umd option for custom build process, #​169
    • Returned entry points for Array statics, removed in 2.0, for compatibility with babel 6 and for future fixes
  • Deprecated:
    • Reflect.enumerate deprecated and will be removed from the next major release, January TC39 meeting
  • New Features:
    • Added Reflect metadata API as a pre-strawman feature, #​152:
      • Reflect.defineMetadata
      • Reflect.deleteMetadata
      • Reflect.getMetadata
      • Reflect.getMetadataKeys
      • Reflect.getOwnMetadata
      • Reflect.getOwnMetadataKeys
      • Reflect.hasMetadata
      • Reflect.hasOwnMetadata
      • Reflect.metadata
    • Implementation / fixes Date#toJSON
    • Fixes for parseInt and Number.parseInt
    • Fixes for parseFloat and Number.parseFloat
    • Fixes for RegExp#toString
    • Fixes for Array#sort
    • Fixes for Number#toFixed
    • Fixes for Number#toPrecision
    • Additional fixes for String#split (RegExp#@​@​split)
  • Improvements:
    • Correct subclassing wrapped collections, Number and RegExp constructors with native class syntax
    • Correct support SharedArrayBuffer and buffers from other realms in typed arrays wrappers
    • Additional validations for Object.{defineProperty, getOwnPropertyDescriptor} and Reflect.defineProperty
  • Bug Fixes:
    • Fixed some cases Array#lastIndexOf with negative second argument

v2.0.3

Compare Source

  • Added fallback for V8 ~ Chrome 49 Promise subclassing bug causes unhandled rejection on feature detection, #​159
  • Added fix for very specific environments with global window === null

v2.0.2

Compare Source

  • Temporarily removed length validation from Uint8Array constructor wrapper. Reason - bug in ws module (-> socket.io) which passes to Buffer constructor -> Uint8Array float and uses the V8 bug for conversion to int (by the spec should be thrown an error). It creates problems for many people. I hope, it will be returned after fixing this bug in V8.

v2.0.1

Compare Source

  • Forced usage Promise.resolve polyfill in the library version for correct work with wrapper
  • Object.assign should be defined in the strict mode -> throw an error on extension non-extensible objects, #​154

Renovate configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻️ Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "rebase!".

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot. View repository job log here.

@smblee smblee closed this Jun 21, 2019
@renovate

renovate Bot commented Jun 21, 2019

Copy link
Copy Markdown
Author

Renovate Ignore Notification

As this PR has been closed unmerged, Renovate will ignore this upgrade and you will not receive PRs for any future 3.x releases. However, if you upgrade to 3.x manually then Renovate will then reenable updates for minor and patch updates automatically.

If this PR was closed by mistake or you changed your mind, you can simply rename this PR and you will soon get a fresh replacement PR opened.

@renovate
renovate Bot deleted the renovate/core-js-3.x branch June 21, 2019 17:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants