| Avro Change Log |
| |
| Avro 1.5.0 (10 March 2011) |
| |
| INCOMPATIBLE CHANGES |
| |
| AVRO-751. C: Each avro_datum_t instance now contains a reference to |
| the schema that the datum is an instance of. As a result, the |
| signatures of several of the functions that operate on avro_datum_t |
| instances have changed. |
| |
| AVRO-647. Java: Break avro.jar up into multiple parts: avro.jar, |
| avro-compiler.jar, avro-ipc.jar, avro-mapred.jar, avro-tools.jar, |
| and avro-maven-plugin.jar. |
| |
| Summary of artifacts: |
| * avro.jar |
| Contains 'core' avro features: schemas, data files, |
| specific, generic, and reflect APIs. |
| Dependencies: slf4j, Paranamer, Jackson. |
| * avro-ipc.jar |
| Contains Trancievers, Requestors, and Responders. |
| Dependencies: avro.jar, Jetty, Netty, and Velocity |
| * avro-compiler.jar |
| Contains SpecificCompiler, IDL compiler and Ant tasks. |
| Dependencies: avro.jar, commmons-lang, and Velocity. |
| * avro-maven-plugin.jar |
| A Maven plugin for Avro's compiler. |
| Dependencies: avro-compiler.jar |
| * avro-mapred.jar |
| API for Hadoop MapReduce with Avro data. |
| Dependencies: avro-ipc.jar, hadoop-core, and jopt-simple. |
| * avro-tools.jar |
| Avro command-line tools stand-alone jar. |
| Dependencies are contained within the jar. |
| Dependencies: all of the above. |
| |
| (scottcarey) |
| |
| AVRO-737. Java: Improve correlation between packages and modules. |
| Each module introduced by AVRO-647 now exclusively provides |
| different java packages. This required moving several classes |
| around into new packages and will therefore require users to |
| change their package imports when upgrading to Avro 1.5.0. |
| Summary of changes: |
| * AvroRemoteException has moved to org.apache.avro |
| * ByteBufferInputStream and ByteBufferInputStream have moved |
| to org.apache.avro.util |
| * InduceSchemaTool has moved to org.apache.avro.tools |
| * SpecificCompiler, SchemaTask, and ProtocolTask have moved |
| to org.apache.avro.compiler.specific |
| * The Idl compiler has moved to org.apache.avro.compiler.idl |
| * ReflectRequestor and ReflectResponder have moved to |
| org.apache.avro.ipc.reflect |
| * GenericRequestor and GenericResponder have moved to |
| org.apache.avro.ipc.generic |
| * SpecificRequestor and SpecificResponder have moved to |
| org.apache.avro.ipc.specific |
| (scottcarey) |
| |
| AVRO-753. Java: Improve BinaryEncoder Performance. |
| The Encoder API has several resulting changes: |
| * Construction and configuration is handled by EncoderFactory. All |
| Constructors are hidden, and Encoder.init(OutputStream) is removed. |
| * Some Encoders previously did not buffer output. Users must call |
| Encoder.flush() to ensure output is written unless the EncoderFactory |
| method used to construct an instance explicitly states that the Encoder |
| does not buffer output. |
| (scottcarey) |
| |
| AVRO-769. Java: Align Decoder/Encoder APIs for consistency and long term |
| stability. Avro's Decoder and Encoder APIs are aligned and now consist of |
| only read and write operations. EncoderFactory and DecoderFactory handle |
| all construction and common configuration. Some specialized implementations |
| have separate configuration APIs. |
| |
| (scottcarey) |
| |
| AVRO-670. Allow DataFileWriteTool to accept schema files as input with new |
| --schema-file and --schema command-line flags. (Ron Bodkin via philz) |
| |
| AVRO-671. Java: Check that type and field names conform to |
| specified requirements. (cutting) |
| |
| AVRO-678. Java: Implement ReflectData#compare(). Incompatibly |
| moves some protected GenericDatumReader/Writer methods to |
| GenericData, potentially breaking subclasses. (cutting) |
| |
| AVRO-696. Java: Make DataFileWriter.setMetaInternal(String,String) |
| private. (Patrick Linehan via cutting) |
| |
| AVRO-741. C: Minor API change to handling of bytes data. |
| (Douglas Creager via brucem) |
| |
| AVRO-246. Java: Add required Schema parameter to GenericData.Fixed |
| and GenericData.EnumSymbol constructors. Also fix union dispatch |
| to conform to specification, using full schema name for records, |
| enums and fixed. |
| |
| NEW FEATURES |
| |
| AVRO-762. C: New and improved schema resolution API. The new API |
| correctly handles all of the schema resolution rules listed in the |
| spec. It performs resolution against two schemas separately from |
| reading in any data, so that we don't have to re-resolve for each |
| data record. Please see the avro/consumer.h header file for |
| details. (dcreager) |
| |
| AVRO-463. C: Error message API. The new avro_strerror() function |
| can be used to get a textual description of the error codes returned |
| by the other C API functions. In particular, this includes any JSON |
| parse errors that occur while trying to load a schema. (dcreager) |
| |
| AVRO-684. Java: Add command-line "recodec" tool to change file |
| compression codecs. (Patrick Linehan via cutting) |
| |
| AVRO-689. Java: Permit setting timeout of HttpTransceiver. (cutting) |
| |
| AVRO-687. Java: Permit RPC applications to view remote protocol. (cutting) |
| |
| AVRO-159 Java: Allow maven builds to use avro: avro-maven-plugin |
| (Hiram Chirino, Patrick Hunt via Scott Carey) |
| |
| AVRO-549. C: Route all memory allocations through an interface. (Douglas |
| Creager via brucem) |
| |
| AVRO-729. C: JSON encoded Avro values. (Douglas Creager via brucem) |
| |
| AVRO-757. Java: Permit data files to be re-opened without |
| re-reading the header. (Stu Hood via cutting) |
| |
| AVRO-750. C: Install a pkg-config file |
| (dcreager) |
| |
| AVRO-730. Java: Add set() and remove() methods to GenericData.Array. |
| (Chase Bradford via cutting) |
| |
| AVRO-711. JSON encoder and decoder for C++. |
| |
| AVRO-701 and AVRO-772. Java: Add new constructors for HttpServer |
| and an example of using SSL for the HTTP RPC. (brucem) |
| |
| IMPROVEMENTS |
| |
| AVRO-771. Java: Update dependency versions |
| (scottcarey) |
| |
| AVRO-726. Java: Make GenericDatum{Reader,Writer} easier to extend. |
| (scottcarey) |
| |
| AVRO-765. Java: Improvement to BinaryDecoder readLong performance |
| (scottcarey) |
| |
| AVRO-716. Java: integrate AVRO-647 changes with top level build |
| (scottcarey) |
| |
| AVRO-752. Java: Enhanced Performance Test Suite |
| (scottcarey) |
| |
| AVRO-682. Java: Add method DataFileStream.getMetaKeys(). |
| (Harsh J Chouraria via cutting) |
| |
| AVRO-683. Java: Fix RPC proxy factories to not require casting. |
| (Stephen Gargan via cutting) |
| |
| AVRO-642. Java, Python: Pretty-print schemas in some validation |
| error messages. (Harsh J Chouraria via cutting) |
| |
| AVRO-648. Java: Use Velocity templates to generate specific code. |
| (philz via cutting) |
| |
| AVRO-698. Java: Add MapReduce tests and documentation for jobs |
| that mix Avro and non-Avro data. (cutting) |
| |
| AVRO-692. Java: Permit Avro 1.2 format files to be read. (cutting) |
| |
| AVRO-707. Java: Promote SASL-based RPC. (cutting) |
| |
| AVRO-714. Fix Forrest to work with Java 6. (Carl Steinbach via cutting) |
| |
| AVRO-669. Java: Make MapReduce to work with reflection-based data. |
| (cutting) |
| |
| AVRO-723. Java: Pass error messages for unexpected RPC exceptions |
| through to client. (Stephen Gargan via cutting) |
| |
| AVRO-719. Java: Permit MapReduce programs to alter output file |
| sync interval. (Joe Crobak via cutting) |
| |
| AVRO-725. C: avro_schema_get_subschema function. (Douglas Creager via |
| brucem) |
| |
| AVRO-630. C: Add size accessors for map and list data. (Douglas Creager |
| via brucem) |
| |
| AVRO-727. C: Add many new accessor and mutator functions. (Douglas Creager |
| via brucem) |
| |
| AVRO-729. C: avro_schema_to_json can take const schema. (Douglas Creager |
| via brucem) |
| |
| AVRO-729. C: Update to Jansson 1.3. (Douglas Creager via brucem) |
| |
| AVRO-731. Documentation: Improve identification of Apache |
| trademarks. (cutting) |
| |
| AVRO-734. Java: Update maven build plugin versions. (Holger Hoffstätte |
| via scottcarey) |
| |
| AVRO-700. Change C++ build system to CMake (thiru) |
| |
| AVRO-749. Don't install Jansson build artifacts. (Douglas Creager via |
| brucem) |
| |
| AVRO-744. C: Helper macros for extracting and setting record field |
| values (dcreager) |
| |
| AVRO-773. Java: Add no-arg constructor to AvroWrapper. |
| (Jan Prach via cutting) |
| |
| AVRO-774. Java: Clean up repositories in pom.xml. (Lars Francke via cutting) |
| |
| AVRO-754. Java: Permit passing custom channel factory to NettyTransceiver. |
| (Bruno Dumon via cutting) |
| |
| BUG FIXES |
| |
| AVRO-764. Java: Bug in BinaryData.compare() with offset comparison. |
| (Harsh J Chouraria via scottcarey) |
| |
| AVRO-743. Java: Performance Regression and memory pressure with |
| GenericDatumReader. (scottcarey) |
| |
| AVRO-675. C: Bytes and fixed setters don't update datum size. |
| (Douglas Creager via massie) |
| |
| AVRO-681. IDL: Fix documentation example with illegal syntax. |
| (Jingguo Yao via cutting) |
| |
| AVRO-685. Java: Fix Schema#equals() and hashCode() to not require |
| exponential time for some recursive schemas. |
| (Richard Ahrens via cutting) |
| |
| AVRO-693. Java: Configure Velocity to use null logger, removing a |
| dependency that was breaking the build. (Stephen Gargan via cutting) |
| |
| AVRO-702. Java: Fix a bug printing nested record namespaces. (cutting) |
| |
| AVRO-706. Java: Type promotion not succeeding for long -> float. (thiru) |
| |
| AVRO-704. Java: Fix SocketServer connection threads to exit rather |
| than busywait when client closes connection. (cutting) |
| |
| AVRO-705. Java: Fix DirectBinaryDecoder to correctly reinitialize. |
| (thiru via cutting) |
| |
| AVRO-710. Java: Add bounds checking to GenericData.Array#get(int). |
| (Bo Shi via cutting) |
| |
| AVRO-713. Java: Fix GenericData.Record#toString() to produce valid |
| JSON for enum symbols. (Jay Kreps via cutting) |
| |
| AVRO-643. Java: Fix intermittent failures in TestTraceCollection. (cutting) |
| |
| AVRO-722. Java: Fix ordering of calls to RPC plugins. |
| (Stephen Gargan via cutting) |
| |
| AVRO-708. Java: Fix Netty-based RPC to keep connection open. |
| (Stephen Gargan via cutting) |
| |
| AVRO-694. Python: Fix schema parse error for maps of records. |
| (hammer via cutting) |
| |
| AVRO-663. Java: avro-tools.jar does not meet maven2 layout standard. |
| (scottcarey) |
| |
| AVRO-688. Java: Only require that one-way'ness of messages match |
| over stateful connections, permitting interoperability with |
| Python and Ruby, which drop the one-way message attribute. (cutting) |
| |
| AVRO-759. Java: Fix NullPointerException when some but not all |
| fields are aliased. (Xiaolu Ye via cutting) |
| |
| AVRO-755. Java: Fix SpecificResponder to correctly handle message |
| parameter lists that differ between client and server. (cutting) |
| |
| AVRO-775. Java: Fix a file handle leak in DataFileReader. (cutting) |
| |
| AVRO-761. Java: Fix Requestor to not send client's protocol on |
| each handshake with stateless (HTTP) transport when protocol |
| differs from server's. (cutting) |
| |
| Avro 1.4.1 (13 October 2010) |
| |
| NEW FEATURES |
| |
| AVRO-674. Vim editor support for IDL files (Daniel Lundin via philz) |
| |
| AVRO-641. Java: Add SASL security for socket-based RPC. (cutting) |
| |
| AVRO-634. Java: Add support for reading Hadoop sequence files as |
| Avro data to MapReduce API. (cutting) |
| |
| OPTIMIZATIONS |
| |
| AVRO-673. Python: Remove unneeded schema validations. |
| (Erik Frey via cutting) |
| |
| IMPROVEMENTS |
| |
| AVRO-655. Change build so that 'dist' target no longer also runs C |
| and C++ unit tests. (cutting) |
| |
| AVRO-634. IDL: Add support for aliases. (cutting) |
| |
| AVRO-668. Java: Reduce object allocations while writing strings. |
| (scottcarey) |
| |
| AVRO-537. Ruby: Reuse client connection for multiple requests. |
| (Gabor Torok via cutting) |
| |
| BUG FIXES |
| |
| AVRO-666. Remove an extraneous pdb.set_trace() that crept into schema.py |
| (hammer) |
| |
| AVRO-657. Fix build so that md5 and sha1 checksum files contain |
| only the file's basename without any directories. (cutting) |
| |
| AVRO-664. Ruby server takes a long time to start in interop tests. (thiru) |
| |
| AVRO-667. GenericArray fails to compare with List. SpecificRecord |
| compare gets ClassCastException. (scottcarey & cutting) |
| |
| AVRO-717. Java: Fix SpecificDatumWriter default constructor to |
| correctly reference SpecificData. (Joe Crobak via cutting) |
| |
| Avro 1.4.0 (31 August 2010) |
| |
| INCOMPATIBLE CHANGES |
| |
| AVRO-372. Rename GenAvro to be Avro IDL. The tool name is now |
| 'idl'. The file suffix is now '.avdl'. (cutting) |
| |
| AVRO-544. Java: Change Server interface, adding start() and join() |
| methods. Servers are no longer started in their constructor. |
| (hammer & cutting) |
| |
| AVRO-605. Java: Change Utf8 to implement CharSequence and change |
| specific, generic & reflect APIs to accept any CharSequence |
| implementation for string schemas, including java.lang.String. |
| This incompatibly changes method signatures of generated protocol |
| interfaces. It also incompatibly changes the generic |
| representation of enum symbols from java.lang.String to |
| org.apache.avro.generic.GenericEnumSymbol. |
| |
| AVRO-637. Java: Change GenericArray to implement List. Also |
| incompatibly change generated array signatures to List. The |
| runtime will now accept any Collection implementation for array |
| types. (cutting) |
| |
| NEW FEATURES |
| |
| AVRO-627. Add PHP implementation. (Michael Glaesemann via cutting) |
| |
| AVRO-613. Create basic frontend to view trace results. |
| (Patrick Wendell via philz) |
| |
| AVRO-606. Add File-Based Span Storage to TracePlugin |
| (Patrick Wendell via philz) |
| |
| AVRO-595. Add Basic Trace Collection and Propagation. |
| (Patrick Wendell via philz) |
| |
| AVRO-493. Add support for Hadoop Mapreduce with Avro data files. (cutting) |
| |
| AVRO-285: Specify one-way messages and implement in Java. (cutting) |
| |
| AVRO-512. Java: Define and implement MapReduce connector |
| protocols. (cutting) |
| |
| AVRO-577. Java: Add MapReduce InputFormat for plain text files. |
| (Tom White via cutting) |
| |
| AVRO-567. Add command-line tools for text file import & export. |
| (Patrick Wendell via cutting) |
| |
| AVRO-578. Java: add payload data to RPC context for use by |
| plugins. (Patrick Wendell via cutting) |
| |
| AVRO-405: Java: Add Netty-based RPC transceiver and server |
| implementation. (Harry Wang via cutting) |
| |
| AVRO-580. Permit intermixing of generic and specific data. |
| SpecificDatumReader and SpecificDatumWriter will now use generic |
| types when no specific class is available. (cutting) |
| |
| AVRO-600. Add support for type and field name aliases, |
| facilitating schema migration. (cutting) |
| |
| AVRO-495. IDL: Add support for file includes. (cutting) |
| |
| AVRO-611. IDL: Add support for one-way messages. (cutting) |
| |
| AVRO-528. Python: Add support for Twisted. (Esteve Fernandez via cutting) |
| |
| IMPROVEMENTS |
| |
| AVRO-636. Expose Singleton Method for TracePlugin. (Patrick Wendell via |
| philz) |
| |
| AVRO-614. Improve Trace frontend UI. (Patrick Wendell via philz) |
| |
| AVRO-629. Prefer the JSON module of python's stdlib over simplejson. |
| (Harsh J Chouraria via philz) |
| |
| AVRO-587. Add Charts and Templating to Stats View |
| (Patrick Wendell via philz) |
| |
| AVRO-584. Update Histogram for Stats Plugin |
| (Patrick Wendell via philz) |
| |
| AVRO-501. missing function in C api to access array elements after |
| decoding an array. (Bruce Mitchener via massie) |
| |
| AVRO-497. Minor changes to C++ autotools, makefiles, and code |
| generator. (sbanacho) |
| |
| AVRO-508. Use page-backed buffers for C++ serialization input or |
| output. (sbanacho) |
| |
| AVRO-520. Refactor C++ validation code. (sbanacho) |
| |
| AVRO-521. Out of memory and other issues with Junit tests for |
| mapreduce (thiru) |
| |
| AVRO-540. Java: Make GenericArray reversible. (Eric Evans via cutting) |
| |
| AVRO-284. Handle namespaces correctly in new Python implementation |
| (Patrick Wendell via hammer) |
| |
| AVRO-331. Inline shared state during the Python build process |
| (version, handshake schemas, and interop data directory) |
| (Patrick Wendell via hammer) |
| |
| AVRO-447. Describe implicit protocol "system" error in spec. (cutting) |
| |
| AVRO-150. Java: fix compiler to not re-generate up-to-date code. |
| (John Yu via cutting) |
| |
| AVRO-494. Add support for default values to IDL. (cutting) |
| |
| AVRO-596. Start Netty server eagerly in constructor. |
| (Patrick Linehan via cutting) |
| |
| AVRO-581. Java: Update MapReduce APIs to use key/value pairs for |
| intermediate data. (cutting) |
| |
| AVRO-582. Java: Add comment to generated code indicating that |
| set() and get() are not for use by applications. (cutting) |
| |
| AVRO-601. Java: Add per-field property support. (cutting) |
| |
| AVRO-583. Java: Improve error message when types not correctly |
| nested. (cutting) |
| |
| AVRO-603. Java: Add a constructor for SpecificDatumReader that |
| accepts both reader's and writer's schema. Also improve javadoc |
| for related constructors and setters. (Stu Hood via cutting) |
| |
| AVRO-557. Java: Cache ResolvingDecoder instances, speeding |
| DatumReader benchmarks by 5x to 9x. (cutting & scotcarey) |
| |
| AVRO-586. Java: Permit specification of MapReduce output file |
| metadata properties. (Ken Krugler via cutting) |
| |
| AVRO-616. Java: Add comment to generated source files noting that |
| they should not be edited. (Patrick Wendell via cutting) |
| |
| AVRO-615. Java: Improve error message for NullPointerException |
| when writing data. (cutting) |
| |
| AVRO-534. Java: Permit mapred jobs to specify a different input |
| schema from the input file. (Harsh J Chouraria via cutting) |
| |
| AVRO-617. Java: Detect erroneous default field values. (cutting) |
| |
| AVRO-598. Java: Use generic data structures when reading with |
| reflect API and classes are not defined. (cutting) |
| |
| AVRO-631. Java: Make RPC plugin payload reporting consistent. |
| (Patrick Wendell via cutting) |
| |
| AVRO-632. Java: Change RPC responder to log stack traces for user |
| exceptions. (cutting) |
| |
| AVRO-639. Python: Use namespace-unqualified names for references |
| to schemas in the same namespace. (cutting) |
| |
| AVRO-644: PHP: Add requirements to README. (Michael Glaesemann via cutting) |
| |
| AVRO-652. Java: Expose sync points in DataFileReader. |
| (Stu Hood via cutting) |
| |
| BUG FIXES |
| |
| AVRO-622. python avro.ipc doesn't work with python2.4 (philz) |
| |
| AVRO-620. Python implementation doesn't stringify sub-schemas |
| correctly. (philz) |
| |
| AVRO-618. Avro doesn't work with python 2.4 (philz) |
| |
| AVRO-502. Memory leak from parsing JSON schema. |
| (Robert G. Jakabosky via massie) |
| |
| AVRO-515. Fix build and compatibility problems. (sbanacho) |
| |
| AVRO-518. Add link to boost filesystem library. (John Plevyak via sbanacho) |
| |
| AVRO-566. Java: fix so that JAVA_HOME is bound by build.xml for |
| test_tools.sh. (cutting) |
| |
| AVRO-571. Fix how we handle out-of-bounds indexes for union and |
| enum parsing in Python (hammer) |
| |
| AVRO-589. ClassCastException: |
| org.apache.avro.io.parsing.Symbol$Alternative cannot be cast to |
| org.apache.avro.io.parsing.Symbol$UnionAdjustAction (thiru) |
| |
| AVRO-573. Java: Fix various bugs with undeclared RPC exceptions. (cutting) |
| |
| AVRO-604. Java: Fix missing build dependency for checkstyle target. |
| (Patrick Wendell via cutting) |
| |
| AVRO-602. C++: Update documentation to match API. (Jingguo Yao via cutting) |
| |
| AVRO-609. Java: Fix JsonToBinaryFragmentTool to flush output. (cutting) |
| |
| AVRO-612. Java: Preserve field documentation when writing schemas. (cutting) |
| |
| AVRO-590. IDL: Fix order specifications. (cutting) |
| |
| AVRO-541. Java: Fix sporadic corruption when appending a |
| compressed file to an uncompressed file. (scottcarey via cutting) |
| |
| AVRO-86. Java: Fix NullPointerException when reflect API infers |
| schema for a class without a package. (cutting) |
| |
| AVRO-510. C: Fix some memory leaks in datafile reader & |
| writer. (Robert G. Jakabosky via cutting) |
| |
| AVRO-633. Ruby: Implement skip_union to correct issues with |
| updating protocols |
| |
| AVRO-640. Python: Fix path to sources in RPC interop test. (cutting) |
| |
| AVRO-653. Python: Fix so distribution contains correct files. |
| (Eric Evans via cutting) |
| |
| AVRO-650. Java: Fix GenericDatumReader to be thread-safe. (cutting) |
| |
| Avro 1.3.3 (7 June 2010) |
| |
| IMPROVEMENTS |
| |
| AVRO-525. remove unused imports (Esteve Fernandez via hammer) |
| |
| AVRO-526. Fall back to pure Python StringIO if cStringIO is not available |
| (Esteve Fernandez via hammer) |
| |
| AVRO-560. Python impl should include system errors in every protocol (hammer) |
| |
| AVRO-486. DataFile.open for the ruby side (jmhodges) |
| |
| AVRO-559. Handle read_union error where the list index of the union branch |
| to follow exceeds the size of the union schema (hammer) |
| |
| AVRO-491. Doing doubles and floats better in the ruby impl. (jmhodges) |
| |
| AVRO-450. HTTP IPC for ruby. (jmhodges) |
| |
| AVRO-514. Removing unnecessary ruby StringIO calls. (jmhodges) |
| |
| AVRO-511. Ruby implementation passes the rpc interop tests. |
| |
| AVRO-543. Schema comparison is hella slow on the Ruby side. (jmhodges) |
| |
| AVRO-504. ruby impl could stand better error messages on schema parsing (jmhodges) |
| |
| AVRO-556. Poor performance for Reader::readBytes improved |
| (Dave Wright via sbanacho) |
| |
| |
| BUG FIXES |
| AVRO-461. Skipping primitives in the ruby side (jmhodges) |
| |
| AVRO-496. python sample_http_client.py is broken (Jeff Hodges via hammer) |
| |
| AVRO-527. Undefined variable "schm" error (Esteve Fernandez via hammer) |
| |
| AVRO-548. Python client should handle CLIENT handshake match status |
| correctly. (hammer) |
| |
| AVR0-555 Missing license headers in some ruby source |
| files. (jmhodges) |
| |
| AVRO-554 Fixing syncing in ruby data file writing. (Grant Rodgers |
| via jmhodges) |
| |
| AVRO-562 ruby side had busted client handshaking. (jmhodges) |
| |
| AVRO-517. Resolving Decoder fails in some cases. (thiru) |
| |
| AVRO-524. DataFileWriter.appendTo leads to intermittent IOException during write() (thiru) |
| |
| AVRO-499. Java: Fix protocol reflection to reject interfaces with |
| multiple methods of the same name. (cutting) |
| |
| AVRO-489. Skipping complex objects in the ruby impl. (jmhodges) |
| |
| AVR0-555 Missing license headers in some ruby source |
| files. (jmhodges) |
| |
| AVRO-500. ruby side dev packaging (jmhodges) |
| |
| AVRO-516. ruby: buffer length should not be little-endian in socket rpc (jmhodges) |
| |
| Avro 1.3.2 (31 March 2010) |
| |
| IMPROVEMENTS |
| |
| AVRO-449. CMake-based build system for Avro/C (Bruce Mitchener via massie) |
| |
| AVRO-418. avro.h generates errors when included in C++ code |
| (Bruce Mitchener via massie) |
| |
| AVRO-480. avro_flush() is in the header, but not implemented |
| (Bruce Mitchener via massie) |
| |
| AVRO-481. Buildbot warning fixes (Bruce Mitchener via massie) |
| |
| AVRO-451. Try to use hashlib in Python implementation and fall |
| back to md5 if we can't find it (Bruce Mitchener via hammer) |
| |
| AVRO-423. HTTPTransceiver does not reuse connections |
| (Eric Evans via hammer) |
| |
| AVRO-490. Add Ant task to deploy Java artifacts to Maven repo. (cutting) |
| |
| BUG FIXES |
| |
| AVRO-479. Fix 'sign' target in top-level build.sh to generate md5 |
| checksums. (cutting) |
| |
| AVRO-487. Fix Java reflect protocols to transmit error messages. (cutting) |
| |
| Avro 1.3.1 (16 March 2010) |
| |
| NEW FEATURES |
| |
| AVRO-432. Add @Nullable annotation to Java reflect API. (cutting) |
| |
| IMPROVEMENTS |
| |
| AVRO-426. Include a ruby gem in distributions. |
| (Ryan King via cutting) |
| |
| AVRO-439. Remove unused headers from being checked in configure.in |
| (Bruce Mitchener via massie) |
| |
| AVRO-438. Clarify spec. (Amichai Rothman via cutting) |
| |
| AVRO-445. avro_size_data() to pre-calculate the size of an |
| avro_datum_t in serialized form (Bruce Mitchener via massie) |
| |
| AVRO-443. Endianness is determined at configure time rather |
| than compile time (Bruce Mitchener via massie) |
| |
| AVRO-448. encoding_binary.c doesn't build on big endian platforms |
| (Bruce Mitchener via massie) |
| |
| AVRO-442. sizeof void* and sizeof long detected at configure time |
| (Bruce Mitchener via massie) |
| |
| AVRO-444. Fix warnings (Bruce Mitchener via massie) |
| |
| AVRO-452. Include cleanup (Bruce Mitchener via massie) |
| |
| AVRO-453. More warning cleanup (Bruce Mitchener via massie) |
| |
| AVRO-440. config.h output not correctly used (Bruce Mitchener via massie) |
| |
| AVRO-460. Performance improvement to write_long() (Bruce Mitchener |
| via massie) |
| |
| AVRO-455. Update Java dependencies. (David Dabbs via cutting) |
| |
| AVRO-446. Add a build.sh task that signs and checksums artifacts. (cutting) |
| |
| AVRO-454. Change DataFileStream to implement Closeable. (cutting) |
| |
| BUG FIXES |
| |
| AVRO-424. Fix the specification of the deflate codec. |
| (Scott Carey via cutting) |
| |
| AVRO-431. Fix Java's mvn-install Ant target to work in clean build. |
| (cutting) |
| |
| AVRO-437. Fix some typos in docs. (Amichai Rothman via cutting) |
| |
| AVRO-433. Fix exceptions in Java reflect RPC. (cutting) |
| |
| Avro 1.3.0 (24 February 2010) |
| |
| INCOMPATIBLE CHANGES |
| |
| AVRO-185. Java's specific API no longer depends on reflection. |
| This reverses the inheritance of most classes in the specific and |
| reflect packages. (cutting) |
| |
| AVRO-201. Move Python data file code into its own module. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-80. Java reflect API no longer uses Avro-specific classes |
| for string and array. Instead now Java strings and arrays or |
| Lists are used. (cutting) |
| |
| AVRO-237. Reflect API now represents any Java Collection as an |
| Avro array. Also inherited fields are included in records, and |
| inherited methods in protocols. Finally, Java shorts are |
| supported as integers. (cutting) |
| |
| AVRO-160. Revised data file format and Java API. Simplified |
| format now permits streaming but no longer supports multiple |
| schemas per file. Java API for reading is iterator-based. |
| |
| AVRO-278. Changed GenericRecord API and implementation to be |
| array-based rather than Map-based. (cutting) |
| |
| AVRO-163. Re-organized source tree into separate directories for |
| each language. (cutting) |
| |
| AVRO-344. Complete rewrite of C implementation (massie) |
| |
| AVRO-349. Fix C++ build for post-AVRO-163. (sbanacho) |
| |
| AVRO-374. Remove and ignore files that are created by autoreconf. (sbanacho) |
| |
| AVRO-387. Add IndexedRecord interface, common to both specific and |
| generic records, so that toString() and hashCode() implementations |
| can be shared. Also fix toString() and hashCode() to not throw |
| NPE for uninitialized records. (cutting) |
| |
| NEW FEATURES |
| |
| AVRO-151. Validating Avro schema parser for C (massie) |
| |
| AVRO-158. Permit appending to a data file from Java. (cutting) |
| |
| AVRO-154. Add 'induce' sub-command to avroj command line tool. |
| (Philip Zeyliger via cutting) |
| |
| AVRO-245. Add four new avroj commands: |
| - fromjson Reads JSON records and writes to an Avro data file. |
| - tojson Dumps an Avro data file as JSON, one record per line. |
| - fragtojson Renders a binary-encoded Avro datum as JSON. |
| - jsontofrag Renders a JSON-encoded Avro datum as binary. |
| (Philip Zeyliger via cutting) |
| |
| AVRO-272. Extend RPCContext to include message. |
| (Philip Zeyliger via cutting) |
| |
| AVRO-258. Add GenAvro language tool. (Todd Lipcon via cutting) |
| |
| AVRO-267. Add two new avroj commands: rpcsend and rpcreceive. |
| (Philip Zeyliger via cutting) |
| |
| AVRO-271. Add a Java local RPC transceiver. (Philip Zeyliger via cutting) |
| |
| AVRO-273, AVRO-275, & AVRO-279. Add Java RPC statistics collection |
| and display. (Philip Zeyliger via cutting) |
| |
| AVRO-152. Add support for documentation strings to schemas, |
| protocols, and messages. (Philip Zeyliger via cutting) |
| |
| AVRO-274. Make Java's data file sync interval configurable. (cutting) |
| |
| AVRO-346. Add function to validate a datum against a schema. (massie) |
| |
| AVRO-306. Add Ruby implementation. (Jeff Hodges via cutting) |
| |
| AVRO-135. Add compression to data files. (philz) |
| |
| AVRO-368. Reserve avro.* in object container files, and |
| rename existing reserved words. (philz) |
| |
| AVRO-380. Avro Container File format change: add block size to block |
| descriptor. (Scott Carey via philz) |
| |
| AVRO-322. Add a working client and server to Python implementation |
| using HTTP as a transport (hammer) |
| |
| AVRO-287. Make RPC interop tests work with new Python implementation |
| (hammer) |
| |
| AVRO-136. Add support for building/releasing python eggs (hammer) |
| |
| AVRO-414. Add Java support for concatenating and appending data |
| files. (Scott Carey via cutting) |
| |
| IMPROVEMENTS |
| |
| AVRO-157. Changes from code review comments for C++. (sbanacho) |
| |
| AVRO-168. Correct shared library versioning for C implementation (massie) |
| |
| AVRO-142. Remove some Java unused fields and imports. Start |
| running checkstyle on Java test code. (Philip Zeyliger via cutting) |
| |
| AVRO-147. Use configure to create makefile for C++ builds. (sbanacho) |
| |
| AVRO-155. Make python avro.io.DataFileReader iterable. |
| (Jeff Hammerbacher via sharad) |
| |
| AVRO-148. Add ant target to build C++ project. (sbanacho) |
| |
| AVRO-166. Improve error checking in Java schema parser. |
| (Philip Zeyliger via cutting) |
| |
| AVRO-167. Refactor Java SpecificCompiler to simplify testing, and |
| add some tests. (Philip Zeyliger via cutting) |
| |
| AVRO-146. Add support for using Eclipse to develop Avro's Java. |
| (Philip Zeyliger via cutting) |
| |
| AVRO-149. Add Java command-line executable, "avroj". |
| (Philip Zeyliger via cutting) |
| |
| AVRO-175. Split the avro_io interface into two interfaces: avro_reader |
| and avro_writer (massie) |
| |
| AVRO-179. Add units tests for all Avro C primitives (massie) |
| |
| AVRO-177. Upgrade Java dependencies to recent versions. (cutting) |
| |
| AVRO-180. Enhance code generator script and unit tests. (sbanacho) |
| |
| AVRO-186. Full read-path interoperability test (massie) |
| |
| AVRO-187. Move top-level source files into separate directories |
| for easier maintenance (massie) |
| |
| AVRO-188. Need to update svn ignores (massie) |
| |
| AVRO-190. Use fixed size C++ types for Avro fixed types. (sbanacho) |
| |
| AVRO-192. Improved errors for Java schema parsing problems. (cutting) |
| |
| AVRO-195. Complex type support for write streams (massie) |
| |
| AVRO-197. Add mapping of name to index for records and enums. (sbanacho) |
| |
| AVRO-204. Change the way symbolic references are tracked. (sbanacho) |
| |
| AVRO-205. APIs for checking schema resolution. (sbanacho) |
| |
| AVRO-203. Reformat license in Python sources. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-199. Make Python test schemas more readable. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-216. Formatting cleanups to schema.py. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-202. Add __all__ listing to Python module, to ease import. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-229. Change Java to implement Flushable and Closeable |
| interfaces where appropriate. (tomwhite via cutting) |
| |
| AVRO-231. Tutorial added to C++ docs. (sbanacho) |
| |
| AVRO-220. Dynamic schema resolution from writer to reader. (sbanacho) |
| |
| AVRO-213. Add Apache RAT to tests, to validate licenses. (cutting) |
| |
| AVRO-233. Elaborate Java tool API. (Philip Zeyliger via cutting) |
| |
| AVRO-236. Add protocol support to avroj induce tool. (cutting) |
| |
| AVRO-234. C++ code cleanup. (sbanacho) |
| |
| AVRO-240. In Python, if simplejson is not available, try using |
| 2.6's built-in json module. (Jeff Hammerbacher via cutting) |
| |
| AVRO-242. In Java, add support for extensible string-valued |
| properties to schemas. (cutting) |
| |
| AVRO-241. In Java, add a union annotation for reflection. (cutting) |
| |
| AVRO-249. In reflection, implement Java short as an int whose |
| "java-class" property is set to java.lang.Short. (cutting) |
| |
| AVRO-247. In reflection, add Stringable annotation to indicate |
| classes that can be represented by an Avro string. (cutting) |
| |
| AVRO-246 Java schema parser should take schema from InputStream |
| in addition to file. (thiru) |
| |
| AVRO-250. Make reflect's Union annotation applicable to message |
| parameters and return types too. (cutting) |
| |
| AVRO-253. Improve documentation of schema names in specification. (cutting) |
| |
| AVRO-257. Remove some dead Java code and un-needed casts. |
| (Kevin Oliver via cutting) |
| |
| AVRO-263. Change avroj command line tools to return exit codes. |
| (Todd Lipcon via cutting) |
| |
| AVRO-260. Upgrade to Jackson 1.4.0. (cutting) |
| |
| AVRO-269. Use java compiler to validate specific compiler's output. |
| (Philip Zeyliger via cutting) |
| |
| AVRO-219. Rework Python API. (Jeff Hammerbacher via cutting) |
| |
| AVRO-264. Rework Python RPC. (Jeff Hammerbacher via cutting) |
| |
| AVRO-75. Clarify that missing values with no default values cause |
| errors, and fix Java implementation. (cutting) |
| |
| AVRO-259. Add null schema check in GenericData.Record and |
| GenericData.Array construtors. (Kevin Oliver via cutting) |
| |
| AVRO-294. Clarify that bytes and fixed are unsigned, and how their |
| JSON default values are interpreted. (Jeff Hammerbacher & cutting) |
| |
| AVRO-298. Fix Java's DatumReader and DatumWriter APIs to better |
| use generics. (philz via cutting) |
| |
| AVRO-288. Implement schema resolution for Python parameters. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-282. Improve avroj build to better specify dependencies. |
| (philz via cutting) |
| |
| AVRO-309. Fix python build, post-AVRO-163. (cutting) |
| |
| AVRO-310. Improve top-level build.sh. (cutting) |
| |
| AVRO-317. Restore Java data interop tests. (cutting) |
| |
| AVRO-320. Rename avroj to be avro-tools. Also add LICENSE.txt and |
| NOTICE.txt to it, print the NOTICE.txt and version in help, and |
| include the tools jar in distributions. (cutting) |
| |
| AVRO-314. Add mvn-install ant task to publish jar to local Maven |
| repository. (Aaron Kimball via cutting) |
| |
| AVRO-243. Use automake generated Makefile.in. (sbanacho) |
| |
| AVRO-198. Fix specification of protocol name, also clarify which |
| properties are required. (cutting) |
| |
| AVRO-336. Check that appropriate schemas are passed to |
| GenericData#Record and #Array. (cutting) |
| |
| AVRO-353. Publish the C API to avro-doc package when 'dist' target |
| run (massie) |
| |
| AVRO-359. Add support for encoding/decoding arrays and maps (massie) |
| |
| AVRO-360. Standardize on Linux coding style instead of GNU (massie) |
| |
| AVRO-362. Add test to ensure Python implementation handles Union schema |
| with two fixed types of different names (hammer) |
| |
| AVRO-364. Add support for encoding/decoding records (massie) |
| |
| AVRO-367. Complete memory management for the C implementation (massie) |
| |
| AVRO-369. Add support for encoding/decoding enum values (massie) |
| |
| AVRO-370. Add support for encoding/decoding fixed data (massie) |
| |
| AVRO-371. Add support for encoding/decoding unions (massie) |
| |
| AVRO-377. Add getters and setters for all Avro datum types (massie) |
| |
| AVRO-378. Add example code to the C implementation and update |
| documentation (massie) |
| |
| AVRO-379. Changed record getter/setter API to match other datatypes (massie) |
| |
| AVRO-381. Update documentation to talk about reference counting and |
| memory management (massie) |
| |
| AVRO-384. Add schema projection to the C implementation (massie) |
| |
| AVRO-388. Using ResolvingDecoder in GenericDatumReader (thiru) |
| |
| AVRO-386. Python implementaiton of compression (philz) |
| |
| AVRO-394. Simplify and consolidate all data structures into hash |
| tables (massie) |
| |
| AVRO-393. Add a constructor for Utf8 that accepts byte[]. |
| (Jeff Hodges via cutting) |
| |
| AVRO-395. Add a cscope Makefile target (Eli Collins via massie) |
| |
| AVRO-397. Whitespace change and comment clarification in |
| datafile.py (hammer) |
| |
| AVRO-340. Define usage of HTTP as RPC transport in spec. (cutting) |
| |
| AVRO-342. Document that Java's socket and datagram RPC transports |
| are non-standard. (cutting) |
| |
| AVRO-208. Clarify that enum symbols must be unique. (cutting) |
| |
| AVRO-321. Restore Java RPC interop tests. (cutting) |
| |
| AVRO-402. Add method for writing avro_schema_t structure to an |
| avro_writer_t (massie) |
| |
| AVRO-398. avro_read_file doesn't detect eof (Eli Collins via massie) |
| |
| AVRO-403. Add file object container support to C implementation (massie) |
| |
| AVRO-400. Adding warning for unused parameters (Eli Collins via massie) |
| |
| AVRO-409. Update contact database example to use a file object |
| container for C implementation (massie) |
| |
| AVRO-420. Add namespace support to C implementation (massie) |
| |
| AVRO-261. Allow Schemas to be immutable (thiru) |
| |
| AVRO-412. Allow schema validation to be optional (massie) |
| |
| AVRO-295. JsonEncoder is not flushed after writing using ReflectDatumWriter (thiru) |
| |
| AVRO-416. Produce Java source archive. (Ryan Rawson via cutting) |
| |
| AVRO-417. Produce Java documentation archive. (Scott Carey via cutting) |
| |
| AVRO-428. Improve file read performance by buffering data (massie) |
| |
| AVRO-430. Remove subversion directories from Avro C tarball (massie) |
| |
| OPTIMIZATIONS |
| |
| AVRO-172. More efficient schema processing (massie) |
| |
| AVRO-291. Set NODELAY in Java's SocketTransceiver. |
| (Eric Evans via cutting) |
| |
| AVRO-315. Performance improvements to BinaryDecoder (thiru) |
| |
| AVRO-316. Optiminzing inner loop functions of Avro io (thiru) |
| |
| AVRO-328. Performance improvements Validating encoder/decoder for nested records (thiru) |
| |
| AVRO-345. Optimization for ResolvingDecoder (thiru) |
| |
| AVRO-363. estSchema had two tests disabled; new test for named schemas |
| named after primitives. (philz) |
| |
| AVRO-354. Performance improvement to BinaryDecoder.readInt() (Kevin Oliver via thiru) |
| |
| AVRO-343. Minor fixes to Eclipse config after build re-org (philz) |
| |
| AVRO-383. Optimizing ResolvingDecoder for default values (thiru) |
| |
| AVRO-411, AVRO-413. Add Ruby data file interop tests. (Jeff Hodges |
| via cutting) |
| |
| AVRO-399. Make data file interop tests work with the Python implementation (hammer) |
| |
| AVRO-392. Overhaul of Java binary decoder to significantly improve |
| performance. (Scott Carey via cutting) |
| |
| BUG FIXES |
| |
| AVRO-176. Safeguard against bad istreams before reading. (sbanacho) |
| |
| AVRO-141. Fix a NullPointerException in ReflectData#isRecord(). |
| (Isabel Drost via cutting) |
| |
| AVRO-156. Fix broken links to Wiki in documentation. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-165. Fix an equals implementation in TestReflect. |
| (Philip Zeyliger via cutting) |
| |
| AVRO-169. Fix a typo in the spec. (Jeff Hammerbacher via cutting) |
| |
| AVRO-189. test-c target fails (massie) |
| |
| AVRO-182. Fix Java's generic and specific implementations of |
| equals() and hashCode() to be consistent with compareTo(). |
| (cutting) |
| |
| AVRO-193. Fix 'ant test-avroj' on Ubuntu 9.10. (cutting) |
| |
| AVRO-171. Fix Java's Protocol#toString() to correctly handle |
| forward-references. (cutting) |
| |
| AVRO-191. Explicitly include stdint.h for C++. (cutting via sbanacho) |
| |
| AVRO-194. C++ varint encoding buffer too small. (sbanacho) |
| |
| AVRO-210. Memory leak with recursive schemas when constructed |
| by hand. (sbanacho) |
| |
| AVRO-211. Nested schema does not get parsed in C++. (sbanacho) |
| |
| AVRO-222. Fix Python interop tests broken by AVRO-201. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-223. Fix test-avroj on Mac OS X. (Philip Zeyliger via cutting) |
| |
| AVRO-224. Code cleanup: cleaner distinction between public and private |
| methods (massie) |
| |
| AVRO-221. Mangle Java reserved words in generated code to avoid |
| name conflicts. (Philip Zeyliger via cutting) |
| |
| AVRO-225. In generated Java, use dollar-sign, not underscore, to |
| prevent name conflicts. (cutting) |
| |
| AVRO-227. Fix a typo in the spec document. (Todd Lipcon via cutting) |
| |
| AVRO-232. Fix C++ build in cygwin. (sbanacho) |
| |
| AVRO-238. Fix so that slf4j-simple is only required by tests. (cutting) |
| |
| AVRO-184. Better eclipse configuration support. (thiru) |
| |
| AVRO-256. Use fully-qualified class names in generated Java code |
| to eliminate name conflicts. (cutting) |
| |
| AVRO-255. Fix Java so that, when parsing schemas, unspecified |
| namespaces are defaulted to nearest enclosing namespace. (cutting) |
| |
| AVRO-262. Fix two typos in the spec. (Jeff Hammerbacher via cutting) |
| |
| AVRO-276. Fix GenAvro to specify file encoding as UTF-8. |
| (Philip Zeyliger via cutting) |
| |
| AVRO-280. Fix file header schema in specification. Also fix |
| "forrestdoc" build target to work on clean checkout. |
| (Jeff Hammerbacher & cutting) |
| |
| AVRO-292. Fix Python skipping of ints and longs. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-289. Fix Python schema resolution. |
| (Jeff Hammerbacher via cutting) |
| |
| AVRO-281. Symlink in build.xml does not work well with Cygwin (thiru) |
| |
| AVRO-299. Fix Python numeric promotion. (Jeff Hammerbacher via cutting) |
| |
| AVRO-207. Fix Python to detect duplicate enum symbols and add |
| tests for duplicates in unions. (Jeff Hammerbacher via cutting) |
| |
| AVRO-313. Default values for fields or records and array (or map) don't work with ResolvingDecoder (thiru) |
| |
| AVRO-47. Use void* for byte sequences. (sbanacho) |
| |
| AVRO-337. ant test-java fails in Cygwin due to CRLF v LF problem (thiru) |
| |
| AVRO-347. Add the --unsafe flag to asciidoc in order to include source/header files (massie) |
| |
| AVRO-352. Incorrect binary encoding for strings and bytes (massie) |
| |
| AVRO-356. RAT fails with "Unknown license" error (massie) |
| |
| AVRO-355. io.Perf test harness uses different random number seeds for each run (Kevin Oliver via thiru) |
| |
| AVRO-375. Initializing uninizialized encoders fail (thiru) |
| |
| AVRO-373. EOF detection broken in JsonDecoder (thiru) |
| |
| AVRO-382. Avro hashCode throws a NullPointerException when fields are uninitialized (Michael Armbrust via philz) |
| |
| AVRO-385. Initializing uninizialized BlockingBinaryEncoder fails (thiru) |
| |
| AVRO-389. ResolvingDecoder does not resolve enum well (thiru) |
| |
| AVRO-390. ResolvingDecoder does not handle default values for records well (thiru) |
| |
| AVRO-361. Specific Compiler fails to handle union with two fixed branches (Scott Carey via philz) |
| |
| AVRO-350. Fix GenericData.Record#get(String) to return null rather than |
| throw NPE when passed a field name that's not in the record. |
| (Kevin Oliver via cutting) |
| |
| AVRO-401. Fix a typo in the specification. (Tom White via cutting) |
| |
| AVRO-408. lang/c/build.sh 'dist' broken (massie) |
| |
| AVRO-407. Fix a bug in the Java data file reader. (Scott Carey via cutting) |
| |
| AVRO-415. Fix Ruby to work with Ruby 1.8.6. |
| |
| AVRO-421. Fix some dist target issues. (cutting) |
| |
| AVRO-422. Build c++ docs in correct location. (sbanacho) |
| |
| Avro 1.2.0 (14 October 2009) |
| |
| INCOMPATIBLE CHANGES |
| |
| AVRO-115. Remove RPC's session notion to facilliate the use of |
| stateless transports like UDP and HTTP. Add a UDP transport. |
| (cutting) |
| |
| AVRO-120. Improved package and namespace handling, including: |
| |
| * Removed explicit package-name specification from specific and |
| reflect public APIs. Package names are now determined either |
| by namespace declarations or by a Java classes, as appropriate. |
| |
| * Changed the specific compiler to generate separate java files |
| per class, rather than nested classes. This permits generated |
| classes to be in packages declared in their schema namespaces. |
| |
| * Fix namespace defaulting. The default namespace is declared in |
| the outermost schema or protocol. Nested schemas can now |
| declare different namespaces than the default. |
| |
| * Names may now be specified with a dotted notation, e.g., |
| "foo.bar.Baz", to indicate the name "Baz" in namespace |
| "foo.bar". This permits one to refer to schemas in a namespace |
| other than the default. |
| |
| NEW FEATURES |
| |
| AVRO-121. Permit reflect and specific datum readers to read data |
| written with a different version of the schema than is current. |
| (cutting) |
| |
| AVRO-129. Add HTTP-based RPC client and server. (cutting) |
| |
| AVRO-24. Add a simple bulk-data benchmark. (cutting) |
| |
| AVRO-139. Refactor HTTP servlet to separate, public class. (cutting) |
| |
| IMPROVEMENTS |
| |
| AVRO-99. Use Boost framework for C++ unit tests. |
| (Scott Banachowski via cutting) |
| |
| AVRO-116. Make C++ compatible with Boost 1.32. |
| (Scott Banachowski via cutting) |
| |
| AVRO-119. Add Java GenericData.Array#toString() implementation, |
| to facillitate debugging. (cutting) |
| |
| AVRO-118. JSON encoder and decoder now permit one to write |
| multiple instances without flushing or explicitly resetting the |
| codec between each instance. (Thiruvalluvan M. G. via cutting) |
| |
| AVRO-133. Update version number in specification document and |
| documentation tab automatically from build version. (cutting) |
| |
| AVRO-131. Permit specification of JUnit test output format. |
| (Giridharan Kesavan via cutting) |
| |
| AVRO-134. Update data file format specification to include |
| reserved metadata keys "codec" and "sync". The only codec |
| currently defined is "null". (Thiruvalluvan M. G. via cutting) |
| |
| AVRO-138. Add a "unit-test-java" Ant target that runs tests |
| without running checkstyle or javadoc. (Thiruvalluvan M. G. via |
| cutting) |
| |
| AVRO-140. Add javadoc to public classes with none. (cutting) |
| |
| OPTIMIZATIONS |
| |
| BUG FIXES |
| |
| AVRO-132. Fix multi-threading race condition when threads share schema objects. |
| (sbanacho) |
| |
| AVRO-113. Fix endian bug with C++ integer/long varint codec. |
| (Scott Banachowski via cutting) |
| |
| AVRO-117. Fix memory leak in C++ JSON parser. |
| (Scott Banachowski via cutting) |
| |
| AVRO-122. Fix so that, when multiple Ant targets are specified on |
| the command line that depend on ivy, ivy does not fail. (phunt |
| via cutting) |
| |
| AVRO-123. Fix Java's specific protocol compiler so that |
| parameters and return types are unboxed. (cutting) |
| |
| AVRO-125. Fix sample protocol in specification document to use |
| the correct syntax. (cutting) |
| |
| AVRO-101. Add Java reflect API test case using nested classes. |
| (Eelco Hillenius via cutting) |
| |
| AVRO-124. Remove Ivy's jar from distributions. (cutting) |
| |
| AVRO-137. Suppress warnings in generated java code. (cutting via sharad) |
| |
| Avro 1.1.0 (8 September 2009) |
| |
| INCOMPATIBLE CHANGES |
| |
| AVRO-110. GenericData and ReflectData have been converted to use a |
| singleton pattern. Calls to static methods on these classes must |
| be replaced with calls on the singleton instance. (cutting) |
| |
| AVRO-41. GenericArray's constructor now requires a Schema, so that |
| it may implement Comparable consistently with AVRO-108. (cutting) |
| |
| AVRO-41. Several GenericDatumWriter methods (instanceOf(), |
| isRecord(), etc.) have been moved to GenericData, where they can |
| better be shared with comparators. Applications which subclassed |
| GenericDatumWriter overriding these methods must now instead |
| subclass GenericData and pass their subclass to |
| GenericDatumWriter. (cutting) |
| |
| AVRO-41. SpecificRecord's schema() method has been renamed |
| getSchema(), since it now implements the new GenericContainer |
| interface shared with GenericRecord. (cutting) |
| |
| NEW FEATURES |
| |
| AVRO-50. Implmenent JSON data codec in Java. (Thiruvalluvan |
| M. G. & cutting) |
| |
| AVRO-76. Add Java RPC plugin framework. (George Porter) |
| |
| AVRO-104. Permit null fields in Java reflection. |
| (Eelco Hillenius via cutting) |
| |
| AVRO-92. Describe JSON data encoding in specification |
| document. (cutting) |
| |
| AVRO-108. Add Java implementation of binary comparator. |
| (cutting) |
| |
| AVRO-41. Java generic and specific data instances now implement |
| Comparable. The implementation is consistent with the binary |
| comparator added in AVRO-108. (cutting) |
| |
| AVRO-109. Add Java support for controlling sort order via schema |
| annotations. Record fields now support an "order" attribute whose |
| possible values are "increasing" (the default), "decreasing", and |
| "ignore". (cutting) |
| |
| AVRO-111. Document sort ordering in the specification. (cutting) |
| |
| IMPROVEMENTS |
| |
| AVRO-71. C++: make deserializer more generic. (Scott Banachowski |
| via cutting) |
| |
| AVRO-60. Fix C JSON parser to correctly handle escapes and |
| multi-byte characters. Add tests. (Matt Massie via cutting) |
| |
| AVRO-54. Re-upgrade to testng 5.9 and re-enable listeners. (cutting) |
| |
| AVRO-82. Add checkstyle to java compilation. (Thiruvalluvan |
| M. G. via cutting) |
| |
| AVRO-81. Switch back from TestNG to JUnit. (Konstantin Boudnik via |
| cutting) |
| |
| AVRO-84, AVRO-85. Clarify a few things in the specification |
| document. (Thiruvalluvan M. G. and cutting) |
| |
| AVRO-89. In fields of Java generated classes, use unboxed numeric |
| types. (cutting) |
| |
| AVRO-83. In generated Java code, elide unions with null. (cutting) |
| |
| AVRO-98. Fix C++ schema parser to permit JSON attributes in any |
| order and to ignore extra attributes. (Scott Banachowski via cutting) |
| |
| BUG FIXES |
| |
| AVRO-78. Fix Java reflect to work on non-public fields. (cutting) |
| |
| AVRO-79. Specify format for default fixed values, and implement |
| correctly in Java. (Thiruvalluvan M. G. via cutting) |
| |
| AVRO-87. Fix broken links in javadoc introduced by AVRO-82. Also |
| change test-java build target to fail on javadoc warnings. |
| (Thiruvalluvan M. G. and cutting) |
| |
| AVRO-90. Fix Java's JSON codec to correctly encode unions. (cutting) |
| |
| AVRO-95. Fix writing of Java reflect-based unions. Also extend |
| DataFileWriter to permit adding branches to a union schema while |
| writing. |
| |
| AVRO-88. Fix Java's BlockingBinaryEncoder to correctly override |
| writeEnum(). (Ravi Gummadi via cutting) |
| |
| AVRO-61. Add Python support for reading blocked data. |
| (Ravi Gummadi via cutting) |
| |
| AVRO-97. Fix various C++ bugs. (Scott Banachowski via cutting) |
| |
| AVRO-100. In spec, remove warning about blocking being draft. (cutting) |
| |
| AVRO-107. Fix Protocol#equals() and Protocol#hashCode() to |
| consider the protocol's types, and also fix Schema#equals() to not |
| throw ClassCastException when a fixed schema is compared to |
| non-fixed. (cutting) |
| |
| AVRO-112. Turn off C++ debug output. (Scott Banachowski via cutting) |
| |
| AVRO-114. Fix "cdoc" Ant target to correctly run doxygen. |
| (Matt Massie via cutting) |
| |
| Avro 1.0.0 -- 9 July 2009 |
| |
| INCOMPATIBLE CHANGES |
| |
| AVRO-1. Record fields are now defined with JSON arrays, rather |
| than JSON objects, since fields are ordered. (cutting & sharad) |
| |
| AVRO-9. Restrict map keys to strings. (cutting & sharad) |
| |
| AVRO-2. Optimized RPC handshake protocol for Java. (cutting) |
| |
| AVRO-57. Make ValueWriter an abstract class named Encoder and make |
| ValueReader an abstract class named Decoder, and add concrete |
| implementations named BinaryEncoder and BinaryDecoder. (cutting) |
| |
| AVRO-46. Optimized RPC handshake protocol for Python. (sharad) |
| |
| AVRO-66. Add per-call RPC metadata to Java and Python. (George |
| Porter & cutting) |
| |
| NEW FEATURES |
| |
| AVRO-6. Permit easier implementation of alternate generic data |
| representations, especially records with integer-indexed fields. |
| (Hong Tang via cutting) |
| |
| AVRO-8. Add Java support for default values. (cutting) |
| |
| AVRO-33. C support for primitive types. (Matt Massie via cutting) |
| |
| AVRO-18. Add support for enum types. (cutting & sharad) |
| |
| AVRO-10. Add Java support for fixed-sized types. (cutting) |
| |
| AVRO-38. Add Python support for fixed-sized types. (sharad) |
| |
| AVRO-42. Add partial C++ implementation. (Scott Banachowski via cutting) |
| |
| AVRO-25. Add blocking value writer that permits arbitrarily long |
| arrays and maps to be efficiently written as sequences of blocks. |
| (Thiruvalluvan M. G. via cutting) |
| |
| AVRO-48. Add JSON parser for C. (Matt Massie via cutting) |
| |
| AVRO-29. Add to Java a validating encoder & decoder, and a |
| resolving decoder. (Thiruvalluvan M. G. & Raymie Stata) |
| |
| AVRO-67. Add per-call RPC metadata to spec. (George Porter via cutting) |
| |
| AVRO-28. Add Python support for default values. (sharad via cutting) |
| |
| IMPROVEMENTS |
| |
| AVRO-11. Re-implement specific and reflect datum readers and |
| writers to leverage AVRO-6. (cutting) |
| |
| AVRO-13. Use dictionary instead of if-else in validate. (sharad) |
| |
| AVRO-5. Add java versus python RPC interoperability tests. |
| (sharad) |
| |
| AVRO-16. Minor documentation improvements. (cutting) |
| |
| AVRO-15. Override __eq__() and __hash__() in Schema classes. |
| (sharad) |
| |
| AVRO-26. Switch tests from JUnit to TestNG. (Konstantin Boudnik |
| via cutting) |
| |
| AVRO-34. Upgrade to Jackson version 1.0.0. (cutting) |
| |
| AVRO-37. Add C api docs. Also link to py docs. (Matt Massie & cutting) |
| |
| AVRO-32. Java specific generated record classes now implement |
| equals() and hashCode(). (cutting) |
| |
| AVRO-48. Remove unused imports and annotations. |
| (Thiruvalluvan M. G. via cutting) |
| |
| AVRO-53. Use Ivy to retrieve Java dependencies. (cutting) |
| |
| AVRO-56. Use Jackson to generate JSON from Java. (cutting) |
| |
| AVRO-36. Correctly encode and decode binary default values. |
| (cutting) |
| |
| AVRO-59. C++: make serializer more generic. (Scott Banachowski |
| via cutting) |
| |
| AVRO-68. Add license headers to C sources and improve C packaging. |
| (Matt Massie via cutting) |
| |
| AVRO-351. Shorten induce tool description; add check to avoid overly verbose |
| descriptions. (philz) |
| |
| OPTIMIZATIONS |
| |
| BUG FIXES |
| |
| AVRO-3. Fix ValueReader to throw an exception at EOF. |
| (Pat Hunt via cutting) |
| |
| AVRO-4. Fix so that specific code generation works under Eclipse. |
| (Pat Hunt via cutting) |
| |
| AVRO-14. Fix so that EOF is not thrown when one attempts to read |
| an empty buffer. (sharad via cutting) |
| |
| AVRO-31. Fix Java package imports in generated specific classes. |
| (sharad via cutting) |
| |
| AVRO-21. Default Java namespace from containing definition. (cutting) |
| |
| AVRO-12. Fix recursive schemas in Java so that equals() and |
| hashCode() do not cause a stack overflow. (cutting) |
| |
| AVRO-22. When parsing schemas in Java, do not permit anonymous. |
| (cutting) |
| |
| AVRO-39. Fix bug in Java record schema toString(). (sharad) |
| |
| AVRO-40. Fix typo in specfication, where 'unsigned' was used where |
| 'signed' was intended. (cutting) |
| |
| AVRO-44. Fix so that 'ant clean' works even if C has not been |
| built. (Matt Massie via cutting) |
| |
| AVRO-45. Fix c++ compliation so that python script need not be |
| made executable. (Scott Banachowski via cutting) |
| |
| AVRO-51. Fix testio.py to exit correctly. (Philip Zeyliger |
| via sharad) |
| |
| AVRO-55. Fix two spec document typos. (cutting) |
| |
| AVRO-69. Make C's install-sh script executable. (Matt Massie via cutting) |
| |
| AVRO-70. Add license header to json_schema.y. (Matt Massie via cutting) |
| |
| AVRO-74. Add missing license headers in C++. (cutting) |
| |
| AVRO-73. Workaround in python to fix simplejson bug on Mac OS. (sharad) |
| |
| AVRO-64. Fix socket and parser issue on Mac OS. (sharad) |
| |
| AVRO-77. Fix C unit tests on Mac OS. (Matt Massie via cutting) |