Apache Avro v1.10.0 Release Notes

Release Date: 2020-07-01 // about 1 month ago
  • 🚀 This release includes 189 Jira issues, including some interesting features:

    C#: AVRO-2389 Add Avro serialization for POCO (Reflection)
    0️⃣ Java: AVRO-2723 Automatically find defaults on POJO when using reflection
    👍 Java: AVRO-2438 Better support for URI and URL types
    Perl: AVRO-1461 Distribute Perl module in CPAN
    ⚡️ PHP: AVRO-2527 Update to PHP 7.x
    Python: AVRO-2387 Type checking added to python
    🖨 Ruby: AVRO-1740 Support fingerprinting
    0️⃣ Ruby: AVRO-2535 Support enum defaults
    💎 Ruby: AVRO-2545 Support aliases

    Migration notes:
    👻 Java: AVRO-2278 Throw an exception when getting a non-existent field from a record
    🔌 Java: AVRO-2581 Maven plugin generates specific records with private fields
    🚚 Java: AVRO-2335 Remove Joda Time library
    📦 Python: AVRO-2656 avro-python package is now the preferred python3 library and avro-python3 is prepared to be deprecated

    ⬆️ And of course upgraded dependencies to latest versions, CVE fixes and more
    https://issues.apache.org/jira/issues/?jql=project%20%3D%20AVRO%20AND%20fixVersion%20%3D%201.10.0


Previous changes from v1.9.2

  • 🚀 This release includes 71 Jira issues: https://jira.apache.org/jira/issues/?jql=project%20%3D%20AVRO%20AND%20fixVersion%20%3D%201.9.2

    • 🛠 Some bug fixes:
      • C#: AVRO-2606 handle multidimensional arrays of custom types
      • Java: AVRO-2592 Avro decimal fails on some conditions
      • Java: AVRO-2641 Generated code results in java.lang.ClassCastException
      • Java: AVRO-2663 Projection on nested records does not work
      • Python: AVRO-2429 unknown logical types should fall back
    • 👌 Improvements:
      • Java: AVRO-2247 Improve Java reading performance with a new reader
      • Python: AVRO-2104 Schema normalisation and fingerprint support for Python 3
    • Work to unify Python2 and Python3 APIs in preparation for sunset.
    • 👌 Improved tests
    • 👌 Improved, more reliable builds.
    • 👌 Improved readability
    • ⬆️ Upgrade dependencies to latest versions, including CVE fixes.
    • And more...