[ 
https://issues.apache.org/jira/browse/AVRO-3753?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Fedor Telnov updated AVRO-3753:
-------------------------------
    Description: 
If you look into `UnionSchema` struct, you'll find out that it both has 
`pub(crate)` constructor field(named "schemas") and `pub(crate)` constructor 
method("new"). Assuming this, it's clear that external user of your library is 
unable to build union by himself. The only thing external user can do is to 
parse unions from str.

This serious limitation could be avoided by simply removing visibility 
modifiers(I think nothing serious would happen).

  was:
If you look into `UnionSchema` struct, you'll find out that it both has 
`pub(crate)` constructor field(named "schemas") and `pub(crate)` constructor 
method("new"). Assuming this, it's clear that external user of your library is 
unable to build union by himself. The only thing external user can do is to 
parse unions from str.

This serious limitation could be avoid by simply removing visibility 
modifiers(I think nothing serious would happen).


> [Rust] Fix UnionSchema structure visibility
> -------------------------------------------
>
>                 Key: AVRO-3753
>                 URL: https://issues.apache.org/jira/browse/AVRO-3753
>             Project: Apache Avro
>          Issue Type: Improvement
>          Components: rust
>            Reporter: Fedor Telnov
>            Priority: Major
>
> If you look into `UnionSchema` struct, you'll find out that it both has 
> `pub(crate)` constructor field(named "schemas") and `pub(crate)` constructor 
> method("new"). Assuming this, it's clear that external user of your library 
> is unable to build union by himself. The only thing external user can do is 
> to parse unions from str.
> This serious limitation could be avoided by simply removing visibility 
> modifiers(I think nothing serious would happen).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to