Commit Graph

603 Commits

Author SHA1 Message Date
Alexander Sulfrian
239d8bd0c2 fixed binaryParsers for small negativ values
WARNING: bigint support is not correctly working for really big
values. If the value of a integer gets big the number gets fuzzy in
javascript. This is not a limitation of this library.

If you want to handle bigint with the exact value, get it as string
and do not calculate things with it!
2011-11-22 04:53:38 +01:00
Alexander Sulfrian
f8962fd036 connection can be binary by default
if connection is created with config.binary = true, all queries get
executed with binary result unless explicit disabled with binary = false
2011-11-22 04:53:38 +01:00
Alexander Sulfrian
5d8c8bbcdc fix recognition of query format for empty queries in dictionary format
queries like {text: ""} did not get recognized correctly before and
get converted to {text: {text: ""}}
2011-11-22 04:53:38 +01:00
Alexander Sulfrian
09ee46da22 fix binaryParsers: oid is 32bit 2011-11-22 04:53:38 +01:00
Alexander Sulfrian
f3c9a532e0 code beautification 2011-11-22 04:53:38 +01:00
Alexander Sulfrian
070155a577 fix native bindings
native bindings need to get the textParsers with the new syntax
2011-11-22 04:53:38 +01:00
Alexander Sulfrian
e9838cc5bb fix textParsers
some textParsers requires the input value to be a string, so convert
it before calling the textParsers
the same problem exists in test/integration/connection/query-test
so that there also need to be a String call
2011-11-22 04:52:26 +01:00
Alexander Sulfrian
aff94b0068 removed merge artifact 2011-11-20 20:34:14 +01:00
Alexander Sulfrian
8730a31444 Merge remote branch 'upstream/master' 2011-11-19 00:35:21 +01:00
Alexander Sulfrian
59c5df6ef4 remove name duplication 2011-11-18 21:23:39 +01:00
Alexander Sulfrian
916895639b Merge remote branch 'upstream/master'
Conflicts:
	lib/query.js
	lib/types.js
	test/unit/client/query-tests.js
	test/unit/client/typed-query-results-tests.js
2011-11-18 21:12:28 +01:00
Christophe Macabiau
fe6d5aeb68 query cancellation (libpq native binding) 2011-11-02 19:30:44 +01:00
Christophe Macabiau
f3c8b972fe query cancellation 2011-11-02 16:07:14 +01:00
brianc
2cddf2a112 fix for changes to Buffer.prototype.write signature change between node version. closes gh#66 2011-11-01 23:02:59 -05:00
Roman Shtylman
46f6d9037c fix for writing null terminated buffers
node 0.5.10+ changed how null terminated buffers are written. The
null terminator is no longer written explicitly.

fixes #63
2011-10-30 16:24:19 -04:00
Simon Tokumine
53423dfbaa stringArrayParser can parse empty arrays & stringArrayParser tests 2011-10-24 14:08:05 +01:00
Brian Dunavant
94dc7fd4e8 treat undefined values as NULL. Include test to verify. 2011-10-14 11:31:12 -04:00
brianc
b59e0041b3 native bindings compatible with v0.5.x 2011-10-10 22:03:27 -05:00
brianc
06585d6e2c require 'util' instead of 'sys' 2011-10-10 19:40:52 -05:00
brianc
c7774ca0a8 native bindings emit Error objects on all 'error' events 2011-10-03 23:43:28 -05:00
brianc
b728186a7d Merge branch 'master' of https://github.com/brianc/node-postgres 2011-10-03 23:14:09 -05:00
brianc
2835f25e3f make booo's tests pass for the native client 2011-10-03 03:26:50 -05:00
booo
5f7e85162a lib/client: added optional callback function to client.prototype.connect(); issue #52 2011-10-03 03:26:49 -05:00
Homme Zwaagstra
21b597ef17 All errors are now instances of the built in Error class
This is a fix for issue #50. It alters both the native binding and the
javascript binding to ensure that any errors returned by Postgresql
are returned to the client code as instances of the built in Error
class.

