Makes absolute sense 👍 (and I like the approach, it's similar to how Cheshire handles it)
On Monday, November 19, 2018 at 6:47:42 PM UTC, Chad Harrington wrote: > > I do the same thing with dates & times (convert them to a more > Avro-friendly form first.) I didn't want to couple clj-time and cljs-time > to the lancaster library, since not everyone uses those. I think the right > design is to allow an arbitrary logical type mechanism with user-specified > serializers / deserializers. Lancaster could provide default > implmentations where appropriate, but those could be overridden by the > user. I will think more about this. If you'd like, please open a GitHub > issue about this and we can discuss it further there. I think that is a > better forum for working out the details of the feature. > > Thanks for your interest, > > Chad Harrington > chad.ha...@gmail.com <javascript:> > > > On Mon, Nov 19, 2018 at 11:38 AM Łukasz Korecki <lukasz...@gmail.com > <javascript:>> wrote: > >> Hi! >> >> We're interested in the Date/Time/Timestamp part of the spec. A bit of >> background: our RabbitMQ framework ( >> https://github.com/nomnom-insights/nomnom.bunnicula) supports pluggable >> serialization and adopting Avro made our life easier. We're using it in >> couple of RPC-over-HTTP calls and that also simplified a couple of things. >> The downside of current approach is that we have to encode all timestamps >> as long and encode in the application logic which attributes need to be >> converted to DateTimes after deserializing (or the other way around). >> >> Thanks, >> >> Łukasz >> >> On Monday, November 19, 2018 at 6:22:25 PM UTC, Chad Harrington wrote: >>> >>> Hi Łukasz, >>> Logical types could certainly be added. Are you more interested in >>> arbitrary logical type support or the specific logical types defined in the >>> spec (Decimal, Date, Time, Timestamp, Duration)? Understanding your use >>> case will help with the design. >>> >>> Thanks, >>> >>> Chad Harrington >>> chad.ha...@gmail.com >>> >>> >>> On Mon, Nov 19, 2018 at 1:39 AM Łukasz Korecki <lukasz...@gmail.com> >>> wrote: >>> >>>> This looks great! Thank you for sharing >>>> Any plans for logical types[1] support? That's one of the biggest >>>> things missing in Abracad imho >>>> >>>> >>>> Łukasz >>>> >>>> [1] - https://avro.apache.org/docs/1.8.0/spec.html#Logical+Types >>>> >>>> On Sunday, November 18, 2018 at 2:57:18 AM UTC, Chad Harrington wrote: >>>>> >>>>> https://github.com/deercreeklabs/lancaster >>>>> >>>>> Lancaster is an Apache Avro <http://avro.apache.org/docs/current/> >>>>> library >>>>> for Clojure and ClojureScript. It aims to be fully compliant with the >>>>> Avro >>>>> Specification <http://avro.apache.org/docs/current/spec.html>. >>>>> Lancaster is faster than JSON encoding / decoding and produces much >>>>> smaller >>>>> output. It also supports Avro schema evolution >>>>> <http://avro.apache.org/docs/current/spec.html#Schema+Resolution>, >>>>> allowing your data formats to change over time without breaking things. >>>>> >>>>> Issues and PRs are welcomed. >>>>> >>>>> Chad Harrington >>>>> chad.ha...@gmail.com >>>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Clojure" group. >>>> To post to this group, send email to clo...@googlegroups.com >>>> Note that posts from new members are moderated - please be patient with >>>> your first post. >>>> To unsubscribe from this group, send email to >>>> clojure+u...@googlegroups.com >>>> For more options, visit this group at >>>> http://groups.google.com/group/clojure?hl=en >>>> --- >>>> You received this message because you are subscribed to the Google >>>> Groups "Clojure" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to clojure+u...@googlegroups.com. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> -- >> You received this message because you are subscribed to the Google >> Groups "Clojure" group. >> To post to this group, send email to clo...@googlegroups.com >> <javascript:> >> Note that posts from new members are moderated - please be patient with >> your first post. >> To unsubscribe from this group, send email to >> clojure+u...@googlegroups.com <javascript:> >> For more options, visit this group at >> http://groups.google.com/group/clojure?hl=en >> --- >> You received this message because you are subscribed to the Google Groups >> "Clojure" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to clojure+u...@googlegroups.com <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.