bson 4.8.0-java → 4.9.2-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/README.md +18 -6
  5. data/lib/bson-ruby.jar +0 -0
  6. data/lib/bson.rb +1 -1
  7. data/lib/bson/active_support.rb +1 -1
  8. data/lib/bson/array.rb +14 -3
  9. data/lib/bson/binary.rb +1 -1
  10. data/lib/bson/boolean.rb +9 -2
  11. data/lib/bson/code.rb +1 -1
  12. data/lib/bson/code_with_scope.rb +16 -3
  13. data/lib/bson/config.rb +1 -1
  14. data/lib/bson/date.rb +1 -1
  15. data/lib/bson/date_time.rb +1 -1
  16. data/lib/bson/db_pointer.rb +7 -1
  17. data/lib/bson/decimal128.rb +1 -1
  18. data/lib/bson/decimal128/builder.rb +1 -1
  19. data/lib/bson/document.rb +1 -1
  20. data/lib/bson/environment.rb +2 -1
  21. data/lib/bson/error.rb +4 -0
  22. data/lib/bson/ext_json.rb +4 -3
  23. data/lib/bson/false_class.rb +1 -1
  24. data/lib/bson/float.rb +1 -1
  25. data/lib/bson/hash.rb +14 -3
  26. data/lib/bson/int32.rb +1 -1
  27. data/lib/bson/int64.rb +1 -1
  28. data/lib/bson/integer.rb +1 -1
  29. data/lib/bson/json.rb +1 -1
  30. data/lib/bson/max_key.rb +1 -1
  31. data/lib/bson/min_key.rb +1 -1
  32. data/lib/bson/nil_class.rb +1 -1
  33. data/lib/bson/object.rb +1 -1
  34. data/lib/bson/object_id.rb +1 -1
  35. data/lib/bson/open_struct.rb +1 -1
  36. data/lib/bson/regexp.rb +8 -2
  37. data/lib/bson/registry.rb +1 -1
  38. data/lib/bson/specialized.rb +1 -1
  39. data/lib/bson/string.rb +1 -1
  40. data/lib/bson/symbol.rb +1 -1
  41. data/lib/bson/time.rb +40 -6
  42. data/lib/bson/time_with_zone.rb +1 -1
  43. data/lib/bson/timestamp.rb +1 -1
  44. data/lib/bson/true_class.rb +1 -1
  45. data/lib/bson/undefined.rb +1 -1
  46. data/lib/bson/version.rb +2 -2
  47. data/spec/bson/array_spec.rb +1 -1
  48. data/spec/bson/binary_spec.rb +1 -1
  49. data/spec/bson/binary_uuid_spec.rb +1 -1
  50. data/spec/bson/boolean_spec.rb +1 -1
  51. data/spec/bson/code_spec.rb +1 -1
  52. data/spec/bson/code_with_scope_spec.rb +1 -1
  53. data/spec/bson/date_spec.rb +1 -1
  54. data/spec/bson/date_time_spec.rb +1 -1
  55. data/spec/bson/decimal128_spec.rb +1 -1
  56. data/spec/bson/document_spec.rb +1 -1
  57. data/spec/bson/ext_json_parse_spec.rb +34 -2
  58. data/spec/bson/false_class_spec.rb +1 -1
  59. data/spec/bson/float_spec.rb +1 -1
  60. data/spec/bson/hash_spec.rb +1 -1
  61. data/spec/bson/int32_spec.rb +1 -1
  62. data/spec/bson/int64_spec.rb +1 -1
  63. data/spec/bson/integer_spec.rb +1 -1
  64. data/spec/bson/json_spec.rb +1 -1
  65. data/spec/bson/max_key_spec.rb +1 -1
  66. data/spec/bson/min_key_spec.rb +1 -1
  67. data/spec/bson/nil_class_spec.rb +1 -1
  68. data/spec/bson/object_id_spec.rb +1 -1
  69. data/spec/bson/object_spec.rb +1 -1
  70. data/spec/bson/open_struct_spec.rb +1 -1
  71. data/spec/bson/raw_spec.rb +12 -1
  72. data/spec/bson/regexp_spec.rb +1 -1
  73. data/spec/bson/registry_spec.rb +1 -1
  74. data/spec/bson/string_spec.rb +1 -1
  75. data/spec/bson/symbol_spec.rb +1 -1
  76. data/spec/bson/time_spec.rb +205 -2
  77. data/spec/bson/time_with_zone_spec.rb +1 -1
  78. data/spec/bson/timestamp_spec.rb +1 -1
  79. data/spec/bson/true_class_spec.rb +1 -1
  80. data/spec/bson/undefined_spec.rb +1 -1
  81. data/spec/bson_spec.rb +1 -1
  82. data/spec/runners/common_driver.rb +1 -1
  83. data/spec/runners/corpus.rb +13 -10
  84. data/spec/runners/corpus_legacy.rb +1 -1
  85. data/spec/spec_helper.rb +1 -1
  86. data/spec/spec_tests/data/corpus/top.json +0 -4
  87. data/spec/support/shared_examples.rb +1 -1
  88. metadata +79 -82
  89. metadata.gz.sig +0 -0
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2018-2019 MongoDB Inc.
1
+ # Copyright (C) 2018-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2009-2019 MongoDB Inc.
1
+ # Copyright (C) 2009-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2009-2019 MongoDB Inc.
1
+ # Copyright (C) 2009-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2009-2019 MongoDB Inc.
1
+ # Copyright (C) 2009-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2009-2019 MongoDB Inc.
1
+ # Copyright (C) 2009-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2016-2019 MongoDB, Inc.
1
+ # Copyright (C) 2016-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2016-2019 MongoDB, Inc.
1
+ # Copyright (C) 2016-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -91,10 +91,19 @@ module BSON
91
91
  end