The test code has been updated to assert that this is the case. Rather
than run some individual tests the updated test code ensures this is
the case for *all* errors encountered during a test run.
2011-09-22 12:36:12 +01:00
brianc
cd4e95d88c remove unused code 2011-09-16 00:13:22 -05:00
brianc
ec1c70c4b5 ability to pause/resume drain event for long-running async transactions 2011-08-29 23:43:36 -05:00
brianc
4f1fef5933 start native code cleanup 2011-08-29 23:06:07 -05:00
brianc
334e5739d4 organize require statementsC 2011-08-29 22:53:38 -05:00
brianc
7d44d7868d move functions to increase readability 2011-08-29 22:52:16 -05:00
brianc
f888f3b947 cleanup code 2011-08-29 22:48:17 -05:00
brianc
844831fb8e Merge branch 'master' of https://github.com/brianc/node-postgres 2011-08-29 02:35:56 -05:00
brianc
2ddc553ee4 pg object emit error event on idle pooled client errors 2011-08-29 02:35:46 -05:00
brianc
d9fbe9e878 remove require.paths use 2011-08-29 02:35:08 -05:00
Brian Carlson
98014d0269 tweak to native Client#query overload 2011-08-16 23:58:54 -05:00
brianc
24b664efbd fix js/native api inconsistency 2011-08-15 20:57:39 -05:00
brianc
f726bf29ef do not fire drain before any queries execute 2011-08-15 20:31:31 -05:00
brianc
e6fe115962 use native in native pg.connect 2011-08-15 20:15:43 -05:00
brianc
c16c7f619d configurable idle timeout on pooled clients 2011-08-11 21:52:29 -05:00
brianc
aa63f50437 remove custom pool code 2011-08-11 21:30:10 -05:00
brianc
4cb97a2b9e switch to node-pool from custom client pool 2011-08-11 20:59:56 -05:00
brianc
a7fbe95e72 make pg.connect config/conString argument optional 2011-08-11 19:32:57 -05:00
brianc
c317606b0a fix writing empty string to buffer. closes gh-39 2011-07-20 15:32:47 -05:00
Aleksey Zhukov
f0aa7ccaea Simple bytea support, returning buffers instead of escaped strings. 2011-07-20 02:14:40 +04:00
brianc
1fbe54d5f2 fix gh#36 2011-07-12 23:08:16 -05:00
Alexander Sulfrian
207b7dbb2b Merge remote branch 'upstream/master'
Conflicts:
	lib/query.js
	test/unit/client/typed-query-results-tests.js
