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)

Reply via email to