~psycopg/psycopg/2.0.x

« back to all changes in this revision

Viewing changes to NEWS

  • Committer: Federico Di Gregorio
  • Date: 2004-10-29 16:15:45 UTC
  • Revision ID: fog-a4e5ae2c65dfd04775bcecac32ed8e8dda664017
Undo of wrong commit of 1.1.x source code over 2.x.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
psycopg news for 1.1.15
2
 
-----------------------
3
 
 
4
 
* Interval typecasting eventually-eventually works the Right Way (TM).
5
 
 
6
 
* Fixed two bad memory leaks in QuotedString and Binary objects.
7
 
 
8
 
* Reverted change on rowcount attribute, now it is always set to the real
9
 
  number of affected columns.
10
 
 
11
 
psycopg news for 1.1.14
12
 
-----------------------
13
 
 
14
 
* Interval typecasting eventually works the Right Way (TM).
15
 
 
16
 
* ZPsycopgDA now support unicode strings and different backend encodings.
17
 
 
18
 
* ZPsycopgDA accept query data as an extra parameter to execute() (but
19
 
  still no way to give it extra data from inside a ZSQL Method.)
20
 
 
21
 
* Better DBAPI-2.0 compliance (rowcount attribute and argument passing.)
22
 
 
23
 
* Now builds on Fedora Core 2 (but remember that the real psycopg
24
 
  aficionado runs on Debian ;-P )
25
 
 
26
 
* COPY FROM raise an exception and return usefull information on error.
27
 
 
28
 
psycopg news for 1.1.13
29
 
-----------------------
30
 
 
31
 
* ZPsycopgDA works again.
32
 
 
33
 
psycopg news for 1.1.12
34
 
-----------------------
35
 
 
36
 
* Fixed nasty segfault/deadlock in switch_isolation_level.
37
 
 
38
 
* Now the PostgreSQL TIME type is correctly converted to a DateTimeDelta
39
 
  instead of a DateTime. This is much better because you can now add two
40
 
  times and a time and a date.
41
 
 
42
 
* Added an "sslmode" parameter (look at PostgreSQL documentation for
43
 
  possible values.)
44
 
 
45
 
* .execute() now rise the right exception if called with a wrong
46
 
   tuple/dict. Also, %% in queries does not raise an exception anymore.
47
 
 
48
 
* Updated RPM specs (thanks to Mark McClain we now have updated RPMs on
49
 
  initd.org too.)
50
 
 
51
 
psycopg news for 1.1.11
52
 
-----------------------
53
 
 
54
 
* a modern autoconf is now needed to build psycopg.
55
 
 
56
 
* now an error during commit or rollback is correctly reported by raising 
57
 
  an exception.
58
 
 
59
 
* when the libpq protocol 3.0 is available, psycopg uses a smater method
60
 
  to determine exception type (unfortunately the old string compare method
61
 
  is still neede for postgresql <= 7.3.x.)
62
 
 
63
 
* plugged a memory leak in copy_from().
64
 
 
65
 
* where did the news for 1.1.10 go?
66
 
 
67
 
psycopg news for 1.1.9
68
 
----------------------
69
 
 
70
 
* psycopg distribution now includes the GeoTypes package by Richard Taylor
71
 
  (QinetiQ Plc)!
72
 
 
73
 
* Problems with sequences and mappings non correctly used in .execute()
74
 
  should be gone (mogrification code completely rewritten.) Many thanks
75
 
  to Richard Taylor and Vsevolod Lobko that helped by testing the "pre"
76
 
  releases.
77
 
 
78
 
* no more libpq 7.1.x linking problems related to PQfreeNotify.
79
 
 
80
 
psycopg news for 1.1.7
81
 
----------------------
82
 
 
83
 
* added notifies and fileno methods to cursor objects.
84
 
 
85
 
* now execute accept any object that defined __getitem__ and not only
86
 
  dictionaries.
87
 
 
88
 
* little fix in ZPsycopgDA, should work with Zope 2.7.
89
 
 
90
 
psycopg news for 1.1.6
91
 
----------------------
92
 
 
93
 
* cursor objects now have the .scroll() method.
94
 
 
95
 
* NUL characters in strings are discarded in quoting; use a Binary object if
96
 
  you need strings with embedded NULs.