2011-06-21 21:42:43 +02:00
Alexander Sulfrian
e891e7f4fb parser: added bool parsing 2011-06-16 18:32:20 +02:00
Alexander Sulfrian
671a5c52ff binaryParser: fixed text protocoll 2011-06-07 16:12:04 +02:00
Alexander Sulfrian
c513780fae textParser: fix error 2011-06-06 19:32:20 +02:00
Alexander Sulfrian
ba9b85fe26 binaryParser: added function to parse text fields 2011-06-06 19:31:57 +02:00
brianc
cc77a67745 remove double init of variable 2011-06-02 07:24:42 -05:00
brianc
0ea77f475b fix for gh-issue #26 2011-05-19 20:46:27 -05:00
brianc
94f670590f support for connecting via hostname with native bindings (using node async dns lookup instead of sync libpq dns) 2011-05-05 19:13:43 -05:00
brianc
a580c8ab8d code cleanup 2011-05-02 00:32:30 -05:00
brianc
b18c981a82 remove unused functions of pool 2011-05-01 21:55:31 -05:00
brianc
0d19522339 code cleanup 2011-05-01 21:35:00 -05:00
Edward Faulkner
795ef164fb Decided not to include zero fields, for consistency. 2011-04-29 10:52:55 -04:00
Edward Faulkner
54d065f4a1 Adding a parser for postgres time intervals 2011-04-29 10:39:00 -04:00
Brian Carlson
eba68017d1 fix gh27 2011-04-20 22:48:50 -05:00
brianc
526a6284f9 50x performance increase on javascript client prepared statement execution on linux! 2011-04-16 11:42:23 -05:00
brianc
e98ef9a011 fix require to be path friendly 2011-03-15 23:08:37 -05:00
brianc
c7aa1498fd Merge branch 'master' of https://github.com/brianc/node-postgres 2011-03-15 23:05:04 -05:00
brian
c72dea82d9 no longer explode if native module didn't build correctly 2011-03-15 23:00:58 -05:00
brianc
73d514ad64 expose 'defaults' on pg.native 2011-03-11 16:39:27 -06:00
brianc
f815c990c3 updated readme & package for new version 2011-03-11 12:29:27 -06:00
brianc
847d84f82e fixed 'overload' error for NativeQuery constructor 2011-03-07 18:56:50 -06:00
brianc
cabca209c7 named queries working & all tests passing 2011-03-06 22:27:35 -06:00
brianc
1fd718bd74 work on named prepared statements 2011-03-06 21:32:58 -06:00
brianc
941b2e298d work on named queries 2011-03-05 12:01:57 -06:00
brianc
6cdc39a648 remove temp file 2011-03-04 22:28:17 +00:00
brianc
c1b5fe2ab0 native 'notify' and 'notification' events 2011-03-04 20:04:59 +00:00
brianc
bbe704b8db merged master 2011-03-04 19:32:54 +00:00
brianc
1cd1721f7f integration notification tests 2011-03-04 19:30:19 +00:00
brianc
749531f597 notification message 2011-03-03 23:20:47 -06:00
brianc
13a5803aac Merge branch 'master' into libpq 2011-03-03 22:45:00 -06:00
brianc
ec158770f5 client emits notify message from connection 2011-03-03 22:44:31 -06:00
brianc
5459773b90 properly emit notice messages on client 2011-03-03 23:30:17 +00:00
brianc
7f582a5811 more tests passing 2011-03-03 18:46:24 +00:00
brianc
0b97f699c5 merge master into topic 2011-03-03 18:31:20 +00:00
brianc
d38ea0131f passing more tests 2011-03-03 18:29:00 +00:00
brianc
7e2f713af3 running all client integration tests against native client - many failures 2011-03-03 18:21:43 +00:00
brianc
b6c3f7d478 remove unused 'net' reference 2011-03-03 18:10:17 +00:00
brianc
bfaefce930 remove unused 'sys' reference 2011-03-03 18:09:47 +00:00
brianc
7f5f554503 js client emits 'connect' event 2011-03-03 18:07:22 +00:00
brianc
08eddd26e2 make type coercion a part of the api 2011-03-03 18:05:29 +00:00
Alexander Sulfrian
acdd726a29 fixed merge error 2011-03-03 08:19:07 +01:00
brianc
8a6725688f begin to clean up string type conversions 2011-03-02 23:28:17 -06:00
Alexander Sulfrian
67cb9f8196 Merge remote branch 'upstream/master'
Conflicts:
	lib/query.js
