1 | ## Changelog
|
2 | ##### 2.4.1 - 2016.07.18
|
3 | - fixed `script` tag for some parsers, [#204](https://github.com/zloirock/core-js/issues/204), [#216](https://github.com/zloirock/core-js/issues/216)
|
4 | - removed some unused variables, [#217](https://github.com/zloirock/core-js/issues/217), [#218](https://github.com/zloirock/core-js/issues/218)
|
5 | - fixed MS Edge `Reflect.construct` and `Reflect.apply` - they should not allow primitive as `argumentsList` argument
|
6 |
|
7 | ##### 1.2.7 [LEGACY] - 2016.07.18
|
8 | - some fixes for issues like [#159](https://github.com/zloirock/core-js/issues/159), [#186](https://github.com/zloirock/core-js/issues/186), [#194](https://github.com/zloirock/core-js/issues/194), [#207](https://github.com/zloirock/core-js/issues/207)
|
9 |
|
10 | ##### 2.4.0 - 2016.05.08
|
11 | - Added `Observable`, [stage 1 proposal](https://github.com/zenparsing/es-observable)
|
12 | - Fixed behavior `Object.{getOwnPropertySymbols, getOwnPropertyDescriptor}` and `Object#propertyIsEnumerable` on `Object.prototype`
|
13 | - `Reflect.construct` and `Reflect.apply` should throw an error if `argumentsList` argument is not an object, [#194](https://github.com/zloirock/core-js/issues/194)
|
14 |
|
15 | ##### 2.3.0 - 2016.04.24
|
16 | - Added `asap` for enqueuing microtasks, [stage 0 proposal](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-09/sept-25.md#510-globalasap-for-enqueuing-a-microtask)
|
17 | - Added well-known symbol `Symbol.asyncIterator` for [stage 2 async iteration proposal](https://github.com/tc39/proposal-async-iteration)
|
18 | - Added well-known symbol `Symbol.observable` for [stage 1 observables proposal](https://github.com/zenparsing/es-observable)
|
19 | - `String#{padStart, padEnd}` returns original string if filler is empty string, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#stringprototypepadstartpadend)
|
20 | - `Object.values` and `Object.entries` moved to stage 4 from 3, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#objectvalues--objectentries)
|
21 | - `System.global` moved to stage 2 from 1, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#systemglobal)
|
22 | - `Map#toJSON` and `Set#toJSON` rejected and will be removed from the next major release, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-31.md#mapprototypetojsonsetprototypetojson)
|
23 | - `Error.isError` withdrawn and will be removed from the next major release, [TC39 meeting notes](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-03/march-29.md#erroriserror)
|
24 | - Added fallback for `Function#name` on non-extensible functions and functions with broken `toString` conversion, [#193](https://github.com/zloirock/core-js/issues/193)
|
25 |
|
26 | ##### 2.2.2 - 2016.04.06
|
27 | - Added conversion `-0` to `+0` to `Array#{indexOf, lastIndexOf}`, [ES2016 fix](https://github.com/tc39/ecma262/pull/316)
|
28 | - Added fixes for some `Math` methods in Tor Browser
|
29 | - `Array.{from, of}` no longer calls prototype setters
|
30 | - Added workaround over Chrome DevTools strange behavior, [#186](https://github.com/zloirock/core-js/issues/186)
|
31 |
|
32 | ##### 2.2.1 - 2016.03.19
|
33 | - Fixed `Object.getOwnPropertyNames(window)` `2.1+` versions bug, [#181](https://github.com/zloirock/core-js/issues/181)
|
34 |
|
35 | ##### 2.2.0 - 2016.03.15
|
36 | - Added `String#matchAll`, [proposal](https://github.com/tc39/String.prototype.matchAll)
|
37 | - Added `Object#__(define|lookup)[GS]etter__`, [annex B ES2017](https://github.com/tc39/ecma262/pull/381)
|
38 | - Added `@@toPrimitive` methods to `Date` and `Symbol`
|
39 | - Fixed `%TypedArray%#slice` in Edge ~ 13 (throws with `@@species` and wrapped / inherited constructor)
|
40 | - Some other minor fixes
|
41 |
|
42 | ##### 2.1.5 - 2016.03.12
|
43 | - Improved support NodeJS domains in `Promise#then`, [#180](https://github.com/zloirock/core-js/issues/180)
|
44 | - Added fallback for `Date#toJSON` bug in Qt Script, [#173](https://github.com/zloirock/core-js/issues/173#issuecomment-193972502)
|
45 |
|
46 | ##### 2.1.4 - 2016.03.08
|
47 | - Added fallback for `Symbol` polyfill in Qt Script, [#173](https://github.com/zloirock/core-js/issues/173)
|
48 | - Added one more fallback for IE11 `Script Access Denied` error with iframes, [#165](https://github.com/zloirock/core-js/issues/165)
|
49 |
|
50 | ##### 2.1.3 - 2016.02.29
|
51 | - Added fallback for [`es6-promise` package bug](https://github.com/stefanpenner/es6-promise/issues/169), [#176](https://github.com/zloirock/core-js/issues/176)
|
52 |
|
53 | ##### 2.1.2 - 2016.02.29
|
54 | - Some minor `Promise` fixes:
|
55 | - Browsers `rejectionhandled` event better HTML spec complaint
|
56 | - Errors in unhandled rejection handlers should not cause any problems
|
57 | - Fixed typo in feature detection
|
58 |
|
59 | ##### 2.1.1 - 2016.02.22
|
60 | - Some `Promise` improvements:
|
61 | - Feature detection:
|
62 | - **Added detection unhandled rejection tracking support - now it's available everywhere**, [#140](https://github.com/zloirock/core-js/issues/140)
|
63 | - Added detection `@@species` pattern support for completely correct subclassing
|
64 | - Removed usage `Object.setPrototypeOf` from feature detection and noisy console message about it in FF
|
65 | - `Promise.all` fixed for some very specific cases
|
66 |
|
67 | ##### 2.1.0 - 2016.02.09
|
68 | - **API**:
|
69 | - ES5 polyfills are split and logic, used in other polyfills, moved to internal modules
|
70 | - **All entry point works in ES3 environment like IE8- without `core-js/(library/)es5`**
|
71 | - **Added all missed single entry points for ES5 polyfills**
|
72 | - Separated ES5 polyfills moved to the ES6 namespace. Why?
|
73 | - Mainly, for prevent duplication features in different namespaces - logic of most required ES5 polyfills changed in ES6+:
|
74 | - Already added changes for: `Object` statics - should accept primitives, new whitespaces lists in `String#trim`, `parse(Int|float)`, `RegExp#toString` logic, `String#split`, etc
|
75 | - Should be changed in the future: `@@species` and `ToLength` logic in `Array` methods, `Date` parsing, `Function#bind`, etc
|
76 | - Should not be changed only several features like `Array.isArray` and `Date.now`
|
77 | - Some ES5 polyfills required for modern engines
|
78 | - All old entry points should work fine, but in the next major release API can be changed
|
79 | - `Object.getOwnPropertyDescriptors` moved to the stage 3, [January TC39 meeting](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-01/2016-01-28.md#objectgetownpropertydescriptors-to-stage-3-jordan-harband-low-priority-but-super-quick)
|
80 | - Added `umd` option for [custom build process](https://github.com/zloirock/core-js#custom-build-from-external-scripts), [#169](https://github.com/zloirock/core-js/issues/169)
|
81 | - Returned entry points for `Array` statics, removed in `2.0`, for compatibility with `babel` `6` and for future fixes
|
82 | - **Deprecated**:
|
83 | - `Reflect.enumerate` deprecated and will be removed from the next major release, [January TC39 meeting](https://github.com/rwaldron/tc39-notes/blob/master/es7/2016-01/2016-01-28.md#5xix-revisit-proxy-enumerate---revisit-decision-to-exhaust-iterator)
|
84 | - **New Features**:
|
85 | - Added [`Reflect` metadata API](https://github.com/jonathandturner/decorators/blob/master/specs/metadata.md) as a pre-strawman feature, [#152](https://github.com/zloirock/core-js/issues/152):
|
86 | - `Reflect.defineMetadata`
|
87 | - `Reflect.deleteMetadata`
|
88 | - `Reflect.getMetadata`
|
89 | - `Reflect.getMetadataKeys`
|
90 | - `Reflect.getOwnMetadata`
|
91 | - `Reflect.getOwnMetadataKeys`
|
92 | - `Reflect.hasMetadata`
|
93 | - `Reflect.hasOwnMetadata`
|
94 | - `Reflect.metadata`
|
95 | - Implementation / fixes `Date#toJSON`
|
96 | - Fixes for `parseInt` and `Number.parseInt`
|
97 | - Fixes for `parseFloat` and `Number.parseFloat`
|
98 | - Fixes for `RegExp#toString`
|
99 | - Fixes for `Array#sort`
|
100 | - Fixes for `Number#toFixed`
|
101 | - Fixes for `Number#toPrecision`
|
102 | - Additional fixes for `String#split` (`RegExp#@@split`)
|
103 | - **Improvements**:
|
104 | - Correct subclassing wrapped collections, `Number` and `RegExp` constructors with native class syntax
|
105 | - Correct support `SharedArrayBuffer` and buffers from other realms in typed arrays wrappers
|
106 | - Additional validations for `Object.{defineProperty, getOwnPropertyDescriptor}` and `Reflect.defineProperty`
|
107 | - **Bug Fixes**:
|
108 | - Fixed some cases `Array#lastIndexOf` with negative second argument
|
109 |
|
110 | ##### 2.0.3 - 2016.01.11
|
111 | - Added fallback for V8 ~ Chrome 49 `Promise` subclassing bug causes unhandled rejection on feature detection, [#159](https://github.com/zloirock/core-js/issues/159)
|
112 | - Added fix for very specific environments with global `window === null`
|
113 |
|
114 | ##### 2.0.2 - 2016.01.04
|
115 | - Temporarily removed `length` validation from `Uint8Array` constructor wrapper. Reason - [bug in `ws` module](https://github.com/websockets/ws/pull/645) (-> `socket.io`) which passes to `Buffer` constructor -> `Uint8Array` float and uses [the `V8` bug](https://code.google.com/p/v8/issues/detail?id=4552) for conversion to int (by the spec should be thrown an error). [It creates problems for many people.](https://github.com/karma-runner/karma/issues/1768) I hope, it will be returned after fixing this bug in `V8`.
|
116 |
|
117 | ##### 2.0.1 - 2015.12.31
|
118 | - forced usage `Promise.resolve` polyfill in the `library` version for correct work with wrapper
|
119 | - `Object.assign` should be defined in the strict mode -> throw an error on extension non-extensible objects, [#154](https://github.com/zloirock/core-js/issues/154)
|
120 |
|
121 | ##### 2.0.0 - 2015.12.24
|
122 | - added implementations and fixes [Typed Arrays](https://github.com/zloirock/core-js#ecmascript-6-typed-arrays)-related features
|
123 | - `ArrayBuffer`, `ArrayBuffer.isView`, `ArrayBuffer#slice`
|
124 | - `DataView` with all getter / setter methods
|
125 | - `Int8Array`, `Uint8Array`, `Uint8ClampedArray`, `Int16Array`, `Uint16Array`, `Int32Array`, `Uint32Array`, `Float32Array` and `Float64Array` constructors
|
126 | - `%TypedArray%.{for, of}`, `%TypedArray%#{copyWithin, every, fill, filter, find, findIndex, forEach, indexOf, includes, join, lastIndexOf, map, reduce, reduceRight, reverse, set, slice, some, sort, subarray, values, keys, entries, @@iterator, ...}`
|
127 | - added [`System.global`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://github.com/tc39/proposal-global), [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-19.md#systemglobal-jhd)
|
128 | - added [`Error.isError`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://github.com/ljharb/proposal-is-error), [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-19.md#jhd-erroriserror)
|
129 | - added [`Math.{iaddh, isubh, imulh, umulh}`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://gist.github.com/BrendanEich/4294d5c212a6d2254703)
|
130 | - `RegExp.escape` moved from the `es7` to the non-standard `core` namespace, [July TC39 meeting](https://github.com/rwaldron/tc39-notes/blob/master/es7/2015-07/july-28.md#62-regexpescape) - too slow, but it's condition of stability, [#116](https://github.com/zloirock/core-js/issues/116)
|
131 | - [`Promise`](https://github.com/zloirock/core-js#ecmascript-6-promise)
|
132 | - some performance optimisations
|
133 | - added basic support [`rejectionHandled` event / `onrejectionhandled` handler](https://github.com/zloirock/core-js#unhandled-rejection-tracking) to the polyfill
|
134 | - removed usage `@@species` from `Promise.{all, race}`, [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-18.md#conclusionresolution-2)
|
135 | - some improvements [collections polyfills](https://github.com/zloirock/core-js#ecmascript-6-collections)
|
136 | - `O(1)` and preventing possible leaks with frozen keys, [#134](https://github.com/zloirock/core-js/issues/134)
|
137 | - correct observable state object keys
|
138 | - renamed `String#{padLeft, padRight}` -> [`String#{padStart, padEnd}`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://github.com/tc39/proposal-string-pad-start-end), [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-17.md#conclusionresolution-2) (they want to rename it on each meeting?O_o), [#132](https://github.com/zloirock/core-js/issues/132)
|
139 | - added [`String#{trimStart, trimEnd}` as aliases for `String#{trimLeft, trimRight}`](https://github.com/zloirock/core-js#ecmascript-7-proposals), [proposal](https://github.com/sebmarkbage/ecmascript-string-left-right-trim), [November TC39 meeting](https://github.com/rwaldron/tc39-notes/tree/master/es7/2015-11/nov-17.md#conclusionresolution-2)
|
140 | - added [annex B HTML methods](https://github.com/zloirock/core-js#ecmascript-6-string) - ugly, but also [the part of the spec](http://www.ecma-international.org/ecma-262/6.0/#sec-string.prototype.anchor)
|
141 | - added little fix for [`Date#toString`](https://github.com/zloirock/core-js#ecmascript-6-date) - `new Date(NaN).toString()` [should be `'Invalid Date'`](http://www.ecma-international.org/ecma-262/6.0/#sec-todatestring)
|
142 | - added [`{keys, values, entries, @@iterator}` methods to DOM collections](https://github.com/zloirock/core-js#iterable-dom-collections) which should have [iterable interface](https://heycam.github.io/webidl/#idl-iterable) or should be [inherited from `Array`](https://heycam.github.io/webidl/#LegacyArrayClass) - `NodeList`, `DOMTokenList`, `MediaList`, `StyleSheetList`, `CSSRuleList`.
|
143 | - removed Mozilla `Array` generics - [deprecated and will be removed from FF](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array#Array_generic_methods), [looks like strawman is dead](http://wiki.ecmascript.org/doku.php?id=strawman:array_statics), available [alternative shim](https://github.com/plusdude/array-generics)
|
144 | - removed `core.log` module
|
145 | - CommonJS API
|
146 | - added entry points for [virtual methods](https://github.com/zloirock/core-js#commonjs-and-prototype-methods-without-global-namespace-pollution)
|
147 | - added entry points for [stages proposals](https://github.com/zloirock/core-js#ecmascript-7-proposals)
|
148 | - some other minor changes
|
149 | - [custom build from external scripts](https://github.com/zloirock/core-js#custom-build-from-external-scripts) moved to the separate package for preventing problems with dependencies
|
150 | - changed `$` prefix for internal modules file names because Team Foundation Server does not support it, [#129](https://github.com/zloirock/core-js/issues/129)
|
151 | - additional fix for `SameValueZero` in V8 ~ Chromium 39-42 collections
|
152 | - additional fix for FF27 `Array` iterator
|
153 | - removed usage shortcuts for `arguments` object - old WebKit bug, [#150](https://github.com/zloirock/core-js/issues/150)
|
154 | - `{Map, Set}#forEach` non-generic, [#144](https://github.com/zloirock/core-js/issues/144)
|
155 | - many other improvements
|
156 |
|
157 | ##### 1.2.6 - 2015.11.09
|
158 | * reject with `TypeError` on attempt resolve promise itself
|
159 | * correct behavior with broken `Promise` subclass constructors / methods
|
160 | * added `Promise`-based fallback for microtask
|
161 | * fixed V8 and FF `Array#{values, @@iterator}.name`
|
162 | * fixed IE7- `[1, 2].join(undefined) -> '1,2'`
|
163 | * some other fixes / improvements / optimizations
|
164 |
|
165 | ##### 1.2.5 - 2015.11.02
|
166 | * some more `Number` constructor fixes:
|
167 | * fixed V8 ~ Node 0.8 bug: `Number('+0x1')` should be `NaN`
|
168 | * fixed `Number(' 0b1\n')` case, should be `1`
|
169 | * fixed `Number()` case, should be `0`
|
170 |
|
171 | ##### 1.2.4 - 2015.11.01
|
172 | * fixed `Number('0b12') -> NaN` case in the shim
|
173 | * fixed V8 ~ Chromium 40- bug - `Weak(Map|Set)#{delete, get, has}` should not throw errors [#124](https://github.com/zloirock/core-js/issues/124)
|
174 | * some other fixes and optimizations
|
175 |
|
176 | ##### 1.2.3 - 2015.10.23
|
177 | * fixed some problems related old V8 bug `Object('a').propertyIsEnumerable(0) // => false`, for example, `Object.assign({}, 'qwe')` from the last release
|
178 | * fixed `.name` property and `Function#toString` conversion some polyfilled methods
|
179 | * fixed `Math.imul` arity in Safari 8-
|
180 |
|
181 | ##### 1.2.2 - 2015.10.18
|
182 | * improved optimisations for V8
|
183 | * fixed build process from external packages, [#120](https://github.com/zloirock/core-js/pull/120)
|
184 | * one more `Object.{assign, values, entries}` fix for [**very** specific case](https://github.com/ljharb/proposal-object-values-entries/issues/5)
|
185 |
|
186 | ##### 1.2.1 - 2015.10.02
|
187 | * replaced fix `JSON.stringify` + `Symbol` behavior from `.toJSON` method to wrapping `JSON.stringify` - little more correct, [compat-table/642](https://github.com/kangax/compat-table/pull/642)
|
188 | * fixed typo which broke tasks scheduler in WebWorkers in old FF, [#114](https://github.com/zloirock/core-js/pull/114)
|
189 |
|
190 | ##### 1.2.0 - 2015.09.27
|
191 | * added browser [`Promise` rejection hook](#unhandled-rejection-tracking), [#106](https://github.com/zloirock/core-js/issues/106)
|
192 | * added correct [`IsRegExp`](http://www.ecma-international.org/ecma-262/6.0/#sec-isregexp) logic to [`String#{includes, startsWith, endsWith}`](https://github.com/zloirock/core-js/#ecmascript-6-string) and [`RegExp` constructor](https://github.com/zloirock/core-js/#ecmascript-6-regexp), `@@match` case, [example](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol/match#Disabling_the_isRegExp_check)
|
193 | * updated [`String#leftPad`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) [with proposal](https://github.com/ljharb/proposal-string-pad-left-right/issues/6): string filler truncated from the right side
|
194 | * replaced V8 [`Object.assign`](https://github.com/zloirock/core-js/#ecmascript-6-object) - its properties order not only [incorrect](https://github.com/sindresorhus/object-assign/issues/22), it is non-deterministic and it causes some problems
|
195 | * fixed behavior with deleted in getters properties for `Object.{`[`assign`](https://github.com/zloirock/core-js/#ecmascript-6-object)`, `[`entries, values`](https://github.com/zloirock/core-js/#ecmascript-7-proposals)`}`, [example](http://goo.gl/iQE01c)
|
196 | * fixed [`Math.sinh`](https://github.com/zloirock/core-js/#ecmascript-6-math) with very small numbers in V8 near Chromium 38
|
197 | * some other fixes and optimizations
|
198 |
|
199 | ##### 1.1.4 - 2015.09.05
|
200 | * fixed support symbols in FF34-35 [`Object.assign`](https://github.com/zloirock/core-js/#ecmascript-6-object)
|
201 | * fixed [collections iterators](https://github.com/zloirock/core-js/#ecmascript-6-iterators) in FF25-26
|
202 | * fixed non-generic WebKit [`Array.of`](https://github.com/zloirock/core-js/#ecmascript-6-array)
|
203 | * some other fixes and optimizations
|
204 |
|
205 | ##### 1.1.3 - 2015.08.29
|
206 | * fixed support Node.js domains in [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise), [#103](https://github.com/zloirock/core-js/issues/103)
|
207 |
|
208 | ##### 1.1.2 - 2015.08.28
|
209 | * added `toJSON` method to [`Symbol`](https://github.com/zloirock/core-js/#ecmascript-6-symbol) polyfill and to MS Edge implementation for expected `JSON.stringify` result w/o patching this method
|
210 | * replaced [`Reflect.construct`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) implementations w/o correct support third argument
|
211 | * fixed `global` detection with changed `document.domain` in ~IE8, [#100](https://github.com/zloirock/core-js/issues/100)
|
212 |
|
213 | ##### 1.1.1 - 2015.08.20
|
214 | * added more correct microtask implementation for [`Promise`](#ecmascript-6-promise)
|
215 |
|
216 | ##### 1.1.0 - 2015.08.17
|
217 | * updated [string padding](https://github.com/zloirock/core-js/#ecmascript-7-proposals) to [actual proposal](https://github.com/ljharb/proposal-string-pad-left-right) - renamed, minor internal changes:
|
218 | * `String#lpad` -> `String#padLeft`
|
219 | * `String#rpad` -> `String#padRight`
|
220 | * added [string trim functions](#ecmascript-7-proposals) - [proposal](https://github.com/sebmarkbage/ecmascript-string-left-right-trim), defacto standard - required only for IE11- and fixed for some old engines:
|
221 | * `String#trimLeft`
|
222 | * `String#trimRight`
|
223 | * [`String#trim`](https://github.com/zloirock/core-js/#ecmascript-6-string) fixed for some engines by es6 spec and moved from `es5` to single `es6` module
|
224 | * splitted [`es6.object.statics-accept-primitives`](https://github.com/zloirock/core-js/#ecmascript-6-object)
|
225 | * caps for `freeze`-family `Object` methods moved from `es5` to `es6` namespace and joined with [es6 wrappers](https://github.com/zloirock/core-js/#ecmascript-6-object)
|
226 | * `es5` [namespace](https://github.com/zloirock/core-js/#commonjs) also includes modules, moved to `es6` namespace - you can use it as before
|
227 | * increased `MessageChannel` priority in `$.task`, [#95](https://github.com/zloirock/core-js/issues/95)
|
228 | * does not get `global.Symbol` on each getting iterator, if you wanna use alternative `Symbol` shim - add it before `core-js`
|
229 | * [`Reflect.construct`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) optimized and fixed for some cases
|
230 | * simplified [`Reflect.enumerate`](https://github.com/zloirock/core-js/#ecmascript-6-reflect), see [this question](https://esdiscuss.org/topic/question-about-enumerate-and-property-decision-timing)
|
231 | * some corrections in [`Math.acosh`](https://github.com/zloirock/core-js/#ecmascript-6-math)
|
232 | * fixed [`Math.imul`](https://github.com/zloirock/core-js/#ecmascript-6-math) for old WebKit
|
233 | * some fixes in string / RegExp [well-known symbols](https://github.com/zloirock/core-js/#ecmascript-6-regexp) logic
|
234 | * some other fixes and optimizations
|
235 |
|
236 | ##### 1.0.1 - 2015.07.31
|
237 | * some fixes for final MS Edge, replaced broken native `Reflect.defineProperty`
|
238 | * some minor fixes and optimizations
|
239 | * changed compression `client/*.min.js` options for safe `Function#name` and `Function#length`, should be fixed [#92](https://github.com/zloirock/core-js/issues/92)
|
240 |
|
241 | ##### 1.0.0 - 2015.07.22
|
242 | * added logic for [well-known symbols](https://github.com/zloirock/core-js/#ecmascript-6-regexp):
|
243 | * `Symbol.match`
|
244 | * `Symbol.replace`
|
245 | * `Symbol.split`
|
246 | * `Symbol.search`
|
247 | * actualized and optimized work with iterables:
|
248 | * optimized [`Map`, `Set`, `WeakMap`, `WeakSet` constructors](https://github.com/zloirock/core-js/#ecmascript-6-collections), [`Promise.all`, `Promise.race`](https://github.com/zloirock/core-js/#ecmascript-6-promise) for default `Array Iterator`
|
249 | * optimized [`Array.from`](https://github.com/zloirock/core-js/#ecmascript-6-array) for default `Array Iterator`
|
250 | * added [`core.getIteratorMethod`](https://github.com/zloirock/core-js/#ecmascript-6-iterators) helper
|
251 | * uses enumerable properties in shimmed instances - collections, iterators, etc for optimize performance
|
252 | * added support native constructors to [`Reflect.construct`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) with 2 arguments
|
253 | * added support native constructors to [`Function#bind`](https://github.com/zloirock/core-js/#ecmascript-5) shim with `new`
|
254 | * removed obsolete `.clear` methods native [`Weak`-collections](https://github.com/zloirock/core-js/#ecmascript-6-collections)
|
255 | * maximum modularity, reduced minimal custom build size, separated into submodules:
|
256 | * [`es6.reflect`](https://github.com/zloirock/core-js/#ecmascript-6-reflect)
|
257 | * [`es6.regexp`](https://github.com/zloirock/core-js/#ecmascript-6-regexp)
|
258 | * [`es6.math`](https://github.com/zloirock/core-js/#ecmascript-6-math)
|
259 | * [`es6.number`](https://github.com/zloirock/core-js/#ecmascript-6-number)
|
260 | * [`es7.object.to-array`](https://github.com/zloirock/core-js/#ecmascript-7-proposals)
|
261 | * [`core.object`](https://github.com/zloirock/core-js/#object)
|
262 | * [`core.string`](https://github.com/zloirock/core-js/#escaping-strings)
|
263 | * [`core.iter-helpers`](https://github.com/zloirock/core-js/#ecmascript-6-iterators)
|
264 | * internal modules (`$`, `$.iter`, etc)
|
265 | * many other optimizations
|
266 | * final cleaning non-standard features
|
267 | * moved `$for` to [separate library](https://github.com/zloirock/forof). This work for syntax - `for-of` loop and comprehensions
|
268 | * moved `Date#{format, formatUTC}` to [separate library](https://github.com/zloirock/dtf). Standard way for this - `ECMA-402`
|
269 | * removed `Math` methods from `Number.prototype`. Slight sugar for simple `Math` methods calling
|
270 | * removed `{Array#, Array, Dict}.turn`
|
271 | * removed `core.global`
|
272 | * uses `ToNumber` instead of `ToLength` in [`Number Iterator`](https://github.com/zloirock/core-js/#number-iterator), `Array.from(2.5)` will be `[0, 1, 2]` instead of `[0, 1]`
|
273 | * fixed [#85](https://github.com/zloirock/core-js/issues/85) - invalid `Promise` unhandled rejection message in nested `setTimeout`
|
274 | * fixed [#86](https://github.com/zloirock/core-js/issues/86) - support FF extensions
|
275 | * fixed [#89](https://github.com/zloirock/core-js/issues/89) - behavior `Number` constructor in strange case
|
276 |
|
277 | ##### 0.9.18 - 2015.06.17
|
278 | * removed `/` from [`RegExp.escape`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) escaped characters
|
279 |
|
280 | ##### 0.9.17 - 2015.06.14
|
281 | * updated [`RegExp.escape`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) to the [latest proposal](https://github.com/benjamingr/RexExp.escape)
|
282 | * fixed conflict with webpack dev server + IE buggy behavior
|
283 |
|
284 | ##### 0.9.16 - 2015.06.11
|
285 | * more correct order resolving thenable in [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) polyfill
|
286 | * uses polyfill instead of [buggy V8 `Promise`](https://github.com/zloirock/core-js/issues/78)
|
287 |
|
288 | ##### 0.9.15 - 2015.06.09
|
289 | * [collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) from `library` version return wrapped native instances
|
290 | * fixed collections prototype methods in `library` version
|
291 | * optimized [`Math.hypot`](https://github.com/zloirock/core-js/#ecmascript-6-math)
|
292 |
|
293 | ##### 0.9.14 - 2015.06.04
|
294 | * updated [`Promise.resolve` behavior](https://esdiscuss.org/topic/fixing-promise-resolve)
|
295 | * added fallback for IE11 buggy `Object.getOwnPropertyNames` + iframe
|
296 | * some other fixes
|
297 |
|
298 | ##### 0.9.13 - 2015.05.25
|
299 | * added fallback for [`Symbol` polyfill](https://github.com/zloirock/core-js/#ecmascript-6-symbol) for old Android
|
300 | * some other fixes
|
301 |
|
302 | ##### 0.9.12 - 2015.05.24
|
303 | * different instances `core-js` should use / recognize the same symbols
|
304 | * some fixes
|
305 |
|
306 | ##### 0.9.11 - 2015.05.18
|
307 | * simplified [custom build](https://github.com/zloirock/core-js/#custom-build)
|
308 | * add custom build js api
|
309 | * added `grunt-cli` to `devDependencies` for `npm run grunt`
|
310 | * some fixes
|
311 |
|
312 | ##### 0.9.10 - 2015.05.16
|
313 | * wrapped `Function#toString` for correct work wrapped methods / constructors with methods similar to the [`lodash` `isNative`](https://github.com/lodash/lodash/issues/1197)
|
314 | * added proto versions of methods to export object in `default` version for consistency with `library` version
|
315 |
|
316 | ##### 0.9.9 - 2015.05.14
|
317 | * wrapped `Object#propertyIsEnumerable` for [`Symbol` polyfill](https://github.com/zloirock/core-js/#ecmascript-6-symbol)
|
318 | * [added proto versions of methods to `library` for ES7 bind syntax](https://github.com/zloirock/core-js/issues/65)
|
319 | * some other fixes
|
320 |
|
321 | ##### 0.9.8 - 2015.05.12
|
322 | * fixed [`Math.hypot`](https://github.com/zloirock/core-js/#ecmascript-6-math) with negative arguments
|
323 | * added `Object#toString.toString` as fallback for [`lodash` `isNative`](https://github.com/lodash/lodash/issues/1197)
|
324 |
|
325 | ##### 0.9.7 - 2015.05.07
|
326 | * added [support DOM collections](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice#Streamlining_cross-browser_behavior) to IE8- `Array#slice`
|
327 |
|
328 | ##### 0.9.6 - 2015.05.01
|
329 | * added [`String#lpad`, `String#rpad`](https://github.com/zloirock/core-js/#ecmascript-7-proposals)
|
330 |
|
331 | ##### 0.9.5 - 2015.04.30
|
332 | * added cap for `Function#@@hasInstance`
|
333 | * some fixes and optimizations
|
334 |
|
335 | ##### 0.9.4 - 2015.04.27
|
336 | * fixed `RegExp` constructor
|
337 |
|
338 | ##### 0.9.3 - 2015.04.26
|
339 | * some fixes and optimizations
|
340 |
|
341 | ##### 0.9.2 - 2015.04.25
|
342 | * more correct [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) unhandled rejection tracking and resolving / rejection priority
|
343 |
|
344 | ##### 0.9.1 - 2015.04.25
|
345 | * fixed `__proto__`-based [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) subclassing in some environments
|
346 |
|
347 | ##### 0.9.0 - 2015.04.24
|
348 | * added correct [symbols](https://github.com/zloirock/core-js/#ecmascript-6-symbol) descriptors
|
349 | * fixed behavior `Object.{assign, create, defineProperty, defineProperties, getOwnPropertyDescriptor, getOwnPropertyDescriptors}` with symbols
|
350 | * added [single entry points](https://github.com/zloirock/core-js/#commonjs) for `Object.{create, defineProperty, defineProperties}`
|
351 | * added [`Map#toJSON`](https://github.com/zloirock/core-js/#ecmascript-7-proposals)
|
352 | * removed non-standard methods `Object#[_]` and `Function#only` - they solves syntax problems, but now in compilers available arrows and ~~in near future will be available~~ [available](http://babeljs.io/blog/2015/05/14/function-bind/) [bind syntax](https://github.com/zenparsing/es-function-bind)
|
353 | * removed non-standard undocumented methods `Symbol.{pure, set}`
|
354 | * some fixes and internal changes
|
355 |
|
356 | ##### 0.8.4 - 2015.04.18
|
357 | * uses `webpack` instead of `browserify` for browser builds - more compression-friendly result
|
358 |
|
359 | ##### 0.8.3 - 2015.04.14
|
360 | * fixed `Array` statics with single entry points
|
361 |
|
362 | ##### 0.8.2 - 2015.04.13
|
363 | * [`Math.fround`](https://github.com/zloirock/core-js/#ecmascript-6-math) now also works in IE9-
|
364 | * added [`Set#toJSON`](https://github.com/zloirock/core-js/#ecmascript-7-proposals)
|
365 | * some optimizations and fixes
|
366 |
|
367 | ##### 0.8.1 - 2015.04.03
|
368 | * fixed `Symbol.keyFor`
|
369 |
|
370 | ##### 0.8.0 - 2015.04.02
|
371 | * changed [CommonJS API](https://github.com/zloirock/core-js/#commonjs)
|
372 | * splitted and renamed some modules
|
373 | * added support ES3 environment (ES5 polyfill) to **all** default versions - size increases slightly (+ ~4kb w/o gzip), many issues disappear, if you don't need it - [simply include only required namespaces / features / modules](https://github.com/zloirock/core-js/#commonjs)
|
374 | * removed [abstract references](https://github.com/zenparsing/es-abstract-refs) support - proposal has been superseded =\
|
375 | * [`$for.isIterable` -> `core.isIterable`, `$for.getIterator` -> `core.getIterator`](https://github.com/zloirock/core-js/#ecmascript-6-iterators), temporary available in old namespace
|
376 | * fixed iterators support in v8 `Promise.all` and `Promise.race`
|
377 | * many other fixes
|
378 |
|
379 | ##### 0.7.2 - 2015.03.09
|
380 | * some fixes
|
381 |
|
382 | ##### 0.7.1 - 2015.03.07
|
383 | * some fixes
|
384 |
|
385 | ##### 0.7.0 - 2015.03.06
|
386 | * rewritten and splitted into [CommonJS modules](https://github.com/zloirock/core-js/#commonjs)
|
387 |
|
388 | ##### 0.6.1 - 2015.02.24
|
389 | * fixed support [`Object.defineProperty`](https://github.com/zloirock/core-js/#ecmascript-5) with accessors on DOM elements on IE8
|
390 |
|
391 | ##### 0.6.0 - 2015.02.23
|
392 | * added support safe closing iteration - calling `iterator.return` on abort iteration, if it exists
|
393 | * added basic support [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) unhandled rejection tracking in shim
|
394 | * added [`Object.getOwnPropertyDescriptors`](https://github.com/zloirock/core-js/#ecmascript-7-proposals)
|
395 | * removed `console` cap - creates too many problems
|
396 | * restructuring [namespaces](https://github.com/zloirock/core-js/#custom-build)
|
397 | * some fixes
|
398 |
|
399 | ##### 0.5.4 - 2015.02.15
|
400 | * some fixes
|
401 |
|
402 | ##### 0.5.3 - 2015.02.14
|
403 | * added [support binary and octal literals](https://github.com/zloirock/core-js/#ecmascript-6-number) to `Number` constructor
|
404 | * added [`Date#toISOString`](https://github.com/zloirock/core-js/#ecmascript-5)
|
405 |
|
406 | ##### 0.5.2 - 2015.02.10
|
407 | * some fixes
|
408 |
|
409 | ##### 0.5.1 - 2015.02.09
|
410 | * some fixes
|
411 |
|
412 | ##### 0.5.0 - 2015.02.08
|
413 | * systematization of modules
|
414 | * splitted [`es6` module](https://github.com/zloirock/core-js/#ecmascript-6)
|
415 | * splitted `console` module: `web.console` - only cap for missing methods, `core.log` - bound methods & additional features
|
416 | * added [`delay` method](https://github.com/zloirock/core-js/#delay)
|
417 | * some fixes
|
418 |
|
419 | ##### 0.4.10 - 2015.01.28
|
420 | * [`Object.getOwnPropertySymbols`](https://github.com/zloirock/core-js/#ecmascript-6-symbol) polyfill returns array of wrapped keys
|
421 |
|
422 | ##### 0.4.9 - 2015.01.27
|
423 | * FF20-24 fix
|
424 |
|
425 | ##### 0.4.8 - 2015.01.25
|
426 | * some [collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) fixes
|
427 |
|
428 | ##### 0.4.7 - 2015.01.25
|
429 | * added support frozen objects as [collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) keys
|
430 |
|
431 | ##### 0.4.6 - 2015.01.21
|
432 | * added [`Object.getOwnPropertySymbols`](https://github.com/zloirock/core-js/#ecmascript-6-symbol)
|
433 | * added [`NodeList.prototype[@@iterator]`](https://github.com/zloirock/core-js/#ecmascript-6-iterators)
|
434 | * added basic `@@species` logic - getter in native constructors
|
435 | * removed `Function#by`
|
436 | * some fixes
|
437 |
|
438 | ##### 0.4.5 - 2015.01.16
|
439 | * some fixes
|
440 |
|
441 | ##### 0.4.4 - 2015.01.11
|
442 | * enabled CSP support
|
443 |
|
444 | ##### 0.4.3 - 2015.01.10
|
445 | * added `Function` instances `name` property for IE9+
|
446 |
|
447 | ##### 0.4.2 - 2015.01.10
|
448 | * `Object` static methods accept primitives
|
449 | * `RegExp` constructor can alter flags (IE9+)
|
450 | * added `Array.prototype[Symbol.unscopables]`
|
451 |
|
452 | ##### 0.4.1 - 2015.01.05
|
453 | * some fixes
|
454 |
|
455 | ##### 0.4.0 - 2015.01.03
|
456 | * added [`es6.reflect`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) module:
|
457 | * added `Reflect.apply`
|
458 | * added `Reflect.construct`
|
459 | * added `Reflect.defineProperty`
|
460 | * added `Reflect.deleteProperty`
|
461 | * added `Reflect.enumerate`
|
462 | * added `Reflect.get`
|
463 | * added `Reflect.getOwnPropertyDescriptor`
|
464 | * added `Reflect.getPrototypeOf`
|
465 | * added `Reflect.has`
|
466 | * added `Reflect.isExtensible`
|
467 | * added `Reflect.preventExtensions`
|
468 | * added `Reflect.set`
|
469 | * added `Reflect.setPrototypeOf`
|
470 | * `core-js` methods now can use external `Symbol.iterator` polyfill
|
471 | * some fixes
|
472 |
|
473 | ##### 0.3.3 - 2014.12.28
|
474 | * [console cap](https://github.com/zloirock/core-js/#console) excluded from node.js default builds
|
475 |
|
476 | ##### 0.3.2 - 2014.12.25
|
477 | * added cap for [ES5](https://github.com/zloirock/core-js/#ecmascript-5) freeze-family methods
|
478 | * fixed `console` bug
|
479 |
|
480 | ##### 0.3.1 - 2014.12.23
|
481 | * some fixes
|
482 |
|
483 | ##### 0.3.0 - 2014.12.23
|
484 | * Optimize [`Map` & `Set`](https://github.com/zloirock/core-js/#ecmascript-6-collections):
|
485 | * use entries chain on hash table
|
486 | * fast & correct iteration
|
487 | * iterators moved to [`es6`](https://github.com/zloirock/core-js/#ecmascript-6) and [`es6.collections`](https://github.com/zloirock/core-js/#ecmascript-6-collections) modules
|
488 |
|
489 | ##### 0.2.5 - 2014.12.20
|
490 | * `console` no longer shortcut for `console.log` (compatibility problems)
|
491 | * some fixes
|
492 |
|
493 | ##### 0.2.4 - 2014.12.17
|
494 | * better compliance of ES6
|
495 | * added [`Math.fround`](https://github.com/zloirock/core-js/#ecmascript-6-math) (IE10+)
|
496 | * some fixes
|
497 |
|
498 | ##### 0.2.3 - 2014.12.15
|
499 | * [Symbols](https://github.com/zloirock/core-js/#ecmascript-6-symbol):
|
500 | * added option to disable addition setter to `Object.prototype` for Symbol polyfill:
|
501 | * added `Symbol.useSimple`
|
502 | * added `Symbol.useSetter`
|
503 | * added cap for well-known Symbols:
|
504 | * added `Symbol.hasInstance`
|
505 | * added `Symbol.isConcatSpreadable`
|
506 | * added `Symbol.match`
|
507 | * added `Symbol.replace`
|
508 | * added `Symbol.search`
|
509 | * added `Symbol.species`
|
510 | * added `Symbol.split`
|
511 | * added `Symbol.toPrimitive`
|
512 | * added `Symbol.unscopables`
|
513 |
|
514 | ##### 0.2.2 - 2014.12.13
|
515 | * added [`RegExp#flags`](https://github.com/zloirock/core-js/#ecmascript-6-regexp) ([December 2014 Draft Rev 29](http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts#december_6_2014_draft_rev_29))
|
516 | * added [`String.raw`](https://github.com/zloirock/core-js/#ecmascript-6-string)
|
517 |
|
518 | ##### 0.2.1 - 2014.12.12
|
519 | * repair converting -0 to +0 in [native collections](https://github.com/zloirock/core-js/#ecmascript-6-collections)
|
520 |
|
521 | ##### 0.2.0 - 2014.12.06
|
522 | * added [`es7.proposals`](https://github.com/zloirock/core-js/#ecmascript-7-proposals) and [`es7.abstract-refs`](https://github.com/zenparsing/es-abstract-refs) modules
|
523 | * added [`String#at`](https://github.com/zloirock/core-js/#ecmascript-7-proposals)
|
524 | * added real [`String Iterator`](https://github.com/zloirock/core-js/#ecmascript-6-iterators), older versions used Array Iterator
|
525 | * added abstract references support:
|
526 | * added `Symbol.referenceGet`
|
527 | * added `Symbol.referenceSet`
|
528 | * added `Symbol.referenceDelete`
|
529 | * added `Function#@@referenceGet`
|
530 | * added `Map#@@referenceGet`
|
531 | * added `Map#@@referenceSet`
|
532 | * added `Map#@@referenceDelete`
|
533 | * added `WeakMap#@@referenceGet`
|
534 | * added `WeakMap#@@referenceSet`
|
535 | * added `WeakMap#@@referenceDelete`
|
536 | * added `Dict.{...methods}[@@referenceGet]`
|
537 | * removed deprecated `.contains` methods
|
538 | * some fixes
|
539 |
|
540 | ##### 0.1.5 - 2014.12.01
|
541 | * added [`Array#copyWithin`](https://github.com/zloirock/core-js/#ecmascript-6-array)
|
542 | * added [`String#codePointAt`](https://github.com/zloirock/core-js/#ecmascript-6-string)
|
543 | * added [`String.fromCodePoint`](https://github.com/zloirock/core-js/#ecmascript-6-string)
|
544 |
|
545 | ##### 0.1.4 - 2014.11.27
|
546 | * added [`Dict.mapPairs`](https://github.com/zloirock/core-js/#dict)
|
547 |
|
548 | ##### 0.1.3 - 2014.11.20
|
549 | * [TC39 November meeting](https://github.com/rwaldron/tc39-notes/tree/master/es6/2014-11):
|
550 | * [`.contains` -> `.includes`](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-11/nov-18.md#51--44-arrayprototypecontains-and-stringprototypecontains)
|
551 | * `String#contains` -> [`String#includes`](https://github.com/zloirock/core-js/#ecmascript-6-string)
|
552 | * `Array#contains` -> [`Array#includes`](https://github.com/zloirock/core-js/#ecmascript-7-proposals)
|
553 | * `Dict.contains` -> [`Dict.includes`](https://github.com/zloirock/core-js/#dict)
|
554 | * [removed `WeakMap#clear`](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-11/nov-19.md#412-should-weakmapweakset-have-a-clear-method-markm)
|
555 | * [removed `WeakSet#clear`](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-11/nov-19.md#412-should-weakmapweakset-have-a-clear-method-markm)
|
556 |
|
557 | ##### 0.1.2 - 2014.11.19
|
558 | * `Map` & `Set` bug fix
|
559 |
|
560 | ##### 0.1.1 - 2014.11.18
|
561 | * public release |
\ | No newline at end of file |