Commit Graph
19463 Commits
Author SHA1 Message Date
Ben Alpert 378c879a6a Show component stack in PropTypes warnings (#6771) 2016-05-14 17:40:39 -07:00
Ben Alpert 3cc733add4 Fix severe perf problems in component tree devtool (#6770)
One of the ReactMultiChildText tests renders 2145 roots (and even more components) and unmounts none of them. Now we don't loop through them all a bunch of times so the test takes 20 seconds instead of 60.

We should clean up instantiateReactComponent somehow so that the onSetDisplayName call isn't produced for the TopLevelWrapper, which should allow us to just store an array of unmountedIDs instead of a hash map so we at least don't have double maps. This change mirrors the old logic though.

Reviewers: @gaearon, @sebmarkbage
2016-05-14 12:13:48 -07:00
Ben Alpert 5b5bd5eb75 Print stack in devtool exception warning (#6768) 2016-05-14 12:12:19 -07:00
Ben Alpert 03f4ba260b Track source more generically in ReactComponentTreeDevtool (#6765)
Being able to get the source for your parent components seems useful, and ReactComponentTreeDevtool is best poised to be able to do that.

I'm also not sure it makes sense to have separate DOM-specific `onMountDOMComponent` and `onUpdateDOMComponent` events, so I removed them for now. Even if we want them, their timing seemed sort of arbitrary.

I also made it so DOM devtools can listen to non-DOM events too. Willing to change that if people think it's ugly though.
2016-05-14 12:12:12 -07:00
Ben Alpert c0007d56e9 Interleave trials in benchmark script
This should be more of a fair A/B test so the timings aren't affected by having different load on your system when testing the two alternatives.
2016-05-14 12:04:25 -07:00
Ben Alpert cab835d3a0 Make benchmark script work in React 15 2016-05-14 12:03:51 -07:00
Nima Jahanshahi 32c750de5c Fixed an invalid escape char in attribute name regexp (#6772)
more info: https://www.w3.org/TR/xml/#NT-Name
2016-05-14 10:10:30 -07:00
Dan Abramov 74cce27fe0 Merge pull request #6767 from gaearon/fix-broken-master
Fix remaining onNativeOperation => onHostOperation rename
2016-05-14 01:47:31 +01:00
Dan Abramov dea7cafd9d Fix remaining onNativeOperation → onHostOperation rename
We renamed it in #6754 but #6748 got merged after that referencing the old name.
2016-05-14 01:09:53 +01:00
Dan Abramov 5569d1d40e Merge pull request #6763 from nfcampos/is-running
added isProfiling() to ReactDebugTool and isRunning() to PerfTools
2016-05-13 20:50:38 +01:00
Nuno Campos 5b93a2bdbe added tests for repeated calls to ReactPerf.start/stop 2016-05-13 20:28:14 +01:00
Nuno Campos 201d03268e changed test 2016-05-13 08:24:25 +01:00
Ben Alpert 20bcabb1ea Remove some dead code (#6764) 2016-05-12 17:10:18 -07:00
Chad Fawcett 5d64199bb6 Add information on JSX element keys (#6751) 2016-05-12 17:02:07 -07:00
Dmitriy Kubyshkin 0e889d7c72 Fixed removing attributes during custom element update. Fixes #6747 (#6748) 2016-05-12 17:00:04 -07:00
Nuno Campos a027d15aff added isProfiling() to ReactDebugTool and isRunning() to PerfTools 2016-05-12 19:27:05 +01:00
hao.huang 92bebcad5f Add permalink (#6713)
Add permalink to docs, so we can access with 'prev' and 'next'
2016-05-12 08:57:45 -07:00
djskinner 712b1f75bf Refer to correct example (#6760)
I *think* this should refer to the second example, where the instance to the ref is stored. In any case please can someone confirm for my own understanding?
2016-05-12 07:49:02 -07:00
Ben Alpert ba9b985406 Rename host-y things to be "host" not "native" (#6754)
For clarity.

I left "native event" as-is because there's a lot of it, it's not particularly ambiguous, and SimulateNative/nativeTouchData are public API in ReactTestUtils.
2016-05-11 23:22:59 -07:00
Dan Abramov de1bb7a71f Merge pull request #6753 from facebook/fix-6750
Fix a memory leak in ReactComponentTreeDevtool
2016-05-12 03:41:55 +01:00
Dan Abramov 3779a5d18c Fix a memory leak in ReactComponentTreeDevtool
`ReactDebugTool` used to only call `purgeUnmountedComponents()` while profiling, so information about unmounted instances kept accumulating when not profiling.

Additionally, unmounting in React Native and rendering to string did not correctly clean up the devtool.

Finally, the tests tested the wrong behavior and relied on explicit `purgeUnmountedComponent()` calls.

To fix this, we:

* Test specifically that unmounting is enough to clean up the tree devtool.
* Add missing `onBeginFlush` and `onEndFlush` calls to server and native rendering so `ReactDebugTool` knows when to copy the tree.

Fixes #6750
2016-05-12 03:19:55 +01:00
Dan Abramov 027d9a919b Merge pull request #6752 from facebook/fix-6742
Fix ReactPerf.printOperations() crash
2016-05-12 02:59:46 +01:00
Dan Abramov 9cebc26638 Fix a failing test and count IDs from one 2016-05-12 02:45:09 +01:00
Dan Abramov f0594d2792 Remove the protective clause that is now unnecessary
Instead, we fixed the callsites to stop emitting events for empty components.
2016-05-12 00:50:18 +01:00
Dan Abramov d80723b237 Check for missing debugID in ReactDebugTool
TopLevelWrapper and empty components have ID of 0.
These are implementation details and we don't want to leak them to devtools.
2016-05-12 00:45:07 +01:00
Dan Abramov 1559111bf9 Switching between null and a native should not be counted as a waste 2016-05-12 00:05:32 +01:00
Dan Abramov 0cd1d3b5a2 Allow empty components in the native operation logs
Fixes #6742
2016-05-11 23:31:50 +01:00
Marshall Bowers 6b1232aa86 Add basic issue and PR templates (#6597)
Issue template adapted from the Angular template, and PR template
adapted from the PR guidelines in CONTRIBUTING.md.
2016-05-11 15:30:25 -07:00
Dan Abramov c8a7988bf9 Add a failing test case for #6742
getOperations() blows up when replacing null with a native because the null component has debugID of 0 that isn’t registered in the component tree.
2016-05-11 23:27:48 +01:00
Jarrod Mosen 01b060d7dc Fix grammar on homepage (#6746)
* Fix grammar in README

* Change DOM abstraction grammar on homepage
2016-05-11 15:03:05 -07:00
yiminghe b11540ccb2 consistent owner for stateless component (#6534) 2016-05-10 22:21:16 -07:00
Sebastian Markbåge cf157886e9 React Fiber Reconciler (#6690)
This is an outline for the new reconciler infrastructure.

I created a noop renderer to have something to get started from.

I split the reconciler folder into old and new, as well as shared.
I put shouldUpdateReactComponent in shared as an example of a
utility that can easily be shared between both. I plan on breaking
out more utilities like these.
2016-05-10 18:24:57 -07:00
Sebastian Markbåge 069f8099d6 Fix flow errors (#6719)
The new flow somehow found these on my machine but nowhere else
and not previously.
2016-05-10 11:56:32 -07:00
Ben Alpert 98cb2f8507 Revert "Don't wrap drag events in IE/Edge in dev builds" (#6741) 2016-05-10 10:58:35 -07:00
Dan Abramov 7bf96c08e6 Merge pull request #6377 from puradox/proptypes-symbol
Add new primitive PropType `Symbol`
2016-05-10 15:09:12 +01:00
Bradford 25be6dc027 fix minor capitalzation typo (#6736) 2016-05-09 21:41:40 -07:00
Dan Abramov c3d52d8ec1 Fix zh-TW permalink 2016-05-10 02:21:10 +01:00
Dan Abramov a95494d635 Fix ru-RU doc page permalinks
Fixes #6735
2016-05-10 01:39:15 +01:00
yiminghe 904ee9a678 allow to ignore value attribute for option (#5362) 2016-05-09 09:22:50 -07:00
Dan Abramov 982e096eb5 Merge pull request #6730 from elas7/fix-docs
[docs] Remove mention of 'nested object' as an allowed children in React.Children.map
2016-05-09 02:35:48 +01:00
Seba 46e658711e [docs] add link to create-fragment from React.Children.map docs 2016-05-08 22:12:07 -03:00
Seba 2fa52f375b [docs] Remove mention of 'nested object' as an allowed children in React.Children.map
Replace it with 'keyed fragment', since ReactFragments were made a replecement for Objects as allowed children in #4700
2016-05-08 21:26:40 -03:00
Yaxian 9ddf9e137e refine the translation of chapter 12-context (#6665) 2016-05-07 09:47:38 -07:00
Jim 96cb8c5fc4 Basic SSR support for error boundaries (#6694) 2016-05-06 16:54:06 -07:00
Sebastian Markbåge 700b7148ef Get patch versions of Flow (#6716)
Best practice or whatever.
2016-05-06 14:48:56 -07:00
Ben Alpert 82ab58ea03 Disable coverage on Travis (#6712) 2016-05-05 17:14:26 -07:00
Paul O’Shannessy 873369cc7c Cleanup: remove @nolint (#6703) 2016-05-05 16:12:17 -07:00
Andreas Svensson 2af4765a2a DOMLazyTree, populate <object> before insertion into DOM (#6691) 2016-05-05 15:12:11 -07:00
Ben Alpert e01bf78a79 Move dev-only flags to only exist on composites (#6709)
_isOwnerNecessary was unused.
2016-05-05 15:07:04 -07:00
Dan Abramov b6a6078167 Merge pull request #6647 from gaearon/bye-bye-reactperf
Replace ReactPerf with new implementation
2016-05-05 02:57:13 +01:00