Skip to content

Commit

Permalink
apacheGH-37217: [Python] Add missing docstrings to Cython (apache#37218)
Browse files Browse the repository at this point in the history
### Rationale for this change

The Cython 3.0.0 upgrade apache#37097 is triggering numpydoc errors for these missing docstrings.

### What changes are included in this PR?

* Docstrings added to Cython functions that omitted them

### Are these changes tested?

Yes, locally.

### Are there any user-facing changes?

User-facing documentation is added.
* Closes: apache#37217

Lead-authored-by: Dane Pitkin <dane@voltrondata.com>
Co-authored-by: Dane Pitkin <48041712+danepitkin@users.noreply.github.com>
Co-authored-by: Alenka Frim <AlenkaF@users.noreply.github.com>
Co-authored-by: Sutou Kouhei <kou@cozmixng.org>
Signed-off-by: Sutou Kouhei <kou@clear-code.com>
  • Loading branch information
3 people authored and loicalleyne committed Nov 13, 2023
1 parent e4cfd88 commit 8f12838
Show file tree
Hide file tree
Showing 15 changed files with 651 additions and 0 deletions.
9 changes: 9 additions & 0 deletions python/pyarrow/_compute.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -2345,6 +2345,15 @@ cdef class Expression(_Weakrefable):
return self.expr

def equals(self, Expression other):
"""
Parameters
----------
other : pyarrow.dataset.Expression
Returns
-------
bool
"""
return self.expr.Equals(other.unwrap())

def __str__(self):
Expand Down
27 changes: 27 additions & 0 deletions python/pyarrow/_csv.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -290,6 +290,15 @@ cdef class ReadOptions(_Weakrefable):
check_status(deref(self.options).Validate())

def equals(self, ReadOptions other):
"""
Parameters
----------
other : pyarrow.csv.ReadOptions
Returns
-------
bool
"""
return (
self.use_threads == other.use_threads and
self.block_size == other.block_size and
Expand Down Expand Up @@ -536,6 +545,15 @@ cdef class ParseOptions(_Weakrefable):
check_status(deref(self.options).Validate())

def equals(self, ParseOptions other):
"""
Parameters
----------
other : pyarrow.csv.ParseOptions
Returns
-------
bool
"""
return (
self.delimiter == other.delimiter and
self.quote_char == other.quote_char and
Expand Down Expand Up @@ -1042,6 +1060,15 @@ cdef class ConvertOptions(_Weakrefable):
check_status(deref(self.options).Validate())

def equals(self, ConvertOptions other):
"""
Parameters
----------
other : pyarrow.csv.ConvertOptions
Returns
-------
bool
"""
return (
self.check_utf8 == other.check_utf8 and
self.column_types == other.column_types and
Expand Down
74 changes: 74 additions & 0 deletions python/pyarrow/_dataset.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -1992,9 +1992,27 @@ cdef class IpcFileFormat(FileFormat):
self.init(shared_ptr[CFileFormat](new CIpcFileFormat()))

def equals(self, IpcFileFormat other):
"""
Parameters
----------
other : pyarrow.dataset.IpcFileFormat
Returns
-------
True
"""
return True

def make_write_options(self, **kwargs):
"""
Parameters
----------
**kwargs : dict
Returns
-------
pyarrow.ipc.IpcWriteOptions
"""
cdef IpcFileWriteOptions opts = \
<IpcFileWriteOptions> FileFormat.make_write_options(self)
opts.write_options = IpcWriteOptions(**kwargs)
Expand Down Expand Up @@ -2071,6 +2089,15 @@ cdef class CsvFileFormat(FileFormat):
self.csv_format = <CCsvFileFormat*> sp.get()

def make_write_options(self, **kwargs):
"""
Parameters
----------
**kwargs : dict
Returns
-------
pyarrow.csv.WriteOptions
"""
cdef CsvFileWriteOptions opts = \
<CsvFileWriteOptions> FileFormat.make_write_options(self)
opts.write_options = WriteOptions(**kwargs)
Expand All @@ -2093,6 +2120,15 @@ cdef class CsvFileFormat(FileFormat):
super()._set_default_fragment_scan_options(options)

def equals(self, CsvFileFormat other):
"""
Parameters
----------
other : pyarrow.dataset.CsvFileFormat
Returns
-------
bool
"""
return (
self.parse_options.equals(other.parse_options) and
self.default_fragment_scan_options ==
Expand Down Expand Up @@ -2165,6 +2201,15 @@ cdef class CsvFragmentScanOptions(FragmentScanOptions):
make_streamwrap_func(read_options.encoding, 'utf-8'))

def equals(self, CsvFragmentScanOptions other):
"""
Parameters
----------
other : pyarrow.dataset.CsvFragmentScanOptions
Returns
-------
bool
"""
return (
other and
self.convert_options.equals(other.convert_options) and
Expand Down Expand Up @@ -2250,6 +2295,15 @@ cdef class JsonFileFormat(FileFormat):
super()._set_default_fragment_scan_options(options)

def equals(self, JsonFileFormat other):
"""
Parameters
----------
other : pyarrow.dataset.JsonFileFormat
Returns
-------
bool
"""
return (other and
self.default_fragment_scan_options ==
other.default_fragment_scan_options)
Expand Down Expand Up @@ -2308,6 +2362,15 @@ cdef class JsonFragmentScanOptions(FragmentScanOptions):
self.json_options.read_options = read_options.options

def equals(self, JsonFragmentScanOptions other):
"""
Parameters
----------
other : pyarrow.dataset.JsonFragmentScanOptions
Returns
-------
bool
"""
return (
other and
self.read_options.equals(other.read_options) and
Expand Down Expand Up @@ -2353,6 +2416,17 @@ cdef class Partitioning(_Weakrefable):
return False

def parse(self, path):
"""
Parse a path into a partition expression.
Parameters
----------
path : str
Returns
-------
pyarrow.dataset.Expression
"""
cdef CResult[CExpression] result
result = self.partitioning.Parse(tobytes(path))
return Expression.wrap(GetResultValue(result))
Expand Down
9 changes: 9 additions & 0 deletions python/pyarrow/_dataset_orc.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,15 @@ cdef class OrcFileFormat(FileFormat):
self.init(shared_ptr[CFileFormat](new COrcFileFormat()))

def equals(self, OrcFileFormat other):
"""
Parameters
----------
other : pyarrow.dataset.OrcFileFormat
Returns
-------
True
"""
return True

@property
Expand Down
41 changes: 41 additions & 0 deletions python/pyarrow/_dataset_parquet.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,15 @@ cdef class ParquetFileFormat(FileFormat):
return parquet_read_options

def make_write_options(self, **kwargs):
"""
Parameters
----------
**kwargs : dict
Returns
-------
pyarrow.dataset.FileWriteOptions
"""
opts = FileFormat.make_write_options(self)
(<ParquetFileWriteOptions> opts).update(**kwargs)
return opts
Expand All @@ -189,6 +198,15 @@ cdef class ParquetFileFormat(FileFormat):
super()._set_default_fragment_scan_options(options)

def equals(self, ParquetFileFormat other):
"""
Parameters
----------
other : pyarrow.dataset.ParquetFileFormat
Returns
-------
bool
"""
return (
self.read_options.equals(other.read_options) and
self.default_fragment_scan_options ==
Expand Down Expand Up @@ -502,6 +520,15 @@ cdef class ParquetReadOptions(_Weakrefable):
self._coerce_int96_timestamp_unit = TimeUnit_NANO

def equals(self, ParquetReadOptions other):
"""
Parameters
----------
other : pyarrow.dataset.ParquetReadOptions
Returns
-------
bool
"""
return (self.dictionary_columns == other.dictionary_columns and
self.coerce_int96_timestamp_unit ==
other.coerce_int96_timestamp_unit)
Expand All @@ -527,6 +554,11 @@ cdef class ParquetFileWriteOptions(FileWriteOptions):
object _properties

def update(self, **kwargs):
"""
Parameters
----------
**kwargs : dict
"""
arrow_fields = {
"use_deprecated_int96_timestamps",
"coerce_timestamps",
Expand Down Expand Up @@ -720,6 +752,15 @@ cdef class ParquetFragmentScanOptions(FragmentScanOptions):
self.reader_properties().set_thrift_container_size_limit(size)

def equals(self, ParquetFragmentScanOptions other):
"""
Parameters
----------
other : pyarrow.dataset.ParquetFragmentScanOptions
Returns
-------
bool
"""
attrs = (
self.use_buffered_stream, self.buffer_size, self.pre_buffer,
self.thrift_string_size_limit, self.thrift_container_size_limit)
Expand Down
9 changes: 9 additions & 0 deletions python/pyarrow/_fs.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -505,6 +505,15 @@ cdef class FileSystem(_Weakrefable):
return self.wrapped

def equals(self, FileSystem other):
"""
Parameters
----------
other : pyarrow.fs.FileSystem
Returns
-------
bool
"""
return self.fs.Equals(other.unwrap())

def __eq__(self, other):
Expand Down
18 changes: 18 additions & 0 deletions python/pyarrow/_json.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,15 @@ cdef class ReadOptions(_Weakrefable):
)

def equals(self, ReadOptions other):
"""
Parameters
----------
other : pyarrow.json.ReadOptions
Returns
-------
bool
"""
return (
self.use_threads == other.use_threads and
self.block_size == other.block_size
Expand Down Expand Up @@ -212,6 +221,15 @@ cdef class ParseOptions(_Weakrefable):
self.options.unexpected_field_behavior = v

def equals(self, ParseOptions other):
"""
Parameters
----------
other : pyarrow.json.ParseOptions
Returns
-------
bool
"""
return (
self.explicit_schema == other.explicit_schema and
self.newlines_in_values == other.newlines_in_values and
Expand Down

0 comments on commit 8f12838

Please sign in to comment.