Steven Fackler
5f8a0b97aa
Overhaul FromSql
...
We can now have a blanket impl for Option and remove RawFromSql
2015-02-22 22:13:59 -08:00
Steven Fackler
ef0e15b34d
Change element_type to kind
2015-02-22 22:13:59 -08:00
Steven Fackler
5ec039bd5d
Make time impls opt-in
2015-02-22 22:13:59 -08:00
Steven Fackler
5ed898949e
Improve panic message
2015-02-22 19:00:34 -08:00
Steven Fackler
f0cfaedb01
Remove canary
...
Destructors are sound now, so this is no longer necessary
2015-02-22 18:37:44 -08:00
Steven Fackler
164b4a36c3
Cleanup
2015-02-22 16:46:11 -08:00
Steven Fackler
86d8f8a7b3
Use codegen instead of syntax extensions for SqlState
2015-02-22 13:39:17 -08:00
Cody P Schafer
e98d6825ab
RingBuf is now VecDeque
2015-02-20 16:56:03 -05:00
Steven Fackler
ca7554092d
Fix warnings
2015-02-19 09:17:48 -08:00
Steven Fackler
3a9beb791d
Add Row::get_bytes
...
Useful for things like postgres_large_object to avoid some allocation
2015-02-15 23:24:09 -08:00
Steven Fackler
7db4cb70b8
Store parameters and add accessor
2015-02-15 20:22:56 -08:00
Steven Fackler
a0cca5fa77
Add a Slice adapter type
...
Until impl specialization exists, we can't define this implementaion
directly on &[T] because of the existing implementation for &[u8].
Closes #92
2015-02-12 22:52:55 -08:00
Steven Fackler
35f4fea595
Fix for upstream changes
2015-02-11 11:36:28 -08:00
Steven Fackler
561d7be79c
Move docs to this repo and auto build in travis
2015-02-07 20:33:44 -08:00
Steven Fackler
599a84ac91
Shuffle unknown type boxing a bit
2015-02-06 09:03:49 -08:00
Steven Fackler
94d0411d68
Make DbError constructors actually private
2015-02-06 09:03:49 -08:00
Steven Fackler
cae12218ab
Encapsulate information about unknown types
2015-02-06 09:03:49 -08:00
Steven Fackler
f96664e63e
Rename ResultDescription to Column and encapsulate
2015-02-06 09:03:49 -08:00
Steven Fackler
7cfde75dce
Encapsulate DbError
2015-02-06 09:03:49 -08:00
Steven Fackler
7fc495738d
Fix docs
2015-02-06 09:03:49 -08:00
Steven Fackler
173075bae1
Remove Error::WrongParamCount
2015-02-06 09:03:49 -08:00
Steven Fackler
cd1d9b9e3f
Remove deprecated methods
2015-02-06 09:03:49 -08:00
Steven Fackler
e8d372d555
Make execute
return a u64 instead of usize
2015-02-06 09:03:48 -08:00
Steven Fackler
dec549b9ca
Clean up panic checks a bit
2015-02-06 09:03:48 -08:00
Steven Fackler
7101cab178
Remove WrongConnection and WrongTransaction Errors
...
These only occur during contract violations, so panicing is recommended
by the erorr handling RFC.
2015-02-06 09:03:48 -08:00
Steven Fackler
d35124e214
Make next_block_for return an option
2015-02-06 09:03:48 -08:00
Steven Fackler
4a93618293
Make Debug impls less recursive
2015-02-05 23:01:42 -08:00
Steven Fackler
e41870ade3
Display the statement cache size in Conn Debug impl
2015-02-05 22:57:26 -08:00
Steven Fackler
9d5cd8f3d1
Sort extern crates
2015-02-04 20:39:30 -08:00
Steven Fackler
91e6e784e6
Stop using endian conversion Writer/Reader methods
...
They're going away in new IO.
2015-02-04 19:40:33 -08:00
Steven Fackler
9df10b9c3b
Fix for upstream changes
2015-02-03 09:06:52 -08:00
Steven Fackler
5fd3d70d29
Make use of deref coercions
2015-02-02 23:41:03 -08:00
Steven Fackler
90f5567c2d
Cleanup
2015-02-01 11:12:11 -08:00
Steven Fackler
b8595c7564
Failure -> Panics
2015-01-30 21:59:59 -08:00
Steven Fackler
9ac4baebd8
Add a bit to Notifications Debug impl
2015-01-29 20:30:06 -08:00
Steven Fackler
cb1ae4d115
Fix for stability changes
2015-01-29 08:59:43 -08:00
Steven Fackler
118f0ba9b2
Small struct reorder
2015-01-28 21:08:20 -08:00
Steven Fackler
a616db0381
Drop some use of usize internally
2015-01-28 20:35:17 -08:00
Steven Fackler
8d704f71ce
Fix for IO changes
2015-01-28 08:52:33 -08:00
Steven Fackler
af6084871f
Add an is_active method
...
Will be needed when Error::WrongTransaction is removed
2015-01-26 21:09:50 -08:00
Steven Fackler
b1305cc45d
Bump rust-phf
2015-01-25 11:12:07 -08:00
Steven Fackler
e2f1a7cb11
Docs fixes
2015-01-24 10:46:01 -08:00
Steven Fackler
4c90977cb0
Little cleanup
2015-01-24 10:04:43 -08:00
Steven Fackler
d3c75d5787
Use the unnamed portal for normal queries
...
There's no need to add extra round trips to close portals that don't
need to exist.
2015-01-24 09:55:46 -08:00
Steven Fackler
dde0f64582
Show -> Debug
2015-01-23 23:31:17 -08:00
Steven Fackler
f38636b21a
Use SteadyTime for next_block_for
2015-01-23 23:29:29 -08:00
Steven Fackler
6381267267
Fix for upstream changes
2015-01-23 10:44:15 -08:00
Steven Fackler
d709692e0e
Clarify docs a bit
2015-01-22 22:55:18 -08:00
Steven Fackler
5cce51723a
Move lazy_query to Statement
...
Symmetry is good
2015-01-22 22:52:29 -08:00
Steven Fackler
ee7f9ee806
Avoid accidentally closing finished statements
2015-01-22 22:33:35 -08:00
Steven Fackler
247e320275
Add explicit statement caching
...
Also remove transaction depth checks to preparation methods on
Connection since lifetimes of statements are tied to the connection, not
any transaction that may be active.
cc #84
2015-01-22 22:27:14 -08:00
Steven Fackler
b30bd46c2b
Set element_type for range types
...
Closes #95
2015-01-22 00:04:58 -08:00
Steven Fackler
e0758ed5b8
Store element type for unknown types
2015-01-21 22:11:43 -08:00
Steven Fackler
08460b889e
Remove an unused parameter
2015-01-21 20:29:22 -08:00
Steven Fackler
290d572166
Redesign COPY IN execution setup.
...
The old Iterator of Iterators setup basically required all of the rows
to sit in memory at the same time, which defeats the entire purpose of
that configuration. There's probably a library that defines
`StreamIterator`, so this may jump to that.
2015-01-21 20:25:01 -08:00
Steven Fackler
9e260fdfac
Add another Show impl
2015-01-16 22:32:25 -08:00
Alex Crichton
05359f9e9c
Remove an unneeded feature
2015-01-12 14:01:35 -08:00
Steven Fackler
41bcb71176
Remove newline from Show impl
2015-01-09 23:58:21 -08:00
Steven Fackler
f7d57ebe68
Implement Show for stuff
2015-01-09 20:48:47 -08:00
Steven Fackler
900ae55807
Fix doc tests
2015-01-09 11:20:43 -08:00
Steven Fackler
92a3593d7f
Update for upstream changes
...
String vs Show still needs to be resolved, but it compiles now
2015-01-09 10:50:54 -08:00
Steven Fackler
4f157bb4a8
Partial update
2015-01-09 10:26:24 -08:00
Steven Fackler
347c79def9
Fix for upstream changes
2015-01-07 08:23:40 -08:00
Steven Fackler
0ddefe9d6b
Remove unsafe Send impl
2015-01-04 17:33:34 -08:00
Steven Fackler
605460c789
Fix for upstream changes
2015-01-04 08:08:53 -08:00
Steven Fackler
94e70df6e2
Fix for upstream changes
2015-01-03 13:23:11 -08:00
Steven Fackler
a210cd605b
Fix doc tests
2014-12-31 21:40:21 -08:00
Steven Fackler
bece000346
Add a missing Send impl
2014-12-29 09:38:30 -08:00
Steven Fackler
c5e7e46f0d
Fix deprecation warnings
2014-12-23 12:10:16 -05:00
Steven Fackler
785c6741f5
Clean up FromSql API
2014-12-22 21:45:09 -05:00
Steven Fackler
98a980b5ec
Fix breakage
2014-12-21 13:52:48 -05:00
Steven Fackler
d5c0cc0140
Fix for upstream changes
2014-12-19 10:43:42 -08:00
Steven Fackler
810a7442e0
Use out of tree serialize
2014-12-18 17:08:58 -08:00
Steven Fackler
5696a15cb6
Cleanup
2014-12-18 09:07:15 -08:00
Alex Crichton
dad6aab372
Fix lifetime parameter shadowing on rust master
2014-12-17 16:23:24 -08:00
Steven Fackler
1501f0ef93
Fix doc example
2014-12-15 12:50:55 -08:00
Steven Fackler
a35af16926
Schema qualify pg_type table reference
...
Just in case someone tosses their own pg_type table in the main schema
2014-12-14 17:18:55 -08:00
Steven Fackler
02fdb06762
Support citext and oid types
...
This ended up involving some pretty major refactors and fixed a bug
where passing extension types as parameters to `execute` broke.
Closes #56
2014-12-14 16:46:22 -08:00
Steven Fackler
3ac26d4961
Add inet support
...
It's lossy ATM, since IpAddr doesn't store the netmask.
Closes #88
2014-12-14 11:39:26 -08:00
Steven Fackler
39ad5ff651
Fix for opt in Copy
2014-12-11 20:36:24 -08:00
Steven Fackler
e8ff196c8e
Cleanup
2014-12-09 21:35:52 -08:00
Steven Fackler
42eb9fb01e
Move Send bound for NoticeHandler to trait def
...
This is a breaking change
2014-12-08 23:43:01 -08:00
Steven Fackler
cdbbadd3cf
Clean up some equality checks
2014-12-06 13:30:37 -08:00
Steven Fackler
39a89de5f0
Fix off by one in index impl
2014-12-06 10:41:49 -08:00
Steven Fackler
05af4073c4
Remove unneeded feature
2014-12-06 08:52:18 -08:00
Steven Fackler
ac59c84c82
Add next_block_for example
2014-12-03 19:55:05 -08:00
Steven Fackler
5065dbfa4d
Use monotonic time for timeout logic
2014-12-03 18:57:04 -08:00
Steven Fackler
d7c63393db
Cleanup
2014-12-02 22:56:56 -08:00
Steven Fackler
705f9f9d79
Remove a bunch of slice sugar usage
2014-12-02 21:44:34 -08:00
Steven Fackler
cfe37fa9bf
Clean up race condition fix
2014-12-02 20:57:32 -08:00
Steven Fackler
9303e4dfdd
Fix race condition in next_block_for
...
If we hit the timeout while not blocked on read, the timeout would
overflow.
2014-12-02 20:47:34 -08:00
Steven Fackler
d5998d8f2a
Add Notifications::next_block_for method
...
The setup is a little hairy, but seems correct.
cc #19
2014-12-02 20:36:31 -08:00
Steven Fackler
75641e121f
Allow statements to be prepared on any object
...
Statements aren't cleaned up at the end of a transaction, so this is
safe.
2014-12-01 22:45:22 -08:00
Steven Fackler
348195b718
Optimize execute
...
Avoiding the statment close by using the unnamed statment improves the
lower bound perf by ~1/3:
test bench_execute ... bench: 425429 ns/iter (+/- 24970)
test bench_naiive_execute ... bench: 607967 ns/iter (+/- 53434)
cc #83
2014-12-01 22:24:31 -08:00
Steven Fackler
80b7fa823c
Clean up copy preparation a bit
2014-12-01 21:28:58 -08:00
Steven Fackler
1908821e57
Clean up bad response logic a bit
2014-11-28 17:35:37 -08:00
Steven Fackler
e7f66f89ac
Use rust-openssl's MaybeSslStream
2014-11-28 15:54:37 -08:00
Steven Fackler
6334f045cb
Be more conservative when closing things
2014-11-28 15:01:01 -08:00
Steven Fackler
dd9c712ea9
Fix for upstream changes
2014-11-28 12:24:34 -08:00
Steven Fackler
7b8786c6a2
Upgrade to openssl 0.2
2014-11-27 21:39:16 -08:00
Steven Fackler
7ba9db9b6f
Check for statement close errors in execute
2014-11-27 11:16:14 -08:00
Steven Fackler
4d3e102f7e
Add result_descriptions to Rows and Row
...
This can be useful for functions that are just passed a `Rows` or `Row`
and want to introspect a bit into the columns.
2014-11-26 10:50:31 -08:00
Steven Fackler
e8f12a4a1e
Add a desync check in next_block
2014-11-25 19:17:53 -08:00
Steven Fackler
546967f68c
Add a blocking next method to Notifications
...
cc #19
2014-11-25 18:30:28 -08:00
Steven Fackler
d84fa98b4b
Variant cleanup
2014-11-25 12:59:31 -08:00
Steven Fackler
1882d878ad
Remove unneccesary None qualification
2014-11-20 21:48:05 -08:00
Steven Fackler
a46c524200
Finish variant naming convention transition
2014-11-20 21:47:13 -08:00
Steven Fackler
b21300e344
Fix for nightly changes
2014-11-20 10:54:40 -08:00
Steven Fackler
1fa5941562
Use Vec instead of MemWriter
2014-11-19 20:54:32 -08:00
Kevin Butler
465bb9e006
docs: [T,.. N] no longer coerces to &[T]
2014-11-19 19:36:47 +00:00
Kevin Butler
85bde64ede
slice_shift_char signature change
2014-11-19 18:11:23 +00:00
Kevin Butler
0b8dc31c2f
[T,.. N] no longer coerces to &[T]
2014-11-19 17:58:30 +00:00
Steven Fackler
9a87c6e18a
Make time support optional
2014-11-17 19:11:32 -08:00
Steven Fackler
22f4be2b8c
Remove struct_variant feature gate
2014-11-17 18:20:48 -08:00
Steven Fackler
e5c2edaf97
More enum namespacing preparation
2014-11-17 13:46:33 -08:00
Steven Fackler
6ba926d016
Fix build errors
2014-11-17 08:56:25 -08:00
Steven Fackler
89f9960fe7
Use FromError
2014-11-16 22:54:57 -08:00
Steven Fackler
9ae7b13f51
Fix deprecation warnings
2014-11-07 08:54:10 -08:00
Steven Fackler
a4fe4e2056
Flatten and rename error stuff
2014-11-03 22:24:11 -08:00
Steven Fackler
056f90a3a2
Glob import message variants
2014-11-03 21:47:53 -08:00
Steven Fackler
a442b2ed4c
Unmangle ConnectTarget and MaybeSslStream
2014-11-03 21:41:35 -08:00
Steven Fackler
ad82d28d18
Demangle PostgresType
2014-11-03 21:31:08 -08:00
Steven Fackler
167b9d0209
Misc cleanup
2014-11-02 16:48:38 -08:00
Steven Fackler
761007487a
Grab RingBuf from std
2014-11-02 10:40:03 -08:00
Steven Fackler
bd9b77a4cf
Fix compilation errors
2014-11-02 10:38:45 -08:00
Steven Fackler
4fbd92e6de
A bit of formating cleanup
2014-11-01 16:38:52 -07:00
Steven Fackler
f8339a6e18
PostgresLazyRows -> LazyRows
2014-11-01 16:28:38 -07:00
Steven Fackler
34aaeaab71
PostgresRow -> Row
2014-11-01 16:27:30 -07:00
Steven Fackler
4eda9cec95
PostgresCopyInStatement -> CopyInStatement
2014-11-01 16:26:03 -07:00
Steven Fackler
7248912cf9
PostgresTransaction -> Transaction
2014-11-01 16:25:11 -07:00
Steven Fackler
4b66c4ab68
PostgresStatement -> Statement
2014-11-01 16:24:24 -07:00
Steven Fackler
2da41be987
Remove the old connection pool
...
It's been deprecated for a long time
2014-11-01 16:22:41 -07:00
Steven Fackler
c11cbd6b7d
PostgresConnection -> Connection
2014-11-01 16:21:47 -07:00
Steven Fackler
d88666586a
PostgresCancelData -> CancelData
2014-11-01 16:19:02 -07:00
Steven Fackler
570512725f
PostgresNotification -> Notification
2014-11-01 16:18:09 -07:00
Steven Fackler
c6c7d8f574
PostgresNoticeHandler -> NoticeHandler
2014-11-01 16:16:50 -07:00
Steven Fackler
975b6dc350
PostgresConnectParams -> ConnectParams
2014-11-01 16:15:30 -07:00
Steven Fackler
09cb2fd4fe
PostgresUserInfo -> UserInfo
2014-11-01 16:14:08 -07:00
Steven Fackler
873a006508
PostgresConnectTarget -> ConnectTarget
2014-11-01 16:13:01 -07:00
Steven Fackler
cea15783a5
PostgresResult -> Result
2014-11-01 16:12:05 -07:00
Steven Fackler
b939526d7b
static -> const
2014-11-01 16:02:50 -07:00
Steven Fackler
22efd1da4b
Update for removal of collections traits
2014-11-01 15:50:25 -07:00
Steven Fackler
a151a5ba02
Update for rust changes
2014-10-31 08:51:27 -07:00
Steve Klabnik
675534c26f
fail -> panic
2014-10-30 00:26:03 -04:00
Steven Fackler
4a9ca42b20
Reuse the same vec during copies
2014-10-28 09:16:11 -07:00
Steven Fackler
5dd09ce9c4
Update docs location
2014-10-26 13:11:14 -07:00
Steven Fackler
886f24ea9d
Get rid of literal type specifiers
...
Yay trait reform!
2014-10-25 23:43:59 -07:00
Steven Fackler
7929d07f74
Fix a desynchronization issue
2014-10-25 20:26:45 -07:00
Steven Fackler
a480ec1cfb
Some more if let conversion
2014-10-25 17:58:46 -07:00
Steven Fackler
00164fad31
Fix read_message name
...
The issue that forced the rename has been resolved
2014-10-23 23:31:26 -07:00
Steven Fackler
86bf3b719b
Switch some .to_string to .into_string
2014-10-18 11:17:12 -07:00
Steven Fackler
e73557cce0
Pull liburl in-crate
...
Cargo apparently can't deal with liburl and rust-url at the same time
and rust-url has some bugs that prevent using it for now.
2014-10-15 08:37:43 -07:00
Steven Fackler
774fd93d80
Start using if let
2014-10-13 21:12:25 -07:00
Steven Fackler
f62aa26917
Fix for upstream changes
2014-10-09 20:43:14 -07:00
Steven Fackler
557a159a8a
Add a trait abstracting over transactions and connections
...
This is implemented *in addition* to the intrinsic methods because
having to import a trait to call `prepare` sucks.
Closes #63
2014-10-08 20:29:26 -07:00
Steven Fackler
b581e3a0af
Doc rephrase
2014-10-05 20:49:09 -07:00
Steven Fackler
749dc34529
Clean up example a bit
2014-10-05 20:47:48 -07:00
Steven Fackler
b69ae99a51
Handle COPY IN in batch_execute
2014-10-05 17:31:25 -07:00
Steven Fackler
58dd5fe12b
Remove weird continue
2014-10-05 14:47:57 -07:00
Steven Fackler
e5ed2ba96e
Use new slice syntax
2014-10-04 20:08:44 -07:00
Steven Fackler
dd4052210f
Improve error handling in COPY
2014-10-01 14:40:43 -07:00
Steven Fackler
51ace9081a
Don't fuse row iterator
2014-09-30 23:54:11 -07:00
Steven Fackler
a64ca5f955
Remove failure from PostgresDbError::new
...
Closes #43
2014-09-30 22:52:27 -07:00
Steven Fackler
5561e7baca
Add column_types to copy in statement
2014-09-30 00:15:17 -07:00
Steven Fackler
0c3f3b1e83
More docs + return copy count from execute
2014-09-30 00:11:23 -07:00
Steven Fackler
91a90f0d1c
Remove some unused methods
2014-09-30 00:02:54 -07:00
Steven Fackler
a85d50805d
Add some prepare_copy_in docs
2014-09-30 00:01:15 -07:00
Steven Fackler
4863433ca7
Add prepare_copy_in to transaction
2014-09-29 23:49:58 -07:00
Steven Fackler
011d531b1d
Remove Binary/Text choice from ToSql
...
Text format doesn't work with our COPY implementation, and FromSql is
already binary only.
2014-09-29 23:41:13 -07:00
Steven Fackler
249db6b55a
Correctly handle bad column counts in copy
2014-09-29 23:32:57 -07:00
Steven Fackler
f88f908498
Don't flush more than needed when copying
2014-09-29 23:09:39 -07:00
Steven Fackler
2e61f1316f
Initial COPY FROM support!
...
cc #51
2014-09-29 22:56:43 -07:00
Steven Fackler
a4a625a30c
Detect direct queries to COPY FROM
2014-09-29 21:05:42 -07:00
Mike "Wizard" Dilger
ed3bcda729
Fix double borrow of conn RefCell<T>
2014-09-30 13:46:21 +13:00
Steven Fackler
18e1240601
Work around rust-lang/rust#17594
2014-09-27 13:55:47 -07:00
Steven Fackler
5410363f49
Fix deprecations
2014-09-24 00:18:27 -07:00
Steven Fackler
c8cc3799be
Fix deprecation warnings
2014-09-17 22:57:23 -07:00
Steven Fackler
0c1dccfd52
Remove unneeded crate_name attribute
2014-09-14 19:27:15 -07:00
Steven Fackler
d9b7d3c4d2
Remove some failure
...
Avoid reborrowing a RefCell over and over since it'll bloat at least the
IR and maybe the resulting binary with failure cruft.
2014-09-12 22:07:10 -07:00
Steven Fackler
e362feb85b
Suppress warnings
2014-09-11 21:35:10 -07:00
Steven Fackler
9a7e5b7c7d
Misc cleanup
2014-09-06 16:33:43 -07:00
Steven Fackler
fa34efba8f
Change docs to work around coercion issue
2014-08-30 10:57:46 +01:00
Steven Fackler
364c213383
Add back crate_name for rustdoc
2014-08-23 09:17:58 -07:00
Steven Fackler
9d44bb8c7e
Fix doc typo
2014-08-20 22:40:11 -07:00
Steven Fackler
b8539003c3
Improve examples a bit
2014-08-19 21:49:27 -07:00
Steven Fackler
30a3210be0
Revert "Strip prefixes from types"
...
This reverts commit ccdb02f661
.
I'm not sure this is the right way to go just yet
2014-08-18 22:02:16 -07:00
Steven Fackler
ccdb02f661
Strip prefixes from types
...
They can be prefixed with the crate name
2014-08-18 21:52:56 -07:00
Steven Fackler
44da9d9e1e
Start using where clauses
2014-08-17 13:57:58 -07:00
Steven Fackler
d9e4625f01
Switch stuff to unsigned types
2014-08-15 20:14:46 -07:00
Steven Fackler
f7c0038fa3
Formatting cleanup
2014-08-15 19:50:11 -07:00
Steven Fackler
dec56db1d6
Remove old crate attributes
2014-08-15 19:25:12 -07:00
Steven Fackler
455dea3bd0
Force all result formats to binary
2014-08-14 20:22:12 -07:00
Steven Fackler
d374641ecb
Remove some indirection from files
2014-08-02 19:10:45 -07:00
Steven Fackler
42123f7765
Extract tests to a separate crate
...
This ensures that we're only testing public API and speeds up the
development process.
2014-06-30 21:30:39 -07:00
Steven Fackler
092453b3b2
Fix docs for indexing
2014-06-29 23:05:26 -07:00
Steven Fackler
8b74cb0ab4
Zero-index ResultRow
...
It seems like this is the decision made by every DB interface *except*
JDBC, and is more consistent with the rest of the language anyway.
Closes #42 .
2014-06-29 22:53:03 -07:00
Steven Fackler
a54fdaf834
Switch docs back to rust-ci (again)
2014-06-29 14:11:38 -07:00
Steven Fackler
a9ec2a21e6
Update for * -> *const changes
2014-06-29 13:42:43 -07:00
Steven Fackler
a2fdd9b6e6
Fix stuff for int fallback removal
2014-06-27 19:36:23 -07:00
Steven Fackler
f35ca8a23e
Fix for unsafe_destructor feature gate
2014-06-21 15:55:12 -07:00