145 Commits

Author SHA1 Message Date
Sebastian McKenzie
ae831c2270 v6.3.12 2015-12-04 22:56:13 +11:00
Sebastian McKenzie
5b6a39f227 v6.1.20 2015-11-13 03:38:54 -08:00
Ben Alpert
d1b8db1532 React inlining: Refactor to reduce parsing cost
- Have the `jsx` helper do the `defaultProps` work instead of calling `defaultProps` inline.
- Put `key` after `props` and make it optional.
- Inline `children` as rest args instead of in the object.
- Rename `createRawReactElement` to `jsx`. I wish I was kidding.

Most of these are silly microoptimizations. In my test file (based off an internal RN app), this reduces the parsing overhead of inlining from around 1% to 0.1% in JSC and from 0.6% to 0.0% in V8 (compared to element inlining before this commit).

Once parsed, the initial render with inlining is the same speed as not inlining in JSC and ~1% slower in V8. A second initial render in the same context (reusing the function objects, JIT, etc) is 2.0% faster in JSC and 5.5% faster in V8.
2015-11-12 18:05:57 -08:00
Sebastian McKenzie
4a1e5c17b4 v6.1.18 2015-11-12 13:46:30 -08:00
Sebastian McKenzie
23fd185590 v6.1.17 2015-11-12 13:40:25 -08:00
Sebastian McKenzie
c4c66687ea v6.1.16 2015-11-12 13:33:20 -08:00
Sebastian McKenzie
9c91b555f9 v6.1.15 2015-11-12 12:15:47 -08:00
Sebastian McKenzie
f127f81cb7 v6.1.14 2015-11-12 12:01:18 -08:00
Sebastian McKenzie
548d973d12 v6.1.13 2015-11-12 11:57:45 -08:00
Sebastian McKenzie
af208e8acb v6.1.12 2015-11-12 00:47:51 -08:00
Sebastian McKenzie
8fb4d55687 v6.1.11 2015-11-11 23:58:22 -08:00
Sebastian McKenzie
98b3dda500 v6.1.10 2015-11-11 23:52:57 -08:00
Sebastian McKenzie
15baf2afb5 v6.1.9 2015-11-11 23:46:00 -08:00
Sebastian McKenzie
e018723c7e v6.1.8 2015-11-11 23:40:20 -08:00
Sebastian McKenzie
8dcf4aedc0 v6.1.7 2015-11-11 23:37:19 -08:00
Sebastian McKenzie
97443eada6 v6.1.6 2015-11-11 23:32:43 -08:00
Sebastian McKenzie
803f58f7ad v6.1.5 2015-11-11 23:30:14 -08:00
Sebastian McKenzie
caff1e72a5 v6.1.10 2015-11-11 23:28:53 -08:00
Sebastian McKenzie
541e547848 v6.1.9 2015-11-11 23:27:56 -08:00
Sebastian McKenzie
82a931c289 Merge branch 'development' 2015-11-11 23:24:58 -08:00
Sebastian McKenzie
26e56bc966 v6.1.5 2015-11-11 22:48:30 -08:00
Ben Alpert
e8ebc7074e React inlining: Make sure some props object always exists 2015-11-11 15:33:43 -08:00
Ben Alpert
07a5bcc04a React inlining: Fix transform for computed key
(This was broken before my last change too.)
2015-11-11 15:27:02 -08:00
Sebastian McKenzie
26abba9880 Merge pull request #2972 from spicyj/inline2
Use a helper function for React "inlining"
2015-11-11 12:39:54 -08:00
Sebastian McKenzie
03383bdf31 v6.1.4 2015-11-11 02:04:26 -08:00
Ben Alpert
3cad287233 Use a helper function for React "inlining"
Either due to lower parsing costs or better type inference, this seems
to perform better than direct object inlining. (All along, the main win
was skipping a loop through props, not avoiding a function call.)
2015-11-10 21:10:06 -08:00
Henry Zhu
4751caab3b babel-plugin-transform-x: add test to .npmignore 2015-11-10 17:53:30 -05:00
Sebastian McKenzie
15969a0904 move all plugin tests out of babel-core and into their appropriate folders 2015-11-08 23:04:10 -08:00
Sebastian McKenzie
da20aa90c1 omit defaultProps helper when there are no props 2015-11-08 17:10:33 -08:00
Sebastian McKenzie
2a1a038031 move children prop pushing to after props to ensure correct order - fixes #2395 2015-11-08 06:24:10 -08:00
Sebastian McKenzie
f2215915ff v6.1.2 2015-11-05 11:10:22 +00:00
Henry Zhu
f01d2054d4 transformation-react-inline-elements: ensure invalid identifier JSX attribute keys are quoted - fixes #2808 2015-11-04 08:47:09 -05:00
Sebastian McKenzie
751c53b728 v6.0.20 2015-11-03 04:21:25 +00:00
Sebastian McKenzie
91c463c0f7 fix react inline elements plugin when creating properties out of jsx expression containers - fixes #2766 2015-11-03 03:34:46 +00:00
Sebastian McKenzie
9bc95258e6 v6.0.17 2015-11-02 19:53:45 +00:00
Sebastian McKenzie
d91fab7337 Merge pull request #2528 from STRML/react-inline-children-fix
optimisations.react.inline: don't pass empty array.
2015-11-02 19:31:26 +00:00
Sebastian McKenzie
34665bdfda v6.0.14 2015-10-30 23:30:40 +00:00
Sebastian McKenzie
37159fbc7d Merge branch 'master' of github.com:babel/babel 2015-10-30 19:17:19 +00:00
Sebastian McKenzie
255288cda5 fix babel-runtime dependencies - fixes #2655 2015-10-30 19:16:42 +00:00
James Kyle
5e3fee2258 Update package.json 2015-10-30 11:37:35 -07:00
Samuel Reed
b98d24594a optimisations.react.inline: don't pass empty array.
This fixes incompatibilities with code that check for the existence
of children.
2015-10-29 21:18:07 -05:00
Sebastian McKenzie
a8cf46d8f4 v6.0.2 2015-10-29 18:06:55 +00:00
Sebastian McKenzie
b2af8af7c8 v6.0.0 2015-10-29 18:02:15 +00:00
Sebastian McKenzie
ae7d5367f1 6.0.0
I'm extremely stupid and didn't commit as I go. To anyone reading this
I'm extremely sorry. A lot of these changes are very broad and I plan on
releasing Babel 6.0.0 today live on stage at Ember Camp London so I'm
afraid I couldn't wait. If you're ever in London I'll buy you a beer
(or assorted beverage!) to make up for it, also I'll kiss your feet and
give you a back massage, maybe.
2015-10-29 17:51:24 +00:00
Sebastian McKenzie
9969224a93 add more plugins, rename some 2015-09-15 06:12:46 +01:00