Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AVRO-3900: [Rust] Make it possible to use custom names validators #2643

Merged
merged 10 commits into from
Jan 25, 2024

Commits on Dec 21, 2023

  1. AVRO-3900: [Rust] Make it possible to use custom validators

    WIP
    
    TODO:
    - Extract validators for enum symbols and record field names
    - Polish the APIs
    
    Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>
    martin-g committed Dec 21, 2023
    Configuration menu
    Copy the full SHA
    75232b8 View commit details
    Browse the repository at this point in the history
  2. AVRO-3900: Add validator trait for enum symbol names

    Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>
    martin-g committed Dec 21, 2023
    Configuration menu
    Copy the full SHA
    bc9fbbc View commit details
    Browse the repository at this point in the history
  3. AVRO-3900: Introduce validator for RecordField's name

    Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>
    martin-g committed Dec 21, 2023
    Configuration menu
    Copy the full SHA
    46a24d1 View commit details
    Browse the repository at this point in the history
  4. AVRO-3900: Extract the custom validators tests as IT tests

    This way they use the public APIs of the crate, as a real user application.
    
    Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>
    martin-g committed Dec 21, 2023
    Configuration menu
    Copy the full SHA
    8446e07 View commit details
    Browse the repository at this point in the history
  5. AVRO-3900: Polish APIs

    Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>
    martin-g committed Dec 21, 2023
    Configuration menu
    Copy the full SHA
    c277f41 View commit details
    Browse the repository at this point in the history
  6. AVRO-3900: Split the validator integration tests

    Otherwise there are timing issues with the initializations of the
    OnceLock's for the different validators.
    Parsing a Schema leads to initialization of the default validator and
    later it is impossible to set a custom one
    
    Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>
    martin-g committed Dec 21, 2023
    Configuration menu
    Copy the full SHA
    f11af15 View commit details
    Browse the repository at this point in the history

Commits on Dec 22, 2023

  1. AVRO-3900: Simplify generate_interop_data.rs example to not use avro_…

    …test_helper crate
    
    For some reason clearing the log messages in the tests destructor
    (#[dtor]) was failing for this example.
    
    Simplify the TestLogger to use the std thread_local!() instead of the
    third party ref_thread_local!()
    
    Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>
    martin-g committed Dec 22, 2023
    Configuration menu
    Copy the full SHA
    8315922 View commit details
    Browse the repository at this point in the history
  2. AVRO-3900: Merge the validators integration tests in one test

    Just make sure the setup of the custom validators is done before the
    parsing of any schema to prevent registering the default validator
    (SpecificationValidator)
    
    Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>
    martin-g committed Dec 22, 2023
    Configuration menu
    Copy the full SHA
    86c70b3 View commit details
    Browse the repository at this point in the history
  3. AVRO-3900: Improve the documentation

    Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>
    martin-g committed Dec 22, 2023
    Configuration menu
    Copy the full SHA
    9d7c63a View commit details
    Browse the repository at this point in the history

Commits on Jan 24, 2024

  1. Configuration menu
    Copy the full SHA
    822c340 View commit details
    Browse the repository at this point in the history