Skip to content

Conversation

@yanivru
Copy link
Contributor

@yanivru yanivru commented Mar 12, 2022

Make sure you have checked all steps below.

Jira

Tests

  • My PR adds the following unit tests OR does not need testing for this extremely good reason:
  • Add a new test case to the Avro.Test.CodeGenTest.TestCodeGen unit test
  • Enable the tests to run under .NET Core by adding compilation support with the Microsoft.CodeAnalysis.CSharp package

Commits

  • My commits all reference Jira issues in their subject lines. In addition, my commits follow the guidelines from "How to write a good git commit message":

    1. Subject is separated from body by a blank line
    2. Subject is limited to 50 characters (not including Jira issue reference)
    3. Subject does not end with a period
    4. Subject uses the imperative mood ("add", not "adding")
    5. Body wraps at 72 characters
    6. Body explains "what" and "why", not "how"

Documentation

  • In case of new functionality, my PR adds documentation that describes how to use it.

    • All the public functions and the classes in the PR contain Javadoc that explain what it does

@github-actions github-actions bot added the C# label Mar 12, 2022
@KyleSchoonover
Copy link
Contributor

@yanivru Can you start by updating the description to follow the standards for the pull request?

* limitations under the License.
*/
using System;
using System.Collections.Generic;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you remove and sort usings. Assuming you are using VS.

