summaryrefslogtreecommitdiff
path: root/CHANGES
blob: b4bf8921e1cb6297e6eb8fcc1949f02023577b75 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
Release 0.1.13 (Oct 09, 2014)
-----------------------------

Bug Fixes
* Fix a regression in handling of NULL keywords introduced in 0.1.12.


Release 0.1.12 (Sep 20, 2014)
-----------------------------

Bug Fixes
* Fix handling of NULL keywords in aliased identifiers.
* Fix SerializerUnicode to split unquoted newlines (issue131, by Michael Schuller).
* Fix handling of modulo operators without spaces (by gavinwahl).

Enhancements
* Improve parsing of identifier lists containing placeholders.
* Speed up query parsing of unquoted lines (by Michael Schuller).


Release 0.1.11 (Feb 07, 2014)
-----------------------------

Bug Fixes
* Fix incorrect parsing of string literals containing line breaks (issue118).
* Fix typo in keywords, add MERGE, COLLECT keywords (issue122/124,
  by Cristian Orellana).
* Improve parsing of string literals in columns.
* Fix parsing and formatting of statements containing EXCEPT keyword.
* Fix Function.get_parameters() (issue126/127, by spigwitmer).

Enhancements
* Classify DML keywords (issue116, by Victor Hahn).
* Add missing FOREACH keyword.
* Grouping of BEGIN/END blocks.

Other
* Python 2.5 isn't automatically tested anymore, neither Travis nor Tox
  still support it out of the box.


Release 0.1.10 (Nov 02, 2013)
-----------------------------

Bug Fixes
* Removed buffered reading again, it obviously causes wrong parsing in some rare
  cases (issue114).
* Fix regression in setup.py introduced 10 months ago (issue115).

Enhancements
* Improved support for JOINs, by Alexander Beedie.


Release 0.1.9 (Sep 28, 2013)
----------------------------

Bug Fixes
* Fix an regression introduced in 0.1.5 where sqlparse didn't properly
  distinguished between single and double quoted strings when tagging
  identifier (issue111).

Enhancements
* New option to truncate long string literals when formatting.
* Scientific numbers are pares correctly (issue107).
* Support for arithmetic expressions (issue109, issue106; by prudhvi).


Release 0.1.8 (Jun 29, 2013)
----------------------------

Bug Fixes
* Whitespaces within certain keywords are now allowed (issue97, patch proposed
  by xcombelle).

Enhancements
* Improve parsing of assignments in UPDATE statements (issue90).
* Add STRAIGHT_JOIN statement (by Yago Riveiro).
* Function.get_parameters() now returns the parameter if only one parameter is
  given (issue94, by wayne.wuw).
* sqlparse.split() now removes leading and trailing whitespaces from splitted
  statements.
* Add USE as keyword token (by mulos).
* Improve parsing of PEP249-style placeholders (issue103).


Release 0.1.7 (Apr 06, 2013)
----------------------------

Bug Fixes
 * Fix Python 3 compatibility of sqlformat script (by Piet Delport).
 * Fix parsing of SQL statements that contain binary data (by Alexey
   Malyshev).
 * Fix a bug where keywords were identified as aliased identifiers in
   invalid SQL statements.
 * Fix parsing of identifier lists where identifiers are keywords too
   (issue10).

Enhancements
 * Top-level API functions now accept encoding keyword to parse
   statements in certain encodings more reliable (issue20).
 * Improve parsing speed when SQL contains CLOBs or BLOBs (issue86).
 * Improve formatting of ORDER BY clauses (issue89).
 * Formatter now tries to detect runaway indentations caused by
   parsing errors or invalid SQL statements. When re-indenting such
   statements the formatter flips back to column 0 before going crazy.

Other
 * Documentation updates.


Release 0.1.6 (Jan 01, 2013)
----------------------------

sqlparse is now compatible with Python 3 without any patches. The
Python 3 version is generated during install by 2to3. You'll need
distribute to install sqlparse for Python 3.

