forked from apache/avro
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES.txt
2675 lines (1696 loc) · 90.6 KB
/
CHANGES.txt
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
Avro Change Log
Trunk (not yet released)
NEW FEATURES
IMPROVEMENTS
AVRO-1260. Ruby: Improve read performance. (Martin Kleppmann via cutting)
AVRO-1267. Java: Permit dashes in IDL property names. (cutting)
AVRO-1272. Ruby: Improve schema namespace handling.
(Martin Kleppmann via cutting)
AVRO-1268. Java: Extend support for stringables from reflect to
specific. String schemas in generated classes now support the
"java-class" and "java-key-class" properties. The built-in Java
types BigDecimal, BigInteger, URI, URL, Date and File can now be
fields in generated classes. (Alexandre Normand and cutting)
AVRO-1259. Java: Improve Trevni's encoding of sparse columns.
(cutting)
AVRO-1287. Add data file with deflate codec to the interoperability
test suite. (martinkl)
AVRO-1288. Ruby: Add support for deflate codec in data files.
(martinkl)
BUG FIXES
AVRO-1266. Java: Fix mapred.AvroMultipleOutputs to support multiple
different schemas. (Ashish Nagavaram via martinkl)
AVRO-1295. Java: Fix printing of a non-null namespace within a
null namespace. (cutting)
Avro 1.7.4 (22 February 2012)
NEW FEATURES
AVRO-1248. Avro Tool to dump protocol of a remote RPC Service
(Gareth Davis via philz)
AVRO-1229. Add support for booleans to Trevni. (cutting)
AVRO-1250. Add a command-line tool to concatenate data files.
(Nick White via cutting)
AVRO-1243. Java: Add support for bzip2 file compression and
translate Hadoop job compression options. (Ted Malaska via cutting)
AVRO-1253. Java: Add support for bzip2 file compression to Trevni.
(Ted Malaska via cutting)
AVRO-1254. Java: Add support for new mapreduce APIs to Trevni.
(Ted Malaska via cutting)
IMPROVEMENTS
AVRO-1211. Add MR guide to documentation. (Skye Wanderman-Milne via
tomwhite)
AVRO-1221. Java: Fix TestSaslDigestMd5 to pass on IBM JVM.
(Rodrigo Trujillo via cutting)
AVRO-1008. Java: Improve support for forcing connection
handshakes. (jbaldassari & cutting)
AVRO-970. Java: Make Codec API public. (Rui Pereira via cutting)
AVRO-1223. Java: Add a static method to generated classes that
returns its schema, getClassSchema(). (cutting)
AVRO-1232. Java: Add a toString() method to AvroWrapper so that it
works with TextOutputFormat. (Garrett Wu via cutting)
AVRO-1241. Java: Optimize Trevni string input. (Joseph Adler via cutting)
AVRO-1198. Java: Improve error message for malformed data. (cutting)
AVRO-1252. Java: Add a '-string' option to compiler command line
to cause java.lang.String to be used instead of Utf8. (cutting)
AVRO-1255. Python: Make 'names' parameter optional in to_json methods.
(Jeremy Kahn via cutting)
AVRO-1251. Java: Add TestNettyServerWithCompression, illustrating
how one can add compression to Avro Netty-based RPC.
(Ted Malaska via cutting)
BUG FIXES
AVRO-1231. Java: Fix Trevni shredder to work on non-recursive
schemas with multiple references. (Mark Wagner via cutting)
AVRO-1230. avro-mapred-1.7.3-hadoop1.jar does not work with
Hadoop 1. (tomwhite)
AVRO-1233. Java: Fix InputBuffer's constructor to use the
specified initial position. (Mark Wagner via cutting)
AVRO-1227. Java: Large ByteBuffers can corrupt output. (cutting)
AVRO-1228. Java: Fix Trevni to use default values for missing Avro fields.
(cutting)
AVRO-1240. Java: Fix SpecificDatumReader(Class) constructor to use
correct ClassLoader. (cutting)
AVRO-1242. Java: Fix AvroTrevniOutputFormat to correctly get file
metadata from JobConf. (Ted Malaska via cutting)
AVRO-1220. Java: Fix a deadlock when reading by replacing parser
symbol constructors with factory methods. (cutting)
AVRO-1249. Java: Fix DataFileWriter#close() to not throw an
exception when called twice. (E. Sammer via cutting)
AVRO-1247. Java: Fix Requestor and Responder implementations to
use correct ClassLoader. (cutting)
AVRO-1215. Java: Fix AvroMultipleOutputs when specifying baseOutputPath.
(Ashish Nagavaram via cutting)
AVRO-1257. Ruby: Fix UTF-8 encoding in Ruby 1.9.
(Martin Kleppmann via cutting)
AVRO-1258. Ruby: Fix handing of RPC errors. (Martin Kleppmann via cutting)
Avro 1.7.3 (6 December 2012)
NEW FEATURES
AVRO-485. JavaScript: Add validator. (Quinn Slack via cutting)
AVRO-1157. Java: Extend schema and protocol property support from
string-only to full JSON. (cutting)
AVRO-1186. Java: Extend specific compiler to emit Java annotations
on interfaces, classes, fields and methods for the property
"javaAnnotation". The value of the property may either be a
string or a JSON array of strings in order to emit multiple
annotations. (cutting)
AVRO-1188. Java: Permit external schema imports for schemas in
Maven plugin. (Sharmarke Aden via tomwhite)
AVRO-1202. Java & Python: Add "Getting Started" guides.
(Skye Wanderman-Milne via cutting)
AVRO-1205. Java: Add stereotype annotation to generated classes.
All classes generated by the specific compiler now have the
annotation org.apache.avro.specific.AvroGenerated.
(Sharmarke Aden via cutting)
AVRO-988. Java: Add option to make fields in generated classes
private, public, or public & deprecated. This is specified with
the "fieldVisibility" option in Maven and is public_deprecated by
default for compatibility. (Jeff Kolesky via cutting)
AVRO-1209. Java: Add option to generate immutable classes, without
setter methods. This is specified with the "createSetters"
boolean option in Maven and is true by default for compatibility.
(Jeff Kolesky via cutting)
IMPROVEMENTS
AVRO-1169. Java: Reduce memory footprint of resolver.
(Hernan Otero via cutting)
AVRO-1183. Java: Provide a better error message when the schema
for a Pair cannot be inferred. (cutting)
AVRO-1207. Java: Add tests for Maven plugins. (Sharmarke Aden via cutting)
AVRO-1210. Java: Fix mistakes in AvroMultipleOutputs error messages.
(Dave Beech via cutting)
AVRO-1178. Java: Fix typos in parsing document.
(Martin Kleppmann via cutting)
AVRO-1089. C: Remove performance penalty when using resolved writer with
arrays. (dcreager)
BUG FIXES
AVRO-1171. Java: Don't call configure() twice on mappers & reducers.
(Dave Beech via cutting)
AVRO-1170. Java: Avro's new mapreduce APIs don't work with Hadoop 2.
(tomwhite)
AVRO-1197. Java: Expose mapreduce tests so that 'maven install'
works correctly. (Mike Percy via cutting)
AVRO-1200. DatumWriter can write malformed data if collection is
modified during write. (tomwhite)
AVRO-1199. Java: Fix SortedKeyValueFile to copy the key used to
compare against next. Also improve GenericData#deepCopy() to be
generic, so that its return type matches its parameter type. (cutting)
AVRO-1201. Java: Fix GenericData#toString() to generate valid JSON for
enum values. (Sharmarke Aden via cutting)
AVRO-1206. Ruby: Fix UTF-8 handling in Ruby 1.9.
(Nicolas Fouché via cutting)
AVRO-1177. Ruby: Fix RPC to only send handshake for first request
over a connection. (Georg Franz via cutting)
AVRO-1175. Java: Clear thread local reference in BinaryData#compare().
(cutting)
AVRO-1163. C: Fix a memory leak in avro_fixed_private(). (Maxim
Pugachev via brucem)
AVRO-1174. C: Fix Windows build. (Stefan Langer via brucem)
Avro 1.7.2 (20 October 2012)
NEW FEATURES
AVRO-806. Add specification of the Trevni columnar file format
and a Java implementation of it. (cutting)
IMPROVEMENTS
AVRO-1146. Java: Serialize several built-in Java classes as
strings, including BigDecimal, BigInteger, URI, URL, Date and
File. (Alexandre Normand and cutting)
AVRO-1147. Java: Permit stringable map keys in reflect.
(Alexandre Normand)
AVRO-1151. Netty Avro server should expose the number of connections
currently open. (Hari Shreedharan via tomwhite)
AVRO-1149. Java: Add a constructor to generated classes with all
fields as parameters. (Gabriel Reid via cutting)
AVRO-1138. C: Add function for opening existing data file with non-default
block size. (Maxim Pugachev via dcreager)
AVRO-1129. C: Detect when avro_schema_decref frees schema.
(Maxim Pugachev via dcreager)
AVRO-1162. Java: Extend AvroKeyValueOutputFormat to support
reflection. (Alexandre Normand via cutting)
AVRO-1142. Clarify Snappy block compression in specification. (cutting)
BUG FIXES
AVRO-1128. Java: Fix SpecificRecordBase#equals() to work for
records that contain maps. (cutting)
AVRO-1131. Generated build makefiles for MSYS/MinGW use Visual
Studio compiler flags (Laurent Moss via thiru)
AVRO-1103. Java: Fix SpecificData and mapreduce to use correct
classloader. (cutting)
AVRO-1135. Avro C++ fails to build on Mac. (thiru)
AVRO-1140. Buffer.hh includes Config.hh without "../" (Jan van der
Lugt via thiru)
AVRO-1141. Avro data files are created without O_TRUNC (Martin
Nagy via thiru)
AVRO-1143. avrogencpp generates $Undefined$ for some union types (thiru)
AVRO-1152. Java: Fix TestTraceSingletons for Java 7. (cutting)
AVRO-1111. Malformed data can cause OutOfMemoryError in Avro IPC.
(Mike Percy via tomwhite)
AVRO-1155. Stringable Date test in TestReflect fails if timezone doesn't
match locale's default. Removed Date from built-in stringables. (tomwhite)
AVRO-851. Java: Fix a bug in GenericData#toString() when escaping
characters. (Jeff Mesnil via cutting)
AVRO-1154. Java: Fix NettyTransciever to not hang when the server
is stopped. (Karel Vervaeke & Bruno Dumon via cutting)
AVRO-1158. C: Fixed infinite loop in deflate decompression codec.
(Lucas Martin-King via dcreager)
AVRO-1159. C: Check union discriminants in avro_value_read.
(Lucas Martin-King via dcreager)
AVRO-1160. C: Better error reporting in avrocat. (Lucas Martin-King
via dcreager)
AVRO-1166. Java: Fix bug in SpecificData.getSchema(Map). (George
Fletcher via cutting)
AVRO-1150. Java: Fix tests to create all temporary files in target
directories. (Gabriel Reid via cutting)
AVRO-1164. C: Clean up valgrind warnings in test_avro_schema test case.
(Vivek Nadkarni via dcreager)
AVRO-1165. C: Fix memory leak in generic value implementations involving
LINK schemas. (Vivek Nadkarni via dcreager)
AVRO-1161. C: Fix memory leak in avro{append,cat,mod,pipe} (dcreager)
Avro 1.7.1 (16 July 2012)
NEW FEATURES
AVRO-1106. Java: Add AvroMultipleOutputs for newer mapreduce API.
(Ashish Nagavaram via cutting)
AVRO-1112. Java: Add support for Snappy codec to newer mapreduce API.
(Matt Mead via cutting)
AVRO-1108. Java: Add support for reflect API to newer mapreduce API.
(cutting)
AVRO-1104. C: avroappend utility. (Lucas Martin-King via dcreager)
AVRO-1117. C: avro_file_writer_create_with_codec_fp and
avro_file_writer_create_with_fp functions, with should_close parameter.
(Lucas Martin-King via dcreager)
IMPROVEMENTS
AVRO-1120. Let AvroMultipleOutput jobs use multiple schemas with
map-only jobs. (Ashish Nagavaram via cutting)
AVRO-1119. Java: Permit NettyServer to be used with SSL.
(Sebastian Ortega via cutting)
AVRO-1125. Java: Remove un-needed warning about reflect API. (cutting)
BUG FIXES
AVRO-1114. Java: Update license headers for new mapreduce code. (cutting)
AVRO-1069. Java: Fix HttpTransceiver to close streams. (cutting)
AVRO-1115. C: Fix crash error in codec cleanup code. (Maxim Pugachev via
dcreager)
AVRO-1116. C++ code crashes on Data files with no data. (thiru)
AVRO-1109. CSharp specific fails on multidimensional arrays.
(Mark Farnan via thiru)
AVRO-1153. Java: Fix reflect to be able to write unions that
contain stringable schemas. (Alexandre Normand via cutting)
Avro 1.7.0 (11 June 2012)
NEW FEATURES
AVRO-301. Handle non-reserved properties appropriately in the Python
implementation. (Macrio Silva via tebeka)
AVRO-300. Support "doc" field in schemas in Python implementation.
(Harsh J via tebeka)
AVRO-1006. Add schema fingerprinting to specification and Java.
(Raymie Stata via cutting)
AVRO-593. Java: Add support for Hadoop's newer mapreduce API.
(Garrett Wu via cutting)
AVRO-1052. Java: Add AvroMultipleOutputFormat, to permit splitting
mapreduce output to multiple locations. (Ashish Nagavaram via cutting)
IMPROVEMENTS
AVRO-1060. Java: Upgrade Netty to version 3.4.0. (Karthik K via cutting)
AVRO-1068. Avro Java does not build on recent Eclipse versions
with m2eclipse (thiru)
AVRO-551. C: Now compiles on Win32, using Visual Studio C++ 2008.
(Vivek Nadkarni via dcreager)
AVRO-1075. Add some Eclipse stuff to .gitignore. (Karthik K via cutting)
AVRO-1085. Fingerprinting for C#. (Eric Hauser via thiru)
AVRO-1079. C++ Generator, improve include guard generation. (thiru)
AVRO-1062. Java: Remove use of java.rmi.server.UID so things work
on Android. (Kevin Zhao via cutting)
AVRO-1090. Java: Permit appending to files besides java.io.File,
e.g., files in HDFS. (cutting)
AVRO-1074. Java: Optimize Utf8#length() and #toString() to not
allocate a String when the length is zero. (cutting)
AVRO-1050. PHP: Optimize memory use by string append. (A B via cutting)
AVRO-1095. C++ compiler warns about control reaching end of
doAdavance (in JsonIO.cc) which returns something other than
void. (thiru)
AVRO-1026. Add namespace support to C++. (Keh-Li Sheng via thiru)
AVRO-1097. Fix BinaryDecoder so that EOFException is thrown
instead of a generic IOException when reading ints and longs past
the end of file. (thiru & cutting)
AVRO-1098: CSharp: Fix compilation to work under older versions of Mono.
(cutting)
BUG FIXES
AVRO-1045. Java: Fix a bug in GenericData#deepCopy() of ByteBuffer values.
(cutting)
AVRO-1055. Race condition in Java fingerprinting code (thiru)
AVRO-954. Typo in JsonCodec.cc (Nebojsa Sabovic via thiru)
AVRO-1045. C: Use less stack space in avro_file_writer_create (dcreager)
AVRO-1070. AvroSequenceFileOutputFormat is in wrong package. (thiru)
AVRO-1080. JsonIO.cc should allow \u escape sequence in
string. (Keh-Li Sheng via thiru)
AVRO-1066. ArrayIndexOutOfBoundsException in ParsingEncoder when
trying to use a json encoder to serialize a deep object
graph. (thiru)
AVRO-1065. NodeRecord::isValid() treats records with no fields as
invalid. (thiru)
AVRO-1081. Java: Fix to be able to write ByteBuffers that have no
backing array. Also fix reflection to correctly read ByteBuffer
fields. (cutting)
AVRO-1046. Java: Fix ReflectDatumReader to be able to read generic
or specific arrays. (cutting)
AVRO-1056. Java: Fix reflect to correctly handle unions containing
maps. (Kevin Zhao via cutting)
AVRO-1076. Java: Fix Protocol#equals() to consider
properties. (Karthik K via cutting)
AVRO-1094. Java: Fix specific compiler to better support
non-default templates. (Ed Kohlwey via cutting)
AVRO-1082. C: Avoid leaking open FILE objects.
(Pugachev Maxim via dcreager)
AVRO-1096. C: Don't set default CMAKE_OSX_ARCHITECTURES. (dcreager)
AVRO-1084. C: Fix reference counting in file_reader and file_writer.
(Pugachev Maxim via dcreager)
AVRO-1083. C: Fix multiple memory leaks. (Pugachev Maxim via dcreager)
AVRO-1086. C: Fix possible crash bug in default codec initialization.
(Pugachev Maxim via dcreager)
AVRO-1096. C: Describe CMAKE_OSX_ARCHITECTURES in installation
instructions. (dcreager)
AVRO-1088. C: Performance tests for arrays and schema resolution.
(Vivek Nadkarni via dcreager)
AVRO-1092. C: Error management code can be defined in a thread-safe
manner. (Pugachev Maxim and Vivek Nadkarni via dcreager)
AVRO-1091. C: Helper scripts for calling CMake.
(Vivek Nadkarni via dcreager)
AVRO-1087. C: avro_file_writer_open() and appending Avro values
works correctly. (Pugachev Maxim via dcreager)
AVRO-1102. C: Remove memory leak in avro_string(). (Maxim Pugachev via
dcreager)
AVRO-1099. Java: Fix JsonDecoder to permit floats and doubles to
be read from JSON values without decimal points, and for ints and
longs to be read from JSON values with decimal points. (cutting)
Avro 1.6.3 (5 March 2012)
AVRO-1077. Missing 'inline' for union set function. (thiru)
AVRO-1078. ostreamOutputStream declaration missing in C++ API (thiru)
AVRO-1051. Java: Fix specific RPC so that method is found when
parameters are a union of a primitive and null.
(Hamed Asghari via cutting)
AVRO-1049. Java: Fix GenericData.Record#equals() to correctly
compare schemas and fix Schema#equals() to consider order. (cutting)
IMPROVEMENTS
AVRO-1030. Fix a broken link in the documentation.
BUG FIXES
AVRO-1037. Problems using Avro 1.6.2 with Hadoop (CDH3 or 1.0) (scottcarey)
AVRO-1036. Fix a regression in IDL imports created by AVRO-971.
(George Fletcher & cutting)
AVRO-1031. C: Test cases made too many assumptions about memcmp
result. (dcreager)
AVRO-1033. C: Fixed x86 assembly implementation of atomic reference
counting primitives. (Vivek Nadkarni via dcreager)
AVRO-1034. C: Resolved readers initialize complex array values
correctly. (Vivek Nadkarni via dcreager)
AVRO-1038. C: Require GCC 4.5.0 to use GCC atomic instrinsics.
(Vivek Nadkarni via dcreager)
AVRO-1039. C: Don't use nonexistent codecs in test cases. (dcreager)
AVRO-1041. Java: Fix Utf8 to reuse array in more cases.
(Dave Irving via cutting)
AVRO-1027. Java: Fix deadlock in NettyTransceiver.
(Simon Wilkinson via cutting)
Avro 1.6.2 (13 February 2012)
NEW FEATURES
AVRO-854. Python: Permit DataFileWriter and DataFileReader to be
used as context managers in "with" statements. (Harsh J via cutting)
AVRO-986. C: avromod utility for modifying structural properties of
an Avro data file. (dcreager)
IMPROVEMENTS
AVRO-963. Java: Permit compiler template directory to be
overridden by Maven plugins. (George Fletcher via cutting)
AVRO-953. Python: Permit users to override HTTP path in RPC.
(Craig Landry via cutting)
AVRO-972. Java: Add support for Infinity and NaN as default values
for float and double. Since JSON does not permit these as numeric
types, we use the strings "NaN", "Infinity" and "-Infinity" in
schemas. These are also permitted in IDL. (cutting)
AVRO-965. Java: Enhance IDL to support properties for protocols
and messages. (George Fletcher via cutting)
AVRO-976. Java: Extend NettyServer to permit specification of an
ExecutionHandler, to handle multiple requests simultaneously.
(Bruno Dumon via cutting)
AVRO-960. C: avro_value_set_string and avro_value_set_string_len
input parameters are now "const char *" instead of "char *".
(Lucas Martin-King via dcreager)
AVRO-961. C: avrocat/avropipe can now read from stdin.
(Michael Cooper via dcreager)
AVRO-957. C: Codec support in C library. (Michael Cooper and Lucas
Martin-King via dcreager)
AVRO-926. Java: Fix tests to pass under JDK 7. (cutting)
AVRO-956. Remove dependency on Flex/Bison. (thiru)
AVRO-1011. Improve POM structure. (Lars Francke via scottcarey)
AVRO-1016. Java: Add Field#getAliases() method to better permit
copying of schemas. (cutting)
AVRO-1005. Java: Extend HttpTransceiver to permit specification of
a Proxy. (Craig Landry via cutting)
AVRO-1010. Java: Improve codec javadoc. (Lars Francke via cutting)
AVRO-1018. Java: add svn:ignore to eclipse generated files for
protobuf, thrift, and archetype modules (scottcarey)
AVRO-1019. Java: Add unit test for Netty server concurrent
execution. (jbaldassari)
AVRO-995. Java: Update Dependencies for 1.6.2. (scottcarey)
AVRO-1012. Java: Improve avro-service-archetype: POM and IT
changes. (Lars Francke via scottcarey)
AVRO-971. Java: Permit IDL imports from classpath in Maven.
(Victor Chau via cutting)
AVRO-1007. Java: Enhance builder API's validity checks.
(jbaldassari & cutting)
AVRO-1015. Support for C++ build using Micrsoft Visual Studio on Windows.
(thiru)
AVRO-1021. Clarify some naming issues in the specification.
(Raymie Stata via cutting)
AVRO-980. C: avro_schema_from_json ignores length parameter. Add
avro_schema_from_json_length that doesn't.
(Michael Cooper and dcreager)
BUG FIXES
AVRO-962. Java: Fix Maven plugin to support string type override.
(George Fletcher via cutting)
AVRO-835. C#: Fix codgen for protocols to not fail.
(Dona Alvarez via cutting)
AVRO-966. Java: Fix ReflectDatumWriter to be able to correctly
write unions containing Collection and/or ByteBuffer. (cutting)
AVRO-977. Java: Fix codegen to not generate deprecated code.
(Hamed Asghari via cutting)
AVRO-978. Java: Fix reflect to better handle Byte type. (cutting)
AVRO-968. C: Fixed avro_value_cmp and avro_value_cmp_fast for string
values. (Vivek Nadkarni via dcreager)
AVRO-982. Java: Fix NettyTransceiver to not hang when server stops.
(Bruno Dumon via cutting)
AVRO-984. C: Resolved writers initialize complex array values
correctly. (Vivek Nadkarni via dcreager)
AVRO-994. Java: TestFileSpanStorage.testTonsOfSpans() fails on my
slow VM. (jbaldassari)
AVRO-993. Java: Add methods back to GenericDatumReader that were
removed in AVRO-839. (jbaldassari)
AVRO-1000. Java: Remove incompatible implementations of equals()
and hashCode() from GenericData.Array. (cutting)
AVRO-1002. Fix a broken link in the specification. (cutting)
AVRO-1003. C: Fix pkg-config file when codecs are missing.
(dcreager)
AVRO-1004. C: avropipe no longer displays NUL terminator for string
values. (dcreager)
AVRO-986. C: File headers no longer contain sync marker. (Michael
Cooper via dcreager)
AVRO-986. Java: DataFileReader correctly handles sync marker
appearing within file header. (cutting via dcreager)
AVRO-1014. C: Check for errors producing JSON output in avrocat.
(Lucas Martin-King via dcreager)
AVRO-996. Java: SpecificRecord builder pattern object copy fails
with unions in some cases. (scottcarey and jbaldassari)
AVRO-1020. Java: Fix builder API to correctly handle default
values for enums. (cutting)
AVRO-1013. Java: NettyTransceiver can hang after server
restart. (jbaldassari)
Avro 1.6.1 (8 November 2011)
INCOMPATIBLE CHANGES
AVRO-951. Java: Fix generated code to not conflict with fields
named 'data'. Code generated by the 1.6.0 compiler must be
re-generated to work correctly with the 1.6.1 runtime. (cutting)
NEW FEATURES
AVRO-821. PHP: Add support for parsing protocols. (Andy Wick,
Saleem Shafi and A B via cutting)
OPTIMIZATIONS
AVRO-946. Java: Optimize union resolution when writing. (cutting)
IMPROVEMENTS
BUG FIXES
AVRO-943. Java: Fix an intermittent deadlock in
TestNettyServerWithCallbacks. (James Baldassari via cutting)
AVRO-950. C: Fix source tarball to include VERSION.txt. (dcreager)
Avro 1.6.0 (2 November 2011)
NEW FEATURES
AVRO-839. Java: Add accessor methods and builders to generated
Java classes. Builders use default values from schemas for fields
that are not explicitly set. Direct use of public fields is now
deprecated and may be removed in a future release. (James
Baldassari via cutting)
AVRO-805: Java: Add support for reading and writing instances of
Protocol Buffer (protobuf) generated classes. This permits
protobuf-defined data structures to be written and read from
Avro-format data files. (cutting)
AVRO-881. Java: Add a 'getmeta' tool that lists a file's metadata.
(Tom White via cutting)
AVRO-863. C: Schema resolution using new value interface. (dcreager)
AVRO-893. C: Avro data file functions using new value interface.
(dcreager)
AVRO-919. C: Produce JSON encoding of Avro values using new value
interface. (dcreager)
AVRO-920. C: Memory readers and writers are now reusable. (dcreager)
AVRO-921. C: Default wrapped buffer implementation is zero-copy.
(dcreager)
AVRO-922. C: Comparison function for new value interface. (dcreager)
AVRO-929. C: Set install_name in shared library on Mac OS OX.
(dcreager)
AVRO-468. C: Document CMake build scripts. (dcreager)
AVRO-474. C: Added source package target to CMake build scripts.
(dcreager)
AVRO-467. C: Change build system to CMake. (dcreager)
AVRO-890: Java: Add Maven archetype for creating Avro service
projects. (Stephen Gargan via cutting)
AVRO-804. Java: Add support for reading and writing instances of
Thrift generated classes. This permits Thrift-defined data
structures to be written and read from Avro-format data files.
(cutting)
AVRO-908. Add an option to build avrocpp as a static library.
(Nebojsa Sabovic via thiru)
AVRO-803. Java: Optionally change string types in generated code
to java.lang.String instead of java.lang.CharSequence. This is
achived by specifying <stringType>String</stringType> in
avro-maven-plugin's pom.xml configuration. (cutting)
AVRO-924. Java: Support reading & writing arbitrary JSON data
using an efficient Avro binary representation. (cutting)
OPTIMIZATIONS
AVRO-853: Java: Cache Schema hash codes. (cutting)
AVRO-907. Java: Optimize access to protobuf message fields. (cutting)
AVRO-934. PHP: Remove quadratic performance bug. (abawany via cutting)
IMPROVEMENTS
AVRO-836. Python "avro" commandline utility to display and write Avro files.
(Miki Tebeka via philz)
AVRO-841. Java: Implement insertion in GenericData.Array.
(Nick Palmer via cutting)
AVRO-847. Java: Add a unit test for Java MapReduce tether. (Jeremy Lewi)
AVRO-844. Java: Provide better errors for null or missing record fields.
(Bill Graham via cutting)
AVRO-746. C: Atomic reference counts. (dcreager)
AVRO-837. C: New Avro value interface. (dcreager)
Documented in lang/c/docs/index.html.
AVRO-861. C: Remove dependency on stdbool.h. (dcreager)
AVRO-396. C: avrocat and avropipe commands (dcreager)
AVRO-857. Add mailing lists, scm and issue management to Maven
metadata. Also link top-level pom.xml to lang/java.
(Jan Prach via cutting)
AVRO-873. Java: Permit passing classloader to SpecificDatumReader.
(Michael Armbrust via cutting)
AVRO-889. Java: Change lang/java/pom.xml to use project's
top-level pom.xml as parent, permitting use of Maven versions
plugin. (cutting)
AVRO-858. Python: Add --fields option to 'avro cat' command.
(Miki Tebeka via cutting)
AVRO-866. Java: Add support in IDL for documentation in protocols
and messages. (George Fletcher via cutting)
AVRO-888. Java: Add SeekableByteArrayInput, a utility to permit
use of memory-based AvroDataFiles. (Saleem Shafi via cutting)
AVRO-887. Java: Improve reflection error message when a field is
not found in a class. (cutting)
AVRO-874. Remove experimental disclaimer from IDL documentation. (cutting)
AVRO-891. Java: In SpecificDatumReader, when no reader schema is
specified, use schema of currently loaded class. (cutting)
AVRO-865. C: Upgrade Jansson to 2.1. (dcreager)
AVRO-899. C#: Include binary artifacts and documentation in
releases. (cutting)
AVRO-898. Java: Extend NettyServer to support SSL.
(Vadim Tsarik via cutting)
AVRO-905. Java: Change JsonEncoder to write objects on separate
lines. (cutting)
AVRO-910. Java: Add generated protobuf test code to subversion. (cutting)
AVRO-917. Avrogencpp does not insert avro prefix for avro headers in the
generated files. (thiru)
AVRO-840. C++ generate nullable types for optional fields int the schema.
(thiru)
AVRO-915. Large number of warnings in C++ builds. (thiru)
AVRO-913. CMake/C++ build should work for out-of-tree builds.
(Nebojsa Sabovic via thiru)
AVRO-925. CMake/C++ Unable to build debug version of libavrocpp.
(Nebojsa Sabovic via thiru)
AVRO-932. C++ build.sh should have an option to install the built software.
(thiru)
AVRO-931. Avro C++ "make install" does not install the code generator.
(thiru)
AVRO-918. Avro C++ documentation is very old. (thiru)
AVRO-938. Some more warning when built on RHEL. (thiru)
AVRO-937. C++ CMake keeps generating code even when there is no change.
(thiru)
AVRO-940. C++ design for generic datum could be better. (thiru)
AVRO-935. Java: Update dependency versions for 1.6.0. (scottcarey)
AVRO-941. Java: Make generated specific classes to work in some
cases after Maven shade plugin is used on them. (cutting)
BUG FIXES
AVRO-824. Java: Fix usage message of BinaryFragmentToJsonTool.
(Jakob Homan via cutting)
AVRO-894. C: cmake build now works on Mac OS X Lion. (dcreager)
AVRO-895. JsonDecoder does not tolerate JSON records with
different field order. (thiru)
AVRO-906. Java: Fix so that ordering of schema properties is
consistent. (cutting)
AVRO-901, Java tools unit tests fail in Windows due to line
termination and filenaming conventions. (thiru)
AVRO-900. On slower machines Java unit test TestFileSpanStorage
fails. (thiru)
AVRO-912. Mapreduce tether test fails on Windows. (thiru)
AVRO-903. C++/Cmake build fails to find Boost libraries. (Nebojsa
Sabovic via thiru)
AVRO-904. C++/CMake build should fail if Boost libraries are not
present. (Nebojsa Sabovic via thiru)
AVRO-902. C++/CMake installs into /usr/local/local/. (Nebojsa
Sabovic via thiru)
AVRO-914. Java: Fix SpecificResponder to better handle
non-Exception Throwables. (philz via cutting)
AVRO-871. Fix specification to state that enum symbol names must
follow the same rules as record and field names. (cutting)
AVRO-916. 0xff in binary stream is interpreted as end-of-stream. (thiru)
AVRO-869. Lifetimes of streams and encoder/decoders not managed propertly.
(thiru)
AVRO-928. Debug statement no longer reports garbage value from
stack. (Vivek Nadkarni via dcreager)
AVRO-933. On latest Ubuntu AvrogencppTests.cc does not compile. (thiru)
AVRO-927. Java: Fix Pair#equals() to better compare
schemas. (Brock Noland via cutting)
AVRO-936. Avro Java does not build with Maven 2. (thiru)
AVRO-930. C: Fixed memory lead in resolved writer class. (Vivek
Nadkarni via dcreager)
AVRO-942. Java: Fix reflect so that @Nullable fields have a
default value of null. (Binglin Chang via cutting)
AVRO-945. C# port does not build under Ubuntu 11.10. (thiru)
AVRO-948. Java: Fix to more correctly handle Thrift optional and
nullable fields. (cutting)
AVRO-944. Java: Fix mapred so that reduce-side combines use
correct serializer. (cutting)
Avro 1.5.4 (12 September 2011)
IMPROVEMENTS
AVRO-866. Python: Add support for snappy compression codec.
(Tom White via cutting)
BUG FIXES
AVRO-884. Java: Fix a regression in RPC so that one-way messages
fail when the transciever cannot connect. (Tom White via cutting)
AVRO-892. Python: Fix an "integer out of range" error with snappy
compression. (Michael Cooper via cutting)
Avro 1.5.3 (25 August 2011)
IMPROVEMENTS
AVRO-872. Java: Improved Schema parsing API and permit IDL imports
to depend on names defined in prior imports. (cutting)
AVRO-877. Java: Add support for compiling multiple, dependent
schemas. (Bill Graham via cutting)
AVRO-880. Java: Upgrade snappy-java to 1.0.3.2.
(Alejandro Abdelnur via cutting)
Avro 1.5.2 (12 August 2011)
NEW FEATURES
AVRO-830. Java: Add AvroTextOutputFormat to permit Hadoop
streaming jobs to easily write Avro format output with "bytes" as
schema. (Tom White via cutting)
AVRO-539. Java: Add asynchronous RPC support, through either
callbacks or futures. (James Baldassari via cutting)
IMPROVEMENTS
AVRO-469. C: Set library's libtool-style soversion when using CMake
build scripts. (dcreager)
AVRO-470. C: Build asciidoc documentation when using CMake build
scripts. (Daniel Lundin via dcreager)
AVRO-820. Java: Permit applications to catch exceptions thrown
while writing data to a file and then continue writing to that
file. (scottcarey & cutting)
AVRO-826. C#: Add MD5 and hashcode functions to Protocol.
(Dona Alvarez via cutting)
AVRO-838. Java: Permit invalid characters in record and field
names of schemas read from data files, for compatibility with
1.4. (cutting)
AVRO-810: C#: Add strong naming to assemblies. (Eric Hauser)
AVRO-833. Python: Don't require simplejson for python >= 2.6.
(Miki Tebeka via philz)
AVRO-845. Python: setup.py uses Python2.7+ specific code
(Miki Tebeka via philz)