Skip to content

Commit 506dba9

Browse files
committed
[change] Support React DOM 16.5
React DOM 16.5 changed unstable APIs that this project depends upon. This regression was fixed in React DOM 16.5.1 but requires React Native for Web to migrate to a different unstable API exported by React DOM. Fix #1096 Close #1106
1 parent c0de9dd commit 506dba9

File tree

7 files changed

+98
-71
lines changed

7 files changed

+98
-71
lines changed

package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,8 @@
3939
"babel-preset-react-native": "^4.0.0",
4040
"caniuse-api": "^2.0.0",
4141
"del-cli": "^1.1.0",
42-
"enzyme": "^3.3.0",
43-
"enzyme-adapter-react-16": "^1.1.0",
42+
"enzyme": "^3.6.0",
43+
"enzyme-adapter-react-16": "^1.5.0",
4444
"enzyme-to-json": "^3.3.3",
4545
"eslint": "^4.19.1",
4646
"eslint-config-prettier": "^2.9.0",
@@ -54,10 +54,10 @@
5454
"lint-staged": "^7.1.0",
5555
"npm-run-all": "^4.1.3",
5656
"prettier": "^1.12.1",
57-
"react": "^16.4.1",
58-
"react-art": "^16.4.1",
59-
"react-dom": "^16.4.1",
60-
"react-test-renderer": "^16.4.1"
57+
"react": "^16.5.1",
58+
"react-art": "^16.5.1",
59+
"react-dom": "^16.5.1",
60+
"react-test-renderer": "^16.5.1"
6161
},
6262
"workspaces": [
6363
"packages/*"

packages/benchmarks/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414
"fela": "^6.1.9",
1515
"glamor": "2.20.40",
1616
"radium": "^0.24.0",
17-
"react": "^16.4.1",
18-
"react-dom": "^16.4.1",
17+
"react": "^16.5.1",
18+
"react-dom": "^16.5.1",
1919
"react-fela": "^7.3.1",
2020
"react-jss": "^8.6.1",
2121
"react-native-web": "0.8.11",

packages/examples/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
},
99
"dependencies": {
1010
"babel-runtime": "^6.26.0",
11-
"react": "^16.4.1",
12-
"react-dom": "^16.4.1",
11+
"react": "^16.5.1",
12+
"react-dom": "^16.5.1",
1313
"react-native-web": "0.8.11"
1414
},
1515
"devDependencies": {

packages/react-native-web/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@
2525
"react-timer-mixin": "^0.13.3"
2626
},
2727
"peerDependencies": {
28-
"react": "16.4.x",
29-
"react-art": "16.4.x",
30-
"react-dom": "16.4.x"
28+
"react": ">=16.5.1",
29+
"react-art": ">=16.5.1",
30+
"react-dom": ">=16.5.1"
3131
},
3232
"author": "Nicolas Gallagher",
3333
"license": "MIT",

packages/react-native-web/src/exports/createElement/index.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,12 @@
99

1010
import AccessibilityUtil from '../../modules/AccessibilityUtil';
1111
import createDOMProps from '../../modules/createDOMProps';
12+
import { injectEventPluginsByName } from 'react-dom/unstable-native-dependencies';
1213
import normalizeNativeEvent from '../../modules/normalizeNativeEvent';
1314
import React from 'react';
14-
import ReactDOM from 'react-dom';
1515
import ResponderEventPlugin from '../../modules/ResponderEventPlugin';
1616

