Mark-Simulacrum
b308602098
Use path-exists instead of fs.exists.
...
fs.exists is being deprecated, see: https://github.com/nodejs/io.js/issues/103 .
2015-06-25 12:39:39 -06:00
Sebastian McKenzie
560a044d8f
Merge pull request #1821 from kpdecker/destructure-performance
...
Avoid deopt in iterable destructure template
2015-06-25 15:23:53 +01:00
Sebastian McKenzie
619fbe4c3b
Merge pull request #1830 from kpdecker/avoid-define-property
...
Avoid defineProperty when not needed
2015-06-25 15:23:39 +01:00
kpdecker
1d83ad6cce
Avoid defineProperty when not needed
...
This lets us use the fast path for most object literal assignments and then utilizes the defineProperty path when there is a chance that we could hit the setter issue described in #357 .
10x performance boosts seen for the six-speed test case, going from 200k operations/sec to 2M ops/sec.
2015-06-25 09:22:03 -05:00
kpdecker
5353ccd773
Move slice iterator helper out of primary call
...
Avoids overhead of instantiating the helper on each call to the slice to array helper.
2015-06-25 09:18:12 -05:00
Sebastian McKenzie
95d830fde0
don't output comma separator for decorator list and output Property decorators - fixes #1811
2015-06-25 12:23:45 +01:00
Sebastian McKenzie
31c1286a3c
protect internal files from hotlinking
2015-06-25 12:10:22 +01:00
kpdecker
1b0e5b3ed1
Avoid deopt in iterable destructure template
...
The try/catch was forcing deoptimization under most engines. This roughly doubles throughput under V8 and 7x increases were seen under Firefox.
Performance numbers based on https://github.com/kpdecker/six-speed/tree/master/tests/destructuring
2015-06-24 22:42:13 -05:00
Sebastian McKenzie
c1a080d0ca
supress duplicate deprecation messages
2015-06-25 04:11:13 +01:00
Sebastian McKenzie
0b1ce6c9a4
always coerce leading computed property initialisers into the init object - fixes #1820
2015-06-25 04:10:56 +01:00
Sebastian McKenzie
a6f04055c0
fix block scoping transformer
2015-06-25 04:10:32 +01:00
Sebastian McKenzie
c3219e8b88
deprecate returning source strings from visitor methods
2015-06-25 03:51:25 +01:00
Sebastian McKenzie
6f862a4c45
actually push for left declaration to the returned block scoping body - fixes #1819
2015-06-25 03:48:29 +01:00
Sebastian McKenzie
031a61515b
add labels, and inX properties to lookahead getState
2015-06-24 23:26:59 +01:00
Sebastian McKenzie
d3884fd53b
add inType assignment in flow parse declare method
2015-06-24 23:26:48 +01:00
Sebastian McKenzie
25be0a974d
fixing linting errors
2015-06-24 23:20:03 +01:00
Sebastian McKenzie
7ccd135e83
fix isKeyword flow overload
2015-06-24 23:18:21 +01:00
Sebastian McKenzie
4fc1bbeb60
acorn resync
2015-06-24 23:15:27 +01:00
Sebastian McKenzie
32a4d7172b
optimise generator for compact mode
2015-06-24 23:15:22 +01:00
Sebastian McKenzie
aa25903c05
parse void as an identifier when inside a type annotation to avoid setting void keyword token - cc @DmitrySoshnikov
2015-06-24 23:15:00 +01:00
Sebastian McKenzie
737abca3a9
use this.space() instead of manually pushing
2015-06-24 13:45:56 +01:00
Sebastian McKenzie
9db43ca7a9
clean up t.isReferenced
2015-06-24 13:45:48 +01:00
Sebastian McKenzie
25b0683316
add Path#couldBeBaseType
2015-06-24 13:45:32 +01:00
Sebastian McKenzie
a096f6b1c5
fix noOptimise state being incorrect when recursing into multiple nested functions - fixes #1815
2015-06-24 13:45:14 +01:00
Sebastian McKenzie
2910d4f82c
fix Program can only be replaced with another Program error
2015-06-22 20:36:34 +01:00
Sebastian McKenzie
4b6c954f5e
add ParenthesizedExpression node type for plugins to generate
2015-06-22 20:36:12 +01:00
Sebastian McKenzie
8e1f134635
fix rest parameter array allocation loop being incorrectly aliased - fixes #1800
2015-06-22 11:54:57 +01:00
Sebastian McKenzie
0364519869
remove unused import
2015-06-22 00:06:43 +01:00
Sebastian McKenzie
58cda35831
log spread element rest parameter as a candidate instead of replacing it in place - fixes #1796
2015-06-22 00:06:03 +01:00
Sebastian McKenzie
ebaa06f4a2
add ensureBlock path method
2015-06-21 23:59:14 +01:00
Sebastian McKenzie
4b0f624fb3
turn method literal keys into assignments in loose mode - fixes #1797
2015-06-21 23:59:06 +01:00
Sebastian McKenzie
85308a1e8c
fix super spread in loose mode
2015-06-21 00:01:19 +01:00
Sebastian McKenzie
8f74e8068c
fix generation tests to reflect acorn update
2015-06-20 23:35:02 +01:00
Sebastian McKenzie
4f08a77230
resync with upstream acorn
2015-06-20 23:28:49 +01:00
Sebastian McKenzie
4ac33d62af
move spec.functionName transformer to builtin-basic - fixes #1743
2015-06-20 22:51:20 +01:00
Sebastian McKenzie
2710a914e8
add noop transform method to IgnoreFormatter
2015-06-20 22:48:45 +01:00
Sebastian McKenzie
8934e7f9da
Merge branch 'master' of github.com:babel/babel
2015-06-20 22:48:00 +01:00
Sebastian McKenzie
b4f18e05fa
Merge pull request #1776 from zertosh/matches-pattern-this
...
matchPattern fixes and "this" handling
2015-06-20 22:47:52 +01:00
Sebastian McKenzie
c07540a2c4
extend module IgnoreFormatter from DefaultFormatter - fixes #1763 , closes #1771
2015-06-20 22:47:32 +01:00
Sebastian McKenzie
fb08a519c8
register labels as bindings - fixes #1747
2015-06-20 22:10:29 +01:00
Sebastian McKenzie
100317e0c8
split react displayName addition into a plugin - fixes #1761
2015-06-20 22:01:40 +01:00
Sebastian McKenzie
a32f744341
disable module import receiver when in loose mode - fixes #1788
2015-06-20 21:49:31 +01:00
Sebastian McKenzie
c4feff3cb7
add more whitespace
2015-06-20 21:49:01 +01:00
Sebastian McKenzie
498297ce6b
check for invalid binding identifiers when generating inferred method names - fixes #1794
2015-06-20 21:48:42 +01:00
Sebastian McKenzie
2c8e374eaf
add back non-es5 number guard in literal code gen
2015-06-17 22:56:08 +01:00
Sebastian McKenzie
238c68f829
fix member expression generation on object integers
2015-06-17 22:54:45 +01:00
Ingvar Stepanyan
09b334ad21
Add guard against non-ES5 integer literals.
2015-06-17 21:11:20 +03:00
Sebastian McKenzie
d647ede94b
fix up raw number literal
2015-06-17 17:58:03 +01:00
Sebastian McKenzie
6386b60b9a
add comments to types generator
2015-06-17 16:53:23 +01:00
Sebastian McKenzie
25749a9933
clear properties to undefined in traverse.removeProperties
2015-06-17 16:53:08 +01:00