forked from mongodb-labs/mongo-perl-driver
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChanges
1243 lines (736 loc) · 35.7 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# Change history for the MongoDB Perl driver:
{{ $NEXT }}
v0.999.999.1 2015-06-10 09:48:53-06:00 America/Denver (TRIAL RELEASE)
[!!! Incompatible Changes !!!]
- PERL-442 Connection string options revised to match MongoClient
options; connection string options always take precedence
- PERL-470 MongoDB::Cursor globals "slave_ok" and "timeout" no longer
have any effect and have been removed.
- PERL-471 MongoDB::Cursor 'snapshot' method now requires a boolean
argument.
[*** Deprecations ***]
- PERL-398 Old 'timeout' and 'query_timeout' options deprecated in favor
of new, more explicit 'connect_timeout_ms' and 'socket_timeout_ms'
- PERL-424 MongoDB::Cursor 'count' method has been deprecated.
- PERL-511 Use new CRUD method names for Bulk API and deprecate old ones
- PERL-516 Deprecated legacy index management API methods
- PERL-533 Deprecated 'save' method
- PERL-534 Deprecated 'validate' method
[Additions]
- PERL-413 Added max_time_ms MongoDB::MongoClient configuration option to
set default for database and collection objects
- PERL-486 Added 'has_modified_count' method to MongoDB::UpdateResult and
MongoDB::BulkWriteResult to ease detection of when that attributes is
supported by a server or not.
- PERL-490 Added 'list_collections' method on MongoDB::Database
- PERL-500 Added 'topology_status' method to MongoDB::MongoClient
- PERL-506 Added support for serializing/deserializing Time::Moment objects
- PERL-515 Added new MongoDB::IndexView API
- PERL-533 Added 'save_one' method for idempotent replace-or-upsert
[Bug fixes]
- PERL-536 Fixed GridFS to stop throwing an error when a known empty file has
no chunks; errors will still be thrown if a non-empty file has no chunks.
- PERL-540 Fixed memory leak in DateTime::Tiny inflation
- PERL-543 Fixed a bug serializing undef from Tie::IxHash objects
[Changes]
- PERL-127 Integers that fit in 32-bits are now encoded as BSON Int32;
larger integers are encodeed as BSON Int64; Math::BigInt objects are
always encoded as BSON Int64.
- PERL-488 MongoDB::WriteConcern method 'is_safe' renamed to
'is_acknowledged'.
- PERL-529 Ignores connection string option key case
- PERL-530 Warns on unsupported connection options
[Documentation]
- PERL-524 updated legacy author emails in docs and metadata.
[Testing]
- PERL-513 Added maxTimeMS tests for CRUD API methods
[Removals]
- PERL-467 Removed outdated MongoDB::Indexing document.
[~ Internal changes ~]
- PERL-455 Now using connect timeout as socket timeout for topology scans
v0.999.998.6 2015-05-20 14:28:18-04:00 America/New_York (TRIAL RELEASE)
[!!! Incompatible Changes !!!]
- PERL-505 When inserting a document without an '_id' field, the _id will
be added during BSON encoding, but the original document will not be
changed. (This was inconsistent between regular and bulk insertion in
the v0.x series and during previous alpha releases.)
- PERL-519 The $MongoDB::BSON::use_binary global variable has been
removed. Binary data always decodes to MongoDB::BSON::Binary objects
(which now overload stringification). This ensures that binary data
will correctly round-trip.
- PERL-520 The $MongoDB::BSON::utf8_flag_on global varialbe has been
removed. BSON strings will always be decoded to Perl character strings.
This ensures that string data will correctly round-trip.
- The $MongoDB::BSON::looks_like_number and $MongoDB::BSON::char global
variables now ONLY have an effect at MongoDB::MongoClient construction.
Changing them later does not change BSON encoding. Both are deprecated as
well and should not be used in new code. Instead, the enhanced
MongoDB::BSON codec class has attributes that encapsulate these behaviors.
- PERL-221 The 'inflate_regexps' MongoDB::MongoClient option has been
removed. BSON regular expressions always decode to
MongoDB::BSON::Regexp objects. This ensure safety and consistency with
other drivers.
- The 'inflate_dbrefs' MongoDB::MongoClient option has been removed.
By default, dbrefs are always inflated to MongoDB::DBRef objects.
- The 'dt_type' MongoDB::MongoClient option has been deprecated and
made read-only. It now only takes effect if C<MongoDB::MongoClient>
constructs a MongoDB::BSON codec object and is read-only so that any
code that relied on changing it after client construction will fail
rather that being silently ignored.
[*** Deprecations ***]
- As mentioned above, 'dt_type', '$MongoDB::BSON::looks_like_number'
and '$MongoDB::BSON::char' have been deprecated in addition to their
other behavior changes.
[Additions]
- Added 'with_codec' method to MongoDB::Collection for easier localized
changes to codec attributes.
[Changes]
- PERL-331 The MongoDB::BSON package is now a full class, implementing
a BSON encoder-decoder (codec). It can be supplied as an attribute
to MongoDB::MongoClient, MongoDB::Database and MongoDB::Collection
objects.
[Fixes]
- PERL-531 Bulk update/replace documents would not validate properly when
$MongoDB::BSON::char was not '$'. While that functionality has moved
to the MongoDB::BSON codec instead of the global variable, all
update/replace documents (bulk and CRUD API) are now validated after
key munging.
- Fixed a number of XS memory leaks from non-mortalized variables
during BSON encoding.
- Fixed t/gridfs to work around a bug in MongoDB 3.1.2.
- Fixed BSON double tests on Perls with long-doubles enabled
[~ Internal changes ~]
- PERL-325 Updated vendored ppport.h to version 3.31
- Refactored and reorganized perl-mongo.h and perl_mongo.c. Removed
unused functions and macros.
- Removed unused vendored libyajl files.
v0.999.998.5 2015-04-30 06:12:39-04:00 America/New_York
[*** Deprecations ***]
- MongoDB::CommandResult changed the name of the accessor for the document
returned by the server to 'output' instead of 'result' for clarity. The
'result' method is deprecated.
[Changes]
- Generic MongoDB::Error exceptions have been replaced with subclasses
that have a specific, documented purpose, including: MongoDB::AuthError,
MongoDB::GridFSError, MongoDB::InternalError and MongoDB::UsageError.
- Calls to Carp::confess() or die() have been replaced with exceptions
from MongoDB::Error subclasses, typically MongoDB::UsageError.
- Failure to create indexes when constructing a GridFS object are
ignored rather than a fatal error.
- Now includes a longer list of default OS locations to search for
root CA files.
v0.999.998.4 2015-03-25 14:37:52-04:00 America/New_York (TRIAL RELEASE)
[*** Deprecations ***]
- Legacy MongoDB::Collection CRUD methods (insert, update, etc.) have
been deprecated in favor of new CRUD API methods
- PERL-507 MongoDB::Collection::get_collection is deprecated; it implied
subcollections, which don't actually exist
[Additions]
- PERL-502|PERL-503 Implement new common driver CRUD API
in MongoDB::Collection
[Bug fixes]
- PERL-480 retrieving a GridFS file now throws an error if no chunks exist
instead of returning an empty string
- Suppressed warning about "Can't locate package MongoDB::WriteResult"
from MongoDB::BulkWriteResult::ISA
- Fixed incorrect 'matched_count' result attribute for upserts
- Ensure topology type is correct whenever a server is marked unavailable
[Changes]
- MongoDB::Collection attributes that should not be set in the constructor
have been made private, but with public accessors for backwards
compatibility. Private attributes that are set in the constructor
(e.g. 'database') are now public.
[Documentation]
- PERL-464 Documented deprecation of 'last_error'
- PERL-510 Documented MongoDB::QueryResult
- Improved docs for MongoDB::Error with info on exported error codes
- Clarified docs for MongoDB::Collection::get_collection
[Removals]
- PERL-497 The $MongoDB::BSON::use_boolean never worked; BSON boolean
values were always deserialized as boolean.pm objects. Rather than
"fix" this and break people's code, the option has been removed and
documented as such.
v0.999.998.3 2015-03-25 14:30:00-05:00 America/New_York (TRIAL RELEASE)
- Broken upload due to TLS bugs
v0.999.998.2 2015-02-23 17:10:36-05:00 America/New_York (TRIAL RELEASE)
[!!! Incompatible Changes !!!]
- MongoClient read_preference attribute is now immutable
- Renamed WriteResult to BulkWriteResult
[*** Deprecations ***]
- PERL-464 Deprecated the 'last_error' Database method
[Additions]
- PERL-93 implemented awaitData
- PERL-135 added ability to set write_concern at db and collection level
- PERL-259 implemented write commands for MongoDB 2.6+ (i.e. doing
writes via database commands versus via the wire protocol with OP_INSERT,
OP_UPDATE, etc.)
- PERL-465 added support for arbitrary options on index creation
- PERL-466 added read preference attribute to Database and Collection
- Added 'connect' function to MongoDB class for syntactic sugar
to create a client object
- Added the 'get_namespace' method to MongoDB::MongoClient
- Added 'db' and 'coll' as aliases for 'get_database' and 'get_collection'
- Added optional read preference argument to 'run_command'
[Bug Fixes]
- PERL-401 fixed index creation to always have a non-zero write concern
- PERL-489 fixed BSON encoding bug; references to scalars with both number
and string slots internally would crash on BSON encoding, rather than
encode the string part as a binary.
- PERL-477 fixed list indexes/collections when responses are too big to fit
in a single database response
- Fixed t/database.t for change in server error message
- Fixed use of slave_ok and $readPreference for communicating read
preferences to a mongos
- Made conflicting multi/multiple update options fatal
[Changes]
- Renamed DocumentSizeError to a more general general DocumentError
- Changed minHeartbeatFrequencyMS (delay between server checks when
a suitable server is unavailable) to 500,000 MS
[Documentation]
- PERL-423 improved documentation of cursor snapshot mode
- Rearranged Collection and Database documentation
- Documented how to disable returning _id from queries
[Testing]
- PERL-371 Added tests for parsing localhost:port
- PERL-492 Implemented server selection tests
- Changed text index test to use $text operator, not text command
(which was removed in MongoDB 3.0)
[Prerequisites]
- Added core modules IO::Socket and MIME::Base64 to the dependency
list for completeness
- Requires at least Path::Tiny 0.054 (rather than unspecified)
- Removed core modules File::Copy, File::Path and File::Spec from the
list of test dependencies
- Removed Class::MOP::Class as an explicit dependency (still used internally
by Moose)
- Removed Data::Types and Data::Dump as test dependencies
v0.999.998.1 2014-11-12 15:10:40-05:00 America/New_York (TRIAL RELEASE)
[!!! Incompatible Changes !!!]
- PERL-330 implement pure-Perl networking; SSL and SASL now implemented via
optional CPAN modules IO::Socket::SSL and Authen::SASL
- MongoDB::Error exception objects now used consistently throughout
networking code
- removed long-deprecated MongoDB::Connection class
- split Cursor class into new QueryResult class
- ssl option is now read-only
- low-level client functions removed
[*** Deprecations ***]
- auto_connect, auto_reconnect, find_master, sasl, sasl_mechanism config
options
- authenticate method in MongoDB::MongoClient
- read_preference as a mutator for MongoDB::MongoClient
[Additions]
- PERL-131 support connect option in URI
- PERL-233 Implement SSL certificate support via IO::Socket::SSL options
- PERL-375 Support adding cursor options to find_one
- PERL-378 implement deployment and server model and monitoring
- PERL-379 Implement server-selection and new read preferences
- PERL-406 Allow count methods to work with query hints
- PERL-408 Implement SCRAM-SHA-1 and revise handshake
- PERL-422 add read prefs support for the connection string
[Bug Fixes]
- PERL-146 normalize server addresses to lower case
- PERL-409 add missing declarations for MinGW on Windows
- PERL-429 fix tag_sets logic
- PERL-410 die on BSON encoding/decoding if invalid UTF-8 is detected
- PERL-435 switch to http-style certificate name validation
- PERL-454 don't warn creating BSON datetime at epoch
- fixed MSVC compilation: fix unused vars and statements before declarations;
removed unused, but problematic bcon.c and bcon.h; use Perl memory alloc
functions instead of malloc
- removed storage engine dependent code and tests
- fixed t/cursor.t for new explain format
- fixed parallel scan test for server version 2.7.x changes
[Documentation]
- PERL-425 documented deprecation of drop_dups for index creation
- added MongoDB::Upgrading document with changes from v0.x
- added contributors section to MongoDB main documentation based on git
commit logs
[Prerequisites]
- enforced minimum versions for configuration requirements
- removed JSON module in favor of JSON::MaybeXS
- removed use of File::Slurp
[~ Internal changes ~]
- PERL-133 test that client can connect to RS without primary
- PERL-433 use listCollections command on 3.0 servers
- PERL-434 use listIndexes command on 3.0 servers
- PERL-436 bump maxWireProtocolVersion for 3.0 support
- re-enabled threads tests
v0.708.2.0 2015-06-05 16:39:00-04:00 America/New_York
[Bug fixes]
- PERL-536 fix GridFS to stop throwing an error when a known empty file has
no chunks; errors will still be thrown if a non-empty file has no chunks.
- PERL-541 fixed remove() to respect MongoClient write concern
[Documentation]
- PERL-525 updated legacy author emails in docs and metadata
v0.708.1.0 2015-04-29 16:51:52-04:00 America/New_York
[Bug fixes]
- PERL-479 retrieving a GridFS file now throws an error if no chunks exist
instead of returning an empty string
[Removals]
- PERL-496 The $MongoDB::BSON::use_boolean never worked; BSON boolean values
were always deserialized as boolean.pm objects. Rather than
"fix" this and break people's code, the option has been removed
and documented as such.
v0.708.0.0 2015-01-20 16:57:11-05:00 America/New_York
[Additions]
- Added 'get_namespace' method (and 'ns' alias) to MongoDB::MongoClient
for getting a collection directly without an intermediate database object.
- Added 'db' and 'coll' aliases for 'get_database' and 'get_collection'
[Bug fixes]
- PERL-489 references to scalars with both number and string slots internally
would crash on BSON encoding, rather than encode the string part as a
binary.
[Diagnostics]
- Added parenthetical note to "can't get db response" errors to disambiguate
where they occur.
v0.707.2.0 2014-12-22 05:35:31-05:00 America/New_York
[Bug fixes]
- PERL-476 fixed getting lists of collections and indices for changes in
MongoDB 2.8-rc3 and later.
v0.707.1.0 2014-12-10 12:50:45-05:00 America/New_York
[Bug fixes]
- PERL-465 allowed arbitrary options on index creation
- Fixed t/database.t for change in error message for missing commands
- Fixed undef warning from get_indexes on older MongoDB versions
[Prerequisites]
- Removed Data::Types as a test dependency as it was barely used
and not necessary
v0.707.0.0 2014-11-12 15:04:46-05:00 America/New_York
[Additions]
- Supports MongoDB 3.0; in addition to prior feature support, this release
fixes tests that were broken against non-default storage engines
[Bug fixes]
- PERL-454 suppress warnings storing datetimes at the epoch
v0.706.0.0 2014-10-28 11:30:42-04:00 America/New_York
[*** Deprecations ***]
- PERL-425 the 'drop_dups' indexing option is deprecated because it is
ignored as of server version 2.7.5
[Additions]
- PERL-408 added support for SCRAM-SHA-1 (for MongoDB 2.7.8+)
[Bug fixes]
- PERL-409 fixed compilation on MSWin32 using the MinGW compiler
- Fixed compilation errors on MSWin32 using the MSVC compiler
- Fixed construction of Makefile LIBS argument for some platforms
- Fixed parallel scan and explain tests for changes in the MongoDB 2.7.x
development series
[Diagnostics]
- Passing the "ssl" parameter to MongoDB::MongoClient will now warn if SSL
support is not available.
[Documentation]
- Revised "run_command" documentation to explain that array references or
Tie::IxHash should be used.
[Prerequisites]
- Added dependency on Authen::SCRAM::Client 0.003
- Removed (test) dependency on File::Slurp
- Minimum required versions of configuration dependencies Path::Tiny and
Config::AutoConf are now enforced in the code, not just specified in
META.json
[~ Internal changes ~]
- PERL-433 uses the listCollections command if available (MongoDB 2.7.8+)
- PERL-434 uses the listIndexes command if available (MongoDB 2.7.8+)
- PERL-436 bumped supported maxWireProtocolVersion to 3 (MongoDB 2.7.8+)
v0.705.0.0 2014-09-09 10:04:59-04:00 America/New_York
[Additions]
- PERL-406 allow count() to use hints
[Prerequisites]
- Clarified that Test::Deep 0.111 is required rather than any version
v0.704.5.0 2014-08-19 14:17:00-04:00 America/New_York
[Bug fixes]
- PERL-407 fixed request_id race condition under threads
- PERL-410 dies on BSON encoding/decoding if invalid UTF-8 is detected
v0.704.4.0 2014-07-30 05:43:11-04:00 America/New_York
[Testing]
- Restores behavior of skipping tests if no mongod is available for testing
v0.704.3.0 2014-07-28 17:02:13-04:00 America/New_York
[Additions]
- PERL-130 improved support for connection string URI; added support for
options: ssl, connectTimeoutMS, w, wtimeoutMS, and journal
[Bug fixes]
- PERL-130 fixed parsing of connection string to allow for usernames containing :
and passwords containing @ if they are percent encoded (RFC 3986)
- PERL-166 fixed tailable cursors with no initial results
- PERL-290 when find_master is 0, the driver now consistently picks the first
server in the list
- PERL-387 made database_names() retry up to three times if the server returns
a lock error
v0.704.2.0 2014-07-08 12:04:02-04:00 America/New_York
[Bug fixes]
- PERL-376 fixed fatal error loading the MongoDB::MongoClient module before
loading the top-level MongoDB module
- Fixed cursor to catch query or timeout errors that occur after the initial
query batch is received
- Fixed primary server selection to retry for 60 seconds instead of
immediately failing with an error
- Changed bulk insert to shallow copy inserted documents before adding
an '_id' field (if it didn't exist) to avoid modifying the original
[Testing]
- Fixed t/database.t for old versions of mongos
- PERL-355 Added support for parallel testing
- Finished converting from Test::Exception to the more robust Test::Fatal
- Improved test coverage
v0.704.1.0 2014-06-17 21:55:18-04:00 America/New_York
[Bug fixes]
- PERL-336 fixed unknown command exception with index creation on 2.2 and
older servers; we now correctly fall back to legacy index creation
- PERL-349 fixed request ID misordering when reconnecting to a server; this
fixes the known issue regarding test failures with threads under
find_master
- PERL-368 changed all query docs to be coerced to Tie::IxHash; this ensures
that command queries are properly ordered and fixes a crashing bug when
using command helpers in concert with read preference
- PERL-369 fixed segfaults deserializing 64-bit integers from BSON on
pure 32-bit perls
- PERL-370 fixed bulk update results for upserts with non OID _id
on servers prior to 2.6
- Fixed stale detection of write command support for bulk operations
- Fixed wire version checks and max BSON size inspection for replica
sets with multiple hosts in the connection URI
[Documentation]
- PERL-366 documented bulk write initializers in Collection docs
- Updated Example.pod docs for field projection (Johann Rolschewski)
[Testing]
- PERL-348 tests report MongoDB version in test diagnostics
- PERL-351 fixed test failures if the local database has auth enabled;
tests will skip instead of fail
- PERL-356 enabled additional tests if the test database is a replica set
or sharded cluster
- Added test for field projection (Johann Rolschewski)
- Fixed various tests to run against a sharded cluster
- Moved unused orchestration tests out of the main test suite
[~ Internal changes ~]
- PERL-357 added developer tools for testing different cluster
configuration
v0.704.0.0 2014-05-27 13:54:01-04:00 America/New_York
[!!! Incompatible Changes !!!]
- PERL-108 removed previously-deprecated AUTOLOAD functions
[*** Deprecations ***]
- PERL-320 low-level protocol functions in MongoDB.pm are deprecated
[Additions]
- PERL-221 added MongoDB::Regex class to represent stored regexes
- PERL-251 implemented support for aggregation command cursors
- PERL-252 added 'max_time_ms' method to cursors
- PERL-258 added support for '$out' aggregation pipeline operator
- PERL-262 read preference implementation
- PERL-278 added explain support for aggregation queries
- PERL-298 implement parallel_scan method for collections
- PERL-299 implemented new bulk write API
- Added nolock support to eval in MongoDB::Database (Ashley Willis)
[Bug Fixes]
- PERL-233 Fix find_and_modify error handling
- PERL-260 ensure_index no longer ignores weights, default_language, and
language_override options
- PERL-267 memory leak fixes (Casey Rojas)
- PERL-307 fix drop_dups option for ensure_index
- PERL-315 require DateTime 0.78 or later
- PERL-318 fix compiler warnings
- PERL-319 fix compilation failures on some platforms
- PERL-322 change return value and document low-level recv
- PERL-323 fixed possible socket leaks on communication errors
- PERL-336 fixed index creation legacy fallback against older mongos
- Cached client constructor arguments for replica set connections
- Cleaned Moose class namespaces of imported methods
- Ensured internal run_command exceptions include correct error string
- Fixed a bug that would serialize an index direction as a string on some
older Perls
- Fixed clock race in OID unit test
- Fixed exception handling for internal run_command calls
- Fixed fatal error in DESTROY with find_master and down server
- Fixed gridfs test for unique keys
- Fixed hint tests for MongoDB >= 2.5.4
- Fixed index creation and drop on MongoDB 2.6
- Fixed memory corruption error on Perl 5.19.1+
- Fixed several compiler warnings on Perl 5.8
- Fixed use of re::regexp_pattern for 5.10.0
- Made t/dbref.t use fresh test database
- Prevented GridFS MD5 calculation when 'safe' is not set (mapbuh)
- Provided backwards compatible HeUTF8 macro for Perl v5.10 and v5.8.8 and
earlier
- Removed hard-coded compiler flags for Darwin
- Updated ppport.h to version 3.22
[Documentation]
- PERL-217 improved documentation of GridFS::get
- PERL-287 updated "j" and "fsync" option docs for MongoDB 2.6
- PERL-311 fix legacy docs authentication link
- PERL-317 Clarified support for threads
- PERL-341 Added install documentation including use of non-standard C
library paths
- Added abstract to MongoDB::BSON::Regexp documentation
- Revised main MongoDB module and MongoDB::MongoClient docs
- Updated Changes file with changes since 0.701
[Prerequisites]
- Added namespace::clean
- Added Test::Deep
- Added Test::Fatal
- Added Throwable
- Added Syntax::Keyword::Junction
- Changed Test::More requirement to 0.96
- Removed Devel::Size
[~ Internal changes ~]
- PERL-261 use setVersion field in isMaster for replica set discovery (David
Storch)
- PERL-264 test for closing connection when MongoClient object leaves scope.
(Ashley Willis)
- PERL-269 test libraries for replica set and sharded cluster testing
- PERL-285 added wire protocol check
- PERL-296 implemented new index creation command for MongoDB 2.6
- PERL-312 default GridFS chunk size changed from 1mb -> 255kb
- Switched BSON implementation to libbson and bundled patched libbson 0.6.4
to avoid external library dependency
[~ Known Issues ~]
- PERL-233 SSL certificate validation not yet implemented
- PERL-349 changes to the testing framework revealed a bug when
threads are used with 'find_master' on the client; the offending
test is marked TODO and the bug will be addressed in the next
stable release.
- Some platforms may not compile, including Windows and some Solaris
and OpenBSD systems; these issues will be addressed in a future release
v0.703.5 2014-05-23 06:26:46-04:00 America/New_York (TRIAL RELEASE)
v0.703.4 2014-04-07 20:12:27-04:00 America/New_York (TRIAL RELEASE)
v0.703.3 2014-04-01 10:32:49-04:00 America/New_York (TRIAL RELEASE)
0.703_2 (TRIAL RELEASE)
0.702.2
[Bug Fixes]
- Fix double-from-buffer alignment issue on ARM platform (Robin Lee)
- Set BSON_MINKEY to 255 if char is unsigned (Robin Lee)
- Fix test plans in connection.t and delegation.t (Robin Lee)
[Internal]
- Copyright update s/10gen/MongoDB/ due to company name change
0.702.1
[Bug Fixes]
- Query Fields accept Tie::IxHash and Hashref.. (Colin Cyr)
- Fix for gridfs and creation of indexes (mapbuh)
0.702.0
[Enhancements]
- SASL PLAIN suport added
- Makefile.PL can enable SSL/SASL builds via environment variables
[Bug Fixes]
- PERL-162 set_timeout fix
- PERL-245 fix fractional seconds in BSON datetime deserialization
- Fix specifying index keys as an array ref (D. Ilmari Mannsåker)
- Prevent legacy auth when in SASL mode
- Drop all created collections in dbref.t (D. Ilmari Mannsåker)
[Documentation]
- Deprecated AUTOLOAD functions removed from documenation
- Various module docs revised and updated
[Internal]
- Refactored boilerplate test code to a separate testing module
0.701
[Enhancements]
- Support for Kerberos authentication on Linux (EXPERIMENTAL)
- Add a get_collection method to MongoDB::Collection (@sanbeg, pull #52)
- Optimizations on inserts and fetch (@ilmari, pull #66, PERL-129)
- Hash ordering fixes (@ilmari, pull #64)
- Double and int type helpers (@kenahoo, pull #65, PERL-227)
- TTL index support (@drtz, pull #60, PERL-222)
- Restored support for Perl 5.8.
- Support for native DBRefs.
[Bug Fixes]
- UTF-8 fixes (@ilmari, pull #67, #68)
- DateTime fixes (@kenahoo, pull #65)
- Don't do aggregation tests when running against MongoDB < 2.2.
0.47 - 0.503.4
[Enhancements]
- Ordered hash support for MongoDB::Cursor::hint() (Colin Syr)
- timegm() implementation for Windows (Stevie-O)
- aggregate() helper method
- find_and_modify helper
- Connection URI support enhancements (Tianon Gravi)
- MongoClient new top-level object
- Removing AUTOLOAD method examples from documentation
- Replacing $conn examples with $client in docs.
- Deprecation warning for MongoDB::Connection
- Removed dependence on Any::Moose
- Support for fsyncLock/unlock (Casey Rojas)
- Support for dt_type param, DateTime::Tiny and raw epoch times
- Support for UTF8 hash keys (Roman Yerin)
- Support for 'j' param to turn on journaling (Casey Rojas)
[Bug Fixes]
- Miscellaneous documentation fixes (Andrey Khozov, others)
- Fixed socket timeout bug (nightlord)
- Fixed broken regex test for Perls < 5.14.
- More accurate isUTF8 function (Jan Anderssen)
- Proper serialization of regex flags via re::regexp_pattern
0.46
[Enhancements]
- Added SSL support (Casey Rojas). See new documentation on
MongoDB::Connection's ssl attribute.
- Added MongoDB::BSON::Binary type and MongoDB::BSON::use_binary option. See
the Data Types documentation on using the Binary type instead of string refs
for binary data.
- Change default binary type from 2 to 0. See MongoDB::BSON::Binary for
more information about the implications of this change.
[Bug Fixes]
- Fix auth connection issues (Olly Stephens)
- Fix driver creating duplicate connections when port isn't specified (Olly