17-
const { EventPluginHub } = ReactDOM.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
18-
19-
EventPluginHub.injection.injectEventPluginsByName({
17+
injectEventPluginsByName({
2018
ResponderEventPlugin
2119
});
2220

packages/website/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
"dependencies": {
1111
"@storybook/addon-options": "^3.4.3",
1212
"@storybook/react": "^3.4.3",
13-
"react": "^16.4.1",
14-
"react-dom": "^16.4.1",
13+
"react": "^16.5.1",
14+
"react-dom": "^16.5.1",
1515
"react-native-web": "0.8.11"
1616
},
1717
"devDependencies": {

yarn.lock

Lines changed: 81 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -3568,52 +3568,55 @@ envinfo@^5.7.0:
35683568
version "5.10.0"
35693569
resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-5.10.0.tgz#503a9774ae15b93ea68bdfae2ccd6306624ea6df"
35703570

3571-
enzyme-adapter-react-16@^1.1.0:
3572-
version "1.1.1"
3573-
resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.1.1.tgz#a8f4278b47e082fbca14f5bfb1ee50ee650717b4"
3571+
enzyme-adapter-react-16@^1.5.0:
3572+
version "1.5.0"
3573+
resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.5.0.tgz#50af8d76a45fe0915de932bd95d34cdca75c0be3"
35743574
dependencies:
3575-
enzyme-adapter-utils "^1.3.0"
3576-
lodash "^4.17.4"
3577-
object.assign "^4.0.4"
3575+
enzyme-adapter-utils "^1.8.0"
3576+
function.prototype.name "^1.1.0"
3577+
object.assign "^4.1.0"
35783578
object.values "^1.0.4"
3579-
prop-types "^15.6.0"
3580-
react-reconciler "^0.7.0"
3579+
prop-types "^15.6.2"
3580+
react-is "^16.4.2"
35813581
react-test-renderer "^16.0.0-0"
35823582

3583-
enzyme-adapter-utils@^1.3.0:
3584-
version "1.3.0"
3585-
resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.3.0.tgz#d6c85756826c257a8544d362cc7a67e97ea698c7"
3583+
enzyme-adapter-utils@^1.8.0:
3584+
version "1.8.0"
3585+
resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.8.0.tgz#ee9f07250663a985f1f2caaf297720787da559f1"
35863586
dependencies:
3587-
lodash "^4.17.4"
3588-
object.assign "^4.0.4"
3589-
prop-types "^15.6.0"
3587+
function.prototype.name "^1.1.0"
3588+
object.assign "^4.1.0"
3589+
prop-types "^15.6.2"
35903590

35913591
enzyme-to-json@^3.3.3:
35923592
version "3.3.4"
35933593
resolved "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.3.4.tgz#67c6040e931182f183418af2eb9f4323258aa77f"
35943594
dependencies:
35953595
lodash "^4.17.4"
35963596

3597-
enzyme@^3.3.0:
3598-
version "3.3.0"
3599-
resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.3.0.tgz#0971abd167f2d4bf3f5bd508229e1c4b6dc50479"
3597+
enzyme@^3.6.0:
3598+
version "3.6.0"
3599+
resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.6.0.tgz#d213f280a258f61e901bc663d4cc2d6fd9a9dec8"
36003600
dependencies:
3601+
array.prototype.flat "^1.2.1"
36013602
cheerio "^1.0.0-rc.2"
3602-
function.prototype.name "^1.0.3"
3603-
has "^1.0.1"
3603+
function.prototype.name "^1.1.0"
3604+
has "^1.0.3"
36043605
is-boolean-object "^1.0.0"
3605-
is-callable "^1.1.3"
3606+
is-callable "^1.1.4"
36063607
is-number-object "^1.0.3"
36073608
is-string "^1.0.4"
36083609
is-subset "^0.1.1"
3609-
lodash "^4.17.4"
3610-
object-inspect "^1.5.0"
3610+
lodash.escape "^4.0.1"
3611+
lodash.isequal "^4.5.0"
3612+
object-inspect "^1.6.0"
36113613
object-is "^1.0.1"
36123614
object.assign "^4.1.0"
36133615
object.entries "^1.0.4"
36143616
object.values "^1.0.4"
36153617
raf "^3.4.0"
36163618
rst-selector-parser "^2.2.3"
3619+
string.prototype.trim "^1.1.2"
36173620

36183621
errno@^0.1.3, errno@~0.1.7:
36193622
version "0.1.7"
@@ -3634,7 +3637,7 @@ error@^7.0.2:
36343637
string-template "~0.2.1"
36353638
xtend "~4.0.0"
36363639

3637-
es-abstract@^1.10.0, es-abstract@^1.12.0, es-abstract@^1.4.3, es-abstract@^1.5.1, es-abstract@^1.6.1, es-abstract@^1.7.0, es-abstract@^1.9.0:
3640+
es-abstract@^1.10.0, es-abstract@^1.12.0, es-abstract@^1.4.3, es-abstract@^1.5.0, es-abstract@^1.5.1, es-abstract@^1.6.1, es-abstract@^1.7.0, es-abstract@^1.9.0:
36383641
version "1.12.0"
36393642
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165"
36403643
dependencies:
@@ -4414,7 +4417,7 @@ function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1:
44144417
version "1.1.1"
44154418
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
44164419

4417-
function.prototype.name@^1.0.3, function.prototype.name@^1.1.0:
4420+
function.prototype.name@^1.1.0:
44184421
version "1.1.0"
44194422
resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327"
44204423
dependencies:
@@ -5231,7 +5234,7 @@ is-builtin-module@^1.0.0:
52315234
dependencies:
52325235
builtin-modules "^1.0.0"
52335236

5234-
is-callable@^1.1.1, is-callable@^1.1.3:
5237+
is-callable@^1.1.1, is-callable@^1.1.3, is-callable@^1.1.4:
52355238
version "1.1.4"
52365239
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
52375240

@@ -6363,6 +6366,10 @@ lodash.debounce@^4.0.8:
63636366
version "4.0.8"
63646367
resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
63656368

6369+
lodash.escape@^4.0.1:
6370+
version "4.0.1"
6371+
resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-4.0.1.tgz#c9044690c21e04294beaa517712fded1fa88de98"
6372+
63666373
lodash.flattendeep@^4.4.0:
63676374
version "4.4.0"
63686375
resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2"
@@ -6375,6 +6382,10 @@ lodash.isarray@^3.0.0:
63756382
version "3.0.4"
63766383
resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55"
63776384

6385+
lodash.isequal@^4.5.0:
6386+
version "4.5.0"
6387+
resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0"
6388+
63786389
lodash.isplainobject@^4.0.6:
63796390
version "4.0.6"
63806391
resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb"
@@ -7111,7 +7122,7 @@ object-copy@^0.1.0:
71117122
define-property "^0.2.5"
71127123
kind-of "^3.0.3"
71137124

7114-
object-inspect@^1.5.0:
7125+
object-inspect@^1.6.0:
71157126
version "1.6.0"
71167127
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b"
71177128

@@ -7129,7 +7140,7 @@ object-visit@^1.0.0:
71297140
dependencies:
71307141
isobject "^3.0.0"
71317142

7132-
object.assign@^4.0.4, object.assign@^4.1.0:
7143+
object.assign@^4.1.0:
71337144
version "4.1.0"
71347145
resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
71357146
dependencies:
@@ -8097,16 +8108,16 @@ react-addons-shallow-compare@^15.6.2:
80978108
fbjs "^0.8.4"
80988109
object-assign "^4.1.0"
80998110

8100-
react-art@^16.4.1:
8101-
version "16.4.1"
8102-
resolved "https://registry.yarnpkg.com/react-art/-/react-art-16.4.1.tgz#3544c13038d7ddfe8b1cc1170b02d99492c03b50"
8111+
react-art@^16.5.1:
8112+
version "16.5.1"
8113+
resolved "https://registry.yarnpkg.com/react-art/-/react-art-16.5.1.tgz#534a265dafc5c0e310da9ef9afbf76d6e221be56"
81038114
dependencies:
81048115
art "^0.10.1"
81058116
create-react-class "^15.6.2"
8106-
fbjs "^0.8.16"
81078117
loose-envify "^1.1.0"
81088118
object-assign "^4.1.1"
8109-
prop-types "^15.6.0"
8119+
prop-types "^15.6.2"
8120+
schedule "^0.4.0"
81108121

81118122
react-deep-force-update@^1.0.0:
81128123
version "1.1.1"
@@ -8147,14 +8158,14 @@ react-docgen@^3.0.0-beta11:
81478158
node-dir "^0.1.10"
81488159
recast "^0.12.6"
81498160

8150-
react-dom@^16.4.1:
8151-
version "16.4.1"
8152-
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.4.1.tgz#7f8b0223b3a5fbe205116c56deb85de32685dad6"
8161+
react-dom@^16.5.1:
8162+
version "16.5.1"
8163+
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.5.1.tgz#29d0c5a01ed3b6b4c14309aa91af6ec4eb4f292c"
81538164
dependencies:
8154-
fbjs "^0.8.16"
81558165
loose-envify "^1.1.0"
81568166
object-assign "^4.1.1"
8157-
prop-types "^15.6.0"
8167+
prop-types "^15.6.2"
8168+
schedule "^0.4.0"
81588169

81598170
react-error-overlay@^4.0.0:
81608171
version "4.0.0"
@@ -8204,6 +8215,10 @@ react-is@^16.3.1, react-is@^16.4.1:
82048215
version "16.4.1"
82058216
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.4.1.tgz#d624c4650d2c65dbd52c72622bbf389435d9776e"
82068217

8218+
react-is@^16.4.2, react-is@^16.5.1:
8219+
version "16.5.1"
8220+
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.5.1.tgz#c6e8734fd548a22e1cef4fd0833afbeb433b85ee"
8221+
82078222
react-jss@^8.6.1:
82088223
version "8.6.1"
82098224
resolved "https://registry.yarnpkg.com/react-jss/-/react-jss-8.6.1.tgz#a06e2e1d2c4d91b4d11befda865e6c07fbd75252"
@@ -8234,15 +8249,6 @@ react-proxy@^1.1.7:
82348249
lodash "^4.6.1"
82358250
react-deep-force-update "^1.0.0"
82368251

8237-
react-reconciler@^0.7.0:
8238-
version "0.7.0"
8239-
resolved "https://registry.yarnpkg.com/react-reconciler/-/react-reconciler-0.7.0.tgz#9614894103e5f138deeeb5eabaf3ee80eb1d026d"
8240-
dependencies:
8241-
fbjs "^0.8.16"
8242-
loose-envify "^1.1.0"
8243-
object-assign "^4.1.1"
8244-
prop-types "^15.6.0"
8245-
82468252
react-split-pane@^0.1.77:
82478253
version "0.1.81"
82488254
resolved "https://registry.yarnpkg.com/react-split-pane/-/react-split-pane-0.1.81.tgz#b1e8b82e0a6edd10f18fd639a5f512db3cbbb4e6"
@@ -8258,7 +8264,7 @@ react-style-proptype@^3.0.0:
82588264
dependencies:
82598265
prop-types "^15.5.4"
82608266

8261-
react-test-renderer@^16.0.0-0, react-test-renderer@^16.4.1:
8267+
react-test-renderer@^16.0.0-0:
82628268
version "16.4.1"
82638269
resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.4.1.tgz#f2fb30c2c7b517db6e5b10ed20bb6b0a7ccd8d70"
82648270
dependencies:
@@ -8267,6 +8273,15 @@ react-test-renderer@^16.0.0-0, react-test-renderer@^16.4.1:
82678273
prop-types "^15.6.0"
82688274
react-is "^16.4.1"
82698275

8276+
react-test-renderer@^16.5.1:
8277+
version "16.5.1"
8278+
resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.5.1.tgz#17f020fb0cf884cadebb5240d9d9c23452f18299"
8279+
dependencies:
8280+
object-assign "^4.1.1"
8281+
prop-types "^15.6.2"
8282+
react-is "^16.5.1"
8283+
schedule "^0.4.0"
8284+
82708285
react-timer-mixin@^0.13.3:
82718286
version "0.13.3"
82728287
resolved "https://registry.yarnpkg.com/react-timer-mixin/-/react-timer-mixin-0.13.3.tgz#0da8b9f807ec07dc3e854d082c737c65605b3d22"
@@ -8298,14 +8313,14 @@ react-treebeard@^2.1.0:
82988313
shallowequal "^0.2.2"
82998314
velocity-react "^1.3.1"
83008315

8301-
react@^16.4.1:
8302-
version "16.4.1"
8303-
resolved "https://registry.yarnpkg.com/react/-/react-16.4.1.tgz#de51ba5764b5dbcd1f9079037b862bd26b82fe32"
8316+
react@^16.5.1:
8317+
version "16.5.1"
8318+
resolved "https://registry.yarnpkg.com/react/-/react-16.5.1.tgz#8cb8e9f8cdcb4bde41c9a138bfbf907e66132372"
83048319
dependencies:
8305-
fbjs "^0.8.16"
83068320
loose-envify "^1.1.0"
83078321
object-assign "^4.1.1"
8308-
prop-types "^15.6.0"
8322+
prop-types "^15.6.2"
8323+
schedule "^0.4.0"
83098324

83108325
reactxp@^1.3.0:
83118326
version "1.3.0"
@@ -8836,6 +8851,12 @@ sax@^1.2.4, sax@~1.2.1:
88368851
version "1.2.4"
88378852
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
88388853

8854+
schedule@^0.4.0:
8855+
version "0.4.0"
8856+
resolved "https://registry.yarnpkg.com/schedule/-/schedule-0.4.0.tgz#fa20cfd0bfbf91c47d02272fd7096780d3170bbb"
8857+
dependencies:
8858+
object-assign "^4.1.1"
8859+
88398860
schema-utils@^0.3.0:
88408861
version "0.3.0"
88418862
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf"
@@ -9299,6 +9320,14 @@ string.prototype.padstart@^3.0.0:
92999320
es-abstract "^1.4.3"
93009321
function-bind "^1.0.2"
93019322

9323+
string.prototype.trim@^1.1.2:
9324+
version "1.1.2"
9325+
resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz#d04de2c89e137f4d7d206f086b5ed2fae6be8cea"
9326+
dependencies:
9327+
define-properties "^1.1.2"
9328+
es-abstract "^1.5.0"
9329+
function-bind "^1.0.2"
9330+
93029331
string_decoder@^1.0.0, string_decoder@~1.1.1:
93039332
version "1.1.1"
93049333
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"

0 commit comments

Comments
 (0)