1 Wed Feb 11 10:58:13 CET 1998
3 - Added '-d' option to turn on debugging.
4 - Added version number to ecpg.
5 - Made libecpg a shared library.
6 - All files are now installed by 'make install'.
9 Thu Feb 12 14:45:07 CET 1998
11 - changed parser to correctly handle local variables.
13 Thu Feb 12 15:55:37 CET 1998
15 - allow static and extern variable definitions.
16 - free() variable structure completely.
18 Fri Feb 13 12:35:58 CET 1998
20 - ecpg can use structs to store data, but only if the complete
21 definition of the struct lies inside the sql declare section
22 and only simple types used.
24 Fre Feb 13 14:12:41 CET 1998
26 - struct definitions now work completely.
28 Mon Feb 16 16:17:21 CET 1998
30 - enable initialisation in declare section.
31 - connect call accepts a variable as well.
33 Wed Feb 18 21:41:30 CET 1998
35 - added whenever statement
37 Thu Feb 19 12:48:14 CET 1998
39 - added do option to whenever statement
41 Sat Feb 21 19:10:55 CET 1998
43 - use char[] as string not as array of bytes that is integers
45 Sun Feb 22 16:37:36 CET 1998
47 - use long for all size variables
48 - added execute immediate statement
50 Sun Feb 22 20:41:32 CET 1998
52 - use varcharsize = 1 for all simple types, 0 means pointer, > 1
53 means array if type is char resp. unsigned char
55 Thu Feb 24 12:26:12 CET 1998
57 - allow 'go to' in whenever statement as well as 'goto'
58 - new argument 'stop' for whenever statement
60 Wed Feb 25 15:46:50 CET 1998
62 - corrected whenever continue handling
63 - removed whenever break
65 Fri Feb 27 10:51:38 CET 1998
67 - corrected parser to accept '::int2'
69 Fri Feb 27 12:00:55 CET 1998
71 - removed all shift/reduce conflicts
72 - allow syntax 'fetch cursor' as well as 'fetch in cursor'
74 Fri Mar 13 11:37:16 CET 1998
76 - finished transaction handling, needs only one function in ecpglib now
77 old functions are still supported for compatibility
78 - set library to version 1.1.0
80 Fri Mar 13 13:35:13 CET 1998
82 - exec sql include includes files during parsing
83 - set parser to version 1.1.0
84 - added -I option to ecpg to set include path
86 Mon Mar 16 15:09:10 CET 1998
88 - fixed parser to print correct filename and line number
90 Wed Mar 18 14:28:49 CET 1998
92 - started working on indicator variables
94 Mon Mar 23 13:49:15 CET 1998
96 - fixed some bugs in indicator variable handling
97 - completely rewrote parser for fetch and insert statements
98 - indicator variables are also allowed in insert statements now
100 Mon Mar 23 16:09:05 CET 1998
102 - fixed whenever command goto to only allow valid lables
104 Thu Mar 26 13:33:02 MEZ 1998
106 - some minor bugfixes
108 Mon Apr 20 13:06:09 CEST 1998
110 - database name no longer has to entered as string constant, i.e.
111 just remove the '...' around the name
113 Mon Apr 20 14:38:45 CEST 1998
115 - both test cases compile cleanly
117 Mon Apr 20 16:13:25 CEST 1998
119 - Phew! Finally finished parser rewriting.
121 Mon Apr 20 16:39:23 CEST 1998
123 - Cursor is opened when the open command is issued, not at declare time.
124 - Set version to 2.0.0
126 Tue Apr 21 12:53:49 CEST 1998
128 - Set indicator to amount of data really written (truncation).
130 Thu Apr 23 09:27:16 CEST 1998
132 - Also allow call in whenever statement with the same functionality
135 Thu Apr 23 12:29:28 CEST 1998
137 - Also rewrote variable declaration part. It is now possible to
138 declare more than one variable per line.
139 - Set version to 2.1.0
141 Fri Apr 24 13:50:15 CEST 1998
144 - Set version to 2.1.1
146 Mon Apr 27 14:26:55 CEST 1998
148 - Parser now able to understand and process syntax like :foo->bar
149 and :foo.bar as variables.
150 - Set version to 2.2.0
152 Tue Apr 28 14:48:41 CEST 1998
154 - Put operator "->" back into parser. Note that :foo->bar means the
155 C term, but :foo ->bar means the operator "->".
157 Tue Apr 28 15:49:07 CEST 1998
159 - Added exec sql disconnect command.
160 - Allow varchar in C to be written in uppercase too.
161 - Added whenever option "do break;"
163 Wed Apr 29 09:17:53 CEST 1998
165 - Corrected parsing of C comments.
166 - Also allow C++ style comments.
167 - Make sure not found is only checked after commands that could
169 - Added error codes, see ecpgerror.h for details.
170 - Added "exec sql <TransactionStmt> release" as disconnect statement
171 for compatibility issues.
173 Thu Apr 30 10:42:10 CEST 1998
175 - Added a -t option to disable automatic transaction start.
176 - Added sqlerrd[] to sqlca struct.
177 - Give back number of tuples affect in sqlca.sqlerrd[2].
179 Thu Apr 30 13:36:02 CEST 1998
181 - Make the return code different in case of different errors.
183 Wed May 6 11:42:48 CEST 1998
185 - Free memory if possible
186 - Some bugfixes for bugs I found while changing the memory
188 - Now able to fill complete array with one call (see test1.pgc for
190 - Set version to 2.3.0
191 - Set library version to 2.1
193 Wed May 6 16:09:45 CEST 1998
195 - Some more cleanups in the library.
197 Thu May 7 12:34:28 CEST 1998
199 - Made CONNECT and DISCONNECT statement more SQL3 compliant.
200 - Changed the API for the ECPGconnect function to be able to handle
203 Fri May 8 13:54:45 CEST 1998
204 - More changes to the parser. The connect statement now allows
206 - db-name is accepted in two ways:
207 - <dbname>[@<server>][:<port>]
208 - esql:postgresql://<server>[:<port>][/<dbname>]
210 Mon May 11 10:28:37 CEST 1998
212 - Added '? options' to connect call.
213 - Also allow USING as keyword for the password
215 Thu May 14 15:09:58 CEST 1998
217 - Changed preproc.y and pgc.l according to the parser changes in the
220 Fri May 15 09:55:21 CEST 1998
222 - Added connection_name handling
225 Mon May 18 10:33:58 CEST 1998
227 - Fixed some more bugs
228 - Set version to 2.3.1
229 - Set library version to 2.2
231 Tue May 19 11:49:34 CEST 1998
233 - Tested (and fixed) 'set connection'
234 - Fixed string notation in C
236 Wed May 20 10:46:48 CEST 1998
238 - Fixed handling of preprocessor directives and variable
240 - Added enum datatype.
241 - Set version to 2.3.2
243 Wed Jun 3 13:38:57 CEST 1998
245 - Made sqlca struct compatible with other systems.
246 - Give back a warning in case of truncation
247 - Changed the handling of OptimizableStmt since the old one broke
249 - Set library version to 2.3
250 - Set version to 2.3.3
252 Thu Jul 2 20:30:14 CEST 1998
254 - Changed new style db name to allow connection types "tcp" and
257 Tue Jul 7 15:14:14 CEST 1998
259 - Fixed some bugs in preproc.y
260 - Set version to 2.3.4
262 Mon Jul 27 17:13:11 CEST 1998
264 - Changed text of error message to make emacs happy
266 Mon Aug 3 17:23:18 CEST 1998
268 - Added latest changes from gram.y resp. scan.l to
269 preproc.y resp. pgc.l
270 - Fixed cursor handling
271 - Set version to 2.3.5
272 - Set library version to 2.4
274 Fri Aug 7 12:38:50 CEST 1998
276 - Fixed cursor handling once again
277 - Added support for variables in cursor
278 - Set version to 2.3.6
279 - Set library version to 2.5
281 Fri Aug 14 12:44:21 CEST 1998
283 - Added EXEC SQL DEFINE statement
284 - Set version to 2.4.0
286 Tue Aug 18 09:24:15 CEST 1998
288 - Removed keyword IS from DEFINE statement
289 - Added latest changes from gram.y
290 - Removed duplicate symbols from preproc.y
291 - Initialize sqlca structure
292 - Added check for connection to ecpglib
293 - Set version to 2.4.1
295 Thu Aug 20 15:31:29 CEST 1998
297 - Cleaned up memory allocation in ecpglib.c
298 - Set library version to 2.6
300 Wed Aug 26 16:17:39 CEST 1998
302 - Sync preproc.y with gram.y
304 Thu Aug 27 15:32:23 CEST 1998
306 - Fix some minor glitches that the AIX compiler complains about
307 - Added patchlevel to library
309 Fri Aug 28 15:36:58 CEST 1998
311 - Removed one line of code that AIX complains about since it was not
313 - Set library version to 2.6.1
315 Mon Aug 31 09:40:04 CEST 1998
317 - Minor patch to Makefile
318 - Put pgc.l in sync with scan.l
320 Tue Sep 1 11:31:05 CEST 1998
322 - Fixed another bug in preproc.y
324 Thu Sep 3 12:21:16 CEST 1998
326 - Sync preproc.y with gram.y
328 Mon Sep 14 09:21:02 CEST 1998
330 - Sync preproc.y with gram.y yet again
332 Thu Sep 17 08:55:33 CEST 1998
334 - Synced preproc.y and gram.y one more time
336 Thu Sep 17 19:23:24 CEST 1998
338 - Added missing ';' in preproc.y
339 - Set version to 2.4.2
341 Tue Sep 29 10:22:00 CEST 1998
343 - Check strdup calls for out of memory.
344 - Set library version to 2.6.2
346 Wed Sep 30 12:15:10 CEST 1998
348 - Synced preproc.y with gram.y yet again.
349 - Set version to 2.4.3
351 Mon Okt 12 12:36:04 CEST 1998
353 - Synced preproc.y with gram.y yet again.
355 Thu Okt 15 10:05:04 CEST 1998
357 - Synced preproc.y with gram.y yet again.
358 - Set version to 2.4.4
360 Wed Dec 9 20:24:54 MEZ 1998
362 - Synced preproc.y with gram.y and the keywords.c files to add CASE
365 Tue Dec 22 19:16:11 CET 1998
367 - Synced preproc.y with gram.y for locking statements.
368 - Set version to 2.4.5
370 Tue Jan 7 19:19:34 CET 1999
372 - Synced preproc.y with gram.y for for-update clause and changes in
375 Mon Jan 18 19:22:44 CET 1999
377 - Added INTERSECT, EXCEPT and UNION for Select statements
378 - Put keywords.c in sync again after forgettimg it the last time.
380 Thu Jan 21 21:29:00 CET 1999
382 - Fixed libecpg to not segfault if there is no connection.
383 - Set library version to 2.6.3
384 - Added 'exec sql whenever sqlwarning'.
385 - Set ecpg version to 2.4.6
387 Wed Jan 27 12:42:22 CET 1999
389 - Fixed bug that caused ecpg to lose 'goto' information.
390 - Set ecpg version to 2.4.7
392 Fri Jan 29 18:03:52 CET 1999
394 - Fixed bug that caused 'enum' to be rejected in pure C code.
395 - Fixed bug that caused function names to be translated to lower case.
396 - Set ecpg version to 2.4.8
398 Tue Feb 2 07:40:52 CET 1999
400 - Brought preproc.y in sync again with gram.y.
401 - Set ecpg version to 2.4.9
403 Wed Feb 3 18:28:46 CET 1999
405 - Started working on PREPARE statement.
406 - Fixed typo in preproc that cause CREATE statement to not work
409 Thu Feb 4 19:43:39 CET 1999
411 - Some parts of the PREPARE statement work now.
412 - Added EXECUTE command
413 - Added DEALLOCATE PREPARE command
415 Fri Feb 5 18:25:07 CET 1999
417 - PREPARE seems to be working okay now.
418 - Fixed some minor bugs.
419 - Renamed y.tab.* to preproc.*
421 Mon Feb 8 07:57:29 CET 1999
423 - Synced preproc.y with gram.y again.
424 - Allow ':<name>' as positional variable in prepare statement also.
425 You can still specify ';;' instead of course.
426 - Added TYPE statement.
427 - Set library version to 2.7.0
429 Tue Feb 9 07:07:11 CET 1999
431 - Synced preproc.y with gram.y.
433 Tue Feb 9 20:21:44 CET 1999
435 - Added FREE statement.
437 Wed Feb 10 07:51:09 CET 1999
441 Sat Feb 13 10:44:43 CET 1999
443 - Added DECLARE STATEMENT for compatibility with Oracle. De facto
444 this statement does nothing.
445 - Added VAR statement.
447 Son Feb 14 11:36:04 CET 1999
449 - Added type 'enum' to TYPE and VAR statement.
450 - Allow ecpg keywords as datatypes.
452 Thu Feb 18 08:35:35 CET 1999
454 - Make sure indicator for array is array too.
456 Fri Feb 19 18:38:45 CET 1999
458 - Finished type aliasing for structures.
459 - Set ecpg version to 2.5.0
461 Fri Feb 19 21:40:14 CET 1999
463 - Fixed bug in libecpg that caused it to start transactions only for
464 the first connection.
465 - Set library version to 2.7.1
467 Son Feb 21 14:10:47 CET 1999
469 - Fixed variable detection in libecpg.
471 Mon Feb 22 19:47:45 CET 1999
473 - Added 'at <db_connection>' option to all commands it is apllicable
474 to. Due to changing the API of some libecpg functions this
475 requires me to increase the major version number of libecpg.
476 - Synced pgc.l with scan.l.
477 - Added support for unions.
479 Tue Feb 23 17:32:25 CET 1999
481 - Other than a struct a union itself cannot be specified as variable.
483 Fri Feb 26 07:18:25 CET 1999
485 - Synced preproc.y with gram.y.
487 Sat Feb 27 20:30:03 CET 1999
489 - Added automatic allocating for NULL pointers.
491 Mon Mar 1 20:16:24 CET 1999
493 - Fixed parser bug that caused it to miss some blanks during output.
495 Thu Mar 4 19:49:28 CET 1999
497 - Fixed bug in ecpglib.c that caused it to allocate to few memory.
498 - Switched memory allocation to calloc() to make sure memory is
500 - Fixed varchar auto-allocating.
502 Sat Mar 6 14:06:07 CET 1999
504 - Replaced placeholder ';;' by '?' since this is what standard says.
506 Mon Mar 8 17:07:14 CET 1999
508 - Corrected include directives to not include backend stuff.
510 Tue Mar 9 17:26:28 CET 1999
512 - Synced preproc.y with gram.y.
514 Sun Mar 14 15:44:18 CET 1999
516 - Synced preproc.y with gram.y.
518 Thu Mar 18 18:57:31 CET 1999
520 - Synced preproc.y with gram.y.
521 - Added '%' operator.
523 Thu Mar 18 19:44:10 CET 1999
525 - Added ECPGstatus() function.
526 - Cleaned up some error messages.
528 Fri Mar 19 08:49:32 CET 1999
530 - Synced preproc.y with gram.y.
532 - Synced pgc.l with scan.l.
534 Sat Mar 20 19:57:42 CET 1999
536 - Synced preproc.y with gram.y.
537 - Fixed handling of ';' character.
539 Sun Mar 21 13:05:50 CET 1999
541 - Synced preproc.y with gram.y.
543 Mon Mar 22 19:22:38 CET 1999
545 - Fixed incorrect password entry in parser.
546 - Made no_auto_trans available for each connection seperately.
548 Sat Apr 10 20:10:50 CEST 1999
550 - Allow ecpg handle a floating point constants.
551 - Fix ecpg runtime library memory leak (patch by Masaaki Sakaida).
553 Mon Apr 12 17:56:14 CEST 1999
555 - Fixed ECPG variable handling.
556 - Make no_auto_trans be accessible via SET command.
557 - Do not eat comments so line numbering should be correct.
559 Wed Apr 14 17:59:06 CEST 1999
561 - Added simple calculations for array bounds.
563 Fri Apr 16 18:25:18 CEST 1999
565 - Fixed small bug in ECPGfinish().
567 Sat Apr 24 12:39:07 CEST 1999
569 - Synced preproc.y with gram.y.
570 - Allow more than one blank between EXEC and SQL.
571 - Allow statements to be prepared from a character string, too.
573 Fri May 7 07:11:38 CEST 1999
575 - Synced preproc.y with gram.y.
576 - Fixed small bug in parser.
578 Thu May 13 13:51:26 CEST 1999
580 - Synced preproc.y with gram.y.
582 Mon May 17 18:13:30 CEST 1999
584 - Synced preproc.y with gram.y.
586 Fri May 21 18:13:44 CEST 1999
588 - Synced preproc.y with gram.y.
590 Sun May 23 11:19:32 CEST 1999
592 - Add braces around each statement so that a simple if/else works.
594 Thu Jun 10 21:09:12 CEST 1999
596 - Fixed typo in preproc.y.
597 - Synced pgc.l with scan.l.
599 Wed Jun 16 20:21:42 CEST 1999
601 - Fixed another typo in preproc.y.
603 Thu Jun 24 18:06:43 CEST 1999
605 - Fixed C comment bug that caused ecpg to not accept quoted quotes.
607 Fri Jun 25 07:17:10 CEST 1999
609 - Changed error message in ecpglib.c to list correct database name.
610 - Set library version to 3.0.0
611 - Set ecpg version to 2.6.0
613 Mon Jul 19 07:53:20 CEST 1999
615 - Synced preproc.y with gram.y.
616 - Synced pgc.l with scan.l.
617 - Fixed quoting bug in ecpglib.c
618 - Set ecpg version to 2.6.1
619 - Set library version to 3.0.1
621 Sun Aug 1 13:31:19 CEST 1999
623 - Synced preproc.y with gram.y.
624 - Set ecpg version to 2.6.2
626 Tue Sep 14 22:26:40 CEST 1999
628 - Added patch by Andreas Theofilu <theofilu@eunet.at> to fix yet
630 - Minor bugfixes to ecpg
631 - Return OID in sqlca.sqlerrd[1] if possible.
632 - Set ecpg version to 2.6.3
633 - Set library version to 3.0.2
635 Fri Sep 17 07:43:55 CEST 1999
637 - Fixed bug in parsing C strings.
638 - Fixed bug in parsing operators.
639 - Set ecpg version to 2.6.4
641 Fri Sep 17 18:16:34 CEST 1999
643 - Made sure sqlca is initialized everytime.
644 - Set library version to 3.0.3
646 Mon Sep 27 07:40:20 CEST 1999
648 - Synced preproc.y with gram.y.
650 - Set ecpg version to 2.6.5
652 Tue Sep 28 17:58:37 CEST 1999
654 - Synced preproc.y with gram.y.
655 - Synced pgc.l with scan.l.
657 Fri Oct 1 18:34:30 CEST 1999
659 - Synced preproc.y with gram.y.
661 - Include patch by Christof Petig <christof.petig@wtal.de>:
662 - made NULL a valid bool value
663 - check for indicator variables on NULL
665 Wed Oct 6 18:28:40 CEST 1999
667 - Synced preproc.y with gram.y.
669 Thu Oct 7 15:12:58 CEST 1999
671 - Fixed bug that caused mixed case relation names to be converted to
673 - Synced preproc.y with gram.y.
674 - Set ecpg version to 2.6.6
675 - Set library version to 3.0.4
677 Tue Oct 12 07:26:50 CEST 1999
679 - Simplified C part of parser.
681 Fri Oct 15 17:05:25 CEST 1999
683 - Synced preproc.y with gram.y.
684 - Synced pgc.l with scan.l.
686 - Finished C parser changes, so initializers are correctly parsed.
687 - Set ecpg version to 2.6.7
689 Mon Oct 25 09:28:17 CEST 1999
691 - Made sure Tom Lane's patches make it into my source tree.
693 Wed Oct 27 18:08:09 CEST 1999
695 - Synced preproc.y with gram.y.
696 - Set ecpg version to 2.6.8
698 Fri Oct 29 21:36:25 CEST 1999
700 - Fixed bug that caused ecpg to not allow FOR UPDATE.
701 - Set ecpg version to 2.6.9
703 Mon Nov 1 11:22:06 CET 1999
705 - Print SQL error message to STDERR instead of STDOUT.
706 - Added a fourth test source.
707 - Set library version to 3.0.5.
709 Wed Nov 10 18:33:14 CET 1999
711 - Synced preproc.y with gram.y.
713 Thu Nov 11 07:49:44 CET 1999
715 - Fixed bug in SET AUTOCOMMIT.
717 Mon Nov 22 18:26:34 CET 1999
719 - Synced preproc.y with gram.y.
721 - Set library version to 3.0.6.
722 - Set ecpg version to 2.6.10.
724 Tue Nov 23 07:59:01 CET 1999
726 - Ignore locale setting in ECPGdo.
727 - Set library version to 3.0.7.
729 Fri Dec 3 16:35:07 CET 1999
731 - Fixed memory leak in ecpglib.
732 - Set library version to 3.0.8.
734 Wed Dec 8 08:26:13 CET 1999
736 - Synced preproc.y with gram.y.
737 - Clean up error handling.
738 - Set ecpg version to 2.6.11.
740 Tue Dec 14 07:28:10 CET 1999
742 - Synced preproc.y with gram.y.
743 - Simplified string handling.
745 Wed Dec 15 08:10:52 CET 1999
747 - Fixed typo in parser.
748 - Included Bruce's patch to fix two more memory leaks in libecpg.
749 - Some cleanup in libecpg.
750 - Set library version to 3.0.9.
751 - Set ecpg version to 2.6.12.
753 Thu Dec 23 13:25:05 CET 1999
755 - Fixed command line parsing.
756 - Set ecpg version to 2.6.13.
758 Thu Jan 6 09:52:27 CET 2000
760 - Synced preproc.y with gram.y.
761 - Set ecpg version to 2.6.14.
763 Wed Jan 12 15:50:39 CET 2000
765 - Made sure Rene Hogendoorn's patches make it into ecpg completely
766 except for the FETCH syntax change.
768 Fri Jan 14 21:17:46 CET 2000
770 - Applied a minor patch to ecpglib.c.
771 - Fixed initialization bugs.
773 Mon Jan 17 21:55:40 CET 2000
775 - Synced preproc.y with gram.y.
776 - Changed FETCH syntax using Rene's final patch. Made it more
779 Thu Jan 20 10:00:50 CET 2000
781 - Synced preproc.y with gram.y.
783 Fri Jan 21 14:52:27 CET 2000
785 - Added more log output to ecpglib.
787 Thu Jan 27 08:12:05 CET 2000
789 - Added another patch by Rene Hogendoorn.
790 - Fixed error messages in pgc.l.
791 - Improved variable parsing.
792 - Synced preproc.y with gram.y.
794 Mon Feb 14 10:35:18 CET 2000
796 - Synced preproc.y with gram.y.
798 Tue Feb 15 11:14:07 CET 2000
801 - Synced preproc.y with gram.y.
803 Tue Feb 15 17:39:19 CET 2000
805 - Do only write the first 70 bytes of the error message to the
806 sqlca structure since there are only 70 bytes free space.
807 - Set library version to 3.0.10.
809 Wed Feb 16 11:57:02 CET 2000
811 - Fixed library to be able to input complete arrays.
813 Wed Feb 16 17:04:41 CET 2000
815 - Apply patch by Christof Petig <christof.petig@wtal.de> that adds
818 Thu Feb 17 19:37:44 CET 2000
820 - Synced preproc.y with gram.y.
821 - Started to clean up preproc.y.
823 Tue Feb 22 13:48:18 CET 2000
825 - Synced preproc.y with gram.y.
826 - Much more clean ups.
828 Wed Feb 23 17:08:28 CET 2000
830 - Even more clean ups.
832 Fri Feb 25 16:13:11 CET 2000
834 - Fixed some bugs I created when I cleaned up, thanks Christof.
836 Wed Mar 1 10:49:03 CET 2000
838 - Synced preproc.y with gram.y.
839 - Added output of arrays.
841 Thu Mar 2 11:25:09 CET 2000
843 - Fixed some parsing problems. A variable can now be a reserved
845 - Made sure double quotes in statements are correctly quoted.
847 Thu Mar 2 17:42:16 CET 2000
849 - Print error message if an indicator array is given for input
852 Fri Mar 3 10:47:06 CET 2000
854 - Fixed handling of double quote in C code.
856 Tue Mar 7 10:58:21 CET 2000
858 - More cleanup in ecpglib.
859 - Fixed ecpg.c not not free variable list twice.
861 Thu Mar 9 10:12:57 CET 2000
863 - Fixed another memory bug in the parser.
865 Wed Mar 15 17:36:02 CET 2000
867 - Synced preproc.y with gram.y.
868 - Synced pgc.l with scan.l.
870 - Set library version to 3.1.0.
871 - Set ecpg version to 2.7.0.