Jimmy Pramosi created AVRO-3633:
-----------------------------------

             Summary: Additional attributes for 'avro_derive' crate
                 Key: AVRO-3633
                 URL: https://issues.apache.org/jira/browse/AVRO-3633
             Project: Apache Avro
          Issue Type: Improvement
          Components: rust
    Affects Versions: 1.11.1
            Reporter: Jimmy Pramosi


Hello,

At the moment it is not possible to skip or rename a specific field within a 
struct derived with 'AvroSchema'. For e.g.
{code:java}
use std::time::Instant;

use apache_avro::AvroSchema;
use serde::Deserialize;
use serde::Serialize;

#[derive(Clone, Debug, Deserialize, Serialize, AvroSchema)]
pub struct FileDescriptor {
    #[avro(rename = "pflags")]    // <--- NOT POSSIBLE
    #[serde(rename = "pflags")]
    pub flags: u64,
    #[avro(skip)]                 // <--- NOT POSSIBLE
    #[serde(skip)]
    access_time: Instant,
}{code}
I would like to suggest to implement additional attributes 'skip' and 'rename' 
to the 'avro_derive' crate. These attributes are also common in other 
procedural macro crates like 'serde'.

Exemplary proposal:

[https://www.diffchecker.com/iju3tSuX]

 

Best Regards,

Jimmy



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

Reply via email to