53364dc4b69a3ba40760c556cd1db1917a6fd95a
[platform/framework/web/crosswalk-tizen.git] /
1 # esformatter changelog
2
3 ## v0.6.1 (2015-03-27)
4
5  - fix comment alignment if surrounded by whitespaces. closes #297
6  - improve ObjectExpression hook logic to handle values surrounded by parenthesis. fixes #295
7  - fix setOptions behavior to allow user to override plugin default settings. fixes #293
8
9 ## v0.6.0 (2015-03-26)
10
11  - add support for the pipe option on the config file, allowing user to pipe other CLI tools. closes #168
12  - add support for ES6 classes. closes #286
13  - add support for ES6 default params. closes #285
14  - add support for ES6 arrow functions. closes #255
15  - change comment indentation behavior to match next/prev code block based on context. fixes #209. fixes #270.
16  - extract helpers from lib/indent.js into rocambole-indent. closes #277
17  - fixes SwitchCase indentation range. closes #290
18  - ignore shebang by default. closes #284
19  - add setting to limit line breaks and white spaces around BreakKeyword. fixes #213
20  - limit spaces before function name. closes #283
21  - make sure plugins.setOptions is called before plugins.stringBefore. fixes #288
22  - replace lib/lineBreak.js with rocambole-linebreak. closes #279
23  - replace lib/whiteSpace.js with rocambole-whitespace. closes #278
24  - support in place edits. fixes #275
25  - use locally installed esformatter version if available. closes #190
26
27 ## v0.5.1 (2015-03-17)
28
29  - make it work with esprima@2.1 AST!
30  - ConditionalExpression: indent even if consequent is on the same line as the test
31  - Fix indent for logical expression as argument of return statement
32  - Fix indent for multi-var declaration with logical expression
33  - ForStatement improvements
34  - IfStatement: Fix multi-line test with comments
35  - ObjectExpression: Indent multi-line binary and logical expression values
36  - Update jQuery preset to fix single-line object expression spacing
37  - Update jQuery preset to make use of new IIFE settings
38  - fix DoWhileStatement indent. closes #256
39  - improve CallExpression hook to handle a few edge cases and add option to limit br/ws around opening/closing parentheses. closes #267
40  - improve getter/setter behavior on ObjectExpression. fixes #265
41  - indent NewExpression arguments. fixes #254
42  - make sure we don't loop over same CatchClause twice. fixes #264
43
44 ## v0.5.0 (2015-02-26)
45
46  - add support for br/ws around IIFEOpeningParentheses and IIFEClosingParentheses and keep spaces around CallExpression to avoid conflicts. closes #223. closes #250.
47  - don't remove line breaks before FunctionExpression by default and handle an edge case for array indentation if it is a chained member expression argument. fixes #202
48  - drop ArgumentList exceptions (used previously by jQuery preset)
49  - fix FunctionExpression: Handle two special cases for TopLevelFunctionBlock
50  - fix SwitchCase indent if missing semicolon after break. fixes #225
51  - fix array indentation for cases where closing bracket is on the same line. simplify ObjectExpression indentation logic while also fixing how it works inside arrays. fixes #224. fixes #239.
52  - fix indent edges for chained MemberExpression. fixes #240
53  - improve IfStatement.test indentation. closes #222
54  - indent BinaryExpression & LogicalExpression if inside VariableDeclaration, CallExpression or AssignmentExpression. fixes #212
55  - indent support for ParameterList and enable it by default. closes #231
56  - make sure plugins are loaded/registered before `plugins.stringBefore` is called and expose `unregisterAll`. fixes #245. closes #246.
57  - only indent if there is a line break before/between arguments. fixes #238
58  - support getters/setters in ObjectExpression
59  - update jQuery preset to use CatchParameterList whiteSpace setting
60  - update jQuery preset to tolerate single line objects
61  - update rocambole to v0.5 and change the BinaryExpression test to match esprima@2.0 behavior (no EmptyStatement between ExpressionStatements). see #192
62
63 ## v0.4.3 (2014-10-13)
64
65  - fix error related to multiple `plugin.register` calls. (#218)
66
67 ## v0.4.2 (2014-09-08)
68
69  - fix `else if` consequent with no braces. closes #196
70  - fix indent of nested if braces before comments. closes #197
71  - fix CatchClause indent and add settings for `FinallyKeyword` and `TryKeyword`. closes #203
72  - indent `LogicalExpression` if it's the `VariableDeclaration.init`.
73
74 ## v0.4.1 (2014-07-09)
75
76  - fix comma and white spaces around object property values (#191).
77  - fix ObjectExpression indent edges (#193).
78
79 ## v0.4.0 (2014-07-06)
80
81  - add `transformBefore` hook for plugins and `transformAfter` to keep API consistent. closes #187
82  - add option to add/remove trailing empty lines in the file (EOF). closes #111.
83  - add options to control line breaks inside ArrayExpressions. closes #129
84  - add support for multiple indent levels (closes #179, closes #106).
85  - add double indent for `IfStatementConditional` on the jQuery preset (closes #150)
86  - add support for line breaks before/after `PropertyName` and `PropertyValue` (closes #184)
87  - support plugins option on the CLI. closes #182
88  - fix `MemberExpression` indent behavior. (meta bug #181)
89  - fix indent end edge for `FunctionExpression` inside `MemberExpression`. closes #152
90  - change indent rules for `AssignmentExpression` and `ConditionalExpression` to match jQuery preset needs. closes #149
91  - convert comma-first objects to comma-last (closes #175)
92  - improve `CatchClause` and `TryStatement` line break and white space handling. closes #128
93  - improve `ReturnStatement` and `CallExpression` indent behavior.
94  - rename `ChainedMemberExpression` to `MemberExpression` on the config file.
95
96 ## v0.3.2 (2014-06-23)
97
98  - fix issue with sparse arrays. see millermedeiros/rocambole#15
99  - fix Params comma handling and update rocambole to 0.3.4 to fix BlockComment. closes #139
100  - fix indent for objects inside arrays. closes #142
101  - fix white space inside expression statement with parens. closes #155
102  - change IfStatement indent edges to avoid indenting comments that are just before `} else`. closes #123
103  - fix comments inside ObjectExpression. closes #166
104
105
106 ## v0.3.1 (2014-06-23)
107
108  - avoid merging undefined config on `esformatter.rc`.
109  - make sure `esformatter.rc` doesn't load config file if user provides
110    a 'preset' or if 'root == true' to match CLI behavior.
111
112
113 ## v0.3.0 (2014-06-20)
114
115  - expose ALL the things!! exposed a few methods related to line break, white
116    space and indentation; also flattened the directory structure to make it
117    easier for plugin authors to reuse esformatter internal methods when needed.
118
119
120 ## v0.2.0 (2014-06-16)
121
122  - add plugin support.
123  - refactored the way indentation is handled (and changed default settings
124    related to indentation).
125  - expose the `rc` method.
126  - fix rc merge/search logic to avoid problems on windows.
127  - fix `void 0`
128  - proper indent edges for `AssignmentExpression`
129  - indent `CallExpression` by default
130  - make sure `_br.limit` doesn't remove LineBreak if previous token is
131    a comment (fixes a few bugs).
132  - fix comments inside empty catch block (avoid removing line breaks).
133
134
135 ## v0.1.1 (2014-05-12)
136
137  - fix error when input is an empty file.
138  - fix `typeof`
139  - add spaces inside ForStatement and WhileStatement parenthesis on jQuery
140    preset.
141
142
143 ## v0.1.0 (2014-04-15)
144
145  - major refactor on the code structure and major changes to the default tool
146    behavior.
147  - changed some rules so the tool is less opinionated.
148  - change formatter logic to support ranges on the configuration file.
149  - avoid removing line breaks during the formatting process, increasing the
150    flexibility of the formatting rules.
151
152
153 ## notes about v0.0.1 (2012-12-06) till v0.0.16 (2014-02-24)
154
155 The formatter had stricter rules and was way less flexible before v0.1.0;
156
157 Lots of small improvements between each version. Behavior was still in flux and
158 each version was breaking backwards compatibility.
159
160 We considered v0.0.15 (2013-12-18) to be "stable" for most common cases, most
161 of bugs found in the following months after release was on edge-cases. We
162 decided to make a big refactor to increase the formatter flexibility and to be
163 less aggressive on the changes.
164
165