Commit Graph

58 Commits

Author SHA1 Message Date
Steven Fackler
0916a53df3 Make lazy_query result return a Result 2014-03-27 21:20:04 -07:00
Steven Fackler
78c96f23a4 Remove failing wrappers
Embrace the error propogation!
2014-03-27 21:08:22 -07:00
Steven Fackler
793e5e9bbf Bump rust-phf and fix makefile
config.stamp isn't a thing anymore
2014-03-27 19:46:25 -07:00
Steven Fackler
587cbff836 Restructure lazy query API
It doesn't make any sense to limit lazy queries to statments *prepared*
inside a transaction. We really only care that we're in a transaction
when the statement is executed. This does introduce a new runtime error
if a statement prepared on connection A is executed on a transaction
prepared on connection B, but I don't think anyone will *ever* run into
that.
2014-03-25 21:07:42 -07:00
Steven Fackler
537203d3cb Bump rust-phf version 2014-03-19 20:22:17 -07:00
Steven Fackler
0aec726b69 De-~[] array 2014-03-18 23:07:12 -07:00
Steven Fackler
7111d8a28b Fix for API update 2014-03-14 08:58:01 -07:00
Steven Fackler
5bfd0207e1 Update for upstream changes 2014-03-01 20:06:04 -08:00
Steven Fackler
42c6255412 Updates for upstream changes 2014-02-26 00:40:57 -08:00
Steven Fackler
9b81b556a1 Update for hashmap move 2014-02-23 22:32:14 -08:00
Steven Fackler
75de360e9f Update for API changes 2014-02-21 23:18:39 -08:00
Steven Fackler
6e37db330b Properly handle object cleanup errors
Destructors now fail and there's a finish method returning an error.
2014-02-09 23:55:16 -08:00
Steven Fackler
d84acfda52 Rename tests module to test 2014-02-09 16:01:09 -08:00
Steven Fackler
88bb03119a Restructure to support rustpkg 2013-09-28 20:30:35 -07:00
Steven Fackler
19c834c2e7 Fixes for new master 2013-09-25 17:03:41 -07:00
Steven Fackler
a00843751e Parse Notice/Error SQLSTATE codes
The enum is stuck inside of an extra module due to mozilla/rust#4375.
2013-09-14 21:37:20 -07:00
Steven Fackler
5654fa5f2a Fail on incorrect parameter count 2013-09-11 22:33:19 -07:00
Steven Fackler
970b5f657a Allow custom notice handling
It was a tossup between a ~fn and a ~Trait *shrug*
2013-09-11 19:57:26 -07:00
Steven Fackler
db634b5a3c Get rid of use * 2013-09-08 22:40:08 -07:00
Steven Fackler
9562711af3 TIMESTAMP WITH TIMEZONE support 2013-09-08 21:33:41 -07:00
Steven Fackler
7971e8678d DNS lookup 2013-09-08 14:26:34 -07:00
Steven Fackler
20b7b5426d Timestamp support
cc #6
2013-09-08 13:27:43 -07:00
Steven Fackler
a17fe648de Rename PostgresResult methods to be more clear 2013-09-05 20:31:23 -07:00
Steven Fackler
cf5bd66218 Add nested transaction support 2013-09-04 23:28:44 -07:00
Steven Fackler
c81c207c90 Add methods to look at params and results 2013-09-04 21:51:48 -07:00
Steven Fackler
47d1458eb7 More infrastructure for lazy queries
cc #13
2013-09-03 22:20:21 -07:00
Steven Fackler
91d7c856ee Clean up tests
Removed most of the usage of transactions in the tests, replacing with
temporary tables or SELECT literal queries.
2013-09-03 20:50:02 -07:00
Steven Fackler
f404527b3a Add non-transactional test
Queries were completely broken outside of transactions for a while
without me realizing.
2013-09-03 00:00:43 -07:00
Steven Fackler
a677f62fe2 Remove lazy query support
It turns out this only works inside a transaction, so the API will need
to be rethought. Probably PostgresTransaction.prepare will return a
special TransactionalPreparedStatement that has support for it or
something.
2013-09-02 23:09:30 -07:00
Steven Fackler
3d8d35d840 Overload Index for PostgresRow
RowIndex has to be implemented for int unfortunately since that's what a
literal ends up resolving to.
2013-09-02 18:53:03 -07:00
Steven Fackler
8ab3c1d04b Add column name to index lookup 2013-09-02 20:07:08 -04:00
Steven Fackler
57146672ab Support for "char" type 2013-09-02 18:14:22 -04:00
Steven Fackler
dd6f8eb6b4 Support for CHAR(n) 2013-09-02 17:52:23 -04:00
Steven Fackler
aa37fe31d4 Json and Uuid support
cc #6
2013-09-02 16:54:16 -04:00
Steven Fackler
2cc7f0ff84 Support for TEXT type 2013-09-02 16:07:57 -04:00
Steven Fackler
46b4228415 Binary return value support
The set of types the driver asks for in binary format is currently hard
coded.

cc #7, #14
2013-09-02 15:43:48 -04:00
Steven Fackler
1a6d681cbd Strict type checking in ToSql
cc #14
2013-09-02 13:27:25 -04:00
Steven Fackler
8b787cf8af Convenience update methods
cc #11
2013-09-01 11:06:33 -07:00
Steven Fackler
fa818566f3 Support for lazy query results
Closes #13.
2013-08-31 23:19:44 -07:00
Steven Fackler
e82c887949 Restructure result API for row limits
Work towards #13.
2013-08-31 21:55:44 -07:00
Steven Fackler
557c61d6db Binary transmission of numeric types
It looks like Postgres doesn't guarantee that its floats are IEEE754,
but I don't know if there are any reasonable platforms on which the
format is actually different.

Work towards #7.
2013-08-31 17:17:06 -07:00
Steven Fackler
f56c519097 Boolean parameters transmitted as binary
Work towards #7.
2013-08-31 17:16:59 -07:00
Steven Fackler
be080e783f Stop storing num_params in statement
Postgres will check the count for us.
2013-08-29 01:33:27 -04:00
Steven Fackler
30d1a43f4b Parsing of ErrorResponse and NoticeResponse
PostgresDbError::new plays a little fast and loose with the expected
format. Hopefully that's okay.

Closes #4
2013-08-29 00:24:43 -04:00
Steven Fackler
27bbf6f7fd Pull ToSql and FromSql out into their own module
Their implementations will become significantly more complicated once we
start handling binary data.
2013-08-28 00:37:06 -04:00
Steven Fackler
44ea118d02 Call methods on transaction object, not conn 2013-08-27 01:45:27 -04:00
Steven Fackler
afd7d8800d Better transaction syntax
Closes #9
2013-08-27 01:40:23 -04:00
Steven Fackler
6afc2cac3f Fix error handling for prepare, result and query
Closes #2
2013-08-27 01:06:53 -04:00
Steven Fackler
f60d3993b3 Handle conditions in Drop impls
Aborting the process is sadface
2013-08-26 03:36:09 -04:00
Steven Fackler
47ef8ea6b1 Add plaintext and MD5 password authentication 2013-08-26 01:08:37 -04:00