[ 
https://issues.apache.org/jira/browse/AVRO-2893?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17178356#comment-17178356
 ] 

ASF subversion and git services commented on AVRO-2893:
-------------------------------------------------------

Commit d5e35e8afaee0566cd85c748ffbff3841be2bd20 in avro's branch 
refs/heads/master from Michael A. Smith
[ https://gitbox.apache.org/repos/asf?p=avro.git;h=d5e35e8 ]

AVRO-2893: Isolate Errors to Simplify Import Graph (#933)

* AVRO-2893: Isolate Errors to Simplify Import Graph

If an exception is created in avro.schema and handled in avro.io, then another 
exception can't be created in avro.io and handled in avro.schema.

Isolating the exceptions in their own module makes it easy to reuse code 
between the functional modules themselves.

> Isolate Exception Classes to Simplify Import Graph
> --------------------------------------------------
>
>                 Key: AVRO-2893
>                 URL: https://issues.apache.org/jira/browse/AVRO-2893
>             Project: Apache Avro
>          Issue Type: Improvement
>          Components: python
>            Reporter: Michael A. Smith
>            Assignee: Michael A. Smith
>            Priority: Major
>
> Many of the python avro modules implement custom exceptions. Other modules 
> import those exceptions. Since imports cannot be cyclic, this means you can't 
> use, say, {{avro.schema.AvroException}} in {{avro.io}} and at the same time 
> use {{avro.io.BinaryDecoder}} in {{avro.schema}}.
> I propose that exception classes should be moved into {{avro.errors}} and 
> that that module should strictly not import anything else from {{avro.*}}.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to