This is an automated email from the ASF dual-hosted git repository.

mgrigorov pushed a commit to branch branch-1.12
in repository https://gitbox.apache.org/repos/asf/avro.git


The following commit(s) were added to refs/heads/branch-1.12 by this push:
     new 49a1764e8 [No Jira] [Rust] fix links to spec (#3052)
49a1764e8 is described below

commit 49a1764e81640cfa49eecea46f81ff565d07db14
Author: xxchan <[email protected]>
AuthorDate: Mon Aug 5 16:35:12 2024 +0800

    [No Jira] [Rust] fix links to spec (#3052)
    
    * [No Jira] [Rust] fix links to spec
    
    Previous links cannot jump to the sections any more.
    
    e.g.,
    old: /spec.html#single_object_encoding
    new: /specification/#single-object-encoding
    
    Signed-off-by: xxchan <[email protected]>
    
    * Apply suggestions from code review
    
    Co-authored-by: Fokko Driesprong <[email protected]>
    
    ---------
    
    Signed-off-by: xxchan <[email protected]>
    Co-authored-by: Fokko Driesprong <[email protected]>
    (cherry picked from commit 5f13c3b2c315b05a5f7f4683f42bf7b68581cd18)
---
 lang/rust/avro/README.md     |  6 +++---
 lang/rust/avro/src/lib.rs    |  6 +++---
 lang/rust/avro/src/rabin.rs  |  6 +++---
 lang/rust/avro/src/schema.rs | 18 +++++++++---------
 lang/rust/avro/src/types.rs  |  8 ++++----
 5 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/lang/rust/avro/README.md b/lang/rust/avro/README.md
index e991292f0..986dd318c 100644
--- a/lang/rust/avro/README.md
+++ b/lang/rust/avro/README.md
@@ -168,7 +168,7 @@ reference in case you are interested.
 
 For more information about schemas and what kind of information you can 
encapsulate in them,
 please refer to the appropriate section of the
-[Avro Specification](https://avro.apache.org/docs/current/spec.html#schemas).
+[Avro 
Specification](https://avro.apache.org/docs/current/specification/#schema-declaration).
 
 ## Writing data
 
@@ -321,7 +321,7 @@ let reader = Reader::with_schema(&reader_schema, 
&input[..]).unwrap();
 The library will also automatically perform schema resolution while reading 
the data.
 
 For more information about schema compatibility and resolution, please refer 
to the
-[Avro Specification](https://avro.apache.org/docs/current/spec.html#schemas).
+[Avro 
Specification](https://avro.apache.org/docs/current/specification/#schema-declaration).
 
 As usual, there are two ways to handle Avro data in Rust, as you can see below.
 
@@ -425,7 +425,7 @@ fn main() -> Result<(), Error> {
 }
 ```
 
-`apache-avro` also supports the logical types listed in the [Avro 
specification](https://avro.apache.org/docs/current/spec.html#Logical+Types):
+`apache-avro` also supports the logical types listed in the [Avro 
specification](https://avro.apache.org/docs/current/specification/#logical-types):
 
 1. `Decimal` using the 
[`num_bigint`](https://docs.rs/num-bigint/latest/num_bigint) crate
 1. UUID using the [`uuid`](https://docs.rs/uuid/latest/uuid) crate
diff --git a/lang/rust/avro/src/lib.rs b/lang/rust/avro/src/lib.rs
index 34e1b4dbb..e00b9d830 100644
--- a/lang/rust/avro/src/lib.rs
+++ b/lang/rust/avro/src/lib.rs
@@ -157,7 +157,7 @@
 //!
 //! For more information about schemas and what kind of information you can 
encapsulate in them,
 //! please refer to the appropriate section of the
-//! [Avro 
Specification](https://avro.apache.org/docs/current/spec.html#schemas).
+//! [Avro 
Specification](https://avro.apache.org/docs/current/specification/#schema-declaration).
 //!
 //! # Writing data
 //!
@@ -390,7 +390,7 @@
 //! The library will also automatically perform schema resolution while 
reading the data.
 //!
 //! For more information about schema compatibility and resolution, please 
refer to the
-//! [Avro 
Specification](https://avro.apache.org/docs/current/spec.html#schemas).
+//! [Avro 
Specification](https://avro.apache.org/docs/current/specification/#schema-declaration).
 //!
 //! As usual, there are two ways to handle Avro data in Rust, as you can see 
below.
 //!
@@ -538,7 +538,7 @@
 //! }
 //! ```
 //!
-//! `apache-avro` also supports the logical types listed in the [Avro 
specification](https://avro.apache.org/docs/current/spec.html#Logical+Types):
+//! `apache-avro` also supports the logical types listed in the [Avro 
specification](https://avro.apache.org/docs/current/specification/#logical-types):
 //!
 //! 1. `Decimal` using the 
[`num_bigint`](https://docs.rs/num-bigint/latest/num_bigint) crate
 //! 1. UUID using the [`uuid`](https://docs.rs/uuid/latest/uuid) crate
diff --git a/lang/rust/avro/src/rabin.rs b/lang/rust/avro/src/rabin.rs
index f8f516477..eb3447753 100644
--- a/lang/rust/avro/src/rabin.rs
+++ b/lang/rust/avro/src/rabin.rs
@@ -39,10 +39,10 @@ fn fp_table() -> &'static [i64; 256] {
     })
 }
 
-/// Implementation of the Rabin fingerprint algorithm using the Digest trait 
as described in 
[schema_fingerprints](https://avro.apache.org/docs/current/spec.html#schema_fingerprints).
+/// Implementation of the Rabin fingerprint algorithm using the Digest trait 
as described in 
[schema_fingerprints](https://avro.apache.org/docs/current/specification/#schema-fingerprints).
 ///
 /// The digest is returned as the 8-byte little-endian encoding of the Rabin 
hash.
-/// This is what is used for avro [single object 
encoding](https://avro.apache.org/docs/current/spec.html#single_object_encoding)
+/// This is what is used for avro [single object 
encoding](https://avro.apache.org/docs/current/specification/#single-object-encoding)
 ///
 /// ```rust
 /// use apache_avro::rabin::Rabin;
@@ -114,7 +114,7 @@ impl Reset for Rabin {
 
 impl OutputSizeUser for Rabin {
     // 8-byte little-endian form of the i64
-    // See: 
https://avro.apache.org/docs/current/spec.html#single_object_encoding
+    // See: 
https://avro.apache.org/docs/current/specification/#single-object-encoding
     type OutputSize = U8;
 }
 
diff --git a/lang/rust/avro/src/schema.rs b/lang/rust/avro/src/schema.rs
index 1d2272a78..c6e1f7032 100644
--- a/lang/rust/avro/src/schema.rs
+++ b/lang/rust/avro/src/schema.rs
@@ -45,7 +45,7 @@ use strum_macros::{Display, EnumDiscriminants, EnumString};
 
 /// Represents an Avro schema fingerprint
 /// More information about Avro schema fingerprints can be found in the
-/// [Avro Schema Fingerprint 
documentation](https://avro.apache.org/docs/current/spec.html#schema_fingerprints)
+/// [Avro Schema Fingerprint 
documentation](https://avro.apache.org/docs/current/specification/#schema-fingerprints)
 pub struct SchemaFingerprint {
     pub bytes: Vec<u8>,
 }
@@ -66,7 +66,7 @@ impl fmt::Display for SchemaFingerprint {
 
 /// Represents any valid Avro schema
 /// More information about Avro schemas can be found in the
-/// [Avro 
Specification](https://avro.apache.org/docs/current/spec.html#schemas)
+/// [Avro 
Specification](https://avro.apache.org/docs/current/specification/#schema-declaration)
 #[derive(Clone, Debug, EnumDiscriminants, Display)]
 #[strum_discriminants(name(SchemaKind), derive(Hash, Ord, PartialOrd))]
 pub enum Schema {
@@ -227,7 +227,7 @@ impl From<&types::Value> for SchemaKind {
 /// `aliases` can also be defined, to facilitate schema evolution.
 ///
 /// More information about schema names can be found in the
-/// [Avro specification](https://avro.apache.org/docs/current/spec.html#names)
+/// [Avro 
specification](https://avro.apache.org/docs/current/specification/#names)
 #[derive(Clone, Debug, Hash, PartialEq, Eq)]
 pub struct Name {
     pub name: String,
@@ -297,7 +297,7 @@ impl Name {
     /// Return the `fullname` of this `Name`
     ///
     /// More information about fullnames can be found in the
-    /// [Avro 
specification](https://avro.apache.org/docs/current/spec.html#names)
+    /// [Avro 
specification](https://avro.apache.org/docs/current/specification/#names)
     pub fn fullname(&self, default_namespace: Namespace) -> String {
         if self.name.contains('.') {
             self.name.clone()
@@ -1022,7 +1022,7 @@ impl Schema {
     /// Converts `self` into its [Parsing Canonical Form].
     ///
     /// [Parsing Canonical Form]:
-    /// 
https://avro.apache.org/docs/1.8.2/spec.html#Parsing+Canonical+Form+for+Schemas
+    /// 
https://avro.apache.org/docs/current/specification/#parsing-canonical-form-for-schemas
     pub fn canonical_form(&self) -> String {
         let json = serde_json::to_value(self)
             .unwrap_or_else(|e| panic!("Cannot parse Schema from JSON: {e}"));
@@ -1032,9 +1032,9 @@ impl Schema {
     /// Generate [fingerprint] of Schema's [Parsing Canonical Form].
     ///
     /// [Parsing Canonical Form]:
-    /// 
https://avro.apache.org/docs/1.8.2/spec.html#Parsing+Canonical+Form+for+Schemas
+    /// 
https://avro.apache.org/docs/current/specification/#parsing-canonical-form-for-schemas
     /// [fingerprint]:
-    /// https://avro.apache.org/docs/current/spec.html#schema_fingerprints
+    /// https://avro.apache.org/docs/current/specification/#schema-fingerprints
     pub fn fingerprint<D: Digest>(&self) -> SchemaFingerprint {
         let mut d = D::new();
         d.update(self.canonical_form());
@@ -1879,7 +1879,7 @@ impl Parser {
 // to the namespace of the name it is an alias for. For example, if a type 
named "a.b"
 // has aliases of "c" and "x.y", then the fully qualified names of its aliases 
are "a.c"
 // and "x.y".
-// https://avro.apache.org/docs/current/spec.html#Aliases
+// https://avro.apache.org/docs/current/specification/#aliases
 fn fix_aliases_namespace(aliases: Option<Vec<String>>, namespace: &Namespace) 
-> Aliases {
     aliases.map(|aliases| {
         aliases
@@ -2143,7 +2143,7 @@ impl Serialize for RecordField {
 }
 
 /// Parses a **valid** avro schema into the Parsing Canonical Form.
-/// 
https://avro.apache.org/docs/1.8.2/spec.html#Parsing+Canonical+Form+for+Schemas
+/// 
https://avro.apache.org/docs/current/specification/#parsing-canonical-form-for-schemas
 fn parsing_canonical_form(schema: &Value) -> String {
     match schema {
         Value::Object(map) => pcf_map(map),
diff --git a/lang/rust/avro/src/types.rs b/lang/rust/avro/src/types.rs
index a76054277..33755a17a 100644
--- a/lang/rust/avro/src/types.rs
+++ b/lang/rust/avro/src/types.rs
@@ -46,7 +46,7 @@ fn max_prec_for_len(len: usize) -> Result<usize, Error> {
 /// A valid Avro value.
 ///
 /// More information about Avro values can be found in the [Avro
-/// Specification](https://avro.apache.org/docs/current/spec.html#schemas)
+/// 
Specification](https://avro.apache.org/docs/current/specification/#schema-declaration)
 #[derive(Clone, Debug, PartialEq, strum_macros::EnumDiscriminants)]
 #[strum_discriminants(name(ValueKind))]
 pub enum Value {
@@ -366,7 +366,7 @@ impl TryFrom<Value> for JsonValue {
 impl Value {
     /// Validate the value against the given 
[Schema](../schema/enum.Schema.html).
     ///
-    /// See the [Avro 
specification](https://avro.apache.org/docs/current/spec.html)
+    /// See the [Avro 
specification](https://avro.apache.org/docs/current/specification)
     /// for the full set of rules of schema validation.
     pub fn validate(&self, schema: &Schema) -> bool {
         self.validate_schemata(vec![schema])
@@ -623,7 +623,7 @@ impl Value {
     /// Attempt to perform schema resolution on the value, with the given
     /// [Schema](../schema/enum.Schema.html).
     ///
-    /// See [Schema 
Resolution](https://avro.apache.org/docs/current/spec.html#Schema+Resolution)
+    /// See [Schema 
Resolution](https://avro.apache.org/docs/current/specification/#schema-resolution)
     /// in the Avro specification for the full set of rules of schema
     /// resolution.
     pub fn resolve(self, schema: &Schema) -> AvroResult<Self> {
@@ -635,7 +635,7 @@ impl Value {
     /// Attempt to perform schema resolution on the value, with the given
     /// [Schema](../schema/enum.Schema.html) and set of schemas to use for 
Refs resolution.
     ///
-    /// See [Schema 
Resolution](https://avro.apache.org/docs/current/spec.html#Schema+Resolution)
+    /// See [Schema 
Resolution](https://avro.apache.org/docs/current/specification/#schema-resolution)
     /// in the Avro specification for the full set of rules of schema
     /// resolution.
     pub fn resolve_schemata(self, schema: &Schema, schemata: Vec<&Schema>) -> 
AvroResult<Self> {

Reply via email to