You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@avro.apache.org by Chad Preisler <ch...@gmail.com> on 2021/07/08 00:36:27 UTC

Python Canonical schema

Hello,

I would  like to confirm that the 1.10 Python API does not have methods to
get the canonical form of a schema. I do see methods in the schema class in
the master branch to get the canonical form. Is that feature complete in
the latest build?

Thanks,
Chad

Re: Python Canonical schema

Posted by Chad Preisler <ch...@gmail.com>.
Hello,

Because I need this soon, I wrote some code to generate the canonical form
of a schema. The code I wrote is pretty much a port of the Avro Java
classes. I also am generating the parsing 64 bit fingerprint in
two's complement form so I can use the number to look up schemas. I've
tested the fingerprint against a few schemas and it seems to work. Is there
a master schema that Avro uses to test canonical form? I want to make sure
I have it right.

I still have to test the schema repository code in my project, and since
this is my first time really writing Python code it may not conform to all
the python conventions. The code can be found at the following link.

https://gitlab.com/chad.preisler/avrojavabinaryencoderexample

Thanks,
Chad



On Thu, Jul 8, 2021 at 9:54 AM Subhash Bhushan <su...@gmail.com>
wrote:

> Hey Chad,
>
> Yes, the current version 1.10 does not support Canonical forms of schema.
> Refer to Jira issue - Python support for generating canonical forms of
> schema <https://issues.apache.org/jira/browse/AVRO-1938>
> They have been introduced into the codebase in the last few months though,
> and version 1.11 should support canonical forms and fingerprinting whenever
> released.
>
> Regards,
> Subhash.
>
> On Wed, Jul 7, 2021 at 5:36 PM Chad Preisler <ch...@gmail.com>
> wrote:
>
>> Hello,
>>
>> I would  like to confirm that the 1.10 Python API does not have methods
>> to get the canonical form of a schema. I do see methods in the schema class
>> in the master branch to get the canonical form. Is that feature complete in
>> the latest build?
>>
>> Thanks,
>> Chad
>>
>

Re: Python Canonical schema

Posted by Subhash Bhushan <su...@gmail.com>.
Hey Chad,

Yes, the current version 1.10 does not support Canonical forms of schema.
Refer to Jira issue - Python support for generating canonical forms of
schema <https://issues.apache.org/jira/browse/AVRO-1938>
They have been introduced into the codebase in the last few months though,
and version 1.11 should support canonical forms and fingerprinting whenever
released.

Regards,
Subhash.

On Wed, Jul 7, 2021 at 5:36 PM Chad Preisler <ch...@gmail.com>
wrote:

> Hello,
>
> I would  like to confirm that the 1.10 Python API does not have methods to
> get the canonical form of a schema. I do see methods in the schema class in
> the master branch to get the canonical form. Is that feature complete in
> the latest build?
>
> Thanks,
> Chad
>