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

Jefffrey pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-rs.git


The following commit(s) were added to refs/heads/main by this push:
     new 8c49c7132f chore: Fix typos (#10956)
8c49c7132f is described below

commit 8c49c7132f8a55bb609d00685887987b2b1c9c56
Author: Neil Conway <[email protected]>
AuthorDate: Wed Sep 2 11:21:59 2026 -0400

    chore: Fix typos (#10956)
    
    # Which issue does this PR close?
    
    - N/A
    
    # Rationale for this change
    
    Fix various types, mostly in comments.
    
    # What changes are included in this PR?
    
    See above.
    
    # Are these changes tested?
    
    Yes, no new tests needed / no behavioral changes.
    
    # Are there any user-facing changes?
    
    No.
    
    # Tool usage
    
    List of typos generated with `typos`; I had Fable 5.1 review the list of
    candidate typos and then apply fixes where a change was warranted. I
    then manually reviewed every proposed fix.
---
 arrow-array/src/array/fixed_size_binary_array.rs |  2 +-
 arrow-array/src/array/union_array.rs             | 10 +++++-----
 arrow-array/src/builder/buffer_builder.rs        | 24 +++++++++++------------
 arrow-array/src/builder/primitive_builder.rs     | 16 +++++++--------
 arrow-array/src/delta.rs                         |  6 +++---
 arrow-array/src/scalar.rs                        |  2 +-
 arrow-avro/benches/project_record.rs             |  2 +-
 arrow-avro/src/reader/mod.rs                     | 25 ++++++++++++------------
 arrow-buffer/src/buffer/immutable.rs             |  2 +-
 arrow-cast/src/cast/mod.rs                       |  4 ++--
 arrow-cast/src/display.rs                        |  2 +-
 arrow-flight/src/decode.rs                       |  2 +-
 arrow-flight/src/encode.rs                       |  2 +-
 arrow-flight/src/sql/metadata/sql_info.rs        |  6 +++---
 arrow-flight/src/sql/metadata/tables.rs          |  2 +-
 arrow-flight/src/sql/metadata/xdbc_info.rs       |  6 +++---
 arrow-ipc/src/reader.rs                          |  2 +-
 arrow-json/src/writer/encoder.rs                 |  6 +++---
 arrow-json/src/writer/mod.rs                     |  6 +++---
 arrow-row/src/lib.rs                             |  6 +++---
 arrow-schema/src/datatype.rs                     |  4 ++--
 arrow-select/src/coalesce.rs                     |  8 ++++----
 arrow-select/src/take.rs                         |  4 ++--
 arrow-select/src/union_extract.rs                |  2 +-
 arrow/tests/array_validation.rs                  |  2 +-
 parquet-variant-compute/src/cast_to_variant.rs   |  2 +-
 parquet-variant-compute/src/variant_array.rs     |  4 ++--
 parquet-variant-compute/src/variant_get.rs       |  4 ++--
 parquet-variant/src/builder/list.rs              |  4 ++--
 parquet/THRIFT.md                                |  2 +-
 parquet/examples/external_metadata.rs            |  2 +-
 parquet/src/arrow/arrow_reader/mod.rs            |  2 +-
 parquet/src/arrow/push_decoder/mod.rs            |  2 +-
 parquet/src/basic.rs                             |  2 +-
 parquet/src/bloom_filter/mod.rs                  |  2 +-
 parquet/src/column/writer/mod.rs                 |  2 +-
 parquet/src/compression.rs                       |  2 +-
 parquet/src/file/metadata/thrift/encryption.rs   |  2 +-
 parquet/src/file/metadata/thrift/mod.rs          |  2 +-
 parquet/src/file/properties.rs                   |  2 +-
 parquet/src/geospatial/accumulator.rs            |  2 +-
 parquet/src/lib.rs                               |  2 +-
 parquet/src/record/record_writer.rs              |  2 +-
 parquet/src/schema/types.rs                      |  2 +-
 parquet/tests/arrow_reader/statistics.rs         |  8 ++++----
 parquet/tests/encryption/encryption.rs           |  8 ++++----
 parquet/tests/ieee754_nan_interop.rs             |  2 +-
 47 files changed, 108 insertions(+), 107 deletions(-)

diff --git a/arrow-array/src/array/fixed_size_binary_array.rs 
b/arrow-array/src/array/fixed_size_binary_array.rs
index fce539c614..c865c2b342 100644
--- a/arrow-array/src/array/fixed_size_binary_array.rs
+++ b/arrow-array/src/array/fixed_size_binary_array.rs
@@ -206,7 +206,7 @@ impl FixedSizeBinaryArray {
 
     /// Create a new [`FixedSizeBinaryArray`] from the provided parts and 
number of elements, returning an error on failure
     ///
-    /// This is useful when the length cannot be determinated from the 
provided values (in case of `value_length == 0`) or nulls (`nulls.is_none()`).
+    /// This is useful when the length cannot be determined from the provided 
values (in case of `value_length == 0`) or nulls (`nulls.is_none()`).
     ///
     /// # Errors
     ///
diff --git a/arrow-array/src/array/union_array.rs 
b/arrow-array/src/array/union_array.rs
index 30455663e7..8ade858a56 100644
--- a/arrow-array/src/array/union_array.rs
+++ b/arrow-array/src/array/union_array.rs
@@ -1973,7 +1973,7 @@ mod tests {
             vec![1, 1].into(),
             None,
             vec![
-                // every children is completly null
+                // every child is completely null
                 Arc::new(Int8Array::new_null(2)), // all null, same len as 
it's parent
                 Arc::new(Int8Array::new_null(2)), // all null, same len as 
it's parent
             ],
@@ -1987,7 +1987,7 @@ mod tests {
             vec![1, 1].into(),
             Some(vec![0, 1].into()),
             vec![
-                // every children is completly null
+                // every child is completely null
                 Arc::new(Int8Array::new_null(3)), // bigger that parent
                 Arc::new(Int8Array::new_null(3)), // bigger that parent
             ],
@@ -2048,7 +2048,7 @@ mod tests {
             
array.mask_sparse_all_with_nulls_skip_one(array.fields_logical_nulls())
         );
 
-        //like above, but repeated to genereate two exact bitmasks and a non 
empty remainder
+        //like above, but repeated to generate two exact bitmasks and a non 
empty remainder
         let len = 2 * 64 + 32;
 
         let int_array = Int32Array::new_null(len);
@@ -2098,7 +2098,7 @@ mod tests {
             array.mask_sparse_skip_without_nulls(array.fields_logical_nulls())
         );
 
-        //like above, but repeated to genereate two exact bitmasks and a non 
empty remainder
+        //like above, but repeated to generate two exact bitmasks and a non 
empty remainder
         let len = 2 * 64 + 32;
 
         let int_array = Int32Array::from_value(2, len);
@@ -2153,7 +2153,7 @@ mod tests {
             array.mask_sparse_skip_fully_null(array.fields_logical_nulls())
         );
 
-        //like above, but repeated to genereate two exact bitmasks and a non 
empty remainder
+        //like above, but repeated to generate two exact bitmasks and a non 
empty remainder
         let len = 2 * 64 + 32;
 
         let int_array = Int32Array::new_null(len);
diff --git a/arrow-array/src/builder/buffer_builder.rs 
b/arrow-array/src/builder/buffer_builder.rs
index d183aae865..7ac251abc9 100644
--- a/arrow-array/src/builder/buffer_builder.rs
+++ b/arrow-array/src/builder/buffer_builder.rs
@@ -30,13 +30,13 @@ pub type Int16BufferBuilder = BufferBuilder<i16>;
 pub type Int32BufferBuilder = BufferBuilder<i32>;
 /// Buffer builder for signed 64-bit integer type.
 pub type Int64BufferBuilder = BufferBuilder<i64>;
-/// Buffer builder for usigned 8-bit integer type.
+/// Buffer builder for unsigned 8-bit integer type.
 pub type UInt8BufferBuilder = BufferBuilder<u8>;
-/// Buffer builder for usigned 16-bit integer type.
+/// Buffer builder for unsigned 16-bit integer type.
 pub type UInt16BufferBuilder = BufferBuilder<u16>;
-/// Buffer builder for usigned 32-bit integer type.
+/// Buffer builder for unsigned 32-bit integer type.
 pub type UInt32BufferBuilder = BufferBuilder<u32>;
-/// Buffer builder for usigned 64-bit integer type.
+/// Buffer builder for unsigned 64-bit integer type.
 pub type UInt64BufferBuilder = BufferBuilder<u64>;
 /// Buffer builder for 16-bit floating point type.
 pub type Float16BufferBuilder = BufferBuilder<f16>;
@@ -72,16 +72,16 @@ pub type Date32BufferBuilder = BufferBuilder<<Date32Type as 
ArrowPrimitiveType>:
 /// Buffer builder for 64-bit date type.
 pub type Date64BufferBuilder = BufferBuilder<<Date64Type as 
ArrowPrimitiveType>::Native>;
 
-/// Buffer builder for 32-bit elaspsed time since midnight of second unit.
+/// Buffer builder for 32-bit elapsed time since midnight of second unit.
 pub type Time32SecondBufferBuilder =
     BufferBuilder<<Time32SecondType as ArrowPrimitiveType>::Native>;
-/// Buffer builder for 32-bit elaspsed time since midnight of millisecond unit.
+/// Buffer builder for 32-bit elapsed time since midnight of millisecond unit.
 pub type Time32MillisecondBufferBuilder =
     BufferBuilder<<Time32MillisecondType as ArrowPrimitiveType>::Native>;
-/// Buffer builder for 64-bit elaspsed time since midnight of microsecond unit.
+/// Buffer builder for 64-bit elapsed time since midnight of microsecond unit.
 pub type Time64MicrosecondBufferBuilder =
     BufferBuilder<<Time64MicrosecondType as ArrowPrimitiveType>::Native>;
-/// Buffer builder for 64-bit elaspsed time since midnight of nanosecond unit.
+/// Buffer builder for 64-bit elapsed time since midnight of nanosecond unit.
 pub type Time64NanosecondBufferBuilder =
     BufferBuilder<<Time64NanosecondType as ArrowPrimitiveType>::Native>;
 
@@ -95,16 +95,16 @@ pub type IntervalDayTimeBufferBuilder =
 pub type IntervalMonthDayNanoBufferBuilder =
     BufferBuilder<<IntervalMonthDayNanoType as ArrowPrimitiveType>::Native>;
 
-/// Buffer builder for elaspsed time of second unit.
+/// Buffer builder for elapsed time of second unit.
 pub type DurationSecondBufferBuilder =
     BufferBuilder<<DurationSecondType as ArrowPrimitiveType>::Native>;
-/// Buffer builder for elaspsed time of milliseconds unit.
+/// Buffer builder for elapsed time of milliseconds unit.
 pub type DurationMillisecondBufferBuilder =
     BufferBuilder<<DurationMillisecondType as ArrowPrimitiveType>::Native>;
-/// Buffer builder for elaspsed time of microseconds unit.
+/// Buffer builder for elapsed time of microseconds unit.
 pub type DurationMicrosecondBufferBuilder =
     BufferBuilder<<DurationMicrosecondType as ArrowPrimitiveType>::Native>;
-/// Buffer builder for elaspsed time of nanoseconds unit.
+/// Buffer builder for elapsed time of nanoseconds unit.
 pub type DurationNanosecondBufferBuilder =
     BufferBuilder<<DurationNanosecondType as ArrowPrimitiveType>::Native>;
 
diff --git a/arrow-array/src/builder/primitive_builder.rs 
b/arrow-array/src/builder/primitive_builder.rs
index 85c345a5c6..54e998d02b 100644
--- a/arrow-array/src/builder/primitive_builder.rs
+++ b/arrow-array/src/builder/primitive_builder.rs
@@ -32,13 +32,13 @@ pub type Int16Builder = PrimitiveBuilder<Int16Type>;
 pub type Int32Builder = PrimitiveBuilder<Int32Type>;
 /// A signed 64-bit integer array builder.
 pub type Int64Builder = PrimitiveBuilder<Int64Type>;
-/// An usigned 8-bit integer array builder.
+/// An unsigned 8-bit integer array builder.
 pub type UInt8Builder = PrimitiveBuilder<UInt8Type>;
-/// An usigned 16-bit integer array builder.
+/// An unsigned 16-bit integer array builder.
 pub type UInt16Builder = PrimitiveBuilder<UInt16Type>;
-/// An usigned 32-bit integer array builder.
+/// An unsigned 32-bit integer array builder.
 pub type UInt32Builder = PrimitiveBuilder<UInt32Type>;
-/// An usigned 64-bit integer array builder.
+/// An unsigned 64-bit integer array builder.
 pub type UInt64Builder = PrimitiveBuilder<UInt64Type>;
 /// A 16-bit floating point array builder.
 pub type Float16Builder = PrimitiveBuilder<Float16Type>;
@@ -61,13 +61,13 @@ pub type Date32Builder = PrimitiveBuilder<Date32Type>;
 /// A 64-bit date array builder.
 pub type Date64Builder = PrimitiveBuilder<Date64Type>;
 
-/// A 32-bit elaspsed time in seconds array builder.
+/// A 32-bit elapsed time in seconds array builder.
 pub type Time32SecondBuilder = PrimitiveBuilder<Time32SecondType>;
-/// A 32-bit elaspsed time in milliseconds array builder.
+/// A 32-bit elapsed time in milliseconds array builder.
 pub type Time32MillisecondBuilder = PrimitiveBuilder<Time32MillisecondType>;
-/// A 64-bit elaspsed time in microseconds array builder.
+/// A 64-bit elapsed time in microseconds array builder.
 pub type Time64MicrosecondBuilder = PrimitiveBuilder<Time64MicrosecondType>;
-/// A 64-bit elaspsed time in nanoseconds array builder.
+/// A 64-bit elapsed time in nanoseconds array builder.
 pub type Time64NanosecondBuilder = PrimitiveBuilder<Time64NanosecondType>;
 
 /// A “calendar” interval in months array builder.
diff --git a/arrow-array/src/delta.rs b/arrow-array/src/delta.rs
index 7c1a74071f..ea5bcf9c34 100644
--- a/arrow-array/src/delta.rs
+++ b/arrow-array/src/delta.rs
@@ -62,7 +62,7 @@ pub(crate) fn add_days_datetime<Tz: TimeZone>(dt: 
DateTime<Tz>, days: i32) -> Op
     }
 }
 
-/// Substract the given number of months to the given datetime.
+/// Subtract the given number of months to the given datetime.
 ///
 /// Returns `None` when it will result in overflow.
 pub(crate) fn sub_months_datetime<Tz: TimeZone>(
@@ -76,7 +76,7 @@ pub(crate) fn sub_months_datetime<Tz: TimeZone>(
     }
 }
 
-/// Substract the given number of days to the given datetime.
+/// Subtract the given number of days to the given datetime.
 ///
 /// Returns `None` when it will result in overflow.
 pub(crate) fn sub_days_datetime<Tz: TimeZone>(dt: DateTime<Tz>, days: i32) -> 
Option<DateTime<Tz>> {
@@ -95,7 +95,7 @@ mod tests {
     use super::*;
 
     #[test]
-    fn test_add_monts_months() {
+    fn test_add_months_date() {
         let base = NaiveDate::from_ymd_opt(2020, 1, 31).unwrap();
 
         assert_eq!(
diff --git a/arrow-array/src/scalar.rs b/arrow-array/src/scalar.rs
index c12e089bc4..cfc97408a9 100644
--- a/arrow-array/src/scalar.rs
+++ b/arrow-array/src/scalar.rs
@@ -116,7 +116,7 @@ impl Datum for &dyn Array {
 /// // Create a (typed) scalar for Int32Array for the value 42
 /// let scalar = Scalar::new(Int32Array::from(vec![42]));
 ///
-/// // Create a scalar using PrimtiveArray::scalar
+/// // Create a scalar using PrimitiveArray::scalar
 /// let scalar = Int32Array::new_scalar(42);
 ///
 /// // create a scalar from an ArrayRef (for dynamic typed Arrays)
diff --git a/arrow-avro/benches/project_record.rs 
b/arrow-avro/benches/project_record.rs
index 8626bd3509..96d5f76956 100644
--- a/arrow-avro/benches/project_record.rs
+++ b/arrow-avro/benches/project_record.rs
@@ -205,7 +205,7 @@ const MIX_SCHEMA: &str = r#"
     }
     "#;
 
-// Project the record type writen to MIX_SCHEMA:
+// Project the record type written to MIX_SCHEMA:
 // skip "f2" and "f4", add "f5" with a default
 const PROJECT_READER_SCHEMA: &str = r#"
     {
diff --git a/arrow-avro/src/reader/mod.rs b/arrow-avro/src/reader/mod.rs
index fda99c6555..499fabf424 100644
--- a/arrow-avro/src/reader/mod.rs
+++ b/arrow-avro/src/reader/mod.rs
@@ -3765,12 +3765,13 @@ mod test {
         for (tid, f) in fields.iter() {
             match f.data_type() {
                 DataType::Dictionary(_, _) => tid_enum = Some(tid),
-                DataType::Struct(childs) => {
-                    if childs.len() == 2 && childs[0].name() == "a" && 
childs[1].name() == "b" {
+                DataType::Struct(children) => {
+                    if children.len() == 2 && children[0].name() == "a" && 
children[1].name() == "b"
+                    {
                         tid_rec_a = Some(tid);
-                    } else if childs.len() == 2
-                        && childs[0].name() == "x"
-                        && childs[1].name() == "y"
+                    } else if children.len() == 2
+                        && children[0].name() == "x"
+                        && children[1].name() == "y"
                     {
                         tid_rec_b = Some(tid);
                     }
@@ -4513,11 +4514,11 @@ mod test {
                     Arc::new(ListArray::try_new(field.clone(), offsets, 
values, None).unwrap())
                 }
                 DataType::Map(entry_field, ordered) => {
-                    let DataType::Struct(childs) = entry_field.data_type() 
else {
+                    let DataType::Struct(children) = entry_field.data_type() 
else {
                         panic!("map entries must be struct")
                     };
-                    let key_field = &childs[0];
-                    let val_field = &childs[1];
+                    let key_field = &children[0];
+                    let val_field = &children[1];
                     assert_eq!(key_field.data_type(), &DataType::Utf8);
                     let keys = StringArray::from(Vec::<&str>::new());
                     let vals: ArrayRef = match val_field.data_type() {
@@ -8202,10 +8203,10 @@ mod test {
             for (tid, f) in uf.iter() {
                 match f.data_type() {
                     DataType::Dictionary(_, _) => tid_enum = Some(tid),
-                    DataType::Struct(childs)
-                        if childs.len() == 2
-                            && childs[0].name() == "a"
-                            && childs[1].name() == "b" =>
+                    DataType::Struct(children)
+                        if children.len() == 2
+                            && children[0].name() == "a"
+                            && children[1].name() == "b" =>
                     {
                         tid_rec_a = Some(tid)
                     }
diff --git a/arrow-buffer/src/buffer/immutable.rs 
b/arrow-buffer/src/buffer/immutable.rs
index 12d873ba2c..c5d026db8d 100644
--- a/arrow-buffer/src/buffer/immutable.rs
+++ b/arrow-buffer/src/buffer/immutable.rs
@@ -1084,7 +1084,7 @@ mod tests {
             // so we use the map to ensure it's in range.
             for l in (o..=64).map(|l| l - o) {
                 // and we just want to make sure every one of these keeps its 
offset and length
-                // when neeeded
+                // when needed
                 assert_preserved(o, l);
             }
         }
diff --git a/arrow-cast/src/cast/mod.rs b/arrow-cast/src/cast/mod.rs
index a63d7585ed..f9ccdf8f67 100644
--- a/arrow-cast/src/cast/mod.rs
+++ b/arrow-cast/src/cast/mod.rs
@@ -7645,7 +7645,7 @@ mod tests {
     }
 
     #[test]
-    fn test_bianry_to_view() {
+    fn test_binary_to_view() {
         _test_binary_to_view::<i32>();
         _test_binary_to_view::<i64>();
     }
@@ -12943,7 +12943,7 @@ mod tests {
                 output_scale: 2,
                 expected_output_repr: Ok(10000), // 100.00
             },
-            // increase precision, decrease scale, no rouding
+            // increase precision, decrease scale, no rounding
             DecimalCastTestConfig {
                 input_prec: 5,
                 input_scale: 3,
diff --git a/arrow-cast/src/display.rs b/arrow-cast/src/display.rs
index 6ba93cb370..28a12a0ef3 100644
--- a/arrow-cast/src/display.rs
+++ b/arrow-cast/src/display.rs
@@ -1622,7 +1622,7 @@ mod tests {
     }
 
     #[test]
-    fn test_string_run_arry_to_string() {
+    fn test_string_run_array_to_string() {
         let mut builder = StringRunBuilder::<Int32Type>::new();
 
         builder.append_value("input_value");
diff --git a/arrow-flight/src/decode.rs b/arrow-flight/src/decode.rs
index ac56526ccb..926246f2a9 100644
--- a/arrow-flight/src/decode.rs
+++ b/arrow-flight/src/decode.rs
@@ -198,7 +198,7 @@ impl futures::Stream for FlightRecordBatchStream {
 ///
 /// # Protocol Details
 ///
-/// The client handles flight messages as followes:
+/// The client handles flight messages as follows:
 ///
 /// - **None:** This message has no effect. This is useful to
 ///   transmit metadata without any actual payload.
diff --git a/arrow-flight/src/encode.rs b/arrow-flight/src/encode.rs
index a34edf35e3..1bc4b9f005 100644
--- a/arrow-flight/src/encode.rs
+++ b/arrow-flight/src/encode.rs
@@ -2208,7 +2208,7 @@ mod tests {
             }
         }
 
-        // ensure that the specified overage is exactly the maxmium so
+        // ensure that the specified overage is exactly the maximum so
         // that when the splitting logic improves, the tests must be
         // updated to reflect the better logic
         assert_eq!(
diff --git a/arrow-flight/src/sql/metadata/sql_info.rs 
b/arrow-flight/src/sql/metadata/sql_info.rs
index 5ccf567c6b..04bfc63cd5 100644
--- a/arrow-flight/src/sql/metadata/sql_info.rs
+++ b/arrow-flight/src/sql/metadata/sql_info.rs
@@ -21,7 +21,7 @@
 //!   and building a conformant `RecordBatch` with sql info server metadata.
 //! - [`SqlInfoData`] - a helper type wrapping a `RecordBatch`
 //!   used for storing sql info server metadata.
-//! - [`GetSqlInfoBuilder`] - a builder for consructing [`CommandGetSqlInfo`] 
responses.
+//! - [`GetSqlInfoBuilder`] - a builder for constructing [`CommandGetSqlInfo`] 
responses.
 //!
 
 use std::collections::{BTreeMap, HashMap};
@@ -114,7 +114,7 @@ impl From<&HashMap<i32, Vec<i32>>> for SqlInfoValue {
     }
 }
 
-/// Something that can be converted into u32 (the represenation of a 
[`SqlInfo`] name)
+/// Something that can be converted into u32 (the representation of a 
[`SqlInfo`] name)
 pub trait SqlInfoName {
     fn as_u32(&self) -> u32;
 }
@@ -326,7 +326,7 @@ impl SqlInfoUnionBuilder {
 /// [`CommandGetSqlInfo`] are metadata requests used by a Flight SQL
 /// server to communicate supported capabilities to Flight SQL clients.
 ///
-/// Servers constuct - usually static - [`SqlInfoData`] via the 
[`SqlInfoDataBuilder`],
+/// Servers construct - usually static - [`SqlInfoData`] via the 
[`SqlInfoDataBuilder`],
 /// and build responses using [`CommandGetSqlInfo::into_builder`]
 #[derive(Debug, Clone, PartialEq, Default)]
 pub struct SqlInfoDataBuilder {
diff --git a/arrow-flight/src/sql/metadata/tables.rs 
b/arrow-flight/src/sql/metadata/tables.rs
index eedc2bcd2a..7ab8bba955 100644
--- a/arrow-flight/src/sql/metadata/tables.rs
+++ b/arrow-flight/src/sql/metadata/tables.rs
@@ -102,7 +102,7 @@ impl GetTablesBuilder {
     ///     - "%" means to match any substring with 0 or more characters.
     ///     - "_" means to match any one character.
     /// - `table_types`:  Specifies a filter of table types which must match.
-    ///   An empy Vec matches all table types.
+    ///   An empty Vec matches all table types.
     /// - `include_schema`: Specifies if the Arrow schema should be returned 
for found tables.
     ///
     /// [`CommandGetTables`]: crate::sql::CommandGetTables
diff --git a/arrow-flight/src/sql/metadata/xdbc_info.rs 
b/arrow-flight/src/sql/metadata/xdbc_info.rs
index 62e2de9e5d..53ff16e9a4 100644
--- a/arrow-flight/src/sql/metadata/xdbc_info.rs
+++ b/arrow-flight/src/sql/metadata/xdbc_info.rs
@@ -22,7 +22,7 @@
 //!   and building a conformant `RecordBatch`.
 //! - [`XdbcTypeInfoData`] - a helper type wrapping a `RecordBatch`
 //!   used for storing xdbc server metadata.
-//! - [`GetXdbcTypeInfoBuilder`] - a builder for consructing 
[`CommandGetXdbcTypeInfo`] responses.
+//! - [`GetXdbcTypeInfoBuilder`] - a builder for constructing 
[`CommandGetXdbcTypeInfo`] responses.
 //!
 use std::sync::Arc;
 
@@ -86,7 +86,7 @@ pub struct XdbcTypeInfo {
 /// [`CommandGetXdbcTypeInfo`] are metadata requests used by a Flight SQL
 /// server to communicate supported capabilities to Flight SQL clients.
 ///
-/// Servers constuct - usually static - [`XdbcTypeInfoData`] via the 
[`XdbcTypeInfoDataBuilder`],
+/// Servers construct - usually static - [`XdbcTypeInfoData`] via the 
[`XdbcTypeInfoDataBuilder`],
 /// and build responses using [`CommandGetXdbcTypeInfo::into_builder`].
 pub struct XdbcTypeInfoData {
     batch: RecordBatch,
@@ -119,7 +119,7 @@ impl XdbcTypeInfoData {
 /// use arrow_flight::sql::{Nullable, Searchable, XdbcDataType};
 /// use arrow_flight::sql::metadata::{XdbcTypeInfo, XdbcTypeInfoDataBuilder};
 /// // Create the list of metadata describing the server. Since this would not 
change at
-/// // runtime, using once_cell::Lazy or similar patterns to constuct the list 
is a common approach.
+/// // runtime, using once_cell::Lazy or similar patterns to construct the 
list is a common approach.
 /// let mut builder = XdbcTypeInfoDataBuilder::new();
 /// builder.append(XdbcTypeInfo {
 ///     type_name: "INTEGER".into(),
diff --git a/arrow-ipc/src/reader.rs b/arrow-ipc/src/reader.rs
index 3b409d2a2f..6c0a6749d2 100644
--- a/arrow-ipc/src/reader.rs
+++ b/arrow-ipc/src/reader.rs
@@ -1917,7 +1917,7 @@ impl<R: Read> MessageReader<R> {
     ///   the first read
     /// - `Err(_)` if the reader returns an error other than on the first
     ///   read, or if the metadata length is invalid
-    /// - `Ok(Some(_))` with the Message and buffer containiner the
+    /// - `Ok(Some(_))` with the Message and buffer containing the
     ///   body bytes otherwise.
     fn maybe_next(&mut self) -> Result<Option<(Message::Message<'_>, 
MutableBuffer)>, ArrowError> {
         let meta_len = self.read_meta_len()?;
diff --git a/arrow-json/src/writer/encoder.rs b/arrow-json/src/writer/encoder.rs
index 50dcceb415..5a6c774e29 100644
--- a/arrow-json/src/writer/encoder.rs
+++ b/arrow-json/src/writer/encoder.rs
@@ -185,9 +185,9 @@ impl EncoderOptions {
 /// }
 ///
 /// #[derive(Debug)]
-/// struct IntArayBinaryEncoderFactory;
+/// struct IntArrayBinaryEncoderFactory;
 ///
-/// impl EncoderFactory for IntArayBinaryEncoderFactory {
+/// impl EncoderFactory for IntArrayBinaryEncoderFactory {
 ///     fn make_default_encoder<'a>(
 ///         &self,
 ///         _field: &'a FieldRef,
@@ -225,7 +225,7 @@ impl EncoderOptions {
 /// let json_value: Value = {
 ///     let mut buf = Vec::new();
 ///     let mut writer = WriterBuilder::new()
-///         .with_encoder_factory(Arc::new(IntArayBinaryEncoderFactory))
+///         .with_encoder_factory(Arc::new(IntArrayBinaryEncoderFactory))
 ///         .build::<_, JsonArray>(&mut buf);
 ///     writer.write_batches(&[&batch]).unwrap();
 ///     writer.finish().unwrap();
diff --git a/arrow-json/src/writer/mod.rs b/arrow-json/src/writer/mod.rs
index 6937d2d498..59cc2655e2 100644
--- a/arrow-json/src/writer/mod.rs
+++ b/arrow-json/src/writer/mod.rs
@@ -2549,9 +2549,9 @@ mod tests {
         }
 
         #[derive(Debug)]
-        struct IntArayBinaryEncoderFactory;
+        struct IntArrayBinaryEncoderFactory;
 
-        impl EncoderFactory for IntArayBinaryEncoderFactory {
+        impl EncoderFactory for IntArrayBinaryEncoderFactory {
             fn make_default_encoder<'a>(
                 &self,
                 _field: &'a FieldRef,
@@ -2589,7 +2589,7 @@ mod tests {
         let json_value: Value = {
             let mut buf = Vec::new();
             let mut writer = WriterBuilder::new()
-                .with_encoder_factory(Arc::new(IntArayBinaryEncoderFactory))
+                .with_encoder_factory(Arc::new(IntArrayBinaryEncoderFactory))
                 .build::<_, JsonArray>(&mut buf);
             writer.write_batches(&[&batch]).unwrap();
             writer.finish().unwrap();
diff --git a/arrow-row/src/lib.rs b/arrow-row/src/lib.rs
index 0eecedd8cb..628891f09e 100644
--- a/arrow-row/src/lib.rs
+++ b/arrow-row/src/lib.rs
@@ -1051,12 +1051,12 @@ impl RowConverter {
                 columns.len()
             )));
         }
-        for colum in columns.iter().skip(1) {
-            if colum.len() != columns[0].len() {
+        for column in columns.iter().skip(1) {
+            if column.len() != columns[0].len() {
                 return Err(ArrowError::InvalidArgumentError(format!(
                     "RowConverter columns must all have the same length, 
expected {} got {}",
                     columns[0].len(),
-                    colum.len()
+                    column.len()
                 )));
             }
         }
diff --git a/arrow-schema/src/datatype.rs b/arrow-schema/src/datatype.rs
index c8c7020986..dc923fe844 100644
--- a/arrow-schema/src/datatype.rs
+++ b/arrow-schema/src/datatype.rs
@@ -319,7 +319,7 @@ pub enum DataType {
     /// A list of some logical data type with variable length.
     ///
     /// Logically the same as [`List`], but the internal representation 
differs in how child
-    /// data is referenced, allowing flexibility in how data is layed out.
+    /// data is referenced, allowing flexibility in how data is laid out.
     ///
     /// [`List`]: Self::List
     ListView(FieldRef),
@@ -332,7 +332,7 @@ pub enum DataType {
     /// A list of some logical data type with variable length and 64-bit 
offsets.
     ///
     /// Logically the same as [`LargeList`], but the internal representation 
differs in how child
-    /// data is referenced, allowing flexibility in how data is layed out.
+    /// data is referenced, allowing flexibility in how data is laid out.
     ///
     /// [`LargeList`]: Self::LargeList
     LargeListView(FieldRef),
diff --git a/arrow-select/src/coalesce.rs b/arrow-select/src/coalesce.rs
index 4c48ba2533..48b26d3e7c 100644
--- a/arrow-select/src/coalesce.rs
+++ b/arrow-select/src/coalesce.rs
@@ -248,7 +248,7 @@ impl BatchCoalescer {
     /// let mut coalescer = BatchCoalescer::new(batch1.schema(), 1000);
     /// coalescer.push_batch_with_filter(batch1, &filter);
     /// coalescer.push_batch_with_filter(batch2, &filter);
-    /// // finsh and retrieve the created batch
+    /// // finish and retrieve the created batch
     /// coalescer.finish_buffered_batch().unwrap();
     /// let completed_batch = coalescer.next_completed_batch().unwrap();
     /// // filtered out 2 and 5:
@@ -280,7 +280,7 @@ impl BatchCoalescer {
     /// let mut coalescer = BatchCoalescer::new(batch1.schema(), 1000);
     /// coalescer.push_batch(batch1);
     /// coalescer.push_batch_with_indices(batch2, &indices);
-    /// // finsh and retrieve the created batch
+    /// // finish and retrieve the created batch
     /// coalescer.finish_buffered_batch().unwrap();
     /// let completed_batch = coalescer.next_completed_batch().unwrap();
     /// let expected_batch = record_batch!(("a", Int32, [0, 0, 0, 1, 1, 1, 4, 
4, 5])).unwrap();
@@ -316,7 +316,7 @@ impl BatchCoalescer {
     /// let mut coalescer = BatchCoalescer::new(batch1.schema(), 1000);
     /// coalescer.push_batch(batch1);
     /// coalescer.push_batch(batch2);
-    /// // finsh and retrieve the created batch
+    /// // finish and retrieve the created batch
     /// coalescer.finish_buffered_batch().unwrap();
     /// let completed_batch = coalescer.next_completed_batch().unwrap();
     /// let expected_batch = record_batch!(("a", Int32, [1, 2, 3, 4, 5, 
6])).unwrap();
@@ -2024,7 +2024,7 @@ mod tests {
         RecordBatch::try_new(Arc::clone(&schema), 
vec![Arc::new(array)]).unwrap()
     }
 
-    /// Return a RecordBatch with a StringArrary with values `value0`, 
`value1`, ...
+    /// Return a RecordBatch with a StringArray with values `value0`, 
`value1`, ...
     /// and every third value is `None`.
     fn utf8_batch(range: Range<u32>) -> RecordBatch {
         let schema = Arc::new(Schema::new(vec![Field::new("c0", 
DataType::Utf8, true)]));
diff --git a/arrow-select/src/take.rs b/arrow-select/src/take.rs
index 14906206e6..5cbf8bcd87 100644
--- a/arrow-select/src/take.rs
+++ b/arrow-select/src/take.rs
@@ -3568,8 +3568,8 @@ mod tests {
         )
         .unwrap();
 
-        let indicies = Int64Array::from(vec![0, 2, 4]);
-        let array = take(&array, &indicies, None).unwrap();
+        let indices = Int64Array::from(vec![0, 2, 4]);
+        let array = take(&array, &indices, None).unwrap();
         assert_eq!(array.len(), 3);
     }
 
diff --git a/arrow-select/src/union_extract.rs 
b/arrow-select/src/union_extract.rs
index c980807289..2e697f32c5 100644
--- a/arrow-select/src/union_extract.rs
+++ b/arrow-select/src/union_extract.rs
@@ -225,7 +225,7 @@ fn extract_dense(
         match target.len().cmp(&union_array.len()) {
             // case 3.1: since the target is smaller than the union, allocate 
a new correctly sized null array
             Ordering::Less => Ok(new_null_array(target.data_type(), 
union_array.len())),
-            // case 3.2: target equals the union len, return it direcly
+            // case 3.2: target equals the union len, return it directly
             Ordering::Equal => Ok(Arc::clone(target)),
             // case 3.3: target len is bigger than the union len, slice it
             Ordering::Greater => Ok(target.slice(0, union_array.len())),
diff --git a/arrow/tests/array_validation.rs b/arrow/tests/array_validation.rs
index e255778804..6455a15b3e 100644
--- a/arrow/tests/array_validation.rs
+++ b/arrow/tests/array_validation.rs
@@ -604,7 +604,7 @@ fn test_validate_large_binary_out_of_bounds() {
     check_index_out_of_bounds_validation::<i64>(DataType::LargeBinary);
 }
 
-// validate that indexes don't go bacwards check indexes that go backwards
+// validate that indexes don't go backwards check indexes that go backwards
 fn check_index_backwards_validation<T: ArrowNativeType>(data_type: DataType) {
     let data_buffer = Buffer::from_slice_ref(b"abcd");
     // First three offsets are fine, then 1 goes backwards
diff --git a/parquet-variant-compute/src/cast_to_variant.rs 
b/parquet-variant-compute/src/cast_to_variant.rs
index 9285960ebc..83b52c55bc 100644
--- a/parquet-variant-compute/src/cast_to_variant.rs
+++ b/parquet-variant-compute/src/cast_to_variant.rs
@@ -1059,7 +1059,7 @@ mod tests {
             vec![Some(1), Some(1001), Some(123_456_789_012), None].into();
         run_test(
             Arc::new(array),
-            // as we can only present with micro second, so the nano second 
will round donw to 0
+            // as we can only present with micro second, so the nano second 
will round down to 0
             vec![
                 Some(Variant::Time(
                     NaiveTime::from_num_seconds_from_midnight_opt(0, 
0).unwrap(),
diff --git a/parquet-variant-compute/src/variant_array.rs 
b/parquet-variant-compute/src/variant_array.rs
index 4dd3b1aab0..92bdbe8d4b 100644
--- a/parquet-variant-compute/src/variant_array.rs
+++ b/parquet-variant-compute/src/variant_array.rs
@@ -1064,7 +1064,7 @@ fn typed_value_to_variant(typed_value: &ArrayRef, index: 
usize) -> Result<Varian
             let value = boolean_array.value(index);
             Ok(Variant::from(value))
         }
-        // 16-byte FixedSizeBinary alway corresponds to a UUID; all other 
sizes are illegal.
+        // 16-byte FixedSizeBinary always corresponds to a UUID; all other 
sizes are illegal.
         DataType::FixedSizeBinary(16) => {
             let array = typed_value.as_fixed_size_binary();
             let value = array.value(index);
@@ -1937,7 +1937,7 @@ mod test {
     }
 
     invalid_variant_array_test!(
-        test_variant_array_invalide_time,
+        test_variant_array_invalid_time,
         Time64MicrosecondArray::from(vec![Some(86401000000)]),
         "Cast error: Cast failed at index 0 (array type: Time64(µs)): Invalid 
microsecond from midnight: 86401000000"
     );
diff --git a/parquet-variant-compute/src/variant_get.rs 
b/parquet-variant-compute/src/variant_get.rs
index ccaa9d5b75..d8f09f0f1b 100644
--- a/parquet-variant-compute/src/variant_get.rs
+++ b/parquet-variant-compute/src/variant_get.rs
@@ -1649,7 +1649,7 @@ mod test {
 
     // We append null values if type miss match happens in safe mode
     perfectly_shredded_to_arrow_primitive_test!(
-        get_variant_perfectly_shredded_null_with_type_missmatch_in_safe_mode,
+        get_variant_perfectly_shredded_null_with_type_mismatch_in_safe_mode,
         DataType::Null,
         perfectly_shredded_null_variant_array_with_int,
         arrow::array::NullArray::new(3)
@@ -1657,7 +1657,7 @@ mod test {
 
     // We'll return an error if type miss match happens in strict mode
     #[test]
-    fn 
get_variant_perfectly_shredded_null_as_null_with_type_missmatch_in_strict_mode()
 {
+    fn 
get_variant_perfectly_shredded_null_as_null_with_type_mismatch_in_strict_mode() 
{
         let array = perfectly_shredded_null_variant_array_with_int();
         let field = Field::new("typed_value", DataType::Null, true);
         let options = GetOptions::new()
diff --git a/parquet-variant/src/builder/list.rs 
b/parquet-variant/src/builder/list.rs
index 254fc48d3a..bcd978e223 100644
--- a/parquet-variant/src/builder/list.rs
+++ b/parquet-variant/src/builder/list.rs
@@ -679,8 +679,8 @@ mod tests {
                 }
 
                 {
-                    // the seconde object builder here wants to cover the 
logic for
-                    // list builder resue the parent buffer.
+                    // the second object builder here wants to cover the logic 
for
+                    // list builder reuse the parent buffer.
                     let mut inner_object_builder = 
inner_list_builder.new_object();
                     inner_object_builder.insert("c", "d");
                     inner_object_builder.insert("d", "e");
diff --git a/parquet/THRIFT.md b/parquet/THRIFT.md
index 599b33f2bc..66f03328cd 100644
--- a/parquet/THRIFT.md
+++ b/parquet/THRIFT.md
@@ -279,7 +279,7 @@ impl<'a, R: ThriftCompactInputProtocol<'a>> ReadThrift<'a, 
R> for ConvertedType
 ```
 
 The default behavior is to return an error when an unexpected field is 
encountered. One could,
-however, provide an `Unknown` variant if forward compatibility is neeeded in 
the case of an
+however, provide an `Unknown` variant if forward compatibility is needed in 
the case of an
 evolving enum.
 
 Deserializing structs is more involved, but still fairly easy. A thrift struct 
is serialized as
diff --git a/parquet/examples/external_metadata.rs 
b/parquet/examples/external_metadata.rs
index eeb1d90d3c..e08fc981ae 100644
--- a/parquet/examples/external_metadata.rs
+++ b/parquet/examples/external_metadata.rs
@@ -139,7 +139,7 @@ fn prepare_metadata(metadata: ParquetMetaData) -> 
ParquetMetaData {
     }
     let metadata = builder.build();
 
-    // verifiy that the size has indeed been reduced
+    // verify that the size has indeed been reduced
     let new_size = metadata.memory_size();
     assert!(new_size < orig_size, "metadata size did not decrease");
     println!("Reduced metadata size from {orig_size} to {new_size}");
diff --git a/parquet/src/arrow/arrow_reader/mod.rs 
b/parquet/src/arrow/arrow_reader/mod.rs
index fed4541e14..23169a9ce8 100644
--- a/parquet/src/arrow/arrow_reader/mod.rs
+++ b/parquet/src/arrow/arrow_reader/mod.rs
@@ -4932,7 +4932,7 @@ pub(crate) mod tests {
                 
ArrowReaderOptions::new().with_page_index_policy(PageIndexPolicy::Required),
             )
             .unwrap();
-            // Although `Vec<Vec<PageLoacation>>` of each row group is empty,
+            // Although `Vec<Vec<PageLocation>>` of each row group is empty,
             // we should read the file successfully.
             assert!(builder.metadata().page_index().is_none());
             let reader = builder.build().unwrap();
diff --git a/parquet/src/arrow/push_decoder/mod.rs 
b/parquet/src/arrow/push_decoder/mod.rs
index 402a600274..24561c33b4 100644
--- a/parquet/src/arrow/push_decoder/mod.rs
+++ b/parquet/src/arrow/push_decoder/mod.rs
@@ -1832,7 +1832,7 @@ mod test {
         let ranges = expect_needs_data(decoder.try_decode());
         push_ranges_to_decoder(&mut decoder, ranges);
 
-        // expect the first ane only batch to be decoded
+        // expect the first and only batch to be decoded
         let batch1 = expect_data(decoder.try_decode());
         let expected1 = TEST_BATCH.slice(225, 20);
         assert_eq!(batch1, expected1);
diff --git a/parquet/src/basic.rs b/parquet/src/basic.rs
index eb620a6b9d..6ddd1de0df 100644
--- a/parquet/src/basic.rs
+++ b/parquet/src/basic.rs
@@ -783,7 +783,7 @@ impl FromStr for Compression {
             }
             _ => {
                 return Err(ParquetError::General(format!(
-                    "unsupport compression {codec}"
+                    "unsupported compression {codec}"
                 )));
             }
         };
diff --git a/parquet/src/bloom_filter/mod.rs b/parquet/src/bloom_filter/mod.rs
index 5e8273701d..9b6966728a 100644
--- a/parquet/src/bloom_filter/mod.rs
+++ b/parquet/src/bloom_filter/mod.rs
@@ -39,7 +39,7 @@
 //! ```
 //!
 //! SBBFs use eight hash functions to cleanly fit in SIMD 
lanes<sup>[2][sbbf-paper]</sup>, therefore
-//! `k` is set to 8. The SBBF will spread those `m` bits accross a set of `b` 
blocks that
+//! `k` is set to 8. The SBBF will spread those `m` bits across a set of `b` 
blocks that
 //! are each 256 bits, i.e., 32 bytes, in size. The number of blocks is chosen 
as:
 //!
 //! ```text
diff --git a/parquet/src/column/writer/mod.rs b/parquet/src/column/writer/mod.rs
index 1f4466c082..d0651990df 100644
--- a/parquet/src/column/writer/mod.rs
+++ b/parquet/src/column/writer/mod.rs
@@ -1292,7 +1292,7 @@ impl<'a, E: ColumnValueEncoder> GenericColumnWriter<'a, 
E> {
     ///
     /// UTF-8 Note:
     /// If the column type indicates UTF-8, and `data` contains valid UTF-8, 
then the result will
-    /// also remain valid UTF-8, but may be less tnan `truncation_length` 
bytes to avoid splitting
+    /// also remain valid UTF-8, but may be less than `truncation_length` 
bytes to avoid splitting
     /// on non-character boundaries.
     fn truncate_min_value(&self, truncation_length: Option<usize>, data: 
&[u8]) -> (Vec<u8>, bool) {
         truncation_length
diff --git a/parquet/src/compression.rs b/parquet/src/compression.rs
index 2eb71f621c..d5d8d7cb3b 100644
--- a/parquet/src/compression.rs
+++ b/parquet/src/compression.rs
@@ -347,7 +347,7 @@ pub use gzip_codec::*;
 /// - `zlib` supports levels from 0 to 9.
 /// - `miniz_oxide` supports levels from 0 to 10.
 ///
-/// `arrow` uses `flate` with `rust_backend` feature,
+/// `arrow` uses `flate2` with `rust_backend` feature,
 /// which provides `miniz_oxide` as the backend.
 /// Therefore 0-10 levels are supported.
 ///
diff --git a/parquet/src/file/metadata/thrift/encryption.rs 
b/parquet/src/file/metadata/thrift/encryption.rs
index b7f3f74c52..5540820726 100644
--- a/parquet/src/file/metadata/thrift/encryption.rs
+++ b/parquet/src/file/metadata/thrift/encryption.rs
@@ -234,7 +234,7 @@ fn row_group_from_encrypted_thrift(
 /// Typically this is used to decode the metadata from the end of a parquet
 /// file. The format of `buf` is the Thrift compact binary protocol, as 
specified
 /// by the [Parquet Spec]. Buffer can be encrypted with AES GCM or AES CTR
-/// ciphers as specfied in the [Parquet Encryption Spec].
+/// ciphers as specified in the [Parquet Encryption Spec].
 ///
 /// [Parquet Spec]: https://github.com/apache/parquet-format#metadata
 /// [Parquet Encryption Spec]: 
https://parquet.apache.org/docs/file-format/data-pages/encryption/
diff --git a/parquet/src/file/metadata/thrift/mod.rs 
b/parquet/src/file/metadata/thrift/mod.rs
index 191d4b6ed7..8d590079cc 100644
--- a/parquet/src/file/metadata/thrift/mod.rs
+++ b/parquet/src/file/metadata/thrift/mod.rs
@@ -546,7 +546,7 @@ fn read_column_metadata(
     Ok(seen_mask)
 }
 
-// using ThriftSliceInputProtocol rather than ThriftCompactInputProtocl trait 
because
+// using ThriftSliceInputProtocol rather than ThriftCompactInputProtocol trait 
because
 // these are all internal and operate on slices.
 fn read_column_chunk(
     prot: &mut ThriftSliceInputProtocol<'_>,
diff --git a/parquet/src/file/properties.rs b/parquet/src/file/properties.rs
index 8e3895c5a5..3cd07e9dd6 100644
--- a/parquet/src/file/properties.rs
+++ b/parquet/src/file/properties.rs
@@ -964,7 +964,7 @@ impl WriterPropertiesBuilder {
     /// Spark, arrow-cpp, pyarrow, pandas to name a few), with the exception
     /// of the one in this crate, expect this field to be present, and will 
terminate execution
     /// if it is not. This will continue to be the case unless/until the 
Parquet format
-    /// specification is explicitly changed to allow this field to be missing. 
As a consquence,
+    /// specification is explicitly changed to allow this field to be missing. 
As a consequence,
     /// users should only set this to `false` if they have verified that any 
reader(s) they plan
     /// to use can tolerate the absence of this field.
     ///
diff --git a/parquet/src/geospatial/accumulator.rs 
b/parquet/src/geospatial/accumulator.rs
index adc96e9ced..698f77bad5 100644
--- a/parquet/src/geospatial/accumulator.rs
+++ b/parquet/src/geospatial/accumulator.rs
@@ -288,7 +288,7 @@ mod test {
         assert!(!accumulator.is_valid());
         assert!(accumulator.finish().is_none());
 
-        // Check that we return None if the type is not geometry or goegraphy
+        // Check that we return None if the type is not geometry or geography
         let parquet_type = Type::primitive_type_builder("geom", 
crate::basic::Type::BYTE_ARRAY)
             .build()
             .unwrap();
diff --git a/parquet/src/lib.rs b/parquet/src/lib.rs
index 3acdb61884..55788327b9 100644
--- a/parquet/src/lib.rs
+++ b/parquet/src/lib.rs
@@ -217,7 +217,7 @@ mod parquet_thrift;
 #[derive(Debug)]
 pub enum DecodeResult<T: Debug> {
     /// The ranges of data necessary to proceed
-    // TODO: distinguish between minimim needed to make progress and what 
could be used?
+    // TODO: distinguish between minimum needed to make progress and what 
could be used?
     NeedsData(Vec<Range<u64>>),
     /// The decoder produced an output item
     Data(T),
diff --git a/parquet/src/record/record_writer.rs 
b/parquet/src/record/record_writer.rs
index 56e0aa490e..db29972199 100644
--- a/parquet/src/record/record_writer.rs
+++ b/parquet/src/record/record_writer.rs
@@ -20,7 +20,7 @@ use crate::schema::types::TypePtr;
 use super::super::errors::ParquetError;
 use super::super::file::writer::SerializedRowGroupWriter;
 
-/// Trait describing how to write a record (the implementator) to a row group 
writer.
+/// Trait describing how to write a record (the implementer) to a row group 
writer.
 ///
 /// [`parquet_derive`] crate provides a derive macro [`ParquetRecordWriter`] 
for this trait
 /// for unnested structs.
diff --git a/parquet/src/schema/types.rs b/parquet/src/schema/types.rs
index b8aaefba19..0fad63a0a3 100644
--- a/parquet/src/schema/types.rs
+++ b/parquet/src/schema/types.rs
@@ -1477,7 +1477,7 @@ fn schema_from_array_helper(
 
     let converted_type = element.converted_type.unwrap_or(ConvertedType::NONE);
 
-    // LogicalType is prefered to ConvertedType, but both may be present.
+    // LogicalType is preferred to ConvertedType, but both may be present.
     let logical_type = element.logical_type;
 
     check_logical_type(logical_type.as_ref())?;
diff --git a/parquet/tests/arrow_reader/statistics.rs 
b/parquet/tests/arrow_reader/statistics.rs
index 0311428cb7..443dcef8d7 100644
--- a/parquet/tests/arrow_reader/statistics.rs
+++ b/parquet/tests/arrow_reader/statistics.rs
@@ -645,7 +645,7 @@ async fn test_data_page_stats_with_all_null_page() {
 
 /////////////// MORE GENERAL TESTS //////////////////////
 // . Many columns in a file
-// . Differnet data types
+// . Different data types
 // . Different row group sizes
 
 // Four different integer types
@@ -2077,7 +2077,7 @@ async fn test_decimal128() {
 #[cfg_attr(miri, ignore)] // tempfile::reopen triggers an unsupported 
Miri/rustix fstat path
 #[tokio::test]
 async fn test_decimal_256() {
-    // This creates a parquet file of 1 column "decimal256_col" with decimal 
data type and precicion 9, scale 2
+    // This creates a parquet file of 1 column "decimal256_col" with decimal 
data type and precision 9, scale 2
     // file has 3 record batches, each has 5 rows. They will be saved into 3 
row groups
     let reader = TestReader {
         scenario: Scenario::Decimal256,
@@ -3226,10 +3226,10 @@ mod test {
 
     fn timestamp_nanoseconds_array(
         input: impl IntoIterator<Item = Option<i64>>,
-        timzezone: Option<&str>,
+        timezone: Option<&str>,
     ) -> ArrayRef {
         let array: TimestampNanosecondArray = input.into_iter().collect();
-        match timzezone {
+        match timezone {
             Some(tz) => Arc::new(array.with_timezone(tz)),
             None => Arc::new(array),
         }
diff --git a/parquet/tests/encryption/encryption.rs 
b/parquet/tests/encryption/encryption.rs
index dd0263aa94..9a507ebf50 100644
--- a/parquet/tests/encryption/encryption.rs
+++ b/parquet/tests/encryption/encryption.rs
@@ -1136,8 +1136,8 @@ fn test_write_uniform_encryption() {
 }
 
 #[test]
-fn test_write_non_uniform_encryption_column_missmatch() {
-    fn write_non_uniform_encryption_column_missmatch(
+fn test_write_non_uniform_encryption_column_mismatch() {
+    fn write_non_uniform_encryption_column_mismatch(
         footer_key: &[u8],
         column_keys: &[(&str, &[u8])],
         encryption_column_keys: &[(&str, &[u8])],
@@ -1187,13 +1187,13 @@ fn test_write_non_uniform_encryption_column_missmatch() 
{
         );
     }
 
-    write_non_uniform_encryption_column_missmatch(
+    write_non_uniform_encryption_column_mismatch(
         AES_128_FOOTER_KEY,
         AES_128_COLUMN_NAME_KEYS,
         AES_128_COLUMN_NAME_KEYS,
     );
 
-    write_non_uniform_encryption_column_missmatch(
+    write_non_uniform_encryption_column_mismatch(
         AES_256_FOOTER_KEY,
         AES_256_COLUMN_NAME_KEYS,
         AES_256_COLUMN_NAME_KEYS,
diff --git a/parquet/tests/ieee754_nan_interop.rs 
b/parquet/tests/ieee754_nan_interop.rs
index 3d99a84133..265c4670c7 100644
--- a/parquet/tests/ieee754_nan_interop.rs
+++ b/parquet/tests/ieee754_nan_interop.rs
@@ -16,7 +16,7 @@
 // under the License.
 
 //! Interoperability test for 
https://github.com/apache/parquet-format/pull/514.
-//! Demonstrate reading NaN statstics and counts from a file generated with
+//! Demonstrate reading NaN statistics and counts from a file generated with
 //! parquet-java, and show that on write we produce the same statistics.
 
 use bytes::Bytes;

Reply via email to