Russ Tyndall [Mon, 23 Feb 2015 17:07:03 +0000 (12:07 -0500)]
return class from reinitialize-instance as SBCL expects (reported in SBCL-devel by Stas)
Russ Tyndall [Wed, 3 Dec 2014 15:30:09 +0000 (10:30 -0500)]
fixed sqlite bug where sqlite-aref was called with incorrect args (thanks Zach)
Russ Tyndall [Mon, 28 Jul 2014 18:41:24 +0000 (14:41 -0400)]
Got multiple results sets working for mysql which solves the precedure
call bug with a reproduction case of the error.
All result sets from a mysql query are now returned as values EG:
rows0 names0 rows1 names1 ...
fix UnwashedMeme/clsql#4
Russ Tyndall [Mon, 28 Jul 2014 17:44:04 +0000 (13:44 -0400)]
refactor test-connect and test-setup-database to be these two separate things (from test-connect-to-database)
Russ Tyndall [Wed, 11 Jun 2014 19:14:12 +0000 (15:14 -0400)]
More work on a default encoding so that running through cffi-uffi,
we dont get nil encodings
Russ Tyndall [Wed, 11 Jun 2014 18:54:54 +0000 (14:54 -0400)]
print start and stop messages while testing (probably remove, but for now I am having issues with one crashing before printing anything)
Russ Tyndall [Tue, 10 Jun 2014 17:36:48 +0000 (13:36 -0400)]
Added changelog entry about the makefile change
Russ Tyndall [Tue, 10 Jun 2014 15:26:27 +0000 (11:26 -0400)]
Merge branch 'master' of git.acceleration.net:/var/git/clsql
Russ Tyndall [Tue, 10 Jun 2014 15:26:09 +0000 (11:26 -0400)]
fixed the broken mysql LDFLAGS in debian db-mysql still doesnt build, but the ld command is no longer throwing errors about invalid parameters -Wl,-z,relro
Russ Tyndall [Mon, 9 Jun 2014 19:32:54 +0000 (15:32 -0400)]
use quicklisp for loading cffi-uffi-compat if available
Russ Tyndall [Sun, 8 Jun 2014 20:17:52 +0000 (16:17 -0400)]
fixed failing fdml test (definition of employee changed)
Russ Tyndall [Sun, 8 Jun 2014 19:13:39 +0000 (15:13 -0400)]
merged changelog
Russ Tyndall [Thu, 24 Apr 2014 18:12:52 +0000 (14:12 -0400)]
Added tests for symbols valued slots, and better printer/reader bindings
Russ Tyndall [Wed, 23 Apr 2014 20:22:10 +0000 (16:22 -0400)]
initial patch for symbol storage refactoring
Kevin M. Rosenberg [Tue, 4 Mar 2014 18:17:26 +0000 (11:17 -0700)]
Version 6.5.0 Release
* makefile.common: Check for /usr/bin/dpkg-buildflags
* {db-mysql,uffi}/Makefile: Use debian buildflags
Russ Tyndall [Mon, 24 Feb 2014 19:42:54 +0000 (14:42 -0500)]
merged ChangeLog
Russ Tyndall [Mon, 24 Feb 2014 18:59:16 +0000 (13:59 -0500)]
bind *print-length* to nil when printing lists/arrays to the database.
Russ Tyndall [Fri, 31 Jan 2014 02:50:51 +0000 (21:50 -0500)]
Set default encoding for sqlite3 databases to utf-8 if unspecified
Russ Tyndall [Fri, 31 Jan 2014 01:43:42 +0000 (20:43 -0500)]
fixed bug causing some failing sqlite3 tests (database-identifiers are not string=)
Russ Tyndall [Thu, 30 Jan 2014 21:22:07 +0000 (16:22 -0500)]
Changes to more broadly support auto-increment. new odbc-postgresql-database type
Russ Tyndall [Wed, 29 Jan 2014 19:37:01 +0000 (14:37 -0500)]
Added to-database-p keyword to view-classes-and-storable-slots (and added generic)
Russ Tyndall [Fri, 17 Jan 2014 21:22:18 +0000 (16:22 -0500)]
Added filter-select-list (for clsql-helper:recency-mixin) as an
extensibility point for manipulating query->object operations
Russ Tyndall [Wed, 8 Jan 2014 18:35:11 +0000 (13:35 -0500)]
finished updating LATEST-TEST-RESULTS
Russ Tyndall [Wed, 8 Jan 2014 18:24:36 +0000 (13:24 -0500)]
moved reallybigintegers to mysql only tests since that seems to be the only backend to actually support unsigned integers
Russ Tyndall [Wed, 8 Jan 2014 16:56:19 +0000 (11:56 -0500)]
fixed Aaron Burrow's name
Russ Tyndall [Tue, 7 Jan 2014 21:03:31 +0000 (16:03 -0500)]
updated LATEST-TEST-RESULTS
Russ Tyndall [Tue, 7 Jan 2014 20:53:02 +0000 (15:53 -0500)]
Fix bug in sqlite3-table-info where it was not using database-identifiers
Russ Tyndall [Tue, 7 Jan 2014 20:45:37 +0000 (15:45 -0500)]
removed unused/uncompiled atol64
Russ Tyndall [Tue, 7 Jan 2014 19:48:41 +0000 (14:48 -0500)]
cleaning up patches, and fixing missing pkey bugs in sqlite3
* clean make-constraint-description and database-translate-constraint
* clean tests and run
Russ Tyndall [Tue, 7 Jan 2014 19:03:45 +0000 (14:03 -0500)]
Merging long-long vs unsigned-long-long fixes and test cases
(thanks Aaron Burrows)
Removing commented code that is no longer needed (thanks vityok@github)
Russ Tyndall [Tue, 7 Jan 2014 16:39:08 +0000 (11:39 -0500)]
Merge branch 'master' of github.com:vityok/clsql into fix-atol64
Kevin M. Rosenberg [Sat, 23 Nov 2013 17:22:29 +0000 (10:22 -0700)]
Improve ccl getenv patch
Kevin M. Rosenberg [Sat, 23 Nov 2013 17:08:02 +0000 (10:08 -0700)]
2013-11-23 Kiss Kalman <kami@zalaszam.hu>
* utils/sql.lisp: Commit patch adding ccl getenv support
Russ Tyndall [Mon, 4 Nov 2013 17:33:06 +0000 (12:33 -0500)]
added better debugging info when failing to load foreign library
Victor [Sun, 20 Oct 2013 13:37:41 +0000 (16:37 +0300)]
getting rid of the _uffi.dll
Victor [Wed, 16 Oct 2013 14:34:08 +0000 (17:34 +0300)]
initial version of the autoincrement support for sqlite3 backend
Russ Tyndall [Fri, 27 Sep 2013 17:52:34 +0000 (13:52 -0400)]
fixed bug converting to boolean in db-mysql/mysql-sql.lisp - from github user Sectoid
Russ Tyndall [Thu, 20 Jun 2013 19:12:31 +0000 (15:12 -0400)]
refactored read-sql-value to centralize this logic and reduce
overloading cases
* read-eval is off for all read-sql-value cases now
* the type=symbol case uses intern instead read-from-string
Russ Tyndall [Thu, 20 Jun 2013 18:39:50 +0000 (14:39 -0400)]
Found and refactored a way some more eql specified methods of
database-get-type-specifier in mysql
Russ Tyndall [Tue, 18 Jun 2013 21:37:46 +0000 (17:37 -0400)]
refactored database-output-sql-as-type in a similar fashion to
the previous refactor of database-get-type-specifier (fewer
methods using case instead of eql specifiers)
* removed very strange definition of outputing floats as strings for
something sane (it was previously doing silly work like setting the
default read float type (which AFAICT doesnt affect printing))
* half of the cases nil returned "" other times it returned nil,
now if we get a null value we return nil always
* removed odd-logic (seemingly untouched since the initial import),
that removed null characters from printed lists. If we have #\null
in a printed list, we had probably better figure out what went wrong
there rather than destructively modifying the list output on the way
to the DB ;; removed (substitute-char-string escaped #\Null " ")
Russ Tyndall [Tue, 18 Jun 2013 15:40:46 +0000 (11:40 -0400)]
refactored database-get-type-specifier for postgres and mssql
* Single methods with a case on the symbol arg (similar to the recent
refactoring in oodml.lisp)
* This reduces line count and generally makes it easier to find and
read all the backend-specific types
Russ Tyndall [Mon, 10 Jun 2013 18:41:50 +0000 (14:41 -0400)]
Merged in longchar-typespecifier-fix branch
Russ Tyndall [Mon, 10 Jun 2013 18:39:40 +0000 (14:39 -0400)]
fixed tests that failed because there are now 3 addresses
Russ Tyndall [Mon, 10 Jun 2013 18:33:16 +0000 (14:33 -0400)]
Updated get-database-type-specifier to handle text/longchar type
and refactored
* added a warning above defaulting to VARCHAR (since its probably NOT
what is expected on a bad type specifier).
* added a case where the specified type being a string, passes that
string directly (to better/more easily allow db-specific
data-types).
* added cases where longchar or text converts to text, and exported
those symbols (as this seemed type seemed to be missing from
fddl/oddl anyway).
* reorganized these default methods into a single method with a case
statement rather than many eql specified methods (about half the
code)
* updated the docs to use text instead of longchar since text is a
more standard db-type (pg,my,and ms all use text)
Kevin M. Rosenberg [Thu, 18 Apr 2013 17:30:35 +0000 (11:30 -0600)]
Version 6.4.1
Add support for CCL weak hash tables
Ryan Davis [Thu, 7 Mar 2013 17:10:07 +0000 (12:10 -0500)]
chagelog entries for today's work
Ryan Davis [Thu, 7 Mar 2013 16:58:14 +0000 (11:58 -0500)]
use md5sum-string instead of md5sum-sequence to adjust to upstream changes
https://github.com/marijnh/Postmodern/issues/27 has a good description
of the changes in the MD5 library:
The latest "release" of md5 (dated
20121125 according to quicklisp) will silently cast strings to byte arrays, yielding incorrect checksums and causing cl-postgres to fail to authenticate.
Ryan Davis [Thu, 7 Mar 2013 16:19:36 +0000 (11:19 -0500)]
keep a reference to the original connection spec used to create
`odbc-database` connections
This information is useful of introspection later down the line.
Russ Tyndall [Thu, 21 Feb 2013 18:13:24 +0000 (13:13 -0500)]
convert latin1 chars in this utf-8 file to the utf-8 equivalent
Not sure how this will work since we are inserting into a table
explicitly set as latin-1. Presumably some layer will translate the
code point. If not this is an example file so maybe it doent matter ?
Russ Tyndall [Wed, 9 Jan 2013 17:22:00 +0000 (12:22 -0500)]
changed view-classes-and-storable-slots to a defmethod
Kevin M. Rosenberg [Wed, 19 Dec 2012 17:08:37 +0000 (10:08 -0700)]
Version 6.4 release
Russ Tyndall [Sat, 24 Nov 2012 17:39:01 +0000 (12:39 -0500)]
Improved documentation of normalized classes and changelog entry
Russ Tyndall [Tue, 20 Nov 2012 22:19:55 +0000 (17:19 -0500)]
(SEMANTIC CHANGE) update-objects-joins now simpler and more predicatble
The previous default was to update only :deferred slots but the
docstring *said* it was doing :immediate slots.
The new default is to do :immediate slots which was the specification,
and provides some consistency with the rest of the system which
defaults to only operating on :immediate slots.
New behavior for SLOTS parameter:
* :immediate (DEFAULT) - refresh join slots created with :retrieval
:immediate
* :deferred - refresh join slots created with :retrieval :deferred
* :all,t - refresh all join slots regardless of :retrieval
* list of symbols - which explicit slots to refresh
* a single symobl - what slot to refresh
* :immediate - refresh join slots created with :retrieval :immediate
(the default)
* :deferred - refresh join slots created with :retrieval :deferred
* :all,t - refresh all join slots regardless of :retrieval
* list of symbols - which explicit slots to refresh
* a single symobl - what slot to refresh
Readability improvements:
* split into a couple functions instead of one giant one.
* standardize on loop instead of many different iteration constructs
Russ Tyndall [Tue, 20 Nov 2012 20:55:05 +0000 (15:55 -0500)]
removed generate-selection-list in favor of a make-select-list
function and object
* structures this data and simplifies interactions with it
* speeds up build-objects (better than pre-refactor levels)
by caching this data rather than recalculating each iteration
Russ Tyndall [Wed, 21 Nov 2012 18:11:44 +0000 (13:11 -0500)]
Refactored find-all and build-object to be more readable, shorter and
less buggy
* handles not double referencing inner-join tables now
* better able to find table references and better at not duplicating
* removed order-by and distinct from the select-list rather passing
them as :order-by and :distinct
Nathan Bird [Wed, 5 Dec 2012 20:13:46 +0000 (15:13 -0500)]
Refactoring join-qualifier for readability
Nathan Bird [Wed, 5 Dec 2012 18:37:49 +0000 (13:37 -0500)]
Simplify slotdefs-for-slots-with-class by using existing function.
Russ Tyndall [Tue, 20 Nov 2012 22:19:02 +0000 (17:19 -0500)]
docstrings and small rewrite of chain-primary-keys to be iterative instead of recursive
Russ Tyndall [Tue, 20 Nov 2012 20:54:23 +0000 (15:54 -0500)]
added docstrings and some join-slot-info accessor helper functions
Russ Tyndall [Mon, 19 Nov 2012 22:00:27 +0000 (17:00 -0500)]
reworked fault-join-slot & fault-join-normalized-slot to do less work
slot-value-using class got a bit cleaner along the way.
Russ Tyndall [Tue, 20 Nov 2012 18:59:08 +0000 (13:59 -0500)]
introduced slot-def kind predicates (eg: join-slot-p key-slot-p)
Russ Tyndall [Mon, 19 Nov 2012 21:55:24 +0000 (16:55 -0500)]
made the datetest table have a key column so that update-records-from-* works again
Russ Tyndall [Mon, 19 Nov 2012 21:54:53 +0000 (16:54 -0500)]
made direct and effective slot-definitions contain the same db-info hash
Russ Tyndall [Wed, 14 Nov 2012 21:23:45 +0000 (16:23 -0500)]
refactor update-records-from-* functions to utilize a single codepath
rather than reimplementing things differently in each
* major clean up of normalized classes code - not many tests for
this so if its being used by you please check carefully
* should be a single update code path that each of the other methods
feed into
* less different iteration forms, I found almost all the iteration
constructs in the language being used, opted to try an standardize
on loop since it was already being used and tends to produce more
efficient code
* objects instead of unstructured lists
* smaller, hopefully easier to understand functions
Russ Tyndall [Tue, 30 Oct 2012 15:55:28 +0000 (11:55 -0400)]
added dates/times to the parameter value coersion and pulled this into
a new generic prepare-sql-parameter
Ryan Davis [Thu, 13 Sep 2012 17:27:13 +0000 (13:27 -0400)]
ignore some unused variables, two less style warnings
Kevin M. Rosenberg [Tue, 4 Sep 2012 23:12:40 +0000 (17:12 -0600)]
Automated commit for upstream build of version 6.3.0
Kevin M. Rosenberg [Tue, 4 Sep 2012 23:07:49 +0000 (17:07 -0600)]
Release 6.3
Russ Tyndall [Tue, 4 Sep 2012 19:36:13 +0000 (15:36 -0400)]
merged current-test-results and LATEST-TEST-RESULTS into a single file in the root
Russ Tyndall [Tue, 4 Sep 2012 19:20:23 +0000 (15:20 -0400)]
Added a current-test-results.txt file to keep track of the current state of the test suite
Russ Tyndall [Tue, 4 Sep 2012 17:29:49 +0000 (13:29 -0400)]
Try to respect the casing of symbols where it seems intentional (ie:
is not default).
This should fix a failing test case, and I think behaves more
understandibly. If you specify a casing '|Foo Bar| let us treat that a
string "Foo Bar" and output it escaped
Ryan Davis [Thu, 30 Aug 2012 20:18:53 +0000 (16:18 -0400)]
ensure the sqlite database name is a string (and not a pathname)
Ryan Davis [Tue, 28 Aug 2012 18:36:09 +0000 (14:36 -0400)]
use &body instead of &rest to aid emacs indentation
Ryan Davis [Tue, 28 Aug 2012 18:13:40 +0000 (14:13 -0400)]
allow pathnames as well as strings in sqlite3 connection specs
Russ Tyndall [Fri, 17 Aug 2012 15:44:30 +0000 (11:44 -0400)]
Change log entry for shadowing postgresql-notification
Russ Tyndall [Fri, 17 Aug 2012 15:41:13 +0000 (11:41 -0400)]
shadow postgresql-notification for compatibility with new cl-postgres (Thanks Zach)
Ryan Davis [Tue, 31 Jul 2012 13:52:49 +0000 (09:52 -0400)]
Merge branch 'master' of git.acceleration.net:/var/git/clsql
Ryan Davis [Thu, 26 Jul 2012 20:59:52 +0000 (16:59 -0400)]
comment fix and added a TODO, some connection pooling scenarios
can lose autocommit configuration
Ryan Davis [Thu, 26 Jul 2012 20:59:52 +0000 (16:59 -0400)]
comment fix and added a TODO, some connection pooling scenarios
can lose autocommit configuration
Russ Tyndall [Mon, 9 Jul 2012 21:11:54 +0000 (17:11 -0400)]
fixed a bug where the order by was being destructively modified,
causing odd caching issues when the selected object was not statically
known (eg unreferenced tables could show up in the query if they were
cached by a previous call through this function. I replaced this code
with a non-destructive variant which should solve this.
Thanks to Philipp Marek for the bug report
Russ Tyndall [Mon, 25 Jun 2012 15:09:44 +0000 (11:09 -0400)]
dequote database-identifiers and autoincrement-sequence
* we can handle symbols, so we can probably handle quoted symbols
* slot-definition initargs seem to some in unevaluated, so lets handle
people doing the obvious thing and puting a quote in front of their symbols
Russ Tyndall [Fri, 22 Jun 2012 15:14:47 +0000 (11:14 -0400)]
Changed compute-effective-slot-definition to correctly copy the
autoincrement-sequence slot to the ESD previously it was being skipped
(seemingly by accident).
Thanks to flip214 on #lisp for the bug report
Ryan Davis [Tue, 15 May 2012 20:13:15 +0000 (16:13 -0400)]
use with-output-to-string instead of progv
Nathan Bird [Wed, 9 May 2012 14:51:47 +0000 (10:51 -0400)]
Adding a section to the README about contributing.
Kevin M. Rosenberg [Thu, 26 Apr 2012 16:17:56 +0000 (10:17 -0600)]
Merge branch 'master' of ssh://git.b9.com/home/gitpub/clsql
Kevin M. Rosenberg [Thu, 26 Apr 2012 15:14:50 +0000 (09:14 -0600)]
Version 6.2 release
Nathan Bird [Thu, 26 Apr 2012 14:46:56 +0000 (10:46 -0400)]
Updating version number in asd to reflect recent development.
Russ Tyndall [Wed, 25 Apr 2012 16:24:30 +0000 (12:24 -0400)]
added (*in-subselect* t) bindings around rendering out update/insert values
Nathan Bird [Wed, 25 Apr 2012 15:25:31 +0000 (11:25 -0400)]
Adding some (incomplete) information about the current state of thread-safety.
Nathan Bird [Tue, 24 Apr 2012 15:49:08 +0000 (11:49 -0400)]
Mysql > CREATE TABLE: use 'engine' keyword instead of 'type'.
Nathan Bird [Tue, 24 Apr 2012 14:57:42 +0000 (10:57 -0400)]
Revert "If running on a threaded lisp try loading libmysqlclient_r"
This reverts commit
7127589ca079f4f4279be601ebd272b7488906b4.
While I think this might be right, I've not gotten a chance to test
this at all. Aside from that, on my system (ubuntu 12.04 x86_64) both
versions symlink to the same shared object.
Russ Tyndall [Wed, 28 Mar 2012 18:11:22 +0000 (14:11 -0400)]
Bug in sequence names was reported by Jan Tolenaar.
We changed the naming scheme inadvertently. Added a flag
*old-sequence-names* to force use of the old naming scheme. Hopefully
this will not break for anyone relying on the new naming scheme
Ryan Davis [Tue, 27 Mar 2012 20:21:39 +0000 (16:21 -0400)]
merging changelog
Ryan Davis [Tue, 27 Mar 2012 20:18:23 +0000 (16:18 -0400)]
updated changelog
Ryan Davis [Tue, 27 Mar 2012 20:06:27 +0000 (16:06 -0400)]
convered orphan sql-ident-table test function to use RT and run with
the rest of the syntax tests (and fail)
Had to fix some package references, and uses backquote to splice
together the a decent deftest form without being overly verbose. Also
used clsql:sql instead of calling output-sql directly.
Currently fails by not preserving case when using a symbol like '|foo|
as the table name, we're getting "FOO" not "foo".
Ryan Davis [Tue, 27 Mar 2012 19:42:39 +0000 (15:42 -0400)]
add 3 new syntax tests for subqueries in SELECT, UPDATE,
and DELETE statements.
Had to use clsql-sys unexported symbols for sql-delete
and sql-update because clsql:sql-operation does not support
either.
Russ Tyndall [Mon, 26 Mar 2012 21:03:47 +0000 (17:03 -0400)]
added change log entry for the last two patches
Ryan Davis [Mon, 26 Mar 2012 19:57:24 +0000 (15:57 -0400)]
use output-sql-where-clause when rendering update statements
Ryan Davis [Mon, 26 Mar 2012 19:52:13 +0000 (15:52 -0400)]
fix SQL syntax errors when using subqueries in WHERE clauses of DELETE or UPDATE statements.
A similar issue was fixed for SELECTs in
b06efa82, this patch pulls WHERE clause printing
into a seperate function called by the different output-sql methods.
Ryan Davis [Fri, 23 Mar 2012 18:54:20 +0000 (14:54 -0400)]
update clsql-odbc docs to explain the :connection-string connection argument.