Commits


Martin Grigorov authored and GitHub committed 61df1871410
AVRO-3900: [Rust] Make it possible to use custom names validators (#2643) * AVRO-3900: [Rust] Make it possible to use custom validators * AVRO-3900: Add validator trait for enum symbol names * AVRO-3900: Introduce validator for RecordField's name * 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. * AVRO-3900: Polish APIs * 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 * 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!() * 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) * AVRO-3900: Improve the documentation Signed-off-by: Martin Tzvetanov Grigorov <mgrigorov@apache.org>