Kalle Niemitalo created AVRO-3567:
-------------------------------------
Summary: XML doc of methods of SchemaNormalization link to private
method Fingerprint64(byte[])
Key: AVRO-3567
URL: https://issues.apache.org/jira/browse/AVRO-3567
Project: Apache Avro
Issue Type: Improvement
Components: csharp, doc
Affects Versions: 1.11.0
Reporter: Kalle Niemitalo
In the Avro.SchemaNormalization class of the Avro C# library, the XML
documentation comments of the following methods describe the behaviour by
linking to the {{Fingerprint64(byte[])}} method:
* public static byte[] Fingerprint(string fpName, byte[] data)
{code:C#}
/// <para>If <i>fpName</i> equals the string
/// <code>"CRC-64-AVRO"</code>, then the result of <see
cref="Fingerprint64(byte[])"/> is
/// returned in little-endian format.
/// </para>
{code}
* public static long ParsingFingerprint64(Schema s)
{code:C#}
/// Returns <see cref="Fingerprint64(byte[])"/> applied to the parsing
canonical form of the supplied schema.
{code}
The documentation of the Fingerprint64(byte[]) method then says it computes
"the 64-bit Rabin Fingerprint (as recommended in the Avro spec)". However,
because the Fingerprint64(byte[]) method is private, Microsoft Visual Studio
does not readily display this documentation to developers.
Please change the documentation of the Fingerprint(string, byte[]) and
ParsingFingerprint64(Schema) methods to mention "the 64-bit Rabin Fingerprint"
directly, instead of linking to the private method. Alternatively, make the
method public.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)