Commit Graph

1883 Commits

Author SHA1 Message Date
Sidharth Guglani 3e065572df Remove bitfield.h
Summary:
##Changelog:

[Internal][Yoga] Remove Bitfield.h

Reviewed By: astreet

Differential Revision: D18519647

fbshipit-source-id: b46fe585d3ef5f1da7d2726b2d9f759a649be121
2019-11-27 14:20:47 -08:00
Sidharth Guglani c8520dd94f Remove bitfield from YGNode.h
Summary:
##Changelog:

[Internal][Yoga] remove Bitfield from YGNode.h

Reviewed By: astreet

Differential Revision: D18519633

fbshipit-source-id: b5a7d8d5ee960c5618df382900c4ded3da0587a6
2019-11-27 14:20:47 -08:00
Joshua Gross 7ab5eb4caf AndroidTextInput: support using commands instead of setNativeProps (native change)
Summary:
In AndroidTextInput, support codegen'd ViewCommands in native and add three commands that will eventually replace usage of setNativeProps on Android.

TextInput will use these commands in a future diff.

Changelog: [Internal]

Reviewed By: TheSavior

Differential Revision: D18612150

fbshipit-source-id: 5d427040686e8c5ab504dd845bc8ef863f558c35
2019-11-27 12:55:48 -08:00
Joshua Gross 98b8a17645 AndroidTextInput: don't override text with default/placeholder text except for measurement
Summary:
In C++ we return default/placeholder text instead of text in `getAttributedString` so that measurement is correct. This is fine but we shouldn't actually set the attributedString on the ReactEditText view.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D18672369

fbshipit-source-id: 1bb5cddda3cf78f2cff6f805e67c8994ab32ee7c
2019-11-27 12:55:48 -08:00
Joshua Gross da5ea0215a AndroidTextInput: keep track of mostRecentEventCount in C++ State
Summary:
Keep track of AndroidTextInput's mostRecentEventCount in C++ State.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D18672368

fbshipit-source-id: ea7a635629050a6d4957cbcef6ec0bda5faaad9a
2019-11-27 12:55:47 -08:00
Joshua Gross 309de462bd Support setting partial state from Android, and filling in data with previous State constructor
Summary:
iOS and other platforms have direct access to C++ StateT structs, whereas Java only has access to a Java map equivalent - state updates from Java can't update complex types, or must incur significant cost to reconstruct large objects from their folly::dynamic representation (not to mention the complexity of implementing the Java-to-C++ struct converters). Thus it's hard for Java to update StateT's with complex types on the C++ side.

This diff makes a minor change to Android's updateState which uses both the folly::dynamic data from Java as well as the previous State, so each StateT can have fields that are read-only from the Java perspective.

Motivation: For AndroidTextInput we need to set params from Java, without being able to send all of the State params from Java.

In this diff, we introduce a new State constructor that takes the previous State value and a folly::dynamic. It is up to each State implementation how the additional parameter will be used.

We migrate every existing component except for AndroidTextInput in this diff.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D18672365

fbshipit-source-id: 4469e0a3c7658c204089c6fed39394979883f124
2019-11-27 12:55:47 -08:00
Joshua Gross 07580f0f7e AndroidTextInput: support proper measuring of AndroidTextInput text, and displaying attributed strings
Summary:
Use a similar setup as Paragraph, and support in Fabric:

- Correct measuring of AndroidTextInput
- Correct display of AndroidTextInput attributed strings

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D18669957

fbshipit-source-id: 84e0ad8021c9edf8219e0c673c781276ca29787d
2019-11-27 12:55:46 -08:00
Joshua Gross 1cab7ad1d6 Core: Fix props parsing when accessing prop more than once in Props struct initialization
Summary:
See previous diff implementing failing unit test in RawPropsTest.cpp.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D18664014

fbshipit-source-id: ef827bce8c676666b2ce4d5db4abbb0ab11cc454
2019-11-27 12:55:46 -08:00
Joshua Gross fb9cddcab0 Core: Fix infinite loop in prop parsing
Summary:
See previous diff where I added RawPropsTest.cpp to unit-test this functionality. Before this, if you looked up a prop name that does not exist, the prop parser would enter an infinite loop.

I also took this opportunity to comment the block a little bit as it's not super intuitive at first glance.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D18662135

fbshipit-source-id: 319a3b80d1c606db18b2added9f2aa99d4d03407
2019-11-27 12:55:46 -08:00
Joshua Gross 46ca564fbf RawPropsTest C++ unit tests (fabric)
Summary:
Add RawPropsTests unit tests.