2011-03-02 14:21:33 +01:00
Alexander Sulfrian
c731cd2844 added support for bigint array type 2011-03-02 14:12:53 +01:00
bmc
b76ced7144 begin type coercion for libpq 2011-03-01 21:03:51 +00:00
bmc
c0ef5296c6 support for connecting via domain socket 2011-03-01 20:35:14 +00:00
bmc
d5bd9c904a defaults changed to be more in line with libpq defaults 2011-03-01 20:13:04 +00:00
bmc
47591d677b callback api working 2011-03-01 19:51:25 +00:00
brianc
ded6c05ed6 callback api failures 2011-02-28 23:09:09 -06:00
brianc
3594ab5185 quick support for integer parameters 2011-02-28 22:57:29 -06:00
brianc
567446e090 error tests 2011-02-24 22:06:19 -06:00
brianc
cc2ff042ef failing test for parameterized queries 2011-02-24 21:33:54 -06:00
brianc
ca9b3cb2cd can pass config object to native query 2011-02-23 22:41:54 -06:00
Brian Carlson
c321151325 cleaned up file structure & improved evented query api compat 2011-02-23 20:02:51 -06:00
Brian Carlson
6a2adc1feb more api compat 2011-02-23 19:40:52 -06:00
Brian Carlson
7d05daaf2c removed some globals from tests 2011-02-23 19:50:43 -06:00
brianc
b9296c54e2 remove debug logging 2011-02-22 23:55:00 -06:00
brianc
ce56fb6453 beginning of js Client compatible api 2011-02-22 23:52:25 -06:00
brianc
55041fffc7 got building with new file structure 2011-02-20 16:41:32 -06:00
brianc
643164d2f0 some cleanup on the initial spike 2011-02-20 16:12:06 -06:00
Brian Carlson
0f0f59c12f initial experiment with libpq bindings 2011-02-18 11:38:47 -06:00
Alexander Sulfrian
796b8dfadc added option for using the binary format 2011-02-14 16:42:04 +01:00
Alexander Sulfrian
a9e40a2d7d fix typo 2011-02-14 16:41:27 +01:00
Alexander Sulfrian
a0be34da39 corrected typo 2011-02-07 12:46:08 +01:00
brianc
039c394cb1 make pulseQueryQueue explicitly private 2011-02-04 20:07:59 -06:00
brianc
4724444e3d move parseConnectionString utility function into utils 2011-02-04 20:06:52 -06:00
brianc
5496f3199e remove net.Stream references from client 2011-02-04 20:05:02 -06:00
brianc
0732ee215f readability refactoring 2011-02-04 20:03:41 -06:00
brianc
84e452e221 style cleanup 2011-02-04 19:45:30 -06:00
brianc
a5fce8eb7b query events for prepared statements are handled by client 2011-02-04 19:30:30 -06:00
brianc
99093b34c8 query events handled by client in simple query scenario 2011-02-04 19:15:57 -06:00
brianc
daa370a610 move some query listener delegation to client 2011-02-04 19:03:23 -06:00
brianc
426f30a962 started making listeners non-closure based 2011-02-04 18:51:34 -06:00
brianc
cb647935bb slight readability refactor 2011-02-04 18:51:23 -06:00
Alexander Sulfrian
88724805df removed debug 2011-02-01 02:23:21 +01:00
Alexander Sulfrian
5b3c501d74 use config 2011-02-01 02:21:45 +01:00
Alexander Sulfrian
df326ec97c fixed bool parsing 2011-02-01 02:20:44 +01:00
Alexander Sulfrian
96caba59d2 fixed off by one 2011-02-01 02:20:20 +01:00
Alexander Sulfrian
0d36ce0799 added numeric parser, modularized parsers 2011-01-29 13:58:18 +01:00
Alexander Sulfrian
fec176e23b fixed typo 2011-01-29 01:33:57 +01:00
Alexander Sulfrian
fa35c13658 Merge remote branch 'upstream/master'
Conflicts:
	lib/query.js
