All Versions
23
Latest Version
Avg Release Cycle
27 days
Latest Release
1444 days ago

Changelog History
Page 2

  • v0.4.4.4 Changes

    July 24, 2019

    πŸ”„ Changes

    • πŸ”¦ Expose functions to encode compressed containers by @AlexeyRaga
  • v0.4.4.3 Changes

    June 05, 2019

    πŸ”„ Changes

    • Drop leading dot for renderFullname when namespace is null After this change: *Data.Avro> renderFullname $ TN "Hi" [] "Hi" *Data.Avro> renderFullname $ TN "Hi" ["foo"] "foo.Hi" *Data.Avro> renderFullname $ TN "Hi" ["foo", "org"] "foo.org.Hi" The python bindings fail to parse ".Hi", so we should follow the same convention by @imalsogreg
    • πŸ“œ Duplicate namespace parsing logic within mkTypeName for "" ns components by @imalsogreg
    • Drop leading dot for renderFullname when namespace is null After this change: *Data.Avro> renderFullname $ TN "Hi" [] "Hi" *Data.Avro> renderFullname $ TN "Hi" ["foo"] "foo.Hi" *Data.Avro> renderFullname $ TN "Hi" ["foo", "org"] "foo.org.Hi" The python bindings fail to parse ".Hi", so we should follow the same convention by @imalsogreg
    • πŸ“œ Duplicate namespace parsing logic within mkTypeName for "" ns components by @imalsogreg
    • βœ… Test Type C deconflicting which is the reverse of Type B by @newhoggy
    • πŸ”€ Merge pull request #96 from haskell-works/test-type-c-deconflicting-which-is-the-reverse-of-type-b Test Type C deconflicting which is the reverse of Type B by @newhoggy
    • ⬆️ Upgrade to [email protected] by @newhoggy
    • ⬆️ Merge pull request #99 from haskell-works/upgrade-to-haskell-build-2-1-6-7 Upgrade to [email protected] by @newhoggy
    • ⬆️ Upgrade to [email protected] by @newhoggy
    • βž• Add cabal.project file by @newhoggy
    • ⬆️ Merge pull request #100 from haskell-works/upgrade-to-haskell-build-2-1-6-8 Upgrade to [email protected] by @newhoggy
    • ⬆️ Upgrade to [email protected] by @newhoggy
    • ⬆️ Merge pull request #101 from haskell-works/upgrade-to-haskell-build-2-1-6-16 Upgrade to [email protected] by @newhoggy
    • Re-enable binary caching by @newhoggy
    • πŸ”€ Merge pull request #103 from haskell-works/re-enable-binary-caching Re-enable binary caching by @newhoggy
    • ⬆️ Upgrade to [email protected] by @newhoggy
    • ⬆️ Merge pull request #105 from haskell-works/upgrade-to-haskell-build-2.0.2 Upgrade to [email protected] by @newhoggy
    • πŸ”€ Merge branch 'null-namespace-simple-rendering' of github.com:imalsogreg/avro into null-namespace-simple-rendering by @imalsogreg
    • βž• Add unit tests for null namespace rendering by @imalsogreg
    • πŸ”€ Merge pull request #78 from imalsogreg/null-namespace-simple-rendering Drop leading dot for renderFullname when namespace is null by @AlexeyRaga
    • ⬆️ Upgrade CI by @AlexeyRaga
    • ⚑️ Merge pull request #107 from haskell-works/update-ci Upgrade CI by @AlexeyRaga
    • πŸš€ Release v0.4.4.3 by @AlexeyRaga
  • v0.4.4.2 Changes

    April 17, 2019

    πŸ”„ Changes

    • πŸ›  Fixed the implementation of getMap. The previous version of getMap did not handle blocks that began with a negative number. (See #85 for details.) This PR fixes the behavior and shares the code to handle blocks between getMap and getArray. I'm pretty sure we need a similar fix in Decode.Lazy and Decode.Strict, but I don't fully understand what's going on in those modules and don't really want to touch them right now. by @TikhonJelvis
    • Made decoding blocks strict. by @TikhonJelvis
    • πŸ”€ Merge pull request #88 from TikhonJelvis/fix-map-decode Fixed the implementation of getMap. by @AlexeyRaga
    • Deconflict with TypedName by @AlexeyRaga
    • βœ… Test strict and lazy deconflicting by @AlexeyRaga
    • βž• Add Data.Semigroup for ghc 7.10.3 by @dsturnbull
    • βœ‚ Remove TypeApplication in spec for ghc 7.10.3 by @dsturnbull
    • πŸ‘‰ Use GHC 8.6.4 by @AlexeyRaga
    • πŸ”€ Merge pull request #94 from haskell-works/deconflict-typed-names Deconflict with TypedName by @AlexeyRaga
    • πŸš€ Release v0.4.4.2 by @AlexeyRaga
  • v0.4.4.1 Changes

    April 05, 2019

    πŸ”„ Changes

    • βž• Add support to derive from bytestring by @newhoggy
    • πŸ”€ Merge pull request #92 from haskell-works/export-deriveFromByteString Add support to derive from bytestring by @AlexeyRaga
    • πŸš€ Release v0.4.4.1 by @AlexeyRaga
  • v0.4.4.0 Changes

    April 05, 2019

    πŸ”„ Changes

    • βž• Add support to derive from bytestring by @newhoggy
    • πŸ”€ Merge pull request #91 from haskell-works/add-support-to-derive-from-bytestring Add support to derive from bytestring by @AlexeyRaga
    • πŸš€ Release v0.4.4.0 by @AlexeyRaga
  • v0.4.3.0 Changes

    March 04, 2019

    πŸ”„ Changes

    • Switch out pure-zlib for zlib by @null
    • πŸ†• New Data.Avro.Codec module This commit adds the new Data.Avro.Codec module which offers a Codec framework and implements null and deflate codec as required by the Avro spec. Great care was taken to construct the deflate decompressor in an incremental manner to avoid bloating memory too much. by @null
    • Actually make use of new Codec functionality by @null
    • Encode container blocks with codec by @null
    • βœ… Make tests use nullCodec by @null
    • Comments by @alexbiehl
    • βœ‚ Remove redundant import by @alexbiehl
    • βž• Add hspec-discover to build-tool-depends new-test will resolve and provide hspec-discover for us if we ask nicely. by @null
    • βœ… Test codecs in containerSpec by @null
    • Implemented a benchmark suite, with some benchmarks encoding/decoding arrays. The initial benchmark suite measures encoding and decoding four kinds of arrays: * 10,000 booleans * 10,000 ints * 10,000 longs * 10,000 records with the booleans, ints and longs as fields This by itself gives us an interesting result: encoding/decoding a record takes ~2x as much time as encoding/decoding separate arrays with exactly the same data. encode/array/bools mean 4.955 ms ( +- 66.76 ΞΌs ) encode/array/ints mean 5.366 ms ( +- 59.39 ΞΌs ) encode/array/longs mean 6.291 ms ( +- 86.93 ΞΌs ) encode/array/records mean 35.84 ms ( +- 333.0 ΞΌs ) decode/array/bools mean 20.50 ms ( +- 230.4 ΞΌs ) decode/array/ints mean 64.30 ms ( +- 3.144 ms ) decode/array/longs mean 110.8 ms ( +- 3.757 ms ) decode/array/records mean 301.7 ms ( +- 8.999 ms ) You can run the benchmarks with this shorter output using the following command: cabal new-run bench-time -- -s I think I implemented these benchmarks correctly, but it would be great for somebody else to take a look and make sure that I'm actually measuring what I want to measure and things like the setup costs for the benchmark don't get measured. This is just a starting pointβ€”it would be great to have more benchmarks. We should also start benchmarking against the TH-generated types directly. Currently the TH instances go through the intermediate Value type, but I've found that this approach is really inefficient in some internal code I've been working on. In the near future, we will want to implement the equivalent of Aeson's toEncoding method to avoid the intermediate representation, so we should have some benchmarks up to measure the impact of this change. (I'll open an issue about this as well.) by @TikhonJelvis
    • πŸ“œ Flexible parser for decodeRawBlocks by @null
    • πŸ›  Fix test suite by @null
    • βͺ Revert "Fix test suite" This reverts commit a355456. by @null
    • βͺ Revert "Flexible parser for decodeRawBlocks" This reverts commit 1428f26. by @null
    • Simplify decompression function type by @null
    • Whitespace in RawBlockSpec by @null
    • Call out codec on encodeContainer by @null
    • Stricten getBoolean and getNonNegative Before: decode/array/bools time 24.02 ms decode/array/ints time 82.41 ms decode/array/longs time 130.7 ms decode/array/records time 311.5 ms After: decode/array/bools time 18.46 ms decode/array/ints time 27.34 ms decode/array/longs time 34.18 ms decode/array/records time 154.0 ms by @null
    • πŸ”€ Merge pull request #84 from alexbiehl/codecs Proper support for codecs by @AlexeyRaga
    • πŸ”€ Merge pull request #86 from TikhonJelvis/benchmark Implemented a benchmark suite, with some benchmarks encoding/decoding arrays. by @AlexeyRaga
    • πŸ”€ Merge pull request #89 from alexbiehl/stricten Stricten getBoolean and getNonNegative by @AlexeyRaga
    • Cleanup .cabal file by @AlexeyRaga
    • πŸ”€ Merge pull request #90 from haskell-works/cleanup-cabal Cleanup .cabal file by @AlexeyRaga
    • πŸš€ Release v0.4.3.0 by @AlexeyRaga
  • v0.4.2.0 Changes

    February 06, 2019

    πŸ”„ Changes

    • πŸš€ Build and release with Cabal by @AlexeyRaga
    • πŸ›  Fix deriving for GHC 7.10.3 by @AlexeyRaga
    • βœ‚ Remove travis CI by @AlexeyRaga
    • πŸ— Merge pull request #76 from haskell-works/cabal-build Cabal build by @AlexeyRaga
    • ⚑️ updated orb by @AlexeyRaga
    • ⚑️ Merge pull request #77 from haskell-works/v2-build updated orb by @AlexeyRaga
    • πŸ›  Fixed parsing unions with arrays and maps in JSON. An Avro union can contain up to one array and one map type as options. In JSON, a value of a union that is an array is represented as follows: { "array" : [1,2,3] } and maps are { "map" : { "a" : 1, "b" : 2 } } Currently, trying to parse an object like this with an appropriate schema gives us the following error: Error "Type 'array' not in union: Array {item = String} :| [Map {values = Long}]" After this PR, these objects will be parsed correctly according to the schema. by @TikhonJelvis
    • 🚚 Moved isPrimitiveType function to be a helper for decodeAvroJSON. by @TikhonJelvis
    • πŸ”€ Merge pull request #79 from TikhonJelvis/array-and-map-unions Fixed parsing unions with arrays and maps in JSON. by @AlexeyRaga
    • ⚑️ Update CI by @AlexeyRaga
    • πŸš€ Release v0.4.2.0 by @AlexeyRaga
  • v0.4.1.2 Changes

    January 03, 2019

    πŸš€ Technical release: Move from Galois to haskell-works

  • v0.4.1.1 Changes

    • πŸ›  Fixed bugs in handling of namespaces when parsing and printing avro types
    • πŸ›  Fixed a schema overlay test
  • v0.4.1.0 Changes

    • πŸ›  Fixed an omitted data fixture from the cabal sdist
    • πŸ‘Œ Improvements on experimental lazy decoding (up to 25% faster on our tests)
    • πŸ‘‰ Useful instances for EitherN