Kyle Banker
5c6f53e408
Added server version checking. Updated tests for compatibility > 1.1.3
2009-10-26 14:54:33 -04:00
Kyle Banker
67b7f6b375
Refactored Query class into Cursor class.
2009-10-22 14:10:12 -04:00
Kyle Banker
de5c078cec
Finished removing Message classes. Made Cursor#close threadsafe.
2009-10-21 10:11:33 -04:00
Kyle Banker
b938765ac0
Removed GetMoreMessage and QueryMessage classes with initial refactoring.
2009-10-20 15:44:46 -04:00
Kyle Banker
5586d53c6a
minor: Collection#remove should access db directly.
2009-10-20 11:36:51 -04:00
Kyle Banker
e40d9cec3c
Deprecated Collection#clear in favor of Collection#remove. Introduced shoulda and mocha for upcoming tests.
2009-10-20 11:31:07 -04:00
Kyle Banker
2d7bae4e0a
minor: corrected options for Collection#remove
2009-10-19 17:48:20 -04:00
Kyle Banker
cced8ae5b7
Removed InsertMessage, RemoveMessage, and UpdateMessage, and refactored accordingly.
2009-10-19 17:14:41 -04:00
Kyle Banker
f642b0b3bd
Simplified mutex creation
2009-10-19 11:46:59 -04:00
Kyle Banker
4e2781faf1
Raise exception if connecting to single slave with slave_ok set to false; pass slave_ok on to queries when set to true.
2009-10-15 12:25:25 -04:00
Kyle Banker
c6d4150a51
Added option to disable cursor timeout on Collection#find when #find is invoked with a block.
2009-10-14 14:38:44 -04:00
Kyle Banker
5ea585a475
Created alias Collection#size for Collection#count
2009-10-13 16:20:41 -04:00
Mike Dirolf
ec6849fdd8
BUMP 0.15.1 DB#last_status, OrderedHash#each returns self, logger convenience methods, new syntax for sort orders (and deprecate the old syntaxes
2009-10-08 10:12:08 -04:00
Mike Dirolf
4fdcad1327
cleanup and credits
2009-10-08 10:05:06 -04:00
Durran Jordan
20f65039f3
Updating sorting to new syntax
2009-10-08 10:03:19 -04:00
John Nunemaker
89d420780f
Added logger convenience methods to connection and database. Makes it possible to use the logger instance in the driver from the outside world.
2009-10-08 21:13:59 +08:00
Les Hill
454bb440e4
OrderedHash#each returns self not ordered_keys
2009-10-05 21:35:02 +08:00
Mike Dirolf
79e76be9df
add DB#last_status method
2009-10-01 12:01:37 -04:00
Mike Dirolf
f1bf2eb4d6
BUMP 0.15 Mongo::VERSION constant, logger support, fix for Collection#[], use hard limit for explain, deserialize pre-epoch dates, limit offset and sort methods for cursors, deprecate :offset in favor of :skip, use soft/hard limits correctly
2009-09-30 15:07:28 -04:00
Mike Dirolf
de6fef357b
driver was sending hard limits where it should've sent soft, and vice-versa. fix and add tests for this
2009-09-30 10:49:08 -04:00
Mike Dirolf
70c23e2d32
deprecate :offset option to find in favor of :skip
2009-09-17 16:45:03 -04:00
Mike Dirolf
2b701119e1
complete deprecation of a bunch of stuff
2009-09-17 15:28:45 -04:00
Mike Dirolf
f41b48a51b
minor: tweaks and some more test cases
2009-09-17 15:07:37 -04:00
Mike Dirolf
1b98a1961f
minor: credits, doc
2009-09-17 15:07:36 -04:00
mbernstein
e6710621a7
copied docs from sort
2009-09-17 15:07:36 -04:00
mbernstein
d1e45fdb1a
casting input from sort method as ordered hash, tweaking tests a bit
2009-09-17 15:07:36 -04:00
mbernstein
bdafae6eeb
Added sort() method to Cursor Class, with tests and docs.
2009-09-17 15:07:36 -04:00
Mike Dirolf
3321a90739
remove redundant num_to_return from Cursor class. credits. clean up last commit
2009-09-16 17:52:41 -04:00
Kyle Banker
c397758d1d
Added #limit and #offset methods for cursor objects
...
Signed-off-by: Mike Dirolf <mike@dirolf.com>
2009-09-17 05:38:00 +08:00
Mike Dirolf
d95971b20b
tests + fix for deserializing pre-epoch dates w/ pure Ruby BSON deserializer - thanks chendo
2009-09-16 12:53:46 -04:00
Mike Dirolf
b6901673bb
always use hard limit for explain()
2009-09-16 10:39:52 -04:00
Mike Dirolf
86d2bf7186
minor: remove superfluous call
2009-09-14 14:28:01 -04:00
Mike Dirolf
833e0eb7da
failing test case + fix for Collection#[]
2009-09-14 10:03:26 -04:00
Mike Dirolf
78f0b181e2
minor: clean up
2009-09-11 12:19:03 -04:00
Mike Dirolf
903e7136cf
no logger by default. don't log timing because it's misleading for queries. add tests and documentation for logger
2009-09-11 12:12:24 -04:00
Cyril Mougel
5860333ed4
improve logger and fix all test with logging system
2009-09-11 00:02:03 +02:00
Cyril Mougel
58e73589bd
add require needed if no require before
2009-09-10 23:27:46 +02:00
Cyril Mougel
a7ec07a957
implement a little logger with log time and query
2009-09-10 23:24:06 +02:00
Mike Dirolf
b2595d0c8f
add Mongo::VERSION constant
2009-09-10 09:59:06 -04:00
Mike Dirolf
baad067165
minor: doc fix
2009-09-06 16:28:46 -04:00
Mike Dirolf
1124c05f1f
DB#collections method, thanks to Durran Jordan and Les Hill
2009-08-27 16:29:41 -04:00
Mike Dirolf
e6112703f3
allow scope for reduce function in group
2009-08-26 11:13:40 -04:00
Mike Dirolf
47c34266cf
Change string representation of ObjectID - add 'legacy' methods for interacting with old strings
2009-08-25 14:56:02 -04:00
Mike Dirolf
e05c9fc5da
use correct ObjectID generation - no change to ordering yet though
2009-08-25 10:30:14 -04:00
Mike Dirolf
496af2be9c
fix for count when find has fields specified
2009-08-24 17:21:49 -04:00
Mike Dirolf
834a176dbe
minor: remove unimplemented methods
2009-08-24 10:55:31 -04:00
Mike Dirolf
604f85513f
fix paired connection find master
2009-08-24 10:51:15 -04:00
Mike Dirolf
fd3b927771
API CHANGE no longer save internal array for to_a - means you can't call each or to_a after calling to_a already, doc updates
2009-08-21 14:11:59 -04:00
Mike Dirolf
6a43aaa94f
minor: doc
2009-08-21 11:21:33 -04:00
Mike Dirolf
28e795e9e2
minor: make methods private instead of protected or documented as private but actually public
2009-08-21 11:03:56 -04:00
Mike Dirolf
94fe53d96b
DEPRECATE Mongo::Mongo in favor of Mongo::Connection
2009-08-20 18:48:09 -04:00
Mike Dirolf
b5d71d9702
add back in XGen::Mongo paths with deprecation warning on include - THIS WILL BE REMOVED
2009-08-20 14:03:25 -04:00
Mike Dirolf
fc02435777
minor: spelling
2009-08-20 11:50:11 -04:00
Mike Dirolf
e65dd99667
API CHANGE: moving XGen::Mongo::Driver and XGen::Mongo to Mongo and XGen::Mongo::GridFS to GridFS
2009-08-20 10:50:48 -04:00
Mike Dirolf
040ba7c9c2
add command option for Collection#group
2009-08-19 15:54:53 -04:00
Mike Dirolf
c6969fcb4d
eval raises OperationFailure on error. test for group that already passes
2009-08-19 15:37:29 -04:00
Mike Dirolf
c49c208bff
fix for Collection#group
2009-08-19 15:18:42 -04:00
Mike Dirolf
bb13fbe687
use nil for BSON undefined instead of useless Undefined class. deprecate Undefined class
2009-08-19 15:18:02 -04:00
Mike Dirolf
66e8d1a13b
Collection#find takes an optional block to ensure cursors get closed. Some doc updates for find
2009-08-19 11:51:30 -04:00
Mike Dirolf
e64b7f3679
if fields is [] return just _id
2009-08-19 09:57:15 -04:00
Mike Dirolf
dcda70fddd
don't send a getmore immediately after every query
2009-08-18 17:36:53 -04:00
Mike Dirolf
7b4e51e825
deprecate DB#count and passing a selector to Collection#count
2009-08-18 11:48:16 -04:00
Mike Dirolf
103224b800
add Cursor#count method
2009-08-18 11:26:58 -04:00
Mike Dirolf
047fc60c91
allow [] on DB, Collection instances to get collections/sub-collections
2009-08-17 11:11:03 -04:00
Mike Dirolf
723f823ea1
API CHANGE _id is aded to hash instances that get inserted / saved
2009-08-14 17:26:50 -04:00
Mike Dirolf
402b895385
find_one takes same options as find
2009-08-14 16:43:12 -04:00
Mike Dirolf
28a80f1b5e
Deprecate Collection#find_first in favor of Collection#find_one, also improve docs
2009-08-14 15:39:49 -04:00
Mike Dirolf
6cb8c9f49b
API CHANGE Add :safe option for Collection#insert and Collection#save
...
The API change is minor: Collection#insert({...}, {...}, {...}) no
longer works for inserting multiple documents - instead you must pass
an explicit Array: Collection#insert([{...}, {...}, {...}])
2009-08-14 14:25:29 -04:00
Mike Dirolf
7e0a1b9721
add OrderedHash[] initialization
2009-08-14 11:38:25 -04:00
Mike Dirolf
73233d6589
minor: update save to use Collection#update instead of the deprecated Collection#repsert
2009-08-14 09:54:52 -04:00
Mike Dirolf
23e09141a0
better error checking for database names
2009-08-13 16:26:51 -04:00
Mike Dirolf
431039a82a
add InvalidName exception and use that where appropriate
2009-08-13 15:52:11 -04:00
Mike Dirolf
a41a88d0f2
deprecating DB#modify_in_db
2009-08-13 15:24:05 -04:00
Mike Dirolf
64380ad00c
Deprecating Collection#modify, Collection#replace and Collection#repsert in favor of Collection#update
2009-08-13 15:18:53 -04:00
Mike Dirolf
4963da9e89
add support for snapshot option to Collection#find
2009-08-11 11:42:34 -04:00
Mike Dirolf
1e4728a77f
fix a deadlock with threaded queries
2009-08-10 16:10:52 -04:00
Mike Dirolf
691e65f684
API CHANGE: fixing DB#collection_names() - only return collection name, not full name. only return names of valid collections on this database
2009-08-06 15:52:07 -04:00
Mike Dirolf
fe7d7745c7
add collection name validation
2009-08-04 14:24:18 -04:00
Mike Dirolf
91d6ab4caa
rename collection
2009-08-04 14:16:02 -04:00
Mike Dirolf
0a60ad0d7b
support for long type in pure ruby [enc|dec]oder
2009-08-03 17:57:44 -04:00
Mike Dirolf
7da51cc317
save returns _id as well
2009-07-28 12:08:29 -04:00
Paul Dlug
6b9b922266
Generate _id on the client side if no _id is provided to insert/save. The generated ObjectID (or array of ObjectID's in the case of a multiple insert) is return. Closes RUBY-22 and RUBY-23.
...
Signed-off-by: Mike Dirolf <mike@dirolf.com>
2009-07-28 21:53:59 +08:00
Mike Dirolf
6cd976398e
minor: c ext return dates as UTC, update credits, tweak last commit
2009-07-16 16:32:57 -04:00
David James
91b1b0ad8f
Fix dates to return as UTC.
...
Signed-off-by: Mike Dirolf <mike@dirolf.com>
2009-07-17 04:26:56 +08:00
Mike Dirolf
73d7b5ea5d
GridStore.list to list gridfs files
2009-07-15 10:06:45 -04:00
Mike Dirolf
c6536f0d27
count() is 0 for non-existant collections, not an error
2009-06-18 09:38:55 -04:00
Mike Dirolf
7b0da3cb7e
update group
2009-06-08 11:08:59 -04:00
Mike Dirolf
70fb0a6e6a
actually send bulk insert messages
2009-06-08 09:52:18 -04:00
Mike Dirolf
e5ce547e87
use repsert instead of checking for document existence, update tests to match new index_information API
2009-06-02 14:37:58 -04:00
Mike Dirolf
cb3823f48f
Merge branch 'master' of git://github.com/jnunemaker/mongo-ruby-driver into jnunemaker/master
2009-06-02 14:20:19 -04:00
Mike Dirolf
25e960441b
API CHANGE: better, less redundant API for index_information
2009-06-02 11:24:52 -04:00
Mike Dirolf
d87a7da617
BUG RUBY-15 don't check key names on create_index operations
2009-06-02 09:38:31 -04:00
John Nunemaker
13a9cfe83f
Merge branch 'mongodb/master'
2009-06-01 23:24:16 -04:00
Mike Dirolf
71d7ff726b
don't allow invalid key names on inserts
2009-06-01 17:38:11 -04:00
Jon Crosby
c346ded1aa
Fix syntax warning
...
Signed-off-by: mongodb <mongodb@10gen.com>
2009-06-01 21:19:38 +08:00
John Nunemaker
f95102c2bb
Updated save to actually check if id exists in the collection.
2009-05-31 22:45:05 -04:00
John Nunemaker
4cfa9cbcf3
Fixed lack of parenthesis ruby warning that I was receiving on 1.8.6.
2009-05-31 22:17:20 -04:00
John Nunemaker
4d7f06a6be
Implemented that index fields can also be specified with symbols.
2009-05-31 22:16:01 -04:00
Mike Dirolf
cabca61e0d
previous_error and reset_error_history. snuck in a quick fix to OrderedHash equality
2009-05-26 15:26:20 -04:00
Aman Gupta
2fafddd7fa
Add Collection#save
2009-05-15 18:21:10 -07:00
Mike Dirolf
37d6e16fe7
test and fix for BSON w/ negative integers. raise RangeError for out of range ints
2009-05-15 11:19:13 -04:00
Mike Dirolf
a9aa5e5271
fix for pure ruby encoder when _id is a falsey value. more tests
2009-05-12 14:21:17 -04:00
Mike Dirolf
cea73c2712
dereference helper method
2009-04-28 14:55:36 -04:00
Mike Dirolf
29cdfe64f1
add group method on collections
2009-04-27 14:19:38 -04:00
Mike Dirolf
2dffc4b504
don't set _id to default value for hash
2009-04-24 10:03:40 -04:00
Mike Dirolf
02b37f6e48
decoder for data_timestamp
2009-04-22 13:49:56 -04:00
Mike Dirolf
1312c70677
add support for unique index creation
2009-04-21 14:44:57 -04:00
Mike Dirolf
a2898effb4
no longor drop_indexes when we drop_collection
2009-04-16 09:55:50 -04:00
Mike Dirolf
ac4dde5d76
we still need to define ==, even in 1.9
2009-03-23 11:51:35 -04:00
Mike Dirolf
595a9464bb
second gem for extensions
2009-03-19 13:54:46 -04:00
Mike Dirolf
5545f3c943
new-style dbref for ruby enc/decoders
2009-03-18 13:30:30 -04:00
Mike Dirolf
db7cb56fc7
remove debugging cruft
2009-03-16 09:38:07 -04:00
Mike Dirolf
2541199903
oops didn't mean to commit this
2009-03-16 08:47:03 -04:00
Mike Dirolf
dccc442edb
for now don't try to install extension
2009-03-13 17:24:16 -04:00
Mike Dirolf
13c407cd85
support for db.eval
2009-03-13 11:03:52 -04:00
Mike Dirolf
37044a38f5
rescue a few more types of exceptions
2009-03-12 16:40:02 -04:00
Mike Dirolf
4e06c63972
fix warning
2009-03-12 16:01:13 -04:00
Mike Dirolf
0f546eb5c5
add new code type rather than doing hacks based on field name. use code_w_scope instead of code
2009-03-12 15:34:15 -04:00
Mike Dirolf
7e6e11ba99
only mask socket errors
2009-03-12 14:31:37 -04:00
Mike Dirolf
56fddf79d4
dbrefs only need an oid and a collection, not all this extra cruft...
2009-03-10 14:17:01 -04:00
Mike Dirolf
d0d043323f
towards c decoder
2009-03-10 10:23:42 -04:00
Mike Dirolf
8b9bcb1e63
add back in logging and size checks around all socket receive's
2009-03-06 10:02:43 -05:00
Mike Dirolf
1d0fe595c8
equality for ordered hashes
2009-03-05 13:48:15 -05:00
Mike Dirolf
9f2305715e
oid encoder
2009-03-05 11:38:08 -05:00
Mike Dirolf
24e695b40d
encoder for binary
2009-03-04 17:38:06 -05:00
Mike Dirolf
79b3df3c9e
do all recv's in a loop. remove debugging cruft
2009-03-04 14:28:00 -05:00
Mike Dirolf
8b18502cd0
debug logs and assertions
2009-03-04 13:52:09 -05:00
Mike Dirolf
765ed9334e
do to_a if it's not a string
2009-03-04 11:16:28 -05:00
Mike Dirolf
3a3109e7dc
enough encoders to do bson_benchmark
2009-03-04 11:07:22 -05:00
Mike Dirolf
064ddacd5e
c encoder for string types
2009-03-04 10:05:50 -05:00
Mike Dirolf
bdec973ff4
more debugging
2009-03-04 09:35:27 -05:00
Mike Dirolf
c69fbb7f67
checkpoint - beginnings of c encoder
2009-03-03 17:07:22 -05:00
Mike Dirolf
f907edcde5
more stuff to see on failure
2009-03-03 09:59:36 -05:00
Mike Dirolf
0d64ec9de1
temporarily raise a different exception
2009-03-03 09:27:38 -05:00
Mike Dirolf
a5a2e82836
fix breakage when running tests on non-default port. removing ability to specify connections in [port, host] ordering.
2009-03-02 13:37:12 -05:00
Mike Dirolf
9b9f14ce2e
overhaul create_index - don't allow clients to specify their own name, allow descending indexes
2009-02-26 12:06:03 -05:00
Mike Dirolf
acfd505061
use fs as root collection, not gridfs
2009-02-18 17:50:07 -05:00
Mike Dirolf
16c8170498
md5 for ruby gridfs too
2009-02-18 14:12:04 -05:00
Geir Magnusson Jr
232a7f7169
Clarify license to be the Apache License v2.0. Was a
...
mix and the readme still reflected AGPL
2009-02-15 08:24:14 -05:00
Jim Menard
4302de0227
set TCP_NODELAY for db sockets.
2009-02-10 13:32:40 -05:00
Jim Menard
05aafc0de4
Collection#find_first uses :limit => 1
2009-02-10 13:08:15 -05:00
Jim Menard
5aa7202a78
Hard limit values are negative.
2009-02-10 13:04:19 -05:00
Jim Menard
46317fcb6e
Explicitly call self.getc/self.putc.
2009-02-10 11:41:36 -05:00
Jim Menard
9a7ed4c3d3
comment
2009-02-09 13:13:13 -05:00
Jim Menard
5c2ef0176e
Changed ObjectID#legal_oid_string to ObjectID#legal?
2009-02-09 11:38:24 -05:00
Jim Menard
7de404c8e3
Added Collection#find_first.
2009-02-09 09:46:30 -05:00
Jim Menard
d40c31bb00
comments
2009-02-07 14:36:08 -05:00
Jim Menard
333cf20a20
Removed another $DEBUG warning.
2009-02-05 16:37:35 -05:00
Jim Menard
8ecc8cb305
Remove debug warnings.
2009-02-05 15:59:44 -05:00
Jim Menard
8ef393437c
Accept array of field names
2009-02-05 14:24:20 -05:00