Deferred
: addedDeferred.prototype.catch
to avoid having to call this directly on the Promise.UnicodeUtilsExtra
: added several methods for escaping strings.
- More Flow annotations:
containsNode
,emptyFunction
,memoizeStringOnly
- Type imports in .js.flow files are now properly using relative paths.
DataTransfer
: handle Firefox better
- Removed extraneous production dependency
- We now include a
Promise
class definition inflow/lib
to account for the changes in Flow v0.23 which removed non-spec methods. This will allow our code to continue typechecking while using these methods.
- Several additional modules. Notably, a collection of Unicode utilities and many new
functional
helpers. CSSCore
: addedmatchesSelector
method
- Copyright headers updated to reflect current boilerplate
@providesModule
headers removed from generated source code- Flow files now contain relative requires, improving compatibility with Haste and CommonJS module systems
isEmpty
: Protect from breaking in environments withoutSymbol
defined
URI
: correctly store reference to value in constructor and return it when stringifying
- Backed out rejection tracking for React Native
Promise
implementation. That code now lives in React Native.
- Corrected require path issue for native
Promise
module
Promise
for React Native with rejection tracking in__DEV__
and afinally
method_shouldPolyfillES6Collection
: check if ES6 Collections need to be polyfilled.
toArray
: removed in favor of usingArray.from
directly.
ErrorUtils
: Re-uses any global instance that already existsfetch
: Switched toisomorphic-fetch
when a global implementation is missingshallowEqual
: handlesNaN
values appropriately (as equal), now usingObject.is
semantics
getActiveElement
: no longer throws in non-browser environment (again)
- Flow: Original source files in
fbjs/flow/include
have been removed in favor of placing original files alongside compiled files in lib with a.flow
suffix. This requires Flow version 0.19 or greater and a change to.flowconfig
files to remove the include path.
base62
module
getActiveElement
: No longer handles a non-existentdocument
invariant
: Message is no longer prefixed with "Invariant Violation: ".
- Apply appropriate transform (
loose-envify
) when bundling withbrowserify
- Ensure the build completes correctly before packaging
- More modules:
memoizeStringOnly
,joinClasses
UserAgent
: Query information about current user agent
fetchWithRetries
: Reject failure with an Error, not the responsegetActiveElement
: no longer throws in non-browser environment