Tyler Brock
f55fc95bf4
RUBY-432
...
Do not encode strings to utf-8 after checking that utf-8 is valid.
Before this fix, an encoding operation could turn valid utf-8 into
invalid utf-8 if an encoding that requires conversion is forced on a
valid string.
2012-06-01 14:20:15 -04:00
Tyler Brock
ad8a933cd4
minor: fix extension compile errors
2012-06-01 13:11:00 -04:00
Tyler Brock
d86c4d95f7
RUBY-435
...
Use rb_time_num_new for Time value when available (Ruby >= 1.9)
2012-05-15 16:52:53 -04:00
Gary Murakami
50d6902d80
Revert cbson.c, to be revisited for malloc/free reduction.
...
README.md has API Documentation note at the top to help users match documentation to driver version, DOCS-197.
Expanded performance tests, for insert with multiple docs.
2012-05-03 16:43:12 -04:00
Gary Murakami
962c4f2f2e
eliminate last explicit malloc/free for array key name, more performance measurements
2012-04-30 17:22:01 -04:00
Gary Murakami
7384585d98
write_element optimization for T_ARRAY to only allocate the buffer for the index key once instead of repeatedly for every index. This results in a 2.5x improvement for array sizes around 32. Also includes improvements to the performance tests and graphs, with plothover to show [x,y] values.
2012-04-25 17:15:31 -04:00
Tyler Brock
95a831c0b3
RELEASE 1.6.2
2012-04-05 13:51:20 -04:00
Tyler Brock
ddc3e893cb
RELEASE 1.6.1
2012-03-07 16:59:27 -05:00
Tyler Brock
a4343e53fe
Release 1.6.0
2012-02-22 10:49:44 -05:00
Tyler Brock
1be40495c2
RUBY-412 added if statement to case T_DATA to catch unserializable time classes in Ruby >= 1.9.3
2012-02-14 16:11:52 -05:00
Kyle Banker
7756a133e5
BUMP 1.5.2
2011-12-13 15:35:37 -05:00
Kyle Banker
74e6a60c25
BUMP 1.5.1
2011-11-29 15:54:08 -05:00
Kyle Banker
c931499a97
BUMP 1.5.0
2011-11-28 14:10:28 -05:00
Kyle Banker
11a722b96a
BUMP 1.5.0.rc0
2011-11-18 17:15:03 -05:00
Kyle Banker
ddb56a537f
BUMP 1.4.1
2011-10-17 14:55:21 -05:00
Kyle Banker
4d41092aaa
BUMP 1.4.0
2011-09-19 12:05:10 -04:00
Kyle Banker
e613880922
RUBY-327
2011-09-19 11:40:40 -04:00
Kyle Banker
3c127984a3
RUBY-242 check BSON size on a per-connection basis.
2011-08-25 14:57:24 -04:00
renctan
19c9cb778b
Fixed thet timestamp serialization issues for 32bit machines.
2011-08-24 13:14:36 -04:00
Kyle Banker
f333871bc0
RUBY-294 fix potential infinite loop
2011-08-08 18:23:40 -04:00
Kyle Banker
ace1313b99
RUBY-302 RUBY-303 fix buffer namespace conflict by renaming to bson_buffer.
2011-08-08 15:06:39 -04:00
Kyle Banker
98abe355fa
BUMP 1.3.1
2011-05-11 12:13:00 -04:00
Kyle Banker
135bebd9ab
RUBY-270 support 's' regex option.
...
Note: Ruby includes dotall 's' semantics on 'm' option.
2011-05-09 14:17:56 -04:00
Kyle Banker
bdb87c25ad
BUMP 1.3.0
2011-04-01 13:54:09 -04:00
Kyle Banker
c327a6036d
BUMP 1.3.0.rc0
2011-03-29 16:34:53 -04:00
Kyle Banker
05bf234bb8
RUBY-255 Support BSON Timestamp
2011-03-28 14:36:49 -04:00
Kyle Banker
b48a2bd84f
RUBY-253 fix UTF8 check for Ruby 1.9
2011-03-24 12:11:12 -04:00
Kyle Banker
a8ce896c9f
RUBY-245 Unique object id with timestamp
2011-03-15 16:40:27 -04:00
Kyle Banker
a0aee12907
BUMP 1.2.4
2011-02-23 14:51:49 -05:00
Kyle Banker
9076432c48
BUMP 1.2.3
2011-02-23 12:43:00 -05:00
Kyle Banker
c11e875813
BUMP 1.2.2
2011-02-15 17:09:52 -05:00
Hongli Lai (Phusion)
2335108162
When possible, use system_free() to free asprintf() results.
...
On OS X, Ruby Enterprise Edition allocates memory with tcmalloc which is
not compatible with the system malloc. asprintf() allocates memory with
the system malloc so we need to free its result with the system free()
function instead of tcmalloc's free() function. REE's system_free()
API call does that.
2011-02-14 09:41:39 -05:00
Kyle Banker
04c536292a
BUMP 1.2.1
2011-02-10 15:27:06 -05:00
Kyle Banker
76730d4a7c
RUBY-233 show invalid key on invalid key exception
2011-02-04 12:07:28 -05:00
Kyle Banker
648094c80f
BUMP 1.2.0
2011-01-18 11:20:59 -05:00
Kyle Banker
3d1934a92c
BUMP 1.2.rc2
2011-01-06 10:33:54 -05:00
Kyle Banker
756ccfe877
BUMP 1.2.rc1
2011-01-05 12:31:49 -05:00
Kyle Banker
9798626053
RUBY-188 fix for bson_ext on Windows
2011-01-04 18:09:41 -05:00
Kyle Banker
bc5dcdfc7f
Fix for undefined symbol rb_long2int
2011-01-03 16:15:58 -05:00
eregon
a0389b0668
define R{ARRAY,STRING}_LENINT if there are not
2011-01-03 14:21:12 -05:00
eregon
3ab2acbf4f
Get rid of "implicit conversion 64-bit 32-bit" warnings
...
This resolves "warning: implicit conversion shortens 64-bit value into a 32-bit value"
The problem is String/Array length is a long (so 64 bits on some platforms instead of 32) and the extension use int
There are 2 solutions:
* use long everywhere (but waste of memory, and hard to do)
* cast into ints (but potential lost of data)
I did the second, because all these cases are about String/Array lengths,
and it is very unlikely to have a String/Array of more than 2 billions elements (that would mean at least 2GB in memory).
The last cast might need to be reviewed (htonl((int)time(NULL))) because htonl want a 32-bit int, but time(NULL) will overflow with the year 2038 problem.
2011-01-03 14:20:58 -05:00
Kyle Banker
c0e972470e
Fixed BSON_CODER.update_max_bson_size return value
2011-01-03 14:05:42 -05:00
Kyle Banker
9da68bb3db
RUBY-189 use result of ismaster's maxBsonObjectSize
2010-12-29 18:06:31 -05:00
Kyle Banker
b244c28d1c
1.2.rc0 BUMP for development
2010-12-29 12:09:43 -05:00
eregon
191db33a1a
fix declaration-after-statement warnings of ruby trunk
...
The commit bd0a9d2fb6
adds -Werror=declaration-after-statement. This may cause an error and make gem installation fail
See http://www.ruby-forum.com/topic/714046
2010-12-29 12:06:38 -05:00
Kyle Banker
3c9f0f39f6
BUMP 1.1.5
2010-12-15 15:21:51 -05:00
Kyle Banker
8fca10267a
BUMP 1.1.4
2010-11-30 12:50:28 -05:00
Kyle Banker
f8ada701d9
BUMP 1.1.3
2010-11-29 17:05:41 -05:00
Kyle Banker
6f067756c8
Fix for serializing int/long
2010-11-08 17:21:17 -05:00
Kyle Banker
8e79793053
BUMP 1.1.2 and HISTORY
2010-11-04 17:50:48 -04:00