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 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571
|
2017-06-21 Peter da Silva
* Integrate sqlite bridge with "pg_sqlite" command.
* Documentation updates for 2.2.x
* Update version to 2.2.0
2017-04-25 Peter da Silva
* Update minor version to 2.1.1
* Documentation updates for 2.1.x
* Remove dead macro from configure.in (change in TEA)
2016-10-26 Peter da Silva
* Increment version to v2.1.0
* Add -params and -paramarray to pg_select
* Add -paramarray to pg_exec and pg_sendquery
* Update documentation to match.
2016-07-06 Jeff Lawson
* Increment to 2.0.1
* Update pre-generated pdf documentation.
* Update Makefile target to install manpages
2016-07-06 Pietro Cerutti
* Avoid installing .h file only needed during build.
2016-07-06 Peter da Silva
* Fix some manpage formatting glitches
* Add more test cases
2016-06-20 Jeff Lawson
* Released 2.0.0
2016-06-20 Peter da Silva
* Add man-page generation using docbook2man
2016-06-16 Jeff Lawson
* Change functionality of pg_quote regarding NULL values.
pg_quote will now only return "NULL" if the new "-null" flag is
explicitly specified by the callerd, regardless of whether a database
handle is also specified (#6).
2016-06-16 Karl Lehenbauer, Jeff Lawson and Peter da Silva
* Add a -rowbyrow option to pg_select that will return results through libpq
a row at a time via PQsetSingleRowMode rather letting libpq wait for all the rows to be returned first.
(Caveats at https://www.postgresql.org/docs/current/static/libpq-single-row-mode.html should be observed.)
2016-06-16 Jeff Lawson
* Explicitly initialize extra Tcl_ChannelType fields.
* Make pg_select handle exit conditions more carefully.
* Fix mislabelled error message text.
* Regenerate HTML documentation.
2016-06-16 Peter da Silva
* Add ?connection? option for pg_quote and flags for pg_select.
* Modify Makefile for docs to only generate HTML by default.
* Update documentation to reflect changes and updates.
2016-06-15 Peter da Silva
* Fixed docbook errors in libpgtcl.sgml
* Deleted html directory to make "make" work.
2016-06-15 Karl Lehenbauer
* Make -async processing for pg_connect use C-level Tcl boolean handling.
2016-06-15 Jeff Lawson
* Unset array in pg_select at start of each loop to avoid elements
lingering over (#4).
* Remove unused variable.
2016-06-14 Jeff Lawson
* Fix possible segfault in pg_select if you unset the array variable
inside of the code body.
* Document the pg_select refcount fix.
* Whitespace cleanup.
* Remove changelog from 1.4 era; update some text.
* Update Tcl version in the README.
* Avoid error during docs part of "make install".
* Add SGML dependency to dohtml target.
2015-08-26 Karl Lehenbauer
* Install helper package sc_postgres by default.
* Minor package README improvements.
* Helper integration.
* Regenerate "configure" script.
2015-08-23 Karl Lehenbauer
* Doc and usage message additions.
2015-08-22 Karl Lehenbauer
* Simplify most Tcl_GetStringFromObj calls.
* Remove legacy version handling, requiring Tcl 8.4 or above.
(Tcl 8.4 has been out for ten years or so, so it's OK.)
* Remove ifdef compatibility for long-present stuff such as lo_truncate
that has been in PostgreSQL libpq since version 8.3 (released in 2008).
2015-08-18 Karl Lehenbauer
* pg_result $res -foreach array code - iterate over tuples in a result handle.
* Fix compiler warnings.
2015-08-08 Karl Lehenbauer
* Update build to Tcl Extension Architecture (TEA) 3.9
* shared library now builds without a reference to libtcl*.so since it
uses stubs to access that library.
* "make distclean" will now remove autom4te.cache
* Add .gitignore to suppress untracked files warning
2015-04-21 Karl Lehenbauer
* genericize tclsh invocation.
2015-03-04 Karl Lehenbauer
* clean up compiler warnings.
2014-09-15 Karl Lehenbauer
* Force UTC in helpers' clock_to_sql_time.
2014-07-07 Karl Lehenbauer
* Force UTC on timestamp without timezone conversions.
2013-06-14 Karl Lehenbauer
* Fix gen_update_from_array to work correctly with multiple key fields.
2013-05-08 Karl Lehenbauer
* Update .gitignore to ignore *.o, *.so, Makefile, pkgIndex.tcl, etc.
2012-10-10 David McNett
* Migrate README file to a github-friendly markdown format.
* Migrate from Tcl 8.4 to Tcl 8.5.
2012-09-21 Karl Lehenbauer
* Update the postgresql database schema comparator.
2012-09-11 Karl Lehenbauer
* Add subcommands for direct execution of connection handles for
conndefaults, set_single_row_mode, is_busy, blocking and
cancel_request.
* Make "make distclean" get rid of more autoconf work product.
* Add -nodotfields option to pg_select. If set it will inhibit the creation of
the .tupno, .numcols and .headers fields in pg_select results.
* Added new command, pg_set_single_row_mode aka ::pg::set_single_row_mode
to enable retrieving query results row-by-row.
* Make "make distclean" get rid of more autoconf work product.
* Clean up compiler warnings.
* Update README.freebsd.
2012-06-18 Karl Lehenbauer
* Add new -withoutnulls option to pg_select, if set will remove null
fields from the row result array.
* Reference variable name as a string, not an object, when invoking Tcl_UnsetVar2.
2012-06-04 Karl Lehenbauer
* Change dbinfo option "pass" to "password".
Fix crash in pg_listen.
2012-06-02 Karl Lehenbauer
* Add new pg_dbinfo options "dbname", "user", "pass", "host", "port",
"options", "status", "transaction_status", "error_message",
"needs_password", "used_password", "used_ssl" to provide Tcl access
to libpq connection parameter values established at connection time.
* Fixed bug where pg_dbinfo would get a segmentation violation if passed
an invalid connection handle.
* Version bump to 1.9.
2011-02-15 Karl Lehenbauer
* Removed arrVar variable and setting of it in Pg_result because it
didn't do anything.
2010-07-01 Brett Schwarz
* Added result callback for async queries via pg_sql. Based on code from Miguel Sofer. I
had this code laying around and thought I had already committed, but turned out no.
2010-04-14 Karl Lehenbauer
* Added new option to pg_dbinfo, "sql_count", returns the number of calls
to pg_exec, pg_exec_prepared, pg_sendquery, pg_sendquery_prepared,
and pg_select since the database connection was established.
* Fixed a bug in dbinfo where a missing database connection argument
could result in a coredump.
* Version bump to 1.8.
2010-04-12 Brett Schwarz
* Added Tcl 8.6 compatability by gettting rid of errorLine direct struct
access and using Tcl_GetErrorLine, introduced in 8.6. Also added define
for Tcl versions less than 8.6 so they can use the Tcl_GetErrorLine call.
I ripped this off from the aolserver fix :)
2009-09-16 Karl Lehenbauer
* Add gen_update_from_array and perform_update_from_array to Postgres
helper package.
2009-07-07 Karl Lehenbauer
* pg_select was not checking returns from Tcl_ObjSetVar2 and friends.
The problem was that if the pg_select array already existed as a
scalar variable, no error was returned to denote this, and it caused
a coredump in Tcl 8.5. This has now been fixed.
* In pg_select code, correct memory allocation for columnNameObjs to
use the size of a pointer to Tcl_Obj times the number of columns,
rather than the size of a Tcl_Obj times the number of columns..
2009-06-30 Karl Lehenbauer
* Fixed bug in "pgresult -assign" that could cuase a Tcl panic by
attempting to set a value into a shared Tcl object.
* libpq's PQfname can return NULL if the column requested is out of
range. We have seen it return NULL when the column is in range,
so instead of dumping core, we treat such a return as a Tcl error.
2009-04-06 Karl Lehenbauer
* Pgtcl 1.7 released.
2009-02-26 Karl Lehenbauer
* Make PostgreSQL helpers "res_dont_care" and "res_must_succeed"
accept PGRES_TUPLES_OK as a sucessful result as well as
PGRES_COMMAND_OK.
2008-05-24 Karl Lehenbauer
* Add new pg_result suboption -tupleArrayWithoutNulls. It works like
-tupleArray except if a field is null, it unsets the field from
the array.
2008-05-23 Karl Lehenbauer
* Add "escape_bytea" and "unescape_bytea" to the methods that can be
invoked from $conn.
* Extend pg_escape_bytea to allow a connection handle to be specified.
If specified, libpq's PQescapeByteaConn is used rather than
deprecated PQescapeBytea, which can return incorrect results since
it can't determine whether standard-conforming strings are enabled.
If the "$conn escape_bytea ..." method is used, the connection-handle
version is automatically used.
* Detect if lo_truncate is available in libpq or not and, if not, return
an error if it is attempted.
2008-05-20 Karl Lehenbauer
* Add support for the lo_truncate function that truncates a large object
to a given length.
* Version bump to 1.7.
2007-12-14 Karl Lehenbauer <karl-pg@sc.com>
* Update autoconf build to Tcl Extension Architecture (TEA) 3.6
* Extend pg_quote to allow a connection handle to be specified.
If the connection handle is specified and the string matches the
null string, returns "NULL" (without quotes). If not, returns
the string quoted for inclusion in SQL commands.
* pg_quote can be invoked as a method of the connection handle
as well. For instance, "$db quote $string".
* Removed unused variables and silence compiler warnings with casting.
* Added "internal_position" and "internal_query" to the error options.
2007-02-08 Brett Schwarz <brett_schwarz@yahoo.com>
* Added support for async connections. Note that you will have to
use [after] command to find the result of the connection. Callbacks
won't work, since the sock isn't established yet
2007-01-24 Brett Schwarz <brett_schwarz@yahoo.com>
* added additional sub commands to dbinfo (version, protocol, param,
backendpid, socket)
2006-07-05 Karl Lehenbauer <karl-pg@sc.com>
* Updated autoconf build to Tcl Extension Architecture (TEA) 3.5
2006-01-01 Brett Schwarz <brett_schwarz@yahoo.com>
* changed the commands that handle params, such that if a value is NULL
then the lib will change the paramValues value to '\0' so that
the backend will insert a NULL correctly
2005-11-27 Karl Lehenbauer <karl-pg@sc.com>
* Bumped version number to 1.6
* Add pg_null_value_string, ::pg::null_value_string and
"$conn null_value_string" to get and set a special string value that
will be returned for fields containing null values from queries.
pg_select and pg_execute use this value for null values. If not set,
they use the traditional empty string.
pg_exec, pg_exec_prepared, pg_sendquery and pg_sendquery_prepared use
this value as well. However, it can be overridden or replaced for
one specific result using "pg_result $result -null_value_string NULL",
etc, or by executing the result handle, as in
"$result -null_value_string NULL"
Updated documentation and regenerated HTML and PDF files.
2005-11-09 Karl Lehenbauer <karl-pg@sc.com>
* List -cmdTuples as one of the possible options when executing
pg_result without arguments.
2005-07-18 Karl Lehenbauer <karl-pg@sc.com>
* Made pggrok database introspection code much more useful -- routines
for finding out data about fields and indexes in a table now load
on array with data about each field (index) and execute a code body
on it, rather than punting with a call to parray
2005-07-01 Karl Lehenbauer <karl-pg@sc.com>
* Fixed memory leaks when connections-as-commands are used
($conn exec $statement, etc)
2005-04-16 Brett Schwarz <brett_schwarz@yahoo.com>
* added more documentation about the new capabilities
2005-02-25 Brett Schwarz <brett_schwarz@yahoo.com>
* took away pg::conninfo and pg::results, and made one command
pg::dbinfo. Usage is pg::dbinfo connections and
pg::dbinfo results $conn
2004-11-30 Karl Lehenbauer <karl-pg@sc.com>
* Document pg_exec_prepared, pg_results, and pg_sendquery_prepared.
* Document pg_exec's ability to take optional arguments for
$-substitution in PostgreSQL 7.4+.
* Documented pg_getresult and pg_result -error suboptions.
* Pasted connect string options from the libpq manual rather
than simply referring Pgtcl users to the libpq manual.
* Regenerated pdf and html documentation.
2004-11-29 Brett Schwarz <brett_schwarz@yahoo.com>
* Added commands to escape and unescape binary strings
2004-11-29 Karl Lehenbauer <karl-pg@sc.com>
* Added library of useful PostreSQL helper functions to the playpen.
* Added dbobjects PostgreSQL/Itcl-object interface package to the playpen.
* Added pggrok code to introspect into Postgres databases to the playpen.
2004-11-23 Karl Lehenbauer <karl-pg@sc.com>
* Simplify result object processing
* Fixed bug in Pg_cancelrequest where the error message would
not be returned.
* Remove unused variables.
* Silence compiler warnings about a fall-through (that couldn't
be reached) that would cause a function declared to return something
to not return anything and about a possibly uninitialized variable.
2004-11-22 Karl Lehenbauer <karl-pg@sc.com>
* Created playpen directory where interesting things that are not
yet ready for prime time can be examined and messed with.
Added code for turning OIDs returned by pg_result -lAttributes
into data type names.
2004-11-19 Karl Lehenbauer <karl-pg@sc.com>
* Updated autoconf build to TEA 3.1 / autoconf 2.59
* Added import_sampledata_prepared_onetransaction.tcl to the tests
2004-11-17 Karl Lehenbauer <karl-pg@sc.com>
* minor optimization in connections-as-commands and results-as-commands
where we don't copy and then swap, we copy it the way we want it to
end up (first and second elements of objv reversed).
* connections-as-commands and results-as-commands now error out when
called with no arguments
2004-11-16 Karl Lehenbauer <karl-pg@sc.com>
* libpgtcl will again build with versions of Tcl < 8.5 thanks to a little
extra checking for HAVETCL_NEWDICTOBJ
* Fixed several calls to Tcl_AppendStringsToObj whose arguments were
terminated with -1 instead of NULL, eliminating several segmentation
violations that could occur while preparing error messages.
* Removed spurious newline at the start of the error message when
the query result handle passed to pg_result is invalid.
2004-11-05 Brett Schwarz <brett_schwarz@yahoo.com>
* added delete proc for result handle cleanup
2004-11-02 Brett Schwarz <brett_schwarz@yahoo.com>
* added delete proc for connection handle cleanup
2004-09-20 Brett Schwarz <brett_schwarz@yahoo.com>
* added preliminary support for dicts in pg_result. Need to have
Tcl 8.5 or the dicts package extension. Need to set
HAVETCL_NEWDICTOBJ manually for now.
2004-08-23 Brett Schwarz <brett_schwarz@yahoo.com>
* added tcltest script of testing pgtcl.
2004-08-21 Brett Schwarz <brett_schwarz@yahoo.com>
* Made the result handle into a command, and added associated command
dispatcher.
2004-08-18 Brett Schwarz <brett_schwarz@yahoo.com>
* Added another way to specify the connection string to pg::connect:
pg::connect -connlist {host myhost port myport ...}. This is similiar
to -conninfo, except that the arg is a key value list.
* Added -connhandle option to pg::connect to specify the connection
handle name. If not specified, then connection handle name is
derived by pgtcl (as before).
2004-08-16 Brett Schwarz <brett_schwarz@yahoo.com>
* added Pg_results (pg::results, pg_results) command that returns
the result handles for a particular connection
2004-08-15 Brett Schwarz <brett_schwarz@yahoo.com>
* Added new command pg::conninfo that returns a list of PG connection
handles
2004-07-02 Brett Schwarz <brett_schwarz@yahoo.com>
* added basic capability to use the connection handle as a command
* since connection handle can be a command now, I made the returned
handle namespace qualified, with respect to the calling namespace
2004-06-29 Brett Schwarz <brett_schwarz@yahoo.com>
* Added proper Tcl namespace support (i.e. ::pg::connect)
2004-06-28 Karl Lehenbauer <karl-pg@sc.com>
* Version 1.4 released
2004-06-22 Karl Lehenbauer <karl-pg@sc.com>
* Added new optional subidentifiers to pg_result $resultID -error.
You can specify one of "severity", "sqlstate", "primary", "detail",
"hint", "position", "context", "file", "line", or "function" to
get the severity (ERROR, FATAL, PANIC, WARNING, NOTICE, DEBUG,
INFO, or LOG or a localized translation of one of these), the
SQLSTATE code (see Appendix A of the Postgres manual), the
primary human-readable error message, the optional secondary
error message carrying more detail about the problem, the hint,
an optional suggestion about what to do, the position, an error
cursor position as an index into the original statement string
starting from 1 (in characters, not bytes), the context,
the source file where the error was reported, the line number of
the source code where the error was reported, and the name
of the source code function reporting the error, respectively.
With newer versions of Postgres, $-variable substitution is now
supported in pg_sendquery as it is in pg_exec.
* Added a new function, pg_sendquery_prepared, that supports
asynchronous invocation of prepared statements.
2004-06-21 Karl Lehenbauer <karl-pg@sc.com>
* Added parameter support to the asynchronous pg_sendquery function.
With newer versions of Postgres, $-variable substitution is now
supported in pg_sendquery as it is in pg_exec.
* Added a new function, pg_sendquery_prepared, that supports
asynchronous invocation of prepared statements.
2004-05-26 Karl Lehenbauer <karl-pg@sc.com>
* Changed configure script to use pg_config to find the path to
PostgreSQL includes and libraries.
* Altered libpgtcl to no longer require access to internal PostgreSQL
include files.
* Changed configure script to determine whether or not PostgreSQL 7.4+
functions PQexecParams and PQexecPrepared are available or not.
2004-05-21 Karl Lehenbauer <karl-pg@sc.com>
* Add pg_exec_prepared to execute pre-prepared SQL statements with
parameters.
2004-04-23 Karl Lehenbauer <karl-pg@sc.com>
* Add pg_quote function to escape strings. It adds the outside quotes, too.
2004-04-14 Karl Lehenbauer <karl-pg@sc.com>
* Modify pg_exec to support $-variable substitution for PostgreSQL 7.4 and
above (protocol >= 3). For example, you can now do stuff like
pg_exec $conn {select * from foo where field1 = $1} $value
2004-02-14 Brett Schwarz <brett_schwarz@yahoo.com>
* Updated with the fixes that went into the -core libpgtcl release
* Also added fix for WSAStartup posted by anonymous on the bug list
2003-01-14 Brett Schwarz <brett_schwarz@yahoo.com>
* added -cmdTuples to pg_result (code submitted by Artur Trzewik)
2002-11-19 Brett Schwarz <brett_schwarz@yahoo.com>
* Improved the performance of -list a little bit
2002-11-15 Karl Lehenbauer <karl-pg@sc.com>
* Tagged for 1.4b3
* Fix pg_listen. (callback string wasn't properly terminated)
Also made slight performance improvements in pg_listen.
2002-11-15 Brett Schwarz <brett_schwarz@yahoo.com>
* Cleanup memory leaks in pg_result.
* Fixed bug in pg_result -assignbyidx
2002-11-15 Karl Lehenbauer <karl-pg@sc.com>
* Convert all the "#ifdef TCL_ARRAYS" where tcl_value was called if
defined and not called if not defined to always "call" tcl_value.
In the case where TCL_ARRAYS isn't defined, tcl_value is now defined
as a macro that returns whatever was given to it, making it a no-op.
This change allows the code to be compiled with TCL_MEM_DEBUG enabled
to look for memory leaks.
2002-11-06 Karl Lehenbauer <karl-pg@sc.com>
* Tagged for 1.4b2
* Create the libpgtcl shared library in a way where it can find both
the Postgres shared library it needs (libpq) and the Tcl shared
library it needs (libtcl).
2002-11-05 Brett Schwarz <brett_schwarz@yahoo.com>
* added -list and -llist options to pg_result to return the
results as a list and list of lists
2002-11-05 Karl Lehenbauer <karl-pg@sc.com>
Started the ChangeLog.
|