Bug Fixes
 * Fix parsing error with dollar-quoted procedure bodies (issue83).

Other
 * Documentation updates.
 * Test suite now uses tox and py.test.
 * py3k fixes (by vthriller).
 * py3k fixes in setup.py (by Florian Bauer).
 * setup.py now requires distribute (by Florian Bauer).


Release 0.1.5 (Nov 13, 2012)
----------------------------

Bug Fixes
 * Improve handling of quoted identifiers (issue78).
 * Improve grouping and formatting of identifiers with operators (issue53).
 * Improve grouping and formatting of concatenated strings (issue53).
 * Improve handling of varchar() (by Mike Amy).
 * Clean up handling of various SQL elements.
 * Switch to py.test and clean up tests.
 * Several minor fixes.

Other
 * Deprecate sqlparse.SQLParseError. Please use
   sqlparse.exceptions.SQLParseError instead.
 * Add caching to speed up processing.
 * Add experimental filters for token processing.
 * Add sqlformat.parsestream (by quest).


Release 0.1.4 (Apr 20, 2012)
----------------------------

Bug Fixes
 * Avoid "stair case" effects when identifiers, functions,
   placeholders or keywords are mixed in identifier lists (issue45,
   issue49, issue52) and when asterisks are used as operators
   (issue58).
 * Make keyword detection more restrict (issue47).
 * Improve handling of CASE statements (issue46).
 * Fix statement splitting when parsing recursive statements (issue57,
   thanks to piranna).
 * Fix for negative numbers (issue56, thanks to kevinjqiu).
 * Pretty format comments in identifier lists (issue59).
 * Several minor bug fixes and improvements.


Release 0.1.3 (Jul 29, 2011)
----------------------------

Bug Fixes
 * Improve parsing of floats (thanks to Kris).
 * When formatting a statement a space before LIMIT was removed (issue35).
 * Fix strip_comments flag (issue38, reported by ooberm...@gmail.com).
 * Avoid parsing names as keywords (issue39, reported by djo...@taket.org).
 * Make sure identifier lists in subselects are grouped (issue40,
   reported by djo...@taket.org).
 * Split statements with IF as functions correctly (issue33 and
   issue29, reported by charles....@unige.ch).
 * Relax detection of keywords, esp. when used as function names
   (issue36, nyuhu...@gmail.com).
 * Don't treat single characters as keywords (issue32).
 * Improve parsing of stand-alone comments (issue26).
 * Detection of placeholders in paramterized queries (issue22,
   reported by Glyph Lefkowitz).
 * Add parsing of MS Access column names with braces (issue27,
   reported by frankz...@gmail.com).

Other
 * Replace Django by Flask in App Engine frontend (issue11).


Release 0.1.2 (Nov 23, 2010)
----------------------------

Bug Fixes
 * Fixed incorrect detection of keyword fragments embed in names (issue7,
   reported and initial patch by andyboyko).
 * Stricter detection of identfier aliases (issue8, reported by estama).
 * WHERE grouping consumed closing parenthesis (issue9, reported by estama).
 * Fixed an issue with trailing whitespaces (reported by Kris).
 * Better detection of escaped single quotes (issue13, reported by
   Martin Brochhaus, patch by bluemaro with test case by Dan Carley).
 * Ignore identifier in double-quotes when changing cases (issue 21).
 * Lots of minor fixes targeting encoding, indentation, statement
   parsing and more (issues 12, 14, 15, 16, 18, 19).
 * Code cleanup with a pinch of refactoring.


Release 0.1.1 (May 6, 2009)
---------------------------

Bug Fixes
 * Lexers preserves original line breaks (issue1).
 * Improved identifier parsing: backtick quotes, wildcards, T-SQL variables
   prefixed with @.
 * Improved parsing of identifier lists (issue2).
 * Recursive recognition of AS (issue4) and CASE.
 * Improved support for UPDATE statements.

Other
 * Code cleanup and better test coverage.


Release 0.1.0 (Apr 8, 2009)
---------------------------
 * Initial release.