2011-01-29 01:19:33 +01:00
Alexander Sulfrian
01e0fb1b92 added microseconds to date 2011-01-28 18:16:12 +01:00
Alexander Sulfrian
b98994ae39 removed debug output 2011-01-28 18:06:37 +01:00
Alexander Sulfrian
37e958f779 added arrayParser 2011-01-28 18:06:05 +01:00
Alexander Sulfrian
d5538816ef added date parsing 2011-01-27 21:11:42 +01:00
Brian Carlson
ab76f648b8 removed last Buffer.copy from outgoing packet construction 2011-01-27 09:40:07 -06:00
Alexander Sulfrian
1e6124746c conversion pg text to binary protocol started 2011-01-27 15:10:45 +01:00
Brian Carlson
2029248dbe edge case millisecond parsing fixed 2011-01-23 23:58:03 -06:00
Brian Carlson
75b369f25a minor readability 2011-01-23 21:48:52 -06:00
Brian Carlson
fb4314fa00 refactorings, tweaks, and minor fixes to query 2011-01-23 19:01:28 -06:00
Brian Carlson
79c5faf547 first pass at array type conversion 2011-01-21 16:53:24 -06:00
brianc
56ba2567ce result of query contains metadata about query execution 2011-01-19 00:35:32 -06:00
Brian Carlson
31b5f82ad0 initial implementation of providing command execution results 2011-01-18 23:03:24 -06:00
Brian Carlson
1aee4786a0 added result object 2011-01-18 22:39:07 -06:00
Brian Carlson
227d1a8749 query callback fired only once regardless of number of commandComplete messages recieved from backend 2011-01-18 22:23:03 -06:00
Brian Carlson
c93b76fb15 support adding header packet to remove final buffer.copy call 2011-01-14 15:19:10 -06:00
Brian Carlson
3500154d2a writer's buffer resize no longer dies when item byteLength > 2x buffer length 2011-01-14 14:52:16 -06:00
Darwin
7fcfbd8bb0 . 2011-01-08 16:41:48 +01:00
Darwin
a268711616 fix for bug, it has to do with how postgresql presents milisec.. it excludes the traling zeros. 2011-01-08 16:36:10 +01:00
brianc
f13b0ba35c using same writer reference to improve performance 2011-01-01 12:40:45 -06:00
brianc
eb3e4ca3ab writer#addString 2011-01-01 12:36:26 -06:00
brianc
99086cf4bf Writer#flush 2011-01-01 11:51:33 -06:00
brianc
222fbffcfd writer#clear method 2011-01-01 11:33:50 -06:00
brianc
bf32d9520c internally change name from elasticbuffer to writer 2011-01-01 11:30:04 -06:00
brianc
0458e8981f swap writer for elasticbuffer for performance 2011-01-01 11:27:52 -06:00
brianc
66add6defc shortcut the join method for single buffer writers 2010-12-29 19:04:33 -06:00
brianc
51d922f3e1 a connection string without all settings no longer causes client
constructor to throw error
2010-12-28 10:44:33 -06:00
Julian Birch
31cf38c576 Added vim swap files to the .gitignore 2010-12-19 09:42:34 +00:00
Julian Birch
721cf56eb3 Rows are now associative arrays rather than straight arrays. 2010-12-19 09:41:11 +00:00
Brian Carlson
55f84924f2 query errors passed to a query callback function are considered handled 2010-12-16 23:50:36 -06:00
Brian Carlson
e6e643ac6d commented out logging statements 2010-12-14 21:21:28 -06:00
Brian Carlson
6ef45e84fe removed test exception 2010-12-13 23:28:30 -06:00
Brian Carlson
1c8c8c971e remove row.js file (not used as of now) 2010-12-13 17:24:23 -06:00
Brian Carlson
0e03b875af remove references to unused 'row' object 2010-12-13 17:24:05 -06:00
Brian Carlson
b3e56afea2 initial working connection pool implementation & tests 2010-12-13 17:21:40 -06:00
Brian Carlson
0d7936f7ae removing connection pooling until it is finished and tested 2010-12-13 10:35:54 -06:00
Darwin
0249d60604 fixed bug related to parseInt bug, leading 0 is interpreated in a fucked upp way 2010-12-11 12:03:29 +01:00
Brian Carlson
ab13d0c1eb initial crack at connection pooling -- still dirty 2010-12-10 17:32:34 -06:00
Brian Carlson
5a87972983 remove active query reference when client drains 2010-12-10 16:56:10 -06:00
Brian Carlson
169c6dc3ce Pool object for use in connection pooling 2010-12-09 18:10:42 -06:00
Brian Carlson
f0291d30d7 nested query and streamlined api working 2010-12-02 17:47:54 -06:00
Brian Carlson
8d7ff353af fix to allow executing queries within the callback function of another query.
there was a timing issue with emiting the drain event
2010-11-21 23:30:10 -06:00
Brian Carlson
9c33571853 removed some unused variables in client 2010-11-20 14:23:48 -06:00
Brian Carlson
de5438e6f5 started working on specifying defaults 2010-11-20 14:09:18 -06:00
Brian Carlson
0bde640bab overloaded "simple" query api to provide callback enabled prepared statement 2010-11-15 00:42:38 -06:00
Brian Carlson
91aac6d350 initial callback api integration underway 2010-11-15 00:10:21 -06:00
Brian Carlson
f8096cbe55 initial work on streamlined client interface 2010-11-14 23:04:41 -06:00
Brian Carlson
ebf5c5c4ed support for limiting number of rows returned at a time from a cursor 2010-11-14 17:53:49 -06:00
Brian Carlson
e61ec5dfed unit test for portal suspended 2010-11-14 17:44:36 -06:00
Brian Carlson
6585f85d03 query object now emits query related errors, client object no longer
emits query related errors
2010-11-14 16:50:38 -06:00
brianc
d77fd0ee65 ability to init connection with url instead of config object 2010-11-10 21:45:39 -06:00
brianc
95ee9e645c query now returns named records in rows 2010-11-04 00:21:29 -05:00
brianc
2efe451ee6 added Row object instead of returning raw dataRow object w/ coerced types 2010-11-03 23:06:07 -05:00
brianc
8ec671a67c added test & fix for missing 'sys' require in query.js 2010-11-03 16:47:26 -05:00
brianc
d2e3dfb647 split query out from client file and did minor refactorings 2010-11-03 00:27:11 -05:00
brianc
7ce1ddeab5 small refactorings 2010-11-02 23:46:13 -05:00
brianc
1b9ccf97e9 reduced number of flush messages during prepared statement, 2x performance 2010-11-02 03:29:11 -05:00
brianc
381598d3c0 date type coercion works in both directions 2010-11-02 00:50:42 -05:00
brianc
2c362250b3 use regex for date part parse 2010-11-02 00:46:29 -05:00
brianc
6841178ca2 modified tests to correctly check for adjusted utc values 2010-11-02 00:23:39 -05:00
brianc
0c777fafec fix for strang \0 buffer encoding issue in node v0.3.0 2010-11-01 22:11:40 -04:00
brianc
07010389ff basic (ugly) date type coercion tests 2010-11-01 00:27:06 -05:00
brianc
074779b5ff initial work on dates 2010-11-01 00:27:05 -05:00
brianc
0f926ca62e refactored to increase performance 2010-10-31 18:36:35 -05:00
brianc
0d2d6b5107 Moved buffer list to test directory and replaced w/ slightly cleaner
"writer" for use in the library code.  BufferList was always supposed
to be a test helper and the api is trash
2010-10-31 18:21:37 -05:00
brianc
2454d6b355 a bit of code cleanup 2010-10-31 17:58:32 -05:00
brianc
6764af30eb sped up parser ~70% (http://jsperf.com/case-v-method) 2010-10-31 17:46:33 -05:00
brianc
75da13a4b9 removed id from connection messages (simplify API) 2010-10-31 17:30:35 -05:00
brianc
405fbbec12 nulls supported in all currently supported type coercions 2010-10-30 21:10:26 -05:00
Paul Collier
f5528fa7ed propagate connection stream errors 2010-10-30 18:23:54 -07:00
bmc
cafded964e support for 'emptyQuery' command 2010-10-29 21:33:53 -04:00
bmc
577f48f824 added 'drain' event to client which fires after all pending queries
are done
2010-10-29 20:48:31 -04:00
brianc
d38a7f5ed7 added tests to support noData & extra query scenarios but currently
failing...ignoring for now
2010-10-29 00:46:08 -05:00
brianc
f63659cbc5 parsing noData message 2010-10-29 00:02:08 -05:00
brianc
da8026df9d prepared statements moved forward a good deal 2010-10-28 19:09:40 -05:00
brianc
104727fd87 simple prepared statements working! 2010-10-28 00:50:45 -05:00
brianc
c848a5ad92 added support for describe command 2010-10-28 00:27:08 -05:00
brianc
adc8bfa7bf start chopping up client to support prepared statements 2010-10-27 16:58:58 -05:00
brianc
f04ad8e64c boolean coercion 2010-10-27 00:31:34 -05:00
brianc
86d5296fb0 parsing floats 2010-10-27 00:15:58 -05:00
brianc
368724d4f4 integer datatype coercion in result set 2010-10-26 23:57:36 -05:00
brianc
b5d02a995a basic test for client error handling 2010-10-26 08:51:12 -05:00
brianc
c3f69a8be7 add end to client 2010-10-25 17:24:17 -05:00
brianc
80ee829ba0 testing out the query interface 2010-10-24 23:32:18 -05:00
brianc
59aed65b78 tests for simple query queue scenarios 2010-10-24 22:52:12 -05:00
brianc
d927e7e3f5 changed Connection#startupMessage to Connection#startup 2010-10-24 21:28:10 -05:00
brianc
e89aa9c84c changed Connection#passwordMessage to Connection#password 2010-10-24 21:26:18 -05:00
brianc
ec4078d508 renamed 'notificationResponse' to 'notification' for consistency 2010-10-24 14:45:07 -05:00
brianc
ee4a65b923 support for 'notice' messages 2010-10-24 14:43:25 -05:00
brianc
cf211fb1a7 include connection in index 2010-10-24 14:36:35 -05:00
brianc
bcfbb535b8 full support for bind and execute 2010-10-24 13:46:50 -05:00
brianc
c176489348 add type IDs to parse command 2010-10-24 00:18:48 -05:00
brianc
09d8e5d1e7 renamed 'message' to 'payload' 2010-10-23 22:45:03 -05:00
brianc
16352f9156 parsing notificationResponse messages 2010-10-23 22:31:43 -05:00
brianc
3edb02aa67 big refactor, all tests passing 2010-10-23 20:26:24 -05:00
brianc
89ca74c6d1 removed connection methods from client 2010-10-23 19:30:15 -05:00
brianc
ed909cbc66 connection now handles ending 2010-10-23 19:28:57 -05:00
brianc
9749ec4fdc md5 password authentication using connect 2010-10-23 19:21:01 -05:00
brianc
3662e6f4af clear password using connection 2010-10-23 19:02:13 -05:00
brianc
5fdf25c31d tests for separated connection 2010-10-23 17:36:04 -05:00
brianc
e61a04b0ae begin breaking out connection functionality from client functionality 2010-10-23 16:34:20 -05:00
brianc
057df36e2a simple bound queries 2010-10-23 16:21:11 -05:00
brianc
5650b02993 initial work on binding 2010-10-23 15:07:26 -05:00
brianc
95ec1b403c parsing of prepared queries with no parameters 2010-10-23 14:50:28 -05:00
brianc
380abbf6a6 start working on parsing 2010-10-23 14:22:47 -05:00
brianc
bfec84bc15 removed reamining references to query 2010-10-23 14:02:44 -05:00
brianc
37bbb21bce collapsed query into client 2010-10-23 13:58:15 -05:00
brianc
cb7717b5b1 updated integration tests 2010-10-23 13:56:38 -05:00
brianc
bdb4d28038 fixed protocol version 2010-10-23 13:28:14 -05:00
brianc
836240dcd8 code cleanup 2010-10-23 12:46:27 -05:00
brianc
d45c905978 added EventEmitter.once compatibility 2010-10-23 12:45:37 -05:00
brianc
65dbfa43ec renamed Client#disconnect to Client#end 2010-10-22 18:28:10 -05:00
brianc
5b1f8aff3b supporting md5 password authentication 2010-10-22 18:16:40 -05:00
brianc
c41c304c7e code cleanup 2010-10-20 00:36:37 -05:00
brianc
21879edc24 refactoring 2010-10-20 00:34:16 -05:00
brianc
c923ae03a5 don't require parser 2010-10-20 00:21:43 -05:00
brianc
7d627f8d15 combined parser and client 2010-10-20 00:21:13 -05:00
brianc
3fe6661819 refactor sending simple messages 2010-10-19 23:49:55 -05:00
brianc
406e8a56a9 got basic password authentication working 2010-10-19 23:29:23 -05:00
brianc
52a0d0459d start to handle other auth messages 2010-10-19 22:55:26 -05:00
brianc
ec5f1b8831 failing date parsing 2010-10-18 23:35:51 -05:00
brianc
ae40a13daf time/timez parsing 2010-10-18 23:19:17 -05:00
brianc
a05ad762d2 added oid as integer type 2010-10-18 22:42:48 -05:00
brianc
a69d9fecaa parse floats 2010-10-18 22:17:58 -05:00
brianc
bf87006bc3 removed log message 2010-10-18 22:14:51 -05:00
brianc
967ec0f6bb parsing ints 2010-10-18 22:12:26 -05:00
brianc
8cb44e3cf3 substantial refactoring of the parser 2010-10-15 00:24:58 -05:00
brianc
cff48b5b40 removed dead ctor arg 2010-10-13 23:31:19 -05:00
brianc
851e928d38 got spliced packet tests passing 2010-10-13 23:29:20 -05:00
brianc
e4d6b91668 added peekInt32 for peeking at lenght 2010-10-13 22:40:57 -05:00
brianc
deb8aeb319 renamed methods 2010-10-13 22:38:26 -05:00
brianc
39897a16c7 make a single instance of Parser per client 2010-10-13 22:35:14 -05:00
brianc
1786c73565 downcased first character of message names 2010-10-12 22:01:13 -05:00
brianc
2617560fc7 fix for null data row value 2010-10-10 23:38:08 -05:00
brianc
5152cfea14 send correct termination code 2010-10-10 23:05:21 -05:00
brianc
a7c5a81829 adding 'sys' dependency to client.js 2010-10-10 23:02:11 -05:00
brianc
7ba0317878 adding dependency requirement 2010-10-10 23:01:30 -05:00
brianc
08bdd4ccdc query no longer holds circular reference to creator client 2010-10-10 22:44:58 -05:00
brianc
6d4469e391 code cleanup 2010-10-10 22:44:13 -05:00
brianc
5c6f95b427 moved items to their own file 2010-10-10 22:37:30 -05:00
brianc
f7529a235a remove 'constant' lookup object 2010-10-10 22:32:04 -05:00
brianc
390593ba1e removed redundant parser tests 2010-10-10 22:29:16 -05:00
brianc
23d3271aab removed rouge keypress 2010-10-10 19:10:39 -05:00
brianc
5a8061bf5f unrolled loop 2010-10-10 19:09:24 -05:00
brianc
32d6fd4115 removed switch statement 2010-10-10 19:03:44 -05:00
brianc
e69b6faa82 added null terminator (c-string) to query 2010-10-10 18:20:24 -05:00
brianc
f9b5c7b03e parsing error 2010-10-10 18:15:16 -05:00
brianc
b4d1c67eb5 parsing the most simplistic error message 2010-10-10 17:48:27 -05:00
brianc
94811981d6 added test for bad stream reference 2010-10-10 17:30:33 -05:00
brianc
98856f0e9c simple query scenario tested 2010-10-09 02:48:41 -05:00
brianc
d20e47f644 writes simple query 2010-10-08 23:17:09 -05:00
brianc
3925f6fbb0 passes initial query queue tests 2010-10-07 20:00:49 -05:00
brianc
6abac08c6e changed from this.con to this.stream 2010-10-07 19:39:43 -05:00
brianc
3933be9e0d returning query from function 2010-10-07 19:38:27 -05:00
brianc
a3a21c50e4 using passed in stream to client 2010-10-06 19:54:02 -05:00
brianc
0df4f6037c beginnings of actually TDDd query 2010-10-03 01:14:19 -05:00
brianc
891aacce54 connection tests w/ two clients 2010-10-03 01:08:04 -05:00
brianc
730321dbd4 added connection/disconnection tests 2010-10-03 00:45:10 -05:00
brianc
80ed3e7ffe removing working but untested code 2010-10-03 00:31:13 -05:00
brianc
ab0076aa68 can read single data row of text 2010-10-01 01:02:52 -05:00
brianc
5cf151ad7a whitespace 2010-10-01 00:29:16 -05:00
brianc
d2c22afc36 code cleanup 2010-10-01 00:27:42 -05:00
brianc
961f3f1984 added failing test for reading empty row 2010-10-01 00:22:53 -05:00
brianc
1286090ce1 added tests for parsing row definition messages of various lenghts 2010-09-30 23:13:50 -05:00
brianc
012d2a13f5 parsing a single row description 2010-09-30 22:48:50 -05:00
brianc
df88e11a14 refactored tests slightly, working on rowdescription parsing 2010-09-30 01:26:32 -05:00
brianc
1ef03e27a9 work on executing query 2010-09-29 02:46:44 -05:00
brianc
c68c365478 working on getting query to complete 2010-09-29 01:01:52 -05:00
brianc
6ba4575385 parser now parses all messages at once 2010-09-30 00:40:06 -05:00
brianc
8c30521cf9 refactored parsing 2010-09-30 00:27:56 -05:00
brianc
124bd0960e parsing of ready for query 2010-09-30 00:14:41 -05:00
brianc
7c9de7f442 better unsupported message code error message 2010-09-29 23:58:01 -05:00
brianc
19099919f7 a bit of logging for testing purposes 2010-09-29 00:43:28 -05:00
brianc
2c9d26d7f6 refactored parser to be more stateful 2010-09-29 00:30:35 -05:00
brianc
9688d8947f added test for parsing CString 2010-09-29 00:20:10 -05:00
brianc
a921d6c144 made Parser non-static 2010-09-29 00:12:04 -05:00
brianc
a9a9f2e03a parsing of parameterstatus messsage 2010-09-29 00:08:53 -05:00
brianc
94edc2583e better error throw 2010-09-28 23:31:19 -05:00
brianc
18e6ec2121 totally thrashing at this point, but moving forward 2010-09-28 23:18:46 -05:00