92
92
  end
93
93
 
94
+ class TestBase
95
+
96
+ private
97
+
98
+ def decode_hex(obj)
99
+ [ obj ].pack('H*')
100
+ end
101
+ end
102
+
94
103
  # Represents a single BSON Corpus test.
95
104
  #
96
105
  # @since 4.2.0
97
- class ValidTest
106
+ class ValidTest < TestBase
98
107
  extend Forwardable
99
108
 
100
109
  # Instantiate the new Test.
@@ -151,19 +160,13 @@ module BSON
151
160
  def relaxed_extjson_doc
152
161
  relaxed_extjson && ::JSON.parse(relaxed_extjson)
153
162
  end
154
-
155
- private
156
-
157
- def decode_hex(obj)
158
- [ obj ].pack('H*')
159
- end
160
163
  end
161
164
 
162
- class DecodeErrorTest
165
+ class DecodeErrorTest < TestBase
163
166
  def initialize(spec, test_params)
164
167
  @spec = spec
165
168
  @description = test_params['description']
166
- @bson = test_params['bson']
169
+ @bson = decode_hex(test_params['bson'])
167
170
  end
168
171
 
169
172
  attr_reader :description, :bson
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2016-2019 MongoDB, Inc.
1
+ # Copyright (C) 2016-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2009-2019 MongoDB Inc.
1
+ # Copyright (C) 2009-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -41,10 +41,6 @@
41
41
  "description": "Stated length exceeds byte count, with truncated document",
42
42
  "bson": "1200000002666F6F0004000000626172"
43
43
  },