97
 
 
98
 
* Fixed another MT problem in .execute().
99
 
 
100
 
psycopg news for 1.1.5
101
 
----------------------
102
 
 
103
 
* ZPsycopgDA now rollback before raising an exception; should be a backward
104
 
  compatible change for people that really want to continue executing queries
105
 
  after an exception.
106
 
 
107
 
* fixed problem with dictionary mogrification (i.e., specifying the same key
108
 
  multiple times and having the None value in the dict should work now.)
109
 
 
110
 
* fixed keeper status trashing problem: no more psycopg stuck in transaction
111
 
  (maybe this will also solve ZPsycopgDA problems: will see...)
112
 
 
113
 
* now copy_from and copy_to can be passed instances of classes with "readline"
114
 
  and "write" methods and not only file instances.
115
 
 
116
 
psycopg news for 1.1.4
117
 
----------------------
118
 
 
119
 
* Fixed various memory leak problems.
120
 
 
121
 
* Implemented "statusmessage" attribute on cursors.
122
 
 
123
 
psycopg news for 1.1.3
124
 
----------------------
125
 
 
126
 
* Fixed problem with psycopg always reporting IntegrityError.
127
 
 
128
 
* Fixed segfault in debug statements.
129
 
 
130
 
* Now Python GIL is unlocked during PQconnectdb() calls (better
131
 
  multithreading.)
132
 
 
133
 
psycopg news for 1.1.2
134
 
----------------------
135
 
 
136
 