The general idea is to cover the normal props use-cases and then add a few abnormal cases and some errors, to make sure nothing crashes.

The final test uncovers an infinite loop in RawProp parsing.

Changelog: [Internal]

Reviewed By: fkgozali

Differential Revision: D18662136

fbshipit-source-id: 2f603b4c3e32f2d4334587e898ea81ad025b07b6
2019-11-27 12:55:45 -08:00
Valentin Shergin 83aa5b7e31 Fabric: RCTNSLineBreakModeFromWritingDirection was renamed
Summary:
... because the original name made no sense.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: sammy-SC

Differential Revision: D18607834

fbshipit-source-id: bf32d2b61d1c3deccba0b599b303ede0b82e6dd6
2019-11-22 22:25:06 -08:00
Valentin Shergin 11c9f480af Fabric: Handling duplicating sub-props in RawPropsKeyMap
Summary:
This diff makes the parsing *Props object with sub-props with duplicating names deterministic: only the first one will be assigned. Before this change, the order was not guaranteed because `qsort` sorting algorithm is not stable and because binary search that we use to search in the sorted array does not handle duplicates deterministically.

The behavior when the only sub-prop (the first one) is being assigned actually desirable feature that exists on purpose. There are places where it's desired behavior (like TextInputProps) and in cases where it's not desired (we don't really have those), it's easy to "fix" implementing the custom constructor.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: JoshuaGross

Differential Revision: D18607657

fbshipit-source-id: aa53a320e6a48877a0dd1b9351dfcc8a9f419b38
2019-11-22 22:25:06 -08:00
Valentin Shergin ed909b619c Fabric: Removing AttributedString::Fragment::shadowNode
Summary:
Before this change `AttributedString::Fragment` had two ShadowView objects (`shadowView` and `parentShadowView`). This diff unifies those two things into one. That allows us to save some CPU and memory and makes things a bit simpler. Besides that, now the length of NSAttributedString and AttributedString is now always the same (it's one Unicode character for an attachment for both).

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: JoshuaGross

Differential Revision: D18607658

fbshipit-source-id: 502ae244e98a52694adc0d646650f8ea0d7922ae
2019-11-22 22:25:06 -08:00
Valentin Shergin 890968cc2c Fabric: Fixed missing base class constructor call in TextProps
Summary:
We need to call all custom base constructors as part of a custom constuctor of the superclass otherwise C++ will use the default one (and that's not what we want here).

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: JoshuaGross

Differential Revision: D18607654

fbshipit-source-id: 6e6154ce4b546c0717a8a67e3c497dfcd696ec41
2019-11-22 22:25:05 -08:00
Valentin Shergin 858824c08b Fabric: Fixing event priority propagation in ConcreteState
Summary:
Two changes:
 * Now we pass the given `priority` to the next function;
 * The default value for `updateState` is now the same as a default value in another overload of the same function (AsynchronousBatched).

All that don't change anything for now because sync event dispatching is disabled (that will matter bit later thought).

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: JoshuaGross

Differential Revision: D18607655

fbshipit-source-id: 9dc7cdac9f347e09449a931c780e613925882a1e
2019-11-22 22:25:05 -08:00
Will Holen d0ed21531a If getters throw, replace value with a placeholder
Summary:
Currently, if you try to inspect globals in the debugger and they have
properties that throw exceptions, the app redscreens.  In particular,
inspecting any function triggers the bug because of `arguments` and
`caller`.

This diff catches the exception and shows a placeholder instead.

Changelog: [Internal]

Reviewed By: mhorowitz

Differential Revision: D18664765

fbshipit-source-id: 0c662f3d97b21a29c57a1dd724e63d17a3b4e263
2019-11-22 16:13:57 -08:00
Sidharth Guglani 156306606d Remove BItfield from YGLayout.h
Summary:
##Changelog:

[Internal][Yoga] Remove Bitfield from YGLayout

Reviewed By: astreet

Differential Revision: D18519623

fbshipit-source-id: 950b8cb1ca2cd0424b8d8748c4b71336b40fc15f
2019-11-22 04:32:07 -08:00
Sidharth Guglani aeebf3afdf Remove Bitfield from YGStyle
Summary:
##Changelog:

[Internal][Yoga] Remove Bitfield from YGStyle

Reviewed By: astreet

Differential Revision: D18519614

fbshipit-source-id: 70f18bc679b62712d40d76bd793cf85906b067a1
2019-11-22 04:32:07 -08:00
Sidharth Guglani bfed94376a Added BitUtils
Summary:
Adds BitUtils to be used later instead of Bitfield.h

##Changelog:
[Internal][Yoga] : Adds BitUtils to be used later instead of Bitfield.h

Reviewed By: astreet

Differential Revision: D18519609

fbshipit-source-id: 8353929543505a7d80d66281adb801d34372beed
2019-11-22 04:32:07 -08:00
Sidharth Guglani 95b3673e21 Back out "not using templates for updating styles which are used via bitfield"
Reviewed By: astreet

Differential Revision: D18628090

fbshipit-source-id: 9d006534111f10ec25a0d56214792aeb96fbdef9
2019-11-22 04:32:06 -08:00
Valentin Shergin be324ca2dc Fabric: Adding some logs to Scheduler, UIManager and co
Summary:
We hope that will help us to understand more.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D18599164

fbshipit-source-id: 431f83de707fc7113e04abd3dd5b59ee5c9cc675
2019-11-21 16:21:25 -08:00
George Zahariev 8553e1acc4 Exact-by-default codemod for react-native-github
Summary:
We are rolling out exact-by-default syntax to xplat/js.

I had to manually move around some comments to preserve proper placement.

Changelog: [Internal]

Reviewed By: jbrown215

Differential Revision: D18633611

fbshipit-source-id: 48f7468dcc55b1d00985419d035a61c6820b3abe
2019-11-21 09:42:57 -08:00
Joshua Gross 9c5b26639a Return AttributedString for placeholder text if text is empty
Summary:
In AndroidTextInput ShadowNode, return AttributedString for placeholder text if text is empty. This ensures that empty TextInputs will have non-zero height.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D18623063

fbshipit-source-id: 2eec2b794b526e8ff5435352e20ccb659358fc84
2019-11-20 18:40:22 -08:00
Valentin Shergin 8dea0acc23 Fabric: Using LOG(ERROR) instead of LOG(Fatal) in Scheduler
Summary:
FATAL crashes the app, which was never the intent of that log message.
We need to use ERROR instead.

Changelog: [INTERNAL]

Reviewed By: fkgozali, zackargyle, mdvacca

Differential Revision: D18597249

fbshipit-source-id: 523c96550f97e837e1957c933786acf28033e60a
2019-11-19 17:01:55 -08:00
Ramanpreet Nara 8ac9b32779 Remove __unused annotation from ConcreteSystraceSection ctor args
Summary:
The constructor arguments to `ConcreteSystraceSection` are actually used. It seems like they were accidentally marked unused in D14181748.

Changelog:
[iOS][Fixed] - Remove __unused annotation from ConcreteSystraceSection ctor args.

Reviewed By: PeteTheHeat

Differential Revision: D18574190

fbshipit-source-id: 38d58da794341d4ecc52f3bc16e05ef2757cca1d
2019-11-19 10:51:59 -08:00
Samuel Susla 5a9b7d7adc Make views tappable with screen reader
Summary:
Changelog: [Internal]

In paper implementation:
`accessibilityActivate` returns NO in case `onAccessibilityTap` is nil.

In Fabric we have no option to detect whether `onAccessibilityTap` is nil or isn't but we don't want to prevent VoiceOver from tapping an element. This could potentially trigger action associated with element twice.

Let's say you have `onPress` and `onAccessibilityTap`, it will trigger both if you trigger action through VoiceOver.

Reviewed By: shergin

Differential Revision: D18572432

fbshipit-source-id: c5ac002317c798a10045b6f05738299d0ae27456
2019-11-19 07:54:16 -08:00
Riley Dulin 9f0b80b1cf Fix licenses in the inspector
Summary:
Lint all files in the inspector and apply auto-fixes for licenses.

Changelog: [Internal]

Reviewed By: mhorowitz

Differential Revision: D18210914

fbshipit-source-id: 91c45d4b02a04e99dd32cf0be8771e327fe03660
2019-11-18 19:34:24 -08:00
Valentin Shergin f32aa2a516 Fabric: Moving MeasureCache into TextLayoutManager
Summary:
We will have several consumers for the measure infra soon (TextInput will use the same TextLayoutManager). It makes sense to move the cache there.
In the future, iOS and Android implementations will probably use a bit different (platform-specific) cache implementations because we will implement the ability to measure "opaque"/platform-specific text containers alongside with normal AttributeStrings.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: mdvacca

Differential Revision: D18445855

fbshipit-source-id: 7b7a65152ac13c74525da695612ae034904e82bf
2019-11-18 14:28:44 -08:00
Valentin Shergin 9349ee26e7 Fabric: Clarifying life-time concerns of ShadowTree::delegate_
Summary:
This diff makes it clear from the code that ShadowTree delegate must be around for the whole life-time of a ShadowTree instance and there is no way to revoke/reset the delegate. This makes reasoning about the lifetime much simpler.

We didn't call `setDelegate(nullptr)` before, so nothing really changes here.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: mdvacca

Differential Revision: D18542502

fbshipit-source-id: f57ee21e0bb533fb82cb6f8ba7723e40ffb25a38
2019-11-18 14:28:43 -08:00
Ramanpreet Nara 8797a5cfcb Stop using RCTConvert to convert between primitive types
Summary:
RCTTiming was the only NativeModule that relied on converting `double`s to other `double`s via `RCTConvert`. RCTTiming was made into a regular NativeModule in D18410788, so it's safe to strip out this logic.

Hopefully, this reduces the memory consumption enough to reduce the OOMs reported in T45151932.

Changelog:
[iOS][Removed] - Stop using RCTConvert to convert between primitive types

Reviewed By: fkgozali

Differential Revision: D18506069

fbshipit-source-id: 7316ad86bc84d47fb383735126d5b00e5491b371
2019-11-18 10:58:50 -08:00
Valentin Shergin db4a7ae9b8 Fabric: Attempt to recover from invariant violation in ~Sheduler
Summary:
We see crashes that happen in the destructor of `EventEmitterWrapper` class which indicates that `EventEmitter`s were not "disabled" before `Runtime` was deallocated. Assuming that `Scheduler` *was* deallocated before the `Runtime` (there is no proof for that), we can suppose that `stopSurface` was not called properly on time. Again, assuming that the moment of Scheduler deallocation is fine, we can try to recover from this situation by forced unmounting of all outstanding `ShadowTree` (that will make future destroying of EventEmitter don't crash).

Why do we believe that `Scheduler` *was* deallocated before `Runtime`?
We are not sure but that's possibly a case or that might be true for some portion of cases.
At least, we will know for sure what exactly went wrong. There is a possibility that all crashes that would happen after will happen exactly here.
And, frankly, from the probability standpoint, earlier we destroy JSI objects, lower chances are that it will be after the death of Runtime.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: sammy-SC

Differential Revision: D18465408

fbshipit-source-id: 76338ed6fce0621cf11ce3178b4d1be7e0c73ccf
2019-11-17 13:54:33 -08:00
Kevin Gozali 446705df33 iOS: attach rootTag to the native component instance for easy access
Summary:
Changelog: [Internal]

The main use-case here is to get the rootTag off RCTImageView, for image loading instrumentation. The fact is, each RCTView subclass already has `reactTag` attached today. We already have the `rootTag` when the view is created by the UIManager, so why not just attach it like reactTag? If we don't, looking up the rootTag from the native component is non-trivial and extremely inefficient (have to jump to shadow queue, back to main queue, etc).

Reviewed By: sammy-SC

Differential Revision: D18497002

fbshipit-source-id: 8409e3a1c95e09accedd959592cbf178fab0b2c3
2019-11-16 00:13:48 -08:00
Kevin Gozali 13a9a03203 Fabric iOS: pass in surfaceId when requesting to download image
Summary:
Changelog: [Internal]

For attribution purpose, pass in the surfaceId and let the app-specific image loader handle it.

Reviewed By: shergin

Differential Revision: D18494106

fbshipit-source-id: e22ca339a2dd12c5bd619b596c7db9c49dc111d0
2019-11-16 00:13:48 -08:00
Valentin Shergin 806a2b8103 Fabric: ShadowTreeDelegate::shadowTreeDidCommit was renamed to shadowTreeDidFinishTransaction
Summary:
Simple renaming. Now the name is aligned with `SchedulerDelegate::schedulerDidFinishTransaction` and actually expresses the idea that not only commit finished but also a transaction was prepared and layout events were sent.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: mdvacca

Differential Revision: D18542503

fbshipit-source-id: 54d429ed139383621fe926fa48a4de062f724176
2019-11-15 21:49:44 -08:00
Valentin Shergin 3426f1f537 Fabric: YogaLayoutableShadowNode::isLeaf_ and using that in ParagraphShadowNode
Summary:
As soon as we have traits infra, it's pretty straight-forward to implement this kinda flag. Without the traits, it's challenging to build that in a performant and elegant way. The challenges of the dynamic_cast-involved approach are:
 * How to check for that feature in YogaLayoutableShadowNode?
 * Even if we use `dynamic_cast`, to which class to cast?
 * We also need to do that in constructor... and dynamic_cast-like checks for `this` don't work in constructors (C++ design limitation).
 * How to scale that if we have more classes like Paragraph (and we will have it for sure)?
 * Performance.
 * Relying on RTTI.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: sammy-SC

Differential Revision: D18525347

fbshipit-source-id: b1915f43ff3fe4364ab6345fb9d1becc591b5a35
2019-11-15 19:51:22 -08:00
Valentin Shergin 059142935a Fabric: Introducing ShadowNodeTraits
Summary:
Quite often in the Fabric codebase, we need to iterate on a list of shadow nodes and perform some work depending on the exact type (or kind) of shadow node we have. Today, we exclusively use RTTI to test for exact type. The problem here is that RTTI is not only expensive in terms of code size (we are moving towards removing RTTI), it's expensive in terms of CPU cycles. (Don't mistake RTTI/dynamic_cast overhead with dynamic dispatch overhead!)

`dynamic_cast` has it's own advantages, of cource: it's simple and straight-forward and does not require additional configuration. On the other side, it requires knowledge about exact class relationship configuration and knowing the exact name of the class.

ShadowNodeTraits is the generalized solution for storing predefined traits right inside ShadowNode object and check/set/unset them efficiently and in a particular-class-independent manner.

This diff only implements it in general and switching storing an internal flag of ShadowNode inside the trait collection to save some space (and for illustration purposes as well).

In the coming diff, we will see how this approach allows tackling the real, non-trivial problem.

In addition to the concept, this diff implements some convenience infra, such as `ConcreteShadowNode::BaseTraits()` static method that allows designating intrinsic-to-a-class traits declaratively.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: sammy-SC

Differential Revision: D18525348

fbshipit-source-id: 083bb85e0a9dc9d6c69bf395bd338d3c18def688
2019-11-15 19:51:21 -08:00
Sidharth Guglani b3439a2460 not using templates for updating styles which are used via bitfield
Summary:
We want completely remove usages of Bitfield as it uses templates which bloats binary size
This stack will reduce 2.2 Kb in binary size bringing it down to 61.3KB on armv7

In this diff we are removing usage of template while updating styles.

## Changelog:
[Internal][Yoga] : Not using templates for updating styles

Reviewed By: astreet

Differential Revision: D18519570

fbshipit-source-id: 2324088b8c63154f818b1da1edf24c0533e10082
2019-11-15 06:40:07 -08:00
Sidharth Guglani 1d683faf1d use owner's width for resolving the margin and padding for node
Summary:
The margin and padding are resolved incorrectly for leaf nodes (nodes with measure function set) if margin and padding are used in percentages.
Here we were using node's width instead of container width to calculate the margin and padding.

Fixed this to use container's width.

## Changelog:

[General][Yoga] : Fixed an issue where margin and padding were resolved incorrectly for leaf nodes (nodes with measure function set) if margin and padding are used in percentages.

Reviewed By: alickbass

Differential Revision: D17130520

fbshipit-source-id: ac904d432f121973e7739debd9136909b5ca1427
2019-11-15 05:12:26 -08:00
Valentin Shergin dc0ec22e79 Fabric: Removing unnecessary code from State.cpp
Summary:
Why crash in production if we can make potential bug not compile?

Changelog: [INTERNAL]

Reviewed By: sammy-SC

Differential Revision: D18499813

fbshipit-source-id: dc2d7ac12b8a2ae27d1e6b832fccc1555cab3b75
2019-11-14 10:38:24 -08:00
Valentin Shergin 0c8b85402e Fabric: Fixing arguments order in CascadedRectangleEdges::resolve
Summary:
The original implementation had an incorrect order of fields in the struct wich causes bugs with border drowing.

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: sammy-SC

Differential Revision: D18444733

fbshipit-source-id: e4611e6e90eee85e7cdebcee3c5bb6886417aa26
2019-11-13 14:22:18 -08:00
Valentin Shergin fa3ab5c653 Fabric: Add and subtract operations for RectangleEdges<T>
Summary:
We will use it soon for `EdgeInsets`

Changelog: [Internal] Fabric-specific internal change.

Reviewed By: sammy-SC

Differential Revision: D18444732

fbshipit-source-id: f03aa2a8889d426095a954d88f9cb6172c3e376e
2019-11-13 14:22:17 -08:00
Sidharth Guglani 0599af2282 using width for calculating margin top percent
Summary:
In Yoga, margin is not calculated correctly when defined in terms of percentage at one place.
According to CSS docs , margin percentage should be calculated according to width of container's block in case of horizontal writing mode. (https://fburl.com/5imus0it)
We were using height of container causing some issues in both android and iOS.

## Changelog:

[Yoga] [Fixed] - margin if defined in percentage should use container's width in horizontal writing mode

Reviewed By: alickbass

Differential Revision: D18395285

fbshipit-source-id: 87ebd013e3cba36da45f6548e4dff1bce69cce9b
2019-11-13 05:28:39 -08:00
Will Holen 39704b8937 Implement Debugger.setBreakpoint
Summary:
setBreakpoint differs from the existing setBreakpointByUrl in that you
can specify a scriptId directly. This was not really possible before
now, since scriptIds were mapped via filenames rather than to
RuntimeModules.

When (re)loading files with the same name, this call can be used to set
breakpoints in a specific one, rather than just the latest version.

Changelog: [Internal]

Reviewed By: bestander

Differential Revision: D18362054

fbshipit-source-id: 6ff1e736c79a4e75dc424316675d426ce9902f5f
2019-11-12 16:28:42 -08:00
Will Holen ae615c33d6 Actually send error when pause-on-exception-mode is unknown
Summary:
We were calling `sendErrorToClient` on error, but this function only
returns a closure that we threw away. Change to actually send an error
response.

Changelog: [Internal]

Reviewed By: bestander

Differential Revision: D18362055

fbshipit-source-id: 2ff1750ffd2c32a9291d3ed74fa0aaecd76c64c6
2019-11-12 16:28:41 -08:00
Will Holen 23feaa56cf Make debugger ScriptIDs per RuntimeModule rather than per filename
Summary:
When a filename (potentially with changes) is loaded multiple times, we keep
multiple instances around but fail to alert the attached debugger about this.

By coupling ScriptIDs to RuntimeModules rather than filenames, we can track
multiple instances of the same name instead.

Changelog: [Internal]

Reviewed By: bestander

Differential Revision: D18362052

fbshipit-source-id: 2147af32bc48c5fd2a2b080ea09dfa4133de7cf5
2019-11-12 16:28:41 -08:00
Marc Horowitz 8e750d75ee Switch use of xplat/hermes-inspector to xplat/js/react-native-github/ReactCommon/hermes/inspector
Summary: Changelog: [Internal]

Reviewed By: dulinriley

Differential Revision: D18364013

fbshipit-source-id: 1c077cf4f886ea620a62d8fe83dfd725850bcd31
2019-11-11 18:38:02 -08:00
Marc Horowitz abb4590285 Address folly and flipper version skew
Summary:
There's some incompatibilities which need to be fixed for real,
but this is a temporary fix to make the build work again.

Changelog: [Internal]

Reviewed By: willholen

Differential Revision: D18364011

fbshipit-source-id: c168e6496a504f9b00da0b9d758c50e2c6f314a4
2019-11-11 18:38:01 -08:00
Marc Horowitz e27610819d pull in debugger fixes from internal fork
Summary:
Changelog:
[Android] [Fixed] - Various bug fixes to the hermes inspector/debugger

Reviewed By: cpojer

Differential Revision: D18364014

fbshipit-source-id: d07dc3f4fd076fec3b6a64698ab8af67772a7a55
2019-11-11 18:38:01 -08:00
Marc Horowitz 61cb2686a2 Update hermes-engine to newest version 0.3.0
Summary:
Changelog:

[Android] [Changed] - Update hermes-engine to newest version 0.3.0

Reviewed By: cpojer

Differential Revision: D18364012

fbshipit-source-id: 819f7f7980f4bc965c8875eef70ee0108882f922
2019-11-11 18:38:01 -08:00
Andres Suarez 8c63dd3b1a Tidy up license headers
Summary: Changelog: [General] [Fixed] - License header cleanup

Differential Revision: D18440278

fbshipit-source-id: e641438267fc070350a8d20ee8eaccd425903014
2019-11-11 17:59:06 -08:00