44
- {
45
- "description": "Stated length less than byte count, with garbage after envelope",
46
- "bson": "1200000002666F6F00040000006261720000DEADBEEF"
47
- },
48
44
  {
49
45
  "description": "Stated length exceeds byte count, with valid envelope",
50
46
  "bson": "1300000002666F6F00040000006261720000"
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2009-2019 MongoDB Inc.
1
+ # Copyright (C) 2009-2020 MongoDB Inc.
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bson
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.8.0
4
+ version: 4.9.2
5
5
  platform: java
6
6
  authors:
7
7
  - Tyler Brock
@@ -33,11 +33,10 @@ cert_chain:
33
33
  gpvfPNWMwyBDlHaNS3GfO6cRRxBOvEG05GUCsvtTY4Bpe8yjE64wg1ymb47LMOnv
34
34
  Qb1lGORmf/opg45mluKUYl7pQNZHD0d3
35
35
  -----END CERTIFICATE-----
36
- date: 2020-02-27 00:00:00.000000000 Z
36
+ date: 2020-06-08 00:00:00.000000000 Z
37
37
  dependencies: []
38
38
  description: A fully featured BSON specification implementation in Ruby
39
39
  email:
40
- - mongodb-dev@googlegroups.com
41
40
  executables: []
42
41
  extensions: []
43
42
  extra_rdoc_files: []
@@ -208,7 +207,6 @@ metadata:
208
207
  changelog_uri: https://github.com/mongodb/bson-ruby/releases
209
208
  documentation_uri: https://docs.mongodb.com/ruby-driver/current/tutorials/bson-v4/
210
209
  homepage_uri: https://docs.mongodb.com/ruby-driver/current/tutorials/bson-v4/
211
- mailing_list_uri: https://groups.google.com/group/mongodb-user
212
210
  source_code_uri: https://github.com/mongodb/bson-ruby
213
211
  post_install_message:
214
212
  rdoc_options: []
@@ -225,119 +223,118 @@ required_rubygems_version: !ruby/object:Gem::Requirement
225
223
  - !ruby/object:Gem::Version
226
224
  version: 1.3.6
227
225
  requirements: []
228
- rubyforge_project:
229
- rubygems_version: 2.7.6
226
+ rubygems_version: 3.0.6
230
227
  signing_key:
231
228
  specification_version: 4
232
229
  summary: Ruby implementation of the BSON specification
233
230
  test_files:
234
231
  - spec/bson_spec.rb
235
232
  - spec/spec_helper.rb
236
- - spec/bson/min_key_spec.rb
237
- - spec/bson/undefined_spec.rb
238
- - spec/bson/regexp_spec.rb
233
+ - spec/runners/corpus.rb
234
+ - spec/runners/corpus_legacy.rb
235
+ - spec/runners/common_driver.rb
236
+ - spec/bson/max_key_spec.rb
237
+ - spec/bson/byte_buffer_spec.rb
238
+ - spec/bson/ext_json_parse_spec.rb
239
+ - spec/bson/byte_buffer_read_spec.rb
239
240
  - spec/bson/decimal128_spec.rb
240
- - spec/bson/code_spec.rb
241
- - spec/bson/time_spec.rb
241
+ - spec/bson/date_spec.rb
242
242
  - spec/bson/object_spec.rb
243
- - spec/bson/integer_spec.rb
243
+ - spec/bson/int64_spec.rb
244
+ - spec/bson/int32_spec.rb
245
+ - spec/bson/object_id_spec.rb
246
+ - spec/bson/hash_spec.rb
244
247
  - spec/bson/string_spec.rb
245
- - spec/bson/byte_buffer_read_spec.rb
246
- - spec/bson/config_spec.rb
247
- - spec/bson/json_spec.rb
248
248
  - spec/bson/boolean_spec.rb
249
- - spec/bson/hash_spec.rb
249
+ - spec/bson/timestamp_spec.rb
250
250
  - spec/bson/open_struct_spec.rb
251
+ - spec/bson/config_spec.rb
251
252
  - spec/bson/nil_class_spec.rb
252
- - spec/bson/array_spec.rb
253
+ - spec/bson/regexp_spec.rb
254
+ - spec/bson/time_with_zone_spec.rb
255
+ - spec/bson/code_spec.rb
253
256
  - spec/bson/false_class_spec.rb
254
- - spec/bson/symbol_raw_spec.rb
255
- - spec/bson/binary_uuid_spec.rb
256
- - spec/bson/ext_json_parse_spec.rb
257
- - spec/bson/true_class_spec.rb
258
- - spec/bson/date_spec.rb
259
- - spec/bson/byte_buffer_write_spec.rb
260
- - spec/bson/int64_spec.rb
261
- - spec/bson/timestamp_spec.rb
262
- - spec/bson/max_key_spec.rb
263
257
  - spec/bson/raw_spec.rb
264
- - spec/bson/byte_buffer_spec.rb
265
- - spec/bson/document_spec.rb
266
- - spec/bson/code_with_scope_spec.rb
267
- - spec/bson/float_spec.rb
268
- - spec/bson/time_with_zone_spec.rb
269
258
  - spec/bson/binary_spec.rb
270
- - spec/bson/registry_spec.rb
259
+ - spec/bson/array_spec.rb
260
+ - spec/bson/code_with_scope_spec.rb
271
261
  - spec/bson/symbol_spec.rb
262
+ - spec/bson/float_spec.rb
263
+ - spec/bson/symbol_raw_spec.rb
264
+ - spec/bson/true_class_spec.rb
265
+ - spec/bson/integer_spec.rb
266
+ - spec/bson/binary_uuid_spec.rb
267
+ - spec/bson/time_spec.rb
268
+ - spec/bson/json_spec.rb
272
269
  - spec/bson/date_time_spec.rb
273
- - spec/bson/object_id_spec.rb
274
- - spec/bson/int32_spec.rb
275
- - spec/support/utils.rb
270
+ - spec/bson/document_spec.rb
271
+ - spec/bson/byte_buffer_write_spec.rb
272
+ - spec/bson/min_key_spec.rb
273
+ - spec/bson/undefined_spec.rb
274
+ - spec/bson/registry_spec.rb
276
275
  - spec/support/shared_examples.rb
277
276
  - spec/support/spec_config.rb
278
- - spec/spec_tests/corpus_spec.rb
277
+ - spec/support/utils.rb
279
278
  - spec/spec_tests/corpus_legacy_spec.rb
279
+ - spec/spec_tests/corpus_spec.rb
280
280
  - spec/spec_tests/common_driver_spec.rb
281
- - spec/spec_tests/data/decimal128/decimal128-6.json
282
- - spec/spec_tests/data/decimal128/decimal128-3.json
283
- - spec/spec_tests/data/decimal128/decimal128-1.json
284
- - spec/spec_tests/data/decimal128/decimal128-4.json
285
- - spec/spec_tests/data/decimal128/decimal128-7.json
286
- - spec/spec_tests/data/decimal128/decimal128-5.json
287
- - spec/spec_tests/data/decimal128/decimal128-2.json
288
- - spec/spec_tests/data/corpus_legacy/code_w_scope.json
289
- - spec/spec_tests/data/corpus_legacy/undefined.json
290
281
  - spec/spec_tests/data/corpus_legacy/code.json
291
- - spec/spec_tests/data/corpus_legacy/oid.json
292
- - spec/spec_tests/data/corpus_legacy/timestamp.json
293
- - spec/spec_tests/data/corpus_legacy/string.json
294
- - spec/spec_tests/data/corpus_legacy/binary.json
282
+ - spec/spec_tests/data/corpus_legacy/code_w_scope.json
295
283
  - spec/spec_tests/data/corpus_legacy/null.json
296
- - spec/spec_tests/data/corpus_legacy/int32.json
297
- - spec/spec_tests/data/corpus_legacy/maxkey.json
298
- - spec/spec_tests/data/corpus_legacy/array.json
284
+ - spec/spec_tests/data/corpus_legacy/boolean.json
285
+ - spec/spec_tests/data/corpus_legacy/oid.json
299
286
  - spec/spec_tests/data/corpus_legacy/regex.json
287
+ - spec/spec_tests/data/corpus_legacy/array.json
288
+ - spec/spec_tests/data/corpus_legacy/document.json
289
+ - spec/spec_tests/data/corpus_legacy/undefined.json
290
+ - spec/spec_tests/data/corpus_legacy/binary.json
300
291
  - spec/spec_tests/data/corpus_legacy/minkey.json
292
+ - spec/spec_tests/data/corpus_legacy/maxkey.json
293
+ - spec/spec_tests/data/corpus_legacy/int32.json
294
+ - spec/spec_tests/data/corpus_legacy/timestamp.json
301
295
  - spec/spec_tests/data/corpus_legacy/top.json
302
- - spec/spec_tests/data/corpus_legacy/boolean.json
296
+ - spec/spec_tests/data/corpus_legacy/string.json
303
297
  - spec/spec_tests/data/corpus_legacy/double.json
304
- - spec/spec_tests/data/corpus_legacy/document.json
305
298
  - spec/spec_tests/data/corpus_legacy/failures/symbol.json
299
+ - spec/spec_tests/data/corpus_legacy/failures/datetime.json
306
300
  - spec/spec_tests/data/corpus_legacy/failures/int64.json
307
301
  - spec/spec_tests/data/corpus_legacy/failures/dbpointer.json
308
- - spec/spec_tests/data/corpus_legacy/failures/datetime.json
309
- - spec/spec_tests/data/corpus/code_w_scope.json
310
- - spec/spec_tests/data/corpus/undefined.json
311
302
  - spec/spec_tests/data/corpus/code.json
312
- - spec/spec_tests/data/corpus/decimal128-6.json
313
- - spec/spec_tests/data/corpus/oid.json
314
- - spec/spec_tests/data/corpus/timestamp.json
315
- - spec/spec_tests/data/corpus/decimal128-3.json
316
- - spec/spec_tests/data/corpus/string.json
317
- - spec/spec_tests/data/corpus/binary.json
303
+ - spec/spec_tests/data/corpus/code_w_scope.json
304
+ - spec/spec_tests/data/corpus/decimal128-1.json
318
305
  - spec/spec_tests/data/corpus/null.json
319
- - spec/spec_tests/data/corpus/int32.json
320
306
  - spec/spec_tests/data/corpus/multi-type.json
321
- - spec/spec_tests/data/corpus/decimal128-1.json
322
- - spec/spec_tests/data/corpus/decimal128-4.json
323
- - spec/spec_tests/data/corpus/README.md
324
- - spec/spec_tests/data/corpus/maxkey.json
325
- - spec/spec_tests/data/corpus/array.json
326
- - spec/spec_tests/data/corpus/regex.json
327
- - spec/spec_tests/data/corpus/dbref.json
307
+ - spec/spec_tests/data/corpus/boolean.json
328
308
  - spec/spec_tests/data/corpus/symbol.json
329
- - spec/spec_tests/data/corpus/minkey.json
309
+ - spec/spec_tests/data/corpus/datetime.json
310
+ - spec/spec_tests/data/corpus/oid.json
311
+ - spec/spec_tests/data/corpus/regex.json
312
+ - spec/spec_tests/data/corpus/int64.json
330
313
  - spec/spec_tests/data/corpus/decimal128-7.json
331
- - spec/spec_tests/data/corpus/top.json
314
+ - spec/spec_tests/data/corpus/array.json
315
+ - spec/spec_tests/data/corpus/decimal128-3.json
332
316
  - spec/spec_tests/data/corpus/decimal128-5.json
333
- - spec/spec_tests/data/corpus/boolean.json
334
- - spec/spec_tests/data/corpus/int64.json
335
- - spec/spec_tests/data/corpus/decimal128-2.json
317
+ - spec/spec_tests/data/corpus/document.json
318
+ - spec/spec_tests/data/corpus/multi-type-deprecated.json
319
+ - spec/spec_tests/data/corpus/README.md
336
320
  - spec/spec_tests/data/corpus/dbpointer.json
321
+ - spec/spec_tests/data/corpus/decimal128-4.json
322
+ - spec/spec_tests/data/corpus/undefined.json
323
+ - spec/spec_tests/data/corpus/decimal128-6.json
324
+ - spec/spec_tests/data/corpus/dbref.json
325
+ - spec/spec_tests/data/corpus/binary.json
326
+ - spec/spec_tests/data/corpus/minkey.json
327
+ - spec/spec_tests/data/corpus/decimal128-2.json
328
+ - spec/spec_tests/data/corpus/maxkey.json
329
+ - spec/spec_tests/data/corpus/int32.json
330
+ - spec/spec_tests/data/corpus/timestamp.json
331
+ - spec/spec_tests/data/corpus/top.json
332
+ - spec/spec_tests/data/corpus/string.json
337
333
  - spec/spec_tests/data/corpus/double.json
338
- - spec/spec_tests/data/corpus/multi-type-deprecated.json
339
- - spec/spec_tests/data/corpus/document.json
340
- - spec/spec_tests/data/corpus/datetime.json
341
- - spec/runners/corpus_legacy.rb
342
- - spec/runners/common_driver.rb
343
- - spec/runners/corpus.rb
334
+ - spec/spec_tests/data/decimal128/decimal128-1.json
335
+ - spec/spec_tests/data/decimal128/decimal128-7.json
336
+ - spec/spec_tests/data/decimal128/decimal128-3.json
337
+ - spec/spec_tests/data/decimal128/decimal128-5.json
338
+ - spec/spec_tests/data/decimal128/decimal128-4.json
339
+ - spec/spec_tests/data/decimal128/decimal128-6.json
340
+ - spec/spec_tests/data/decimal128/decimal128-2.json
metadata.gz.sig CHANGED
Binary file