{
internal static IList<SchemaName> GetSchemaNames(IEnumerable<string> aliases, string enclosingTypeName, string enclosingTypeNamespace)
{
if (aliases == null)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add brackets?

if (aliases == null)
return null;

var enclosingSchemaName = new SchemaName(enclosingTypeName, enclosingTypeNamespace, null, null);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you replace var with the actual name of the object?

private ArraySchema(Schema items, PropertyMap props) : base(Type.Array, props)
/// <param name="items">schema for the array items type.</param>
/// <param name="customAttributes">dictionary that provides access to custom properties.</param>
public ArraySchema(Schema items, PropertyMap customAttributes = null)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Schema classes already use a Factory pattern method "NewInstance". I would recommend following the same pattern than exposing the constructor.

/// <param name="customProperties">custom properties on this schema.</param>
/// <param name="doc">documentation for this named schema.</param>
/// <param name="defaultSymbol"></param>
public EnumSchema(string name,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Schema classes already use a Factory pattern method "NewInstance". I would recommend following the same pattern than exposing the constructor.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NewInstance is internal, and it's more of a deserializer than an object creator, it contains a lot of logic. I can change the public constructors to a factory method (how should I call it?), is that the 'interface' we want the schema classes to expose? I think constructor is a bit more convenient to use.

IGrouping<string, Schema> duplicateType = groupedByFullNames.FirstOrDefault(x => x.Count() > 1);

if (duplicateType != null)
throw new ArgumentException($"Duplicate type in union: {duplicateType.Key}");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add brackets

if (schemas.Any(schema => schema.Tag == Type.Union))
throw new ArgumentException("Unions may not immediately contain other unions", nameof(schemas));

var groupedByFullNames = schemas.GroupBy(schema => schema.Fullname);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

replace var with actual type

return result;
}

private void VerifyChildSchemas(List<Schema> schemas)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Document parameters and exception cases

private void VerifyChildSchemas(List<Schema> schemas)
{
if (schemas.Any(schema => schema.Tag == Type.Union))
throw new ArgumentException("Unions may not immediately contain other unions", nameof(schemas));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Update wording. May seems optional. "Unions can not..."

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I took that expression from the avro documentation. I believe it's better to be in sync with the documentation (https://avro.apache.org/docs/current/spec.html#Unions).

var groupedByFullNames = schemas.GroupBy(schema => schema.Fullname);
IGrouping<string, Schema> duplicateType = groupedByFullNames.FirstOrDefault(x => x.Count() > 1);

if (duplicateType != null)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can move your linq statement into the if. There is no reason to create a variable that is not used in another place.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It cannot be moved, I am calculating 'duplicateType' in the linq and checking it's value in the if statement.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IGrouping<string, Schema> duplicateType = schemas.GroupBy(schema => schema.Fullname).FirstOrDefault(x => x.Count() > 1);

            if (duplicateType != null)
            {
                throw new ArgumentException($"Duplicate type in union: {duplicateType.Key}");
            }

@zcsizmadia
Copy link
Contributor

Long awaited feature. Thanks for doing it! I assume https://issues.apache.org/jira/browse/AVRO-3003 is s typo in the PR description. The PR title has the proper tickjet number.


[TestCase("{\"type\": \"enum\", \"name\": \"Test\", \"symbols\": [\"A\", \"B\"]}",
[TestCase]
public void TestRecordCreation()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

other test cases would be useful with some expected result test parameter as well.

testToString(sc, s);
}

[TestCase]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as my previous comment about more test cases.

@yanivru
Copy link
Contributor Author

yanivru commented Mar 25, 2022

@KyleSchoonover Fixed all issues. I changed the constructors to factory methods. If you think it's ok I will leave it. If not I can revert it.

@zcsizmadia Added more unit tests

IEnumerable<string> aliases = null,
PropertyMap customProperties = null,
string doc = null,
string defaultSymbol = null)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this have an addition parameter at the end? bool shouldThrowParseException = false

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The public method should have this parameter, it should always throw AvroException (and not ParseException. The internal constructor can be used by this method (public factory method) or by the NewInstance method (the json parsing method). So I add this parameter to it to choose which exception to throw.

But if we don't care about backward compatibility of the inner exception (till now there was SchemaParseException inside SchemaParseException, I can change to SchemaParseException the contains AvroException), I can remove this kinda ugly code.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with the change to AvroException (however not the message if possible). I dont think an inner exception of SchemaParse Exception makes too much difference, it can be just a asimple AvroException.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, changed to AvroException (only the inner exception). Not sure how to add the release note :-)

map.Add(name, field);
}

private static void addToFieldMap(Dictionary<string, Field> map, string name, Field field)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is addParsedFieldToFieldMap needed? It seems identical to addToFieldMap. Can we just keep addToFieldMap as is ans use it instead of addParsedFieldToFieldMap?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it just a workaround to change the exception type? If yes I would change the exception to the new type and call it out. This seems to me more confusing :)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, tried to keep it backward compatible. And it's actually just the inner exception (I can RecordSchema.NewInstance to throw SchemaParseException anyway). Is that OK to break compatibility of inner exception?

What do you mean by "call it out"?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With the call out I meant to make a release note that `in case of duplicate record field, AVroExc eption, or whatever exceptionn is thrown instead SchemaParseException.

I would have only one addToFieldMap method, and change the exception type to something more meaningful if SchemaParseException is not really correct (and create the release note). Or keep the original addToFieldMap as is. I just dont really see theadvantage of having addParsedFieldToFieldMap.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

int i = 0;
foreach (var symbol in symbols)
{
if (symbolMap.ContainsKey(symbol))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are null or empty strings allowed as a symbol? Should it throw ArgumentException if string.IsNullOrEmpty(symbol)?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ArgumentException or AvroException? The convention everywhere in the code is to throw AvroException even in cases that ArgumentException seems more appropriate.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AvroException makes sense. Is there any other criteria for a symbol name? Maybe add a ValidateSymbol(string symbol) which checks a symbol and throws the exception? As a first implementation it is a simple string.IsNullOrEmpty()?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, just seen in spec that "Every symbol must match the regular expression [A-Za-z_][A-Za-z0-9_]*"
So added the regex to the name verification.

{
Assert.Throws<AvroException>(() => EnumSchema.Create("name", new[] { "A", "B" }, defaultSymbol: "C"));
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add unit tests for invalid symbols if there is any. e.g. null, "", " " ...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

Assert.AreEqual(10, fixedSchema.Size);
Assert.AreEqual(s, fixedSchema.ToString());
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should MapSchema.Create(...) tested as well?

Copy link
Contributor Author

@yanivru yanivru Apr 2, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just noticed there already is a CreateMap in MapSchema type. So I will remove the create. It's not consistent with other schema types (which has Create). But writing the type each time seems redundant, so leaving them "Create" (Seems like MapSchema is not consistent in other areas, like exception types). What do you think?

Anyway, tests added

/// <param name="cutsomProperties">Dictionary that provides access to custom properties</param>
/// <returns>A new <see cref="MapSchema"/>.</returns>
public static MapSchema CreateMap(Schema type)
public static MapSchema CreateMap(Schema type, PropertyMap cutsomProperties = null)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix spelling plz

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

return symbolMap;
}

private static bool ValidateSymbolName(string symbol) => string.IsNullOrEmpty(symbol) || !Regex.IsMatch(symbol, "^([A-Za-z_][A-Za-z0-9_]*)$");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I always have perfromance concerns when we use Regex. I know that JsonHelper.GetRequiredString(), however is that a concern here? What I am thinking is that when someone is using a schemaBuilder in runtime, this call might be called many times? I might be just too paranoid here. In a unit test I have no concern, however in the main library, it might cause unnecessary delay for a simple check. Of course if the name might be more complicated in the future, regex is probably the easiest/best solution.

IMO ValidateSymbol should throw the exception if not valid, something like this:

private static void ValidateSymbolName(string symbol)
{
    if (string.IsNullOrEmpty(symbol) || !Regex.IsMatch(symbol, "^([A-Za-z_][A-Za-z0-9_]*)$"))
    {
        throw new AvroException($"Invalid symbol name: {symbol}");
    }
}

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Validate that returns bool. Don't know what I was thinking. Fixed.

Yeah, Regex is not really good at performance (I don't like the readability either), but since it's a new feature (the parsing code doesn't use this validation) so we are not degrading performance, and since my guess that usually schemas are not created in a tight loop (usually created once and reused), it should be ok. It can be fixed if it does prove to be a problem.

public static MapSchema CreateMap(Schema type, PropertyMap custsomProperties = null)
{
return new MapSchema(type, cutsomProperties);
return new MapSchema(type, custsomProperties);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix the fix plz ;)

@zcsizmadia
Copy link
Contributor

@yanivru Plz review the CodeQL warnings or suggestions and I think it is ready to be approved. Thanks for all the changes!

@yanivru
Copy link
Contributor Author

yanivru commented Apr 7, 2022

@zcsizmadia I think I fixed all CodeQL issues

@martin-g martin-g merged commit 1c84472 into apache:master Apr 19, 2022
martin-g added a commit that referenced this pull request Apr 19, 2022
…#1597)

* AVRO-2211: Support schema creation

* Add license info to new files

* Fix documentation for FixedSchema ctor

* Remove and sort using

* Add missing brackets and replace var with explicit type

* Fix exception type in case of parsing

* Rename field to follow conventions

* AVRO 2211: Inlining temporary variable in linq

* AVRO-2211: Change exception type and add missing documentations

* AVRO-2211: Fix RecordSchema to set the positions of it's fields, instead of verifying it

* AVRO-2211: Fix RecordSchema fields assignment when creation new RecordSchema

* AVRO-2211: Change constructors of schema classes to factory method

* AVRO-2211: Add unit tests for RecordSchema and EnumSchema

* :AVRO-2211: Remove whitespace

* :AVRO-2211: Add symbol names verification for EnumSchema

* AVRO-2211: Fix enum name validation

* AVRO-2211: Throw AvroException consistently

* AVRO-2211: Throw AvroException in RecrodSchema consistently

* AVRO-2211: Remove duplicate factory methods on MapSchema

* AVRO-2211: Remove redundant parameter doc

* AVRO-2211: Add Schema creation tests

* AVRO-2211: Change ValidateSymbol to throw exception

* AVRO-2211: Fix typo

* AVRO-2211: Fix code QL issues

* AVRO-2211: Fix typo

Co-authored-by: Martin Grigorov <[email protected]>
(cherry picked from commit 1c84472)
@martin-g
Copy link
Member

Thank you, @yanivru !

@yanivru yanivru deleted the schema-creation branch April 26, 2022 12:55
martin-g added a commit to jklamer/avro that referenced this pull request May 4, 2022
…apache#1597)

* AVRO-2211: Support schema creation

* Add license info to new files

* Fix documentation for FixedSchema ctor

* Remove and sort using

* Add missing brackets and replace var with explicit type

* Fix exception type in case of parsing

* Rename field to follow conventions

* AVRO 2211: Inlining temporary variable in linq

* AVRO-2211: Change exception type and add missing documentations

* AVRO-2211: Fix RecordSchema to set the positions of it's fields, instead of verifying it

* AVRO-2211: Fix RecordSchema fields assignment when creation new RecordSchema

* AVRO-2211: Change constructors of schema classes to factory method

* AVRO-2211: Add unit tests for RecordSchema and EnumSchema

* :AVRO-2211: Remove whitespace

* :AVRO-2211: Add symbol names verification for EnumSchema

* AVRO-2211: Fix enum name validation

* AVRO-2211: Throw AvroException consistently

* AVRO-2211: Throw AvroException in RecrodSchema consistently

* AVRO-2211: Remove duplicate factory methods on MapSchema

* AVRO-2211: Remove redundant parameter doc

* AVRO-2211: Add Schema creation tests

* AVRO-2211: Change ValidateSymbol to throw exception

* AVRO-2211: Fix typo

* AVRO-2211: Fix code QL issues

* AVRO-2211: Fix typo

Co-authored-by: Martin Grigorov <[email protected]>
martin-g added a commit that referenced this pull request May 4, 2022
* Encoer v1 with interop data

* unit tested

* fmt

* Interop tested

* uneed file

* remove bugs

* clippy

* fix README

* rat fix

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* PR changes

* static setup

* Specific rename and interop test in script

* typo

* AVRO-3492: Add support for deriving Schema::Record aliases (#1647)

* AVRO-3492: Add support for deriving Schema::Record aliases

Uses Darling's 'multiple' attribute feature.

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3492: Add a test case with multiple attributes with different values for 'alias' key

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3494: Rust: uncomment some tests which actually pass

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3494: Uncomment a test for recursive types (#1648)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3492: Add logic to derive the aliases for Schema::Enum (#1649)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3415: Add code coverage report support for csharp (#1565)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3415 Add code coverage report support for csharp

* Ignore Updates and package references

* Updated names

* Sorted packages alphabetically

* Mode ReportGenerator instructions for global.

* Update versions.props

* Remove path

* Updated tabbing

* Cleanup version.props

* Add missing settings from version.props

* Updated from tabs to 2 space indents

* Added command in code block

* Fix carriage return

* force carriage return

* Another carriage return

* Added longer path to report

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-3384: Define C# Coding Style Guidelines (#1534)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3384 Initial check in

* Formatting fix

* Additional formatting

* More formatting

* Added additional rule

* Completed new line rules

* Indentation preferences complete

* Updated header

* Additional formatting

* More formatting changes

* Added spacing options

* Updated wrap options

* Additional documentation for styling

* Updated notes

* Updated more

* Added var preferences and Expression-bodied member preferences

* Initial styling rules documented

* Updated naming rules to reflect Roslyn naming rules

* Added other styling rule callouts.

* Updated Readme

* Updated rule

* Add header template

* Microsoft has a bug for semicolon which makes this not work.

* Added license

* Added note about IDE0055

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-3424: Added support to parse string into Schema.Type (#1571)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3424 Created extension method for converting string into a Schema.Type enumeration

* Updated functionality

* Removed breaking code

* Updated remove quotes

* Removed if from tests

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-3003: Fully qualify enum default value in C# code gen (#1596)

* AVRO-3458: Added tests for GenericRecord (#1606)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3458 Added tests for GenericRecord

* Moved Schema to const

* using discard

* Empty

* Add license

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-2883: Fix namespace mapping (#1610)

* Remove unused package references

* Replace namespace in text schema

* Remove namespace mapping

* Add unit tests

* Match namespace mapping used in ticket

* Make ReplaceMappedNamespacesInSchema private

* Mark NamespaceMapping obsolete

Co-authored-by: Zoltan Csizmadia <[email protected]>

* AVRO-2211: SchemaBuilder equivalent or other means of schema creation (#1597)

* AVRO-2211: Support schema creation

* Add license info to new files

* Fix documentation for FixedSchema ctor

* Remove and sort using

* Add missing brackets and replace var with explicit type

* Fix exception type in case of parsing

* Rename field to follow conventions

* AVRO 2211: Inlining temporary variable in linq

* AVRO-2211: Change exception type and add missing documentations

* AVRO-2211: Fix RecordSchema to set the positions of it's fields, instead of verifying it

* AVRO-2211: Fix RecordSchema fields assignment when creation new RecordSchema

* AVRO-2211: Change constructors of schema classes to factory method

* AVRO-2211: Add unit tests for RecordSchema and EnumSchema

* :AVRO-2211: Remove whitespace

* :AVRO-2211: Add symbol names verification for EnumSchema

* AVRO-2211: Fix enum name validation

* AVRO-2211: Throw AvroException consistently

* AVRO-2211: Throw AvroException in RecrodSchema consistently

* AVRO-2211: Remove duplicate factory methods on MapSchema

* AVRO-2211: Remove redundant parameter doc

* AVRO-2211: Add Schema creation tests

* AVRO-2211: Change ValidateSymbol to throw exception

* AVRO-2211: Fix typo

* AVRO-2211: Fix code QL issues

* AVRO-2211: Fix typo

Co-authored-by: Martin Grigorov <[email protected]>

* AVRO-3841: Try exact schema match first in union type (#1635)

* Try exact schema match

* Fix formatting

* Add tests for exception

Co-authored-by: Zoltan Csizmadia <[email protected]>

* AVRO-3495: Rust: Fields order should not matter (#1650)

* AVRO-3495: The order of the struct's fields and schema's fields should not matter

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3495: Use the lookup table when comparing values against fields by name

Until now it was expected that both the schema fields and the input
values are sorted the same way.

Use BTreeMap instead of HashMap for the lookup table because otherwise
the assertion on the validation error messages is impossible due to
random printing of the map's entries

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3495: Update the test case

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Bump slf4j.version from 1.7.33 to 1.7.36 in /lang/java (#1646)

Bumps `slf4j.version` from 1.7.33 to 1.7.36.

Updates `slf4j-api` from 1.7.33 to 1.7.36
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](qos-ch/slf4j@v_1.7.33...v_1.7.36)

Updates `slf4j-simple` from 1.7.33 to 1.7.36
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](qos-ch/slf4j@v_1.7.33...v_1.7.36)

Updates `slf4j-log4j12` from 1.7.33 to 1.7.36
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](qos-ch/slf4j@v_1.7.33...v_1.7.36)

---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.slf4j:slf4j-simple
  dependency-type: direct:development
  update-type: version-update:semver-patch
- dependency-name: org.slf4j:slf4j-log4j12
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* AVRO-3491 Avoid a cast after is check (#1645)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3491 Avoid a cast after is check

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-3496: Rust: Use visitor.visit_borrowed_str() when possible (#1652)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3477: Add unit tests for logical types with fixed base type (#1629)

* Support fixed base type for logical types

* Tweak

* Revert

* Fix fixed type definition

* Add AvroGen tests

Co-authored-by: Zoltan Csizmadia <[email protected]>

* AVRO-3465: Add avrogen protocol tests (#1616)

* Add avrogen protocol tests

* Add protocol test case

* Fix merge conflicts

Co-authored-by: Zoltan Csizmadia <[email protected]>

* AVRO-3484: Add support for deriving a default value for a record field (#1651)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3497 Simplify conditional expression (#1658)

* AVRO-3497 Simplify conditional expression

* Added null check back

* Updated tests

* AVRO-3500: Use property-based testing for the IT tests in avro_derive module (#1659)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Configure Dependabot to check for Rust updates daily

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3501: Rust: Cache ~/.cargo and target folder for faster builds (#1661)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Avro 3502 logical type wrong order (#1664)

* AVRO-3501: Rust: Cache ~/.cargo and target folder for faster builds

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3502: Rust: Wrong [ORDER] for Parsing Canonical Form

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Update uuid requirement from 0.8.2 to 1.0.0 in /lang/rust (#1660)

* Update uuid requirement from 0.8.2 to 1.0.0 in /lang/rust

Updates the requirements on [uuid](https://github.com/uuid-rs/uuid) to permit the latest version.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](uuid-rs/uuid@0.8.2...1.0.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* Issue #1660 - Fix compilation errors after updating uuid crate from 0.8 to 1.0

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Martin Tzvetanov Grigorov <[email protected]>

* Bump jmh.version from 1.34 to 1.35 in /lang/java (#1662)

Bumps `jmh.version` from 1.34 to 1.35.

Updates `jmh-core` from 1.34 to 1.35

Updates `jmh-generator-annprocess` from 1.34 to 1.35

---
updated-dependencies:
- dependency-name: org.openjdk.jmh:jmh-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.openjdk.jmh:jmh-generator-annprocess
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump zstd-jni from 1.5.1-1 to 1.5.2-2 in /lang/java (#1663)

Bumps [zstd-jni](https://github.com/luben/zstd-jni) from 1.5.1-1 to 1.5.2-2.
- [Release notes](https://github.com/luben/zstd-jni/releases)
- [Commits](luben/zstd-jni@v1.5.1-1...v1.5.2-2)

---
updated-dependencies:
- dependency-name: com.github.luben:zstd-jni
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump libthrift from 0.15.0 to 0.16.0 in /lang/java (#1665)

Bumps [libthrift](https://github.com/apache/thrift) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/apache/thrift/releases)
- [Changelog](https://github.com/apache/thrift/blob/master/CHANGES.md)
- [Commits](apache/thrift@v0.15.0...v0.16.0)

---
updated-dependencies:
- dependency-name: org.apache.thrift:libthrift
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* AVRO-3498 Deprecate NameCtorKey (#1657)

* AVRO-3490 Updated to use throw expressions (#1644)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3490 Updated to use throw expressions

* Additional expressions

Co-authored-by: Kyle T. Schoonover <[email protected]>

* Bump grpc.version from 1.45.0 to 1.45.1 in /lang/java (#1671)

Bumps `grpc.version` from 1.45.0 to 1.45.1.

Updates `grpc-core` from 1.45.0 to 1.45.1
- [Release notes](https://github.com/grpc/grpc-java/releases)
- [Commits](grpc/grpc-java@v1.45.0...v1.45.1)

Updates `grpc-stub` from 1.45.0 to 1.45.1
- [Release notes](https://github.com/grpc/grpc-java/releases)
- [Commits](grpc/grpc-java@v1.45.0...v1.45.1)

Updates `grpc-netty` from 1.45.0 to 1.45.1
- [Release notes](https://github.com/grpc/grpc-java/releases)
- [Commits](grpc/grpc-java@v1.45.0...v1.45.1)

---
updated-dependencies:
- dependency-name: io.grpc:grpc-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.grpc:grpc-stub
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.grpc:grpc-netty
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump underscore from 1.13.2 to 1.13.3 in /lang/js (#1669)

Bumps [underscore](https://github.com/jashkenas/underscore) from 1.13.2 to 1.13.3.
- [Release notes](https://github.com/jashkenas/underscore/releases)
- [Commits](jashkenas/underscore@1.13.2...1.13.3)

---
updated-dependencies:
- dependency-name: underscore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* AVRO-3484: Followup Check default json parsing at compile time for derive macro  (#1668)

* check json parsing at compile time

* fmt

* AVRO-3427: skip creation of namespace directories for csharp schema (#1578)

* Add new argument parameter --skip-directories. It will skip creation of directories for namespace. Just generate classes in output directory

* Add missing doc param description

* Fix Unit tests after merge with master

* Fix Unit tests after merge with master

* C# Add unit tests for --skip-directories option

Co-authored-by: Pawel Kordowski <[email protected]>

* AVRO-3482: Reuse MAGIC in DataFileReader (#1639)

DataFileReader reads magic information twice. seek(0) is invoked
twice due to this. In cloud object stores, seeking back to 0 will
cause it to fall back to "random IO policy". Example of this is
S3A connector for s3. This causes suboptimal reads in object stores.
Refactoring in the patch addresses this case by reusing MAGIC.

* AVRO-2870: Avoid throwing from destructor in DataFileWriterBase (#921)

Co-authored-by: Thiruvalluvan M G <[email protected]>

* Updated the checksum for PHP composer download (#1677)

* Remove trailing ^M to make Git happy

Related to: 72e1135

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Encoer v1 with interop data

* unit tested

* fmt

* AVRO-3506: Cleanup and minor improvements

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Cleanup

Give a better name to TestGenerateInteropSingleObjectEncoding
Remove useless lifetime in schema.rs
Remove .json files for the single object encoded test file

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Add licence header to TestGenerateInteropSingleObjectEncoding

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Fix spotless issues in the new Java test classes

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Fix the path to the schema file

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Fix the id to match the expected value

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Fix spotless again

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

Co-authored-by: Martin Grigorov <[email protected]>
Co-authored-by: Martin Tzvetanov Grigorov <[email protected]>
Co-authored-by: Kyle Schoonover <[email protected]>
Co-authored-by: Kyle T. Schoonover <[email protected]>
Co-authored-by: Jose Massada <[email protected]>
Co-authored-by: Zoltan Csizmadia <[email protected]>
Co-authored-by: Zoltan Csizmadia <[email protected]>
Co-authored-by: yanivru <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: kordos <[email protected]>
Co-authored-by: Pawel Kordowski <[email protected]>
Co-authored-by: rbalamohan <[email protected]>
Co-authored-by: Andrew Onyshchuk <[email protected]>
Co-authored-by: Thiruvalluvan M G <[email protected]>
martin-g added a commit that referenced this pull request May 4, 2022
* Encoer v1 with interop data

* unit tested

* fmt

* Interop tested

* uneed file

* remove bugs

* clippy

* fix README

* rat fix

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* Update lang/rust/avro/src/writer.rs

Co-authored-by: Martin Grigorov <[email protected]>

* PR changes

* static setup

* Specific rename and interop test in script

* typo

* AVRO-3492: Add support for deriving Schema::Record aliases (#1647)

* AVRO-3492: Add support for deriving Schema::Record aliases

Uses Darling's 'multiple' attribute feature.

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3492: Add a test case with multiple attributes with different values for 'alias' key

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3494: Rust: uncomment some tests which actually pass

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3494: Uncomment a test for recursive types (#1648)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3492: Add logic to derive the aliases for Schema::Enum (#1649)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3415: Add code coverage report support for csharp (#1565)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3415 Add code coverage report support for csharp

* Ignore Updates and package references

* Updated names

* Sorted packages alphabetically

* Mode ReportGenerator instructions for global.

* Update versions.props

* Remove path

* Updated tabbing

* Cleanup version.props

* Add missing settings from version.props

* Updated from tabs to 2 space indents

* Added command in code block

* Fix carriage return

* force carriage return

* Another carriage return

* Added longer path to report

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-3384: Define C# Coding Style Guidelines (#1534)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3384 Initial check in

* Formatting fix

* Additional formatting

* More formatting

* Added additional rule

* Completed new line rules

* Indentation preferences complete

* Updated header

* Additional formatting

* More formatting changes

* Added spacing options

* Updated wrap options

* Additional documentation for styling

* Updated notes

* Updated more

* Added var preferences and Expression-bodied member preferences

* Initial styling rules documented

* Updated naming rules to reflect Roslyn naming rules

* Added other styling rule callouts.

* Updated Readme

* Updated rule

* Add header template

* Microsoft has a bug for semicolon which makes this not work.

* Added license

* Added note about IDE0055

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-3424: Added support to parse string into Schema.Type (#1571)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3424 Created extension method for converting string into a Schema.Type enumeration

* Updated functionality

* Removed breaking code

* Updated remove quotes

* Removed if from tests

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-3003: Fully qualify enum default value in C# code gen (#1596)

* AVRO-3458: Added tests for GenericRecord (#1606)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3458 Added tests for GenericRecord

* Moved Schema to const

* using discard

* Empty

* Add license

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-2883: Fix namespace mapping (#1610)

* Remove unused package references

* Replace namespace in text schema

* Remove namespace mapping

* Add unit tests

* Match namespace mapping used in ticket

* Make ReplaceMappedNamespacesInSchema private

* Mark NamespaceMapping obsolete

Co-authored-by: Zoltan Csizmadia <[email protected]>

* AVRO-2211: SchemaBuilder equivalent or other means of schema creation (#1597)

* AVRO-2211: Support schema creation

* Add license info to new files

* Fix documentation for FixedSchema ctor

* Remove and sort using

* Add missing brackets and replace var with explicit type

* Fix exception type in case of parsing

* Rename field to follow conventions

* AVRO 2211: Inlining temporary variable in linq

* AVRO-2211: Change exception type and add missing documentations

* AVRO-2211: Fix RecordSchema to set the positions of it's fields, instead of verifying it

* AVRO-2211: Fix RecordSchema fields assignment when creation new RecordSchema

* AVRO-2211: Change constructors of schema classes to factory method

* AVRO-2211: Add unit tests for RecordSchema and EnumSchema

* :AVRO-2211: Remove whitespace

* :AVRO-2211: Add symbol names verification for EnumSchema

* AVRO-2211: Fix enum name validation

* AVRO-2211: Throw AvroException consistently

* AVRO-2211: Throw AvroException in RecrodSchema consistently

* AVRO-2211: Remove duplicate factory methods on MapSchema

* AVRO-2211: Remove redundant parameter doc

* AVRO-2211: Add Schema creation tests

* AVRO-2211: Change ValidateSymbol to throw exception

* AVRO-2211: Fix typo

* AVRO-2211: Fix code QL issues

* AVRO-2211: Fix typo

Co-authored-by: Martin Grigorov <[email protected]>

* AVRO-3841: Try exact schema match first in union type (#1635)

* Try exact schema match

* Fix formatting

* Add tests for exception

Co-authored-by: Zoltan Csizmadia <[email protected]>

* AVRO-3495: Rust: Fields order should not matter (#1650)

* AVRO-3495: The order of the struct's fields and schema's fields should not matter

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3495: Use the lookup table when comparing values against fields by name

Until now it was expected that both the schema fields and the input
values are sorted the same way.

Use BTreeMap instead of HashMap for the lookup table because otherwise
the assertion on the validation error messages is impossible due to
random printing of the map's entries

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3495: Update the test case

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Bump slf4j.version from 1.7.33 to 1.7.36 in /lang/java (#1646)

Bumps `slf4j.version` from 1.7.33 to 1.7.36.

Updates `slf4j-api` from 1.7.33 to 1.7.36
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](qos-ch/slf4j@v_1.7.33...v_1.7.36)

Updates `slf4j-simple` from 1.7.33 to 1.7.36
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](qos-ch/slf4j@v_1.7.33...v_1.7.36)

Updates `slf4j-log4j12` from 1.7.33 to 1.7.36
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](qos-ch/slf4j@v_1.7.33...v_1.7.36)

---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.slf4j:slf4j-simple
  dependency-type: direct:development
  update-type: version-update:semver-patch
- dependency-name: org.slf4j:slf4j-log4j12
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* AVRO-3491 Avoid a cast after is check (#1645)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3491 Avoid a cast after is check

Co-authored-by: Kyle T. Schoonover <[email protected]>

* AVRO-3496: Rust: Use visitor.visit_borrowed_str() when possible (#1652)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3477: Add unit tests for logical types with fixed base type (#1629)

* Support fixed base type for logical types

* Tweak

* Revert

* Fix fixed type definition

* Add AvroGen tests

Co-authored-by: Zoltan Csizmadia <[email protected]>

* AVRO-3465: Add avrogen protocol tests (#1616)

* Add avrogen protocol tests

* Add protocol test case

* Fix merge conflicts

Co-authored-by: Zoltan Csizmadia <[email protected]>

* AVRO-3484: Add support for deriving a default value for a record field (#1651)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3497 Simplify conditional expression (#1658)

* AVRO-3497 Simplify conditional expression

* Added null check back

* Updated tests

* AVRO-3500: Use property-based testing for the IT tests in avro_derive module (#1659)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Configure Dependabot to check for Rust updates daily

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3501: Rust: Cache ~/.cargo and target folder for faster builds (#1661)

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Avro 3502 logical type wrong order (#1664)

* AVRO-3501: Rust: Cache ~/.cargo and target folder for faster builds

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3502: Rust: Wrong [ORDER] for Parsing Canonical Form

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Update uuid requirement from 0.8.2 to 1.0.0 in /lang/rust (#1660)

* Update uuid requirement from 0.8.2 to 1.0.0 in /lang/rust

Updates the requirements on [uuid](https://github.com/uuid-rs/uuid) to permit the latest version.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](uuid-rs/uuid@0.8.2...1.0.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* Issue #1660 - Fix compilation errors after updating uuid crate from 0.8 to 1.0

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Martin Tzvetanov Grigorov <[email protected]>

* Bump jmh.version from 1.34 to 1.35 in /lang/java (#1662)

Bumps `jmh.version` from 1.34 to 1.35.

Updates `jmh-core` from 1.34 to 1.35

Updates `jmh-generator-annprocess` from 1.34 to 1.35

---
updated-dependencies:
- dependency-name: org.openjdk.jmh:jmh-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.openjdk.jmh:jmh-generator-annprocess
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump zstd-jni from 1.5.1-1 to 1.5.2-2 in /lang/java (#1663)

Bumps [zstd-jni](https://github.com/luben/zstd-jni) from 1.5.1-1 to 1.5.2-2.
- [Release notes](https://github.com/luben/zstd-jni/releases)
- [Commits](luben/zstd-jni@v1.5.1-1...v1.5.2-2)

---
updated-dependencies:
- dependency-name: com.github.luben:zstd-jni
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump libthrift from 0.15.0 to 0.16.0 in /lang/java (#1665)

Bumps [libthrift](https://github.com/apache/thrift) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/apache/thrift/releases)
- [Changelog](https://github.com/apache/thrift/blob/master/CHANGES.md)
- [Commits](apache/thrift@v0.15.0...v0.16.0)

---
updated-dependencies:
- dependency-name: org.apache.thrift:libthrift
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* AVRO-3498 Deprecate NameCtorKey (#1657)

* AVRO-3490 Updated to use throw expressions (#1644)

* AVRO-3360 Updated XML documentation

* Revert "AVRO-3360 Updated XML documentation"

This reverts commit b8601c0.

* AVRO-3490 Updated to use throw expressions

* Additional expressions

Co-authored-by: Kyle T. Schoonover <[email protected]>

* Bump grpc.version from 1.45.0 to 1.45.1 in /lang/java (#1671)

Bumps `grpc.version` from 1.45.0 to 1.45.1.

Updates `grpc-core` from 1.45.0 to 1.45.1
- [Release notes](https://github.com/grpc/grpc-java/releases)
- [Commits](grpc/grpc-java@v1.45.0...v1.45.1)

Updates `grpc-stub` from 1.45.0 to 1.45.1
- [Release notes](https://github.com/grpc/grpc-java/releases)
- [Commits](grpc/grpc-java@v1.45.0...v1.45.1)

Updates `grpc-netty` from 1.45.0 to 1.45.1
- [Release notes](https://github.com/grpc/grpc-java/releases)
- [Commits](grpc/grpc-java@v1.45.0...v1.45.1)

---
updated-dependencies:
- dependency-name: io.grpc:grpc-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.grpc:grpc-stub
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.grpc:grpc-netty
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump underscore from 1.13.2 to 1.13.3 in /lang/js (#1669)

Bumps [underscore](https://github.com/jashkenas/underscore) from 1.13.2 to 1.13.3.
- [Release notes](https://github.com/jashkenas/underscore/releases)
- [Commits](jashkenas/underscore@1.13.2...1.13.3)

---
updated-dependencies:
- dependency-name: underscore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* AVRO-3484: Followup Check default json parsing at compile time for derive macro  (#1668)

* check json parsing at compile time

* fmt

* AVRO-3427: skip creation of namespace directories for csharp schema (#1578)

* Add new argument parameter --skip-directories. It will skip creation of directories for namespace. Just generate classes in output directory

* Add missing doc param description

* Fix Unit tests after merge with master

* Fix Unit tests after merge with master

* C# Add unit tests for --skip-directories option

Co-authored-by: Pawel Kordowski <[email protected]>

* AVRO-3482: Reuse MAGIC in DataFileReader (#1639)

DataFileReader reads magic information twice. seek(0) is invoked
twice due to this. In cloud object stores, seeking back to 0 will
cause it to fall back to "random IO policy". Example of this is
S3A connector for s3. This causes suboptimal reads in object stores.
Refactoring in the patch addresses this case by reusing MAGIC.

* AVRO-2870: Avoid throwing from destructor in DataFileWriterBase (#921)

Co-authored-by: Thiruvalluvan M G <[email protected]>

* Updated the checksum for PHP composer download (#1677)

* Remove trailing ^M to make Git happy

Related to: 72e1135

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* Encoer v1 with interop data

* unit tested

* fmt

* AVRO-3506: Cleanup and minor improvements

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Cleanup

Give a better name to TestGenerateInteropSingleObjectEncoding
Remove useless lifetime in schema.rs
Remove .json files for the single object encoded test file

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Add licence header to TestGenerateInteropSingleObjectEncoding

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Fix spotless issues in the new Java test classes

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Fix the path to the schema file

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Fix the id to match the expected value

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

* AVRO-3506: Fix spotless again

Signed-off-by: Martin Tzvetanov Grigorov <[email protected]>

Co-authored-by: Martin Grigorov <[email protected]>
Co-authored-by: Martin Tzvetanov Grigorov <[email protected]>
Co-authored-by: Kyle Schoonover <[email protected]>
Co-authored-by: Kyle T. Schoonover <[email protected]>
Co-authored-by: Jose Massada <[email protected]>
Co-authored-by: Zoltan Csizmadia <[email protected]>
Co-authored-by: Zoltan Csizmadia <[email protected]>
Co-authored-by: yanivru <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: kordos <[email protected]>
Co-authored-by: Pawel Kordowski <[email protected]>
Co-authored-by: rbalamohan <[email protected]>
Co-authored-by: Andrew Onyshchuk <[email protected]>
Co-authored-by: Thiruvalluvan M G <[email protected]>
(cherry picked from commit 7ba9447)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants