Compare commits

...
Author SHA1 Message Date
James IdeandMike Grabowski 997bfb50e1 [0.53.0-rc.1] Bump version numbers 2018-01-18 12:15:56 -08:00
James Ide b4375b4606 Fix HMR syntax error messages (message instead of description)
Summary:
The code to display HMR errors on the client was reading the `description` field from Metro payloads. Metro does not include `description` in the body of its error payloads -- only in its `body.errors[]` items. This commit changes RN's HMR code to show `body.message` (set consistently with https://github.com/facebook/metro/pull/124) instead of the non-existent `body.description`.

Open a test RN app, enable HMR, and then introduce a syntax error in an app source file. See that the redbox provides information about the syntax error instead of just saying "TransformError undefined".

- https://github.com/facebook/metro/pull/124

[GENERAL][ENHANCEMENT][HMR] - Fix display of syntax error messages when HMR is enabled
Closes https://github.com/facebook/react-native/pull/17619

Differential Revision: D6726516

Pulled By: mjesun

fbshipit-source-id: b1d1008d6f1aa8f88ff8a2aa1374724a305c773b
2018-01-16 12:11:10 -08:00
Mike Grabowski 0b996577e3 [0.53.0-rc.0] Bump version numbers 2018-01-10 18:02:02 +01:00
Mike Grabowski 49cbca7464 Add missing tvOS header 2018-01-10 18:01:55 +01:00
Mike Grabowski dd4611721d Fix typo 2018-01-10 16:01:44 +01:00
Mike Grabowski 82b123e744 Remove remaining 2018-01-10 15:50:10 +01:00
Mike Grabowski 7c3a61f3b6 Downgrade Buck hoping to get build fixed 2018-01-10 15:25:11 +01:00
Mike Grabowski 796122d8f3 Revert "Automated fixups for Instagram"
This reverts commit dd016f334c.
2018-01-10 15:24:16 +01:00
Mike Grabowski aebb34a294 Revert "Replace native cxx_library with fb-specific macros."
This reverts commit ba31d29dc9.
2018-01-10 15:02:37 +01:00
31 changed files with 47 additions and 50 deletions
+3 -3
View File
@@ -46,11 +46,11 @@ aliases:
- &restore-cache-buck
keys:
- v2-buck-{{ arch }}-v2017.11.16.01
- v2-buck-{{ arch }}-v2017.09.04.02
- &save-cache-buck
paths:
- ~/buck
key: v2-buck-{{ arch }}-v2017.11.16.01
key: v2-buck-{{ arch }}-v2017.09.04.02
- &restore-cache-watchman
keys:
@@ -67,7 +67,7 @@ aliases:
- &install-buck
|
if [[ ! -e ~/buck ]]; then
git clone https://github.com/facebook/buck.git ~/buck --branch v2017.11.16.01 --depth=1
git clone https://github.com/facebook/buck.git ~/buck --branch v2017.09.04.02 --depth=1
fi
cd ~/buck && ant
buck --version
+2 -2
View File
@@ -14,7 +14,7 @@
exports.version = {
major: 0,
minor: 0,
minor: 53,
patch: 0,
prerelease: null,
prerelease: 'rc.1',
};
@@ -86,6 +86,7 @@
59E6049B1FE9CB4A00BD90C5 /* RCTUITextField.h in Copy Headers */ = {isa = PBXBuildFile; fileRef = 59E604501FE9CAF100BD90C5 /* RCTUITextField.h */; };
59E8C5CC1F8833D100204F5E /* RCTFontAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = A85C82991F742AA20036C019 /* RCTFontAttributes.m */; };
A85C829A1F742AA20036C019 /* RCTFontAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = A85C82991F742AA20036C019 /* RCTFontAttributes.m */; };
AD50D1DF20067E6F00A34797 /* RCTBaseTextInputViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 5989E14C20018A2200EA444A /* RCTBaseTextInputViewManager.m */; };
AF3225F91DE5574F00D3E7E7 /* RCTConvert+Text.m in Sources */ = {isa = PBXBuildFile; fileRef = AF3225F81DE5574F00D3E7E7 /* RCTConvert+Text.m */; };
AF3225FA1DE5574F00D3E7E7 /* RCTConvert+Text.m in Sources */ = {isa = PBXBuildFile; fileRef = AF3225F81DE5574F00D3E7E7 /* RCTConvert+Text.m */; };
/* End PBXBuildFile section */
@@ -380,6 +381,7 @@
59E6045D1FE9CAF100BD90C5 /* RCTMultilineTextInputShadowView.m in Sources */,
59E604591FE9CAF100BD90C5 /* RCTRawTextShadowView.m in Sources */,
59E604551FE9CAF100BD90C5 /* RCTTextView.m in Sources */,
AD50D1DF20067E6F00A34797 /* RCTBaseTextInputViewManager.m in Sources */,
59E604691FE9CAF100BD90C5 /* RCTTextSelection.m in Sources */,
59E6045F1FE9CAF100BD90C5 /* RCTMultilineTextInputView.m in Sources */,
59E604611FE9CAF100BD90C5 /* RCTMultilineTextInputViewManager.m in Sources */,
+1 -1
View File
@@ -121,7 +121,7 @@ Error: ${e.message}`
}
case 'error': {
HMRLoadingView.hide();
throw new Error(data.body.type + ' ' + data.body.description);
throw new Error(`${data.body.type}: ${data.body.message}`);
}
default: {
throw new Error(`Unexpected message: ${data}`);
+2 -2
View File
@@ -11,7 +11,7 @@
#define RCT_REACT_NATIVE_VERSION @{ \
@"major": @(0), \
@"minor": @(0), \
@"minor": @(53), \
@"patch": @(0), \
@"prerelease": [NSNull null], \
@"prerelease": @"rc.1", \
}
+1 -1
View File
@@ -1,4 +1,4 @@
VERSION_NAME=1000.0.0-master
VERSION_NAME=0.53.0-rc.1
GROUP=com.facebook.react
POM_NAME=ReactNative
@@ -12,7 +12,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -16,7 +16,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -9,14 +9,17 @@
package com.facebook.react.devsupport;
import android.os.Handler;
import android.os.Looper;
import com.facebook.infer.annotation.Assertions;
import com.facebook.react.bridge.JavaJSExecutor;
import javax.annotation.Nullable;
import java.util.HashMap;
import java.util.concurrent.Semaphore;
import java.util.concurrent.atomic.AtomicInteger;
import javax.annotation.Nullable;
import android.os.Handler;
import android.os.Looper;
import com.facebook.infer.annotation.Assertions;
import com.facebook.react.bridge.JavaJSExecutor;
/**
* Executes JS remotely via the react nodejs server as a proxy to a browser on the host machine.
@@ -157,7 +160,8 @@ public class WebsocketJavaScriptExecutor implements JavaJSExecutor {
}
@Override
public void loadApplicationScript(String sourceURL) throws JavaJSExecutor.ProxyExecutorException {
public void loadApplicationScript(String sourceURL)
throws ProxyExecutorException {
JSExecutorCallbackFuture callback = new JSExecutorCallbackFuture();
Assertions.assertNotNull(mWebSocketClient).loadApplicationScript(
sourceURL,
@@ -172,7 +176,7 @@ public class WebsocketJavaScriptExecutor implements JavaJSExecutor {
@Override
public @Nullable String executeJSCall(String methodName, String jsonArgsArray)
throws JavaJSExecutor.ProxyExecutorException {
throws ProxyExecutorException {
JSExecutorCallbackFuture callback = new JSExecutorCallbackFuture();
Assertions.assertNotNull(mWebSocketClient).executeJSCall(
methodName,
@@ -3,7 +3,6 @@ include_defs("//ReactAndroid/DEFS")
android_library(
name = "annotations",
srcs = glob(["**/*.java"]),
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -18,7 +18,7 @@ import java.util.Map;
public class ReactNativeVersion {
public static final Map<String, Object> VERSION = MapBuilder.<String, Object>of(
"major", 0,
"minor", 0,
"minor", 53,
"patch", 0,
"prerelease", null);
"prerelease", "rc.1");
}
@@ -14,7 +14,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -3,7 +3,6 @@ include_defs("//ReactAndroid/DEFS")
android_library(
name = "annotations",
srcs = glob(["*.java"]),
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -12,7 +12,7 @@ import android.view.animation.Transformation;
*/
/* package */ class OpacityAnimation extends Animation {
static class OpacityAnimationListener implements Animation.AnimationListener {
static class OpacityAnimationListener implements AnimationListener {
private final View mView;
private boolean mLayerTypeChanged = false;
@@ -11,7 +11,6 @@ android_library(
react_native_dep("third-party/android/support-annotations:android-support-annotations"),
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = ["PUBLIC"],
deps = [
react_native_dep("third-party/java/jsr-305:jsr-305"),
@@ -3,7 +3,6 @@ include_defs("//ReactAndroid/DEFS")
android_library(
name = "modal",
srcs = glob(["*.java"]),
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -3,7 +3,6 @@ include_defs("//ReactAndroid/DEFS")
android_library(
name = "text",
srcs = glob(["*.java"]),
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -6,7 +6,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -54,13 +54,13 @@ public class ReactViewGroup extends ViewGroup implements
/**
* This listener will be set for child views when removeClippedSubview property is enabled. When
* children layout is updated, it will call {@link #updateSubviewClipStatus} to notify parent view
* about that fact so that view can be attached/detached if necessary.
* children layout is updated, it will call {@link #updateSubviewClipStatus} to notify parent
* view about that fact so that view can be attached/detached if necessary.
*
* <p>TODO(7728005): Attach/detach views in batch - once per frame in case when multiple children
* TODO(7728005): Attach/detach views in batch - once per frame in case when multiple children
* update their layout.
*/
private static final class ChildrenLayoutChangeListener implements View.OnLayoutChangeListener {
private static final class ChildrenLayoutChangeListener implements OnLayoutChangeListener {
private final ReactViewGroup mParent;
@@ -422,7 +422,7 @@ public class ReactViewGroup extends ViewGroup implements
}
@Override
public void addView(View child, int index, ViewGroup.LayoutParams params) {
public void addView(View child, int index, LayoutParams params) {
// This will get called for every overload of addView so there is not need to override every method.
mDrawingOrderHelper.handleAddView(child);
setChildrenDrawingOrderEnabled(mDrawingOrderHelper.shouldEnableCustomDrawingOrder());
@@ -494,8 +494,7 @@ public class ReactViewGroup extends ViewGroup implements
addViewWithSubviewClippingEnabled(child, index, sDefaultLayoutParam);
}
/*package*/ void addViewWithSubviewClippingEnabled(
View child, int index, ViewGroup.LayoutParams params) {
/*package*/ void addViewWithSubviewClippingEnabled(View child, int index, LayoutParams params) {
Assertions.assertCondition(mRemoveClippedSubviews);
Assertions.assertNotNull(mClippingRect);
Assertions.assertNotNull(mAllChildren);
@@ -6,7 +6,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -9,17 +9,19 @@
package com.facebook.react.views.viewpager;
import java.util.ArrayList;
import java.util.List;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import com.facebook.react.bridge.ReactContext;
import com.facebook.react.uimanager.UIManagerModule;
import com.facebook.react.uimanager.events.EventDispatcher;
import com.facebook.react.uimanager.events.NativeGestureUtil;
import java.util.ArrayList;
import java.util.List;
/**
* Wrapper view for {@link ViewPager}. It's forwarding calls to {@link ViewGroup#addView} to add
@@ -116,7 +118,7 @@ public class ReactViewPager extends ViewPager {
}
}
private class PageChangeListener implements ViewPager.OnPageChangeListener {
private class PageChangeListener implements OnPageChangeListener {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
@@ -2,7 +2,7 @@ include_defs("//ReactAndroid/DEFS")
# This target is only used in open source
if IS_OSS_BUILD:
fb_xplat_cxx_library(
cxx_library(
name = 'jni',
soname = 'libfb.$(ext)',
srcs = glob(['*.cpp', 'jni/*.cpp', 'lyra/*.cpp']),
@@ -2,7 +2,7 @@ include_defs("//ReactAndroid/DEFS")
include_defs("//ReactCommon/DEFS")
fb_xplat_cxx_library(
cxx_library(
name = "fbgloginit",
srcs = [
"glog_init.cpp",
@@ -7,7 +7,7 @@ include_defs("//ReactAndroid/DEFS")
# LICENSE file in the root directory of this source tree. An additional grant
# of patent rights can be found in the PATENTS file in the same directory.
fb_xplat_cxx_library(
cxx_library(
name = "jni-hack",
header_namespace = "",
exported_headers = [
@@ -2,7 +2,7 @@ include_defs("//ReactAndroid/DEFS")
# This target is only used in open source
if IS_OSS_BUILD:
fb_xplat_cxx_library(
cxx_library(
name = 'jni',
soname = 'libyoga.$(ext)',
srcs = glob(['jni/*.cpp']),
@@ -1,6 +1,6 @@
include_defs("//ReactAndroid/DEFS")
fb_xplat_cxx_library(
cxx_library(
name = "jni",
srcs = glob(["*.cpp"]),
headers = glob(
+1 -1
View File
@@ -20,7 +20,7 @@ EXPORTED_HEADERS = [
"WritableNativeMap.h",
]
fb_xplat_cxx_library(
cxx_library(
name = "jni",
srcs = glob(["*.cpp"]),
headers = glob(
@@ -1,6 +1,6 @@
include_defs("//ReactAndroid/DEFS")
fb_xplat_cxx_library(
cxx_library(
name = "perftests",
srcs = ["OnLoad.cpp"],
compiler_flags = [
+1 -1
View File
@@ -1,6 +1,6 @@
include_defs("//ReactCommon/DEFS")
fb_xplat_cxx_library(
cxx_library(
name = "microprofiler",
srcs = [
"MicroProfiler.cpp",
+1 -1
View File
@@ -1,4 +1,4 @@
fb_xplat_cxx_library(
cxx_library(
name = "yoga",
srcs = glob(["yoga/*.cpp"]),
header_namespace = "",
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "react-native",
"version": "1000.0.0",
"version": "0.53.0-rc.1",
"description": "A framework for building native apps using React",
"license": "BSD-3-Clause",
"repository": {
@@ -217,4 +217,4 @@
"shelljs": "^0.7.8",
"sinon": "^2.2.0"
}
}
}