root/livinglogic.python.orasql/NEWS.xml @ 180:c5f7d0e0a6aa

Revision 180:c5f7d0e0a6aa, 15.4 KB (checked in by Walter Doerwald <walter@…>, 13 years ago)

Fix typo.

Line 
1<section><title>Changes in 1.13 (released 11/06/2006)</title>
2<ulist>
3<item>Two new methods (<method>itertables</method> and <method>iterfks</method>)
4have been added to <class>Connection</class>. They yield all table definitions
5or all foreign keys respectively.</item>
6<item>A new method <method>isenabled</method> has been added to
7<class>ForeignKey</class>.</item>
8<item>A <method>__str__</method> method has been added to <class>Object</class>.</item>
9<item>A bug in <filename>oramerge.py</filename> has been fixed: In certain
10situations <filename>oramerge.py</filename> used merging actions that were
11meant to be used for the preceeding object.</item>
12</ulist>
13</section>
14
15
16<section><title>Changes in 1.12.2 (released 10/18/2006)</title>
17<ulist>
18<item>Fixed a bug that showed up when an index and a foreign key
19of the same name existed.</item>
20</ulist>
21</section>
22
23
24<section><title>Changes in 1.12.1 (released 09/19/2006)</title>
25<ulist>
26<item>Fixed a bug in <method>Index.__xattrs__</method>.</item>
27</ulist>
28</section>
29
30
31<section><title>Changes in 1.12 (released 09/06/2006)</title>
32<ulist>
33<item><class>Function</class> objects are now callable too. They return
34the return value and a <class>Record</class> containing the modified
35input parameters.</item>
36</ulist>
37</section>
38
39
40<section><title>Changes in 1.11.1 (released 08/29/2006)</title>
41<ulist>
42<item>Fixed a bug in <method>Column.modifyddl</method>.</item>
43</ulist>
44</section>
45
46
47<section><title>Changes in 1.11 (released 08/22/2006)</title>
48<ulist>
49<item>The class <class>Column</class> has gained a few new methods:
50<method>datatype</method>, <method>default</method>, <method>nullable</method>
51and <method>comment</method>.</item>
52
53<item>Calling a procedure will now raise a <class>SQLObjectNotFoundError</class>
54error, if the procedure doesn't exist.</item>
55</ulist>
56</section>
57
58
59<section><title>Changes in 1.10 (released 08/11/2006)</title>
60<ulist>
61<item>The classes <class>Proc</class> and <class>LLProc</class> have
62been removed. The functionality of <class>Proc</class> has been merged
63into <class>ProcedureDefinition</class> (with has been renamed to
64<class>Procedure</class>). Information about the procedure arguments
65is provided by the <method>iteraguments</method> method.</item>
66
67<item>All other subclasses of <class>Definition</class> have been renamed
68to remove the <z>Definition</z> for the name to reduce typing. (Methods
69have been renamed accordingly too.</item>
70
71<item><function>oramerge.main</function> and <function>oradiff.main</function>
72now accept option arrays as arguments.</item>
73
74<item><filename>oradiff.py</filename> has finally been fixed.</item>
75</ulist>
76</section>
77
78
79<section><title>Changes in 1.9.4 (released 08/09/2006)</title>
80<ulist>
81<item>Fixed a bug in <filename>oradiff.py</filename>.</item>
82</ulist>
83</section>
84
85
86<section><title>Changes in 1.9.3 (released 08/08/2006)</title>
87<ulist>
88<item>Fixed a bug in <filename>oramerge.py</filename>.</item>
89</ulist>
90</section>
91
92
93<section><title>Changes in 1.9.2 (released 08/04/2006)</title>
94<ulist>
95<item>Fixed a bug in <method>TableDefinition.iterdefinitions</method>.</item>
96</ulist>
97</section>
98
99
100<section><title>Changes in 1.9.1 (released 08/02/2006)</title>
101<ulist>
102<item>Fixed a bug in <filename>oracreate.py</filename>.</item>
103</ulist>
104</section>
105
106
107<section><title>Changes in 1.9 (released 07/24/2006)</title>
108<ulist>
109<item>Dependencies involving <class>MaterializedViewDefinition</class>s and
110<class>IndexDefinition</class>s generated by constraints work properly now,
111so that iterating all definitions in create order really results in a
112working &sql; script.</item>
113
114<item>A method <method>table</method> has been added to <class>PKDefinition</class>,
115<class>FKDefinition</class>, <class>UniqueDefinition</class> and
116<class>IndexDefinition</class>. This method returns the <class>TableDefinition</class>
117to object belongs to.</item>
118
119<item>A method <method>pk</method> has been added to <class>FKDefinition</class>.
120It returns the primary key that this foreign key references.</item>
121
122<item>Indexes and constraints belonging to skipped tables are now skipped too
123in <filename>oracreate.py</filename>.</item>
124
125<item>Arguments other than <lit>sys.argv[1:]</lit> can now be passed to the
126<filename>oracreate.py</filename> and <filename>oradrop.py</filename>
127<function>main</function> functions.</item>
128
129</ulist>
130</section>
131
132
133<section><title>Changes in 1.8.1 (released 07/17/2006)</title>
134<ulist>
135<item><module>ll.orasql</module> can now handle objects name that
136are not in uppercase.</item>
137</ulist>
138</section>
139
140
141<section><title>Changes in 1.8 (released 07/14/2006)</title>
142<ulist>
143<item><method>Connection.iterobjects</method> has been renamed to
144<method>iterdefinitions</method>.</item>
145
146<item>Each <class>Definition</class> subclass has a new classmethod
147<method>iterdefinitions</method> that iterates through all definitions
148of this type in a schema (or all schemas).</item>
149
150<item>Each <class>Definition</class> subclass has new methods
151<method>iterreferences</method> and <method>iterreferencedby</method> that
152iterate through related definitions. The methods <method>iterreferencesall</method>
153and <method>iterreferencedbyall</method> do this recursively. The method
154<method>iterdependent</method> is gone now.</item>
155
156<item>The method <method>iterschema</method> of <class>Connection</class>
157now has an additional parameter <arg>schema</arg>. Passing <lit>"all"</lit>
158for <arg>schema</arg> will give you statistics for the complete database
159not just one schema.</item>
160
161<item>A new definition class <class>MaterializedViewDefinition</class> has
162been added that handles materialized views. Handling of create options is
163rudimentary though. Patches are welcome.</item>
164
165<item><class>TableDefinition</class> has a three new methods:
166<method>ismview</method> returns whether the table is a materialized view;
167<method>itercomments</method> iterates through comments and
168<method>iterconstraints</method> iterates through primary keys, foreign keys
169and unique constraints.</item>
170
171<item>The method <method>getcursor</method> will now raise a <class>TypeError</class>
172if it can't get a cursor.</item>
173</ulist>
174</section>
175
176
177<section><title>Changes in 1.7.2 (released 07/05/2006)</title>
178<ulist>
179<item><lit>RAW</lit> fields in tables are now output properly in
180<method>TableDefinition.createddl</method>.</item>
181
182<item>A class <class>PackageBodyDefinition</class> has been added.
183<filename>oracreate.py</filename> will output package body definitions
184and <filename>oradrop.py</filename> will drop them.</item>
185</ulist>
186</section>
187
188
189<section><title>Changes in 1.7.1 (released 07/04/2006)</title>
190<ulist>
191<item>Duplicate code in the scripts has been removed.</item>
192<item>Fixed a bug in <filename>oramerge.py</filename>: If the source
193to be diffed was long enough the call to <filename>diff3</filename> deadlocked.</item>
194</ulist>
195</section>
196
197
198<section><title>Changes in 1.7 (released 06/29/2006)</title>
199<ulist>
200<item>The method <method>iterobjects</method> has been moved from
201<class>Cursor</class> to <class>Connection</class>.</item>
202<item>The method <method>itercolumns</method> has been moved from
203<class>Cursor</class> to <class>TableDefinition</class>.</item>
204<item><class>LLProc</class> now recognizes the <lit>c_out</lit>
205parameter used by <module>ll.toxic</module> 0.8.</item>
206<item>Support for positional arguments has been added for <class>Proc</class>
207and <class>LLProc</class>. Error messages for calling procedures
208have been enhanced.</item>
209<item><class>SequenceDefinition</class> now has a new method
210<method>createddlcopy</method> that returns code that copies the
211sequence value. <filename>oracreate.py</filename> has a new
212option <option>-s</option>/<option>--seqcopy</option> that
213uses this feature.</item>
214<item><module>setuptools</module> is now supported for installation.</item>
215</ulist>
216</section>
217
218
219<section><title>Changes in 1.6 (released 04/26/2006)</title>
220<ulist>
221<item>Added a <class>SessionPool</class> (a subclass of <module>cx_Oracle</module>s
222<class>SessionPool</class>) whose <method>acquire</method> method
223returns <module>ll.orasql.Connection</module> objects.</item>
224</ulist>
225</section>
226
227
228<section><title>Changes in 1.5 (released 04/05/2006)</title>
229<ulist>
230<item>Added a class <class>IndexDefinition</class> for indexes.
231<filename>oracreate.py</filename> will now issue create statements
232for indexes.</item>
233</ulist>
234</section>
235
236
237<section><title>Changes in 1.4.3 (released 12/07/2005)</title>
238<ulist>
239<item>Fixed a bug with empty lines in procedure sources.</item>
240<item>Remove spurious spaces at the start of procedure and function
241definitions.</item>
242</ulist>
243</section>
244
245
246<section><title>Changes in 1.4.2 (released 12/07/2005)</title>
247<ulist>
248<item>Fixed a bug that the DDL output of Java source.</item>
249<item>Trailing whitespace in each line of procedures, functions etc.
250is now stripped.</item>
251</ulist>
252</section>
253
254
255<section><title>Changes in 1.4.1 (released 12/06/2005)</title>
256<ulist>
257<item>Fixed a bug that resulted in omitted field lengths.</item>
258</ulist>
259</section>
260
261
262<section><title>Changes in 1.4 (released 12/05/2005)</title>
263<ulist>
264<item>The option <option>-m</option>/<option>--mode</option> has been dropped
265from the script <filename>oramerge.py</filename>.</item>
266<item>A new class <class>ColumnDefinition</class> has been added to
267<module>ll.orasql</module>. The <class>Cursor</class> class has a new method
268<method>itercolumns</method> that iterates the <class>ColumnDefinition</class>s
269of a table.</item>
270<item><filename>oramerge.py</filename> now doesn't output a merged
271<lit>create table</lit> statement, but the appropriate <lit>alter table</lit>
272statements.</item>
273</ulist>
274</section>
275
276
277<section><title>Changes in 1.3 (released 11/24/2005)</title>
278<ulist>
279<item>Added an option <option>-i</option> to <filename>oracreate.py</filename>
280and <filename>oradrop.py</filename> to ignore errors.</item>
281<item>The argument <arg>all</arg> of the cursor method <method>iterobjects</method>
282is now named <arg>schema</arg> and may have three values: <lit>"own"</lit>,
283<lit>"dep"</lit> and <lit>"all"</lit>.</item>
284<item>Added an script <filename>oramerge.py</filename> that does a three
285way merge of three database schemas and outputs the resulting script.</item>
286<item>DB links are now copied over in <class>SynonymDefinition</class>s.</item>
287</ulist>
288</section>
289
290
291<section><title>Changes in 1.2 (released 10/24/2005)</title>
292<ulist>
293<item>Added a argument to <method>createddl</method> and <method>dropddl</method>
294to specify if terminated or unterminated DDL is wanted (i.e. add <lit>;</lit> or
295<lit>/</lit> or not).</item>
296
297<item><class>CommentsDefinition</class> has been renamed to <class>CommentDefinition</class>
298and holds the comment for one field only.</item>
299
300<item><class>JavaSourceDefinition</class> has been added.</item>
301
302<item>The scripts <filename>oracreate.py</filename>, <filename>oradrop.py</filename>
303and <filename>oradiff.py</filename> now skip objects with <lit>"$"</lit> in their
304name by default. This can be changed with the <option>-k</option> option (but
305this will lead to unexecutable scripts).</item>
306
307<item><filename>oradiff.py</filename> has a new options <option>-b</option>:
308This allows you to specify how whitespace should be treated.</item>
309
310<item>Added an option <option>-x</option> to <filename>oracreate.py</filename> to
311make it possible to directly execute the DDL in another database.</item>
312
313<item>Fixed a bug in <class>SequenceDefinition</class> when the <lit>CACHE</lit>
314field was <lit>0</lit>.</item>
315</ulist>
316
317</section>
318
319
320<section><title>Changes in 1.1 (released 10/20/2005)</title>
321<ulist>
322<item>A script <filename>oradiff.py</filename> has been added which can be
323used for diffing Oracle schemas.</item>
324
325<item>Definition classes now have two new methods <method>cdate</method> and
326<method>udate</method> that give the creation and modification time of the
327schema object (if available).</item>
328
329<item>A <lit>"flat"</lit> iteration mode has been added to
330<method>Cursor.iterobjects</method> that returns objects unordered.</item>
331
332<item><class>Connection</class> has a new method <method>connectstring</method>.</item>
333
334<item>A class <class>LibraryDefinition</class> has been added.</item>
335
336<item><method>CommentsDefinition.createddl</method> returns <lit>""</lit>
337instead of <lit>"\n"</lit> now if there are no comments.</item>
338
339<item><class>SQLObjectNotfoundError</class> has been renamed to
340<class>SQLObjectNotFoundError</class>.</item>
341</ulist>
342</section>
343
344
345<section><title>Changes in 1.0 (released 10/13/2005)</title>
346<ulist>
347<item><module>ll.orasql</module> requires version 1.0 of the core package now.</item>
348
349<item>A new generator method <function>iterobjects</function> has been added
350to the <class>Cursor</class> class. This generator returns <z>definition objects</z>
351for all the objects in a schema in topological order (i.e. if the name of an
352object (e.g. a table) is generated it will only depend on objects whose name has
353been yielded before). &sql; for recreating and deleting these &sql; objects
354can be generated from the definition objects.</item>
355
356<item>Two scripts (<filename>oracreate.py</filename> and
357<filename>oradrop.py</filename>) have been added, that create &sql; scripts
358for recreating or deleting the content of an Oracle schema.</item>
359</ulist>
360</section>
361
362
363<section><title>Changes in 0.7 (released 08/09/2005)</title>
364<ulist>
365<item>The commands generated by <function>iterdrop</function> no longer have
366a terminating <lit>;</lit>, as this seems to confuse Oracle/cx_Oracle.</item>
367</ulist>
368</section>
369
370
371<section><title>Changes in 0.6 (released 06/20/2005)</title>
372<ulist>
373<item>Two new functions have been added: <function>iterdrop</function> is
374a generator that yields information about how to clear the schema (i.e. drop
375all table, sequences, etc.). <function>itercreate</function> yields information
376about how to recreate a schema.</item>
377</ulist>
378</section>
379
380
381<section><title>Changes in 0.5 (released 06/07/2005)</title>
382<ulist>
383<item>Date values are now supported as <lit>OUT</lit> parameters.</item>
384</ulist>
385</section>
386
387
388<section><title>Changes in 0.4.1 (released 03/22/2005)</title>
389<ulist>
390<item>Added a note about the package init file to the installation
391documentation.</item>
392</ulist>
393</section>
394
395
396<section><title>Changes in 0.4 (released 01/03/2005)</title>
397<ulist>
398<item><module>ll.orasql</module> now requires <app>ll-core</app>.</item>
399<item>Procedures can now be called with string arguments longer that 32768
400characters. In this case the argument will be converted to a variable before
401the call. The procedure argument must be a <lit>CLOB</lit> in this case.</item>
402<item>Creating <class>Record</class> instances from database data is now done
403by the class method <method>Record.fromdata</method>. This means it's now
404possible to use any other class as long as it provides this method.</item>
405</ulist>
406</section>
407
408
409<section><title>Changes in 0.3 (released 12/09/2004)</title>
410<ulist>
411<item><module>ll.orasql</module> requires <app>cx_Oracle 4.1</app> now.</item>
412</ulist>
413</section>
414
415
416<section><title>Changes in 0.2.1 (released 09/09/2004)</title>
417<ulist>
418<item>Fixed a regression bug in <method>Proc._calcrealargs</method> as
419cursors will now always return <class>Record</class> objects.</item>
420</ulist>
421</section>
422
423
424<section><title>Changes in 0.2 (released 09/08/2004)</title>
425<ulist>
426<item>Now generating <class>Record</class> object is done automatically
427in a subclass of <class>cx_Oracle.Cursor</class>. So now it's possible
428to use <module>ll.orasql</module> as an extended <module>cx_Oracle</module>.</item>
429</ulist>
430</section>
431
432
433<section><title>Changes in 0.1 (released 07/15/2004)</title>
434<ulist>
435<item>Initial release.</item>
436</ulist>
437</section>
Note: See TracBrowser for help on using the browser.