* Skipped version 1.1.1 (never released 'cause of a cvs tag error)
137
 
 
138
 
* Much better cursor.description fields (many thanks to William K. Volkman)
139
 
 
140
 
* psycopg.connect() now takes keyword parameters for host, dbname, port,
141
 
  user and password (they are all strings, even "port".)
142
 
 
143
 
* connection.set_isolation_level() implemented to help switching from default
144
 
  isolation to other levels supported by PostgreSQL. [autocommit now simply 
145
 
  does a set_isolation_level(0)]
146
 
 
147
 
* Implemented .lastrowid attribute for cursors.
148
 
 
149
 
* Now psycopg should build on win32/cygwin, thank to Hajime Nakagami patches.
150
 
 
151
 
* Includes every fix from 1.0.x up to 1.0.15.1:
152
 
 
153
 
  - Fixed connection-stay-open-when-i-do-conn.close() bug.
154
 
  - Better DBAPI-2.0 compliance for setinputsizes and setoutputsize methods.
155
 
  - Better support for build on MacOS X.
156
 
  - Fixed problem with formats in string mogrification.
157
 
  - Fixed other miscellaneous buglets in Zope Adapter.
158
 
  - Fixed small memory leak in .fetchXXX() methods.
159
 
  - Fixed serialization problem in ZPsycopgDA reported by Dieter Maurer.
160
 
 
161
 
psycopg news for 1.1
162
 
--------------------
163
 
 
164
 
* COPY TO/COPY FROM implemented by Tom Jenkins
165
 
 
166
 
* Merged changes from 1.0.13.
167
 
 
168
 
psycopg news for 1.0.12
169
 
-----------------------
170
 
 
171
 
* Maintenance release fixing some little buglets:
172
 
  - Fixed memory leak in .execute().
173
 
  - Better configure under MacOS X.
174
 
  - DA-browser now works even with tables with mixed-case names.
175
 
  - timestamps time is now set to correct value instead of 0. 
176
 
 
177
 
psycopg news for 1.0.11.1
178
 
-------------------------
179
 
 
180
 
* Fixed orrible bug in ZPsycopgDA not acception psycopg 1.0.11 as a valid
181
 
  version.
182
 
 
183
 
psycopg news for 1.0.11
184
 
-----------------------
185
 
 
186
 
* last problems from "None passed to typecasters" (introduced in 1.0.9) in
187
 
  ZPsycopgDA solved (hopefully.)
188
 
 
189
 
* psycopg now reports meaningfull exception types for some errors (like
190
 
  IntegrityError for duplicate insertions in unique indices, etc.)
191
 
 
192
 
psycopg news for 1.0.10
193
 
-----------------------
194
 
 
195
 
* fixed an exception problem introduced in 1.0.9 (patch by Matt 
196
 
  Hoskins.)
197
 
 
198
 
* ZPsycopgDA now checks psycopg version and raise an exception if it
199
 
  does not match.
200
 
 
201
 
psycopg news for 1.0.9
202
 
----------------------
203
 
 
204
 
* fixed problem with connection left in invalid state by applying
205
 
  Tom Jenkins patch.
206
 
 
207
 
* None values passed to the typecasters, it is now possible to
208
 
  translate None into "" to achieve pygrsql compatibilty. 
209
 
 
210
 
* applied 'seconds as a float' patch from Jelle.
211
 
 
212
 
psycopg news for 1.0.8
213
 
----------------------
214
 
 
215
 
* fixed a segfault introduced in 1.0.7 and another little bug when
216
 
  dealing with empty strings in QuotedString objects.
217
 
 
218
 
* Added win32 compatibility (many many thanks to Jason Erickson).
219
 
 
220
 
psycopg news for 1.0.7
221
 
----------------------
222
 
 
223
 
* Fixed little bugs in type management (infinity problems and the
224
 
  TIMESTAMPTZ type) and Zope import. Better configure script.
225
 
 
226
 
* Now psycopg really close the physical connection to PostgreSQL on
227
 
  connection .close().
228
 
 
229
 
psycopg news for 1.0.5
230
 
----------------------
231
 
 
232
 
* Applied a little patch to make table browser in zope show system tables
233
 
  correctly. 
234
 
 
235
 
* Infinity values are now converted the correct way.
236
 
 
237
 
psycopg news for 1.0.4
238
 
----------------------
239
 
 
240
 
* ZPsycopgDA does not duplicate itself anymore.
241
 
 
242
 
* Table browsing works again.
243
 
 
244
 
psycopg news for 1.0.3
245
 
----------------------
246
 
 
247
 
* bugfix for b0rken ZPsycopgDA in 1.0.2.
248
 
 
249
 
psycopg news for 1.0.2
250
 
----------------------
251
 
 
252
 
* Fixed problem with incorrect interpretation of hundredths of a second.
253
 
 
254
 
psycopg news for 1.0.1
255
 
----------------------
256
 
 
257
 
* fixed two little memory leaks, see ChangeLog for details.
258
 
 
259
 
* fixed problem with garbled passwords when using crypt autentication.
260
 
 
261
 
psycopg news for 1.0
262
 
--------------------
263
 
 
264
 
* added regression tests, first result is much better conversion of date and
265
 
  time types.
266
 
  
267
 
* fixed last know segfault (psycopg runs stable for a lot of people now.)
268
 
 
269
 
* psycopg compile and run on FreeBSD and MacOS X.
270
 
 
271
 
* much better binary objects, they use less memory and quoting is faster,
272
 
  thank to the new, smarter memory allocator.
273
 
  
274
 
* fixed all reported buglets (mostly dbapi and type-system related.)
275
 
 
276
 
* hey, this is one-dot-oh!
277
 
 
278
 
* the following features are missing from psycopg 1.0 and will be added when
279
 
  we have a little more time (i.e., there will be no _feature_ releases after
280
 
  1.0, only bugfixes):
281
 
 
282
 
    - documentation is incomplete (we are slowly writing it, track CVS if you
283
 
      want up-to-date docs)
284
 
 
285
 
    - dbapi-2.0 testsuite is incomplete (need to move code to the unittest
286
 
      framework)
287
 
 
288
 
    - psycopg needs a full suite of regression tests to be sure we don't break
289
 
      things while implementing new features (i think we'll add them _while_
290
 
      writing new features :)
291
 
 
292
 
psycopg news for 0.99.7
293
 
-----------------------
294
 
 
295
 
* time intervals are correctly recognized and converted into DateTimeInterval 
296
 
  objects. 
297
 
 
298
 
* almost complete (bugs apart) DBAPI-2.0 support. switched psycopg to use
299
 
  QuotedString for every string passed as a bound argument. Binary now works 
300
 
  (but still consumes lots of memory).
301
 
 
302
 
* added doc/ to hold documentation.
303
 
 
304
 
* added lastoid() method to cursor objects, to retrieve the OID of the last 
305
 
  inserted row. 
306
 
 
307
 
psycopg news for 0.99.4
308
 
-----------------------
309
 
 
310
 
* psycopg is approaching 1.0, so only DBAPI compliance patches and bug fixes
311
 
  are getting in.
312
 
 
313
 
* added Binary and QuotedString objects. note that sometime before 1.0 we'll
314
 
  switch turn every string passed to psycopg into a QuotedString, possibily
315
 
  breaking Zope compatibility and old scripts doing their own quoting.
316
 
 
317
 
psycopg news for 0.5.x
318
 
----------------------
319
 
 
320
 
* this is the development branch, if you want stability, stick with 0.4.6.
321
 
 
322
 
* added pthread locks so that different threads (cursors) can use the same
323
 
  postgres connection (this was done *only* to respect the dbapi on cursor
324
 
  isolation.)
325
 
 
326
 
* now the default for the .cursor() method is to associate every cursor to
327
 
  the same physical connection, to avoid isolation (as the DBAPI-2.0 specify),
328
 
  you can change that by calling the .serialize() method on the connection and
329
 
  giving it 0 as the argument, e.g., "o.serialize(0)".
330
 
 
331
 
psycopg news for 0.4.1
332
 
----------------------
333
 
 
334
 
* autocommit mode is now supported on cursors and connections.
335
 
 
336
 
psycopg news for 0.4
337
 
--------------------
338
 
 
339
 
* implemented all the remaining DBAPI-2.0 type singletons (DATETIME and
340
 
  BINARY included)
341
 
 
342
 
psycopg news for 0.3
343
 
--------------------
344
 
 
345
 
* threading problems resolved
346
 
 
347
 
* added type casting from postgres to python (the user can now specify
348
 
  its own casting objects, the default singletons NUMBER and STRING are
349
 
  included [and act as default cast objects] plus INTEGER and FLOAT as
350
 
  an extension to the DBAPI-2.0.) 
351
 
  investigate the code in examples/usercast_test.py to understand how to
352
 
  add your own types...
353
 
 
354
 
* beginning of the Zope Database Adapter: give it a try even it it is 
355
 
  broken!
 
1
What's new in psycopg 1.99.10
 
2
-----------------------------
 
3
 
 
4
* The adapt() function now fully supports the adaptation protocol
 
5
  described in PEP 246. Note that the adapters registry now is indexed
 
6
  by (type, protocol) and not by type alone. Change your adapters
 
7
  accordingly.
 
8
 
 
9
* More configuration options moved from setup.py to setup.cfg.
 
10
 
 
11
* Fixed two memory leaks: one in cursor deallocation and one in row
 
12
  fetching (.fetchXXX() methods.)
 
13
 
 
14
What's new in psycopg 1.99.9
 
15
----------------------------
 
16
 
 
17
* Added simple pooling code (psycopg.pool module); see the reworked
 
18
  examples/threads.py for example code.
 
19
 
 
20
* Added DECIMAL typecaster to convert postgresql DECIMAL and NUMERIC
 
21
  types (i.e, all types with an OID of NUMERICOID.) Note that the
 
22
  DECIMAL typecaster does not set scale and precision on the created
 
23
  objects but uses Python defaults.
 
24
 
 
25
* ZPsycopgDA back in and working using the new pooling code.
 
26
 
 
27
* Isn't that enough? :)
 
28
 
 
29
What's new in psycopg 1.99.8
 
30
----------------------------
 
31
 
 
32
* added support for UNICODE queries.
 
33
 
 
34
* added UNICODE typecaster; to activate it just do:
 
35
    
 
36
    psycopg.extensions.register_type(psycopg.extensions.UNICODE)
 
37
  
 
38
  Note that the UNICODE typecaster override the STRING one, so it is
 
39
  not activated by default.
 
40
 
 
41
* cursors now really support the iterator protocol.
 
42
 
 
43
* solved the rounding errors in time conversions.
 
44
 
 
45
* now cursors support .fileno() and .isready() methods, to be used in
 
46
  select() calls.
 
47
 
 
48
* .copy_from() and .copy_in() methods are back in (still using the old
 
49
  protocol, will be updated to use new one in next releasae.)
 
50
 
 
51
* fixed memory corruption bug reported on win32 platform.
 
52
 
 
53
What's new in psycopg 1.99.7
 
54
----------------------------
 
55
 
 
56
* added support for tuple factories in cursor objects (removed factory
 
57
  argument in favor of a .tuple_factory attribute on the cursor object);
 
58
  see the new module psycopg.extras for a cursor (DictCursor) that
 
59
  return rows as objects that support indexing both by position and
 
60
  column name.
 
61
 
 
62
* added support for tzinfo objects in datetime.timestamp objects: the
 
63
  PostgreSQL type "timestamp with time zone" is converted to 
 
64
  datetime.timestamp with a FixedOffsetTimezone initialized as necessary.
 
65
 
 
66
What's new in psycopg 1.99.6
 
67
----------------------------
 
68
 
 
69
* sslmode parameter from 1.1.x
 
70
 
 
71
* various datetime conversion improvements.
 
72
 
 
73
* now psycopg should compile without mx or without native datetime
 
74
  (not both, obviously.)
 
75
 
 
76
* included various win32/MSVC fixes (pthread.h changes, winsock2
 
77
  library, include path in setup.py, etc.)
 
78
 
 
79
* ported interval fixes from 1.1.14/1.1.15.
 
80
 
 
81
* the last query executed by a cursor is now available in the
 
82
  .query attribute.
 
83
 
 
84
* conversion of unicode strings to backend encoding now uses a table
 
85
  (that still need to be filled.)
 
86
 
 
87
* cursors now have a .mogrify() method that return the query string
 
88
  instead of executing it.
 
89
 
 
90
* connection objects now have a .dsn read-only attribute that holds the
 
91
  connection string.
 
92
 
 
93
* moved psycopg C module to _psycopg and made psycopg a python module:
 
94
  this allows for a neat separation of DBAPI-2.0 functionality and psycopg
 
95
  extensions; the psycopg namespace will be also used to provide
 
96
  python-only extensions (like the pooling code, some ZPsycopgDA support
 
97
  functions and the like.)
 
98
 
 
99
What's new in psycopg 1.99.3
 
100
----------------------------
 
101
 
 
102
* added support for python 2.3 datetime types (both ways) and made datetime
 
103
  the default set of typecasters when available.
 
104
 
 
105
* added example: dt.py.
 
106
 
 
107
What's new in psycopg 1.99.3
 
108
----------------------------
 
109
 
 
110
* initial working support for unicode bound variables: UTF-8 and latin-1
 
111
  backend encodings are natively supported (and the encoding.py example even
 
112
  works!)
 
113
 
 
114
* added .set_client_encoding() method on the connection object.
 
115
 
 
116
* added examples: encoding.py, binary.py, lastrowid.py.
 
117
 
 
118
What's new in psycopg 1.99.2
 
119
----------------------------
 
120
 
 
121
* better typecasting:
 
122
  - DateTimeDelta used for postgresql TIME (merge from 1.1)
 
123
  - BYTEA now is converted to a real buffer object, not to a string
 
124
 
 
125
* buffer objects are now adapted into Binary objects automatically.
 
126
 
 
127
* ported scroll method from 1.1 (DBAPI-2.0 extension for cursors)
 
128
 
 
129
* initial support for some DBAPI-2.0 extensions:
 
130
  - .rownumber attribute for cursors
 
131
  - .connection attribute for cursors
 
132
  - .next() and .__iter__() methods to have cursors support the iterator
 
133
    protocol
 
134
  - all exception objects are exported to the connection object
 
135
 
 
136
What's new in psycopg 1.99.1
 
137
----------------------------
 
138
 
 
139
* implemented microprotocols to adapt arbitrary types to the interface used by
 
140
  psycopg to bind variables in execute;
 
141
 
 
142
* moved qstring, pboolean and mxdatetime to the new adapter layout (binary is
 
143
  still missing; python 2.3 datetime needs to be written).
 
144
 
 
145
 
 
146
What's new in psycopg 1.99.0
 
147
----------------------------
 
148
 
 
149
* reorganized the whole source tree;
 
150
 
 
151
* async core is in place;
 
152
 
 
153
* splitted QuotedString objects from mx stuff;
 
154
 
 
155
* dropped autotools and moved to pythonic setup.py (needs work.)