Skip to content

Commit 1600b69

Browse files
authored
chore(python): Rename FileReader to SyncReader (#1375)
Closes #1013
1 parent 93cbd3d commit 1600b69

File tree

7 files changed

+36
-30
lines changed

7 files changed

+36
-30
lines changed

python/Cargo.lock

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

python/geoarrow-io/src/flatgeobuf/async.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use crate::error::{PyGeoArrowError, PyGeoArrowResult};
22
use crate::flatgeobuf::utils::apply_projection;
3-
use crate::input::{AsyncFileReader, construct_async_reader};
3+
use crate::input::{AsyncReader, construct_async_reader};
44

55
use flatgeobuf::HttpFgbReader;
66
use futures::TryStreamExt;
@@ -51,7 +51,7 @@ pub fn read_flatgeobuf_async<'py>(
5151

5252
#[allow(clippy::too_many_arguments)]
5353
async fn read_flatgeobuf_async_inner(
54-
async_reader: AsyncFileReader,
54+
async_reader: AsyncReader,
5555
batch_size: usize,
5656
bbox: Option<(f64, f64, f64, f64)>,
5757
coord_type: CoordType,

python/geoarrow-io/src/input/mod.rs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,22 +10,22 @@ use object_store::{
1010
use pyo3::pybacked::PyBackedStr;
1111
#[cfg(feature = "async")]
1212
use pyo3_object_store::AnyObjectStore;
13-
use sync::FileReader;
13+
use sync::SyncReader;
1414

1515
use pyo3::prelude::*;
1616
use url::Url;
1717

1818
#[cfg(feature = "async")]
1919
#[derive(Debug, Clone)]
20-
pub struct AsyncFileReader {
20+
pub struct AsyncReader {
2121
pub store: Arc<dyn ObjectStore>,
2222
pub path: Path,
2323
}
2424

2525
pub enum AnyFileReader {
26-
Sync(FileReader),
26+
Sync(SyncReader),
2727
#[cfg(feature = "async")]
28-
Async(AsyncFileReader),
28+
Async(AsyncReader),
2929
}
3030

3131
/// Construct a reader for the user that will always be asynchronous
@@ -36,12 +36,12 @@ pub enum AnyFileReader {
3636
pub fn construct_async_reader(
3737
file: Bound<PyAny>,
3838
store: Option<Bound<PyAny>>,
39-
) -> PyGeoArrowResult<AsyncFileReader> {
39+
) -> PyGeoArrowResult<AsyncReader> {
4040
// If the user passed an object store instance, use that
4141

4242
use pyo3_object_store::AnyObjectStore;
4343
if let Some(store) = store {
44-
let async_reader = AsyncFileReader {
44+
let async_reader = AsyncReader {
4545
store: store.extract::<AnyObjectStore>()?.into(),
4646
path: file.extract::<String>()?.into(),
4747
};
@@ -70,7 +70,7 @@ pub fn construct_reader(
7070
// If the user passed an object store instance, use that
7171
#[cfg(feature = "async")]
7272
if let Some(store) = store {
73-
let async_reader = AsyncFileReader {
73+
let async_reader = AsyncReader {
7474
store: store.extract::<AnyObjectStore>()?.into(),
7575
path: file.extract::<String>()?.into(),
7676
};
@@ -91,7 +91,7 @@ pub fn construct_reader(
9191

9292
#[allow(dead_code)]
9393
#[cfg(feature = "async")]
94-
fn default_http_store(path_or_url: &str) -> PyGeoArrowResult<AsyncFileReader> {
94+
fn default_http_store(path_or_url: &str) -> PyGeoArrowResult<AsyncReader> {
9595
let url = Url::parse(path_or_url)?;
9696

9797
let store_input = format!("{}://{}", url.scheme(), url.domain().unwrap());
@@ -103,16 +103,16 @@ fn default_http_store(path_or_url: &str) -> PyGeoArrowResult<AsyncFileReader> {
103103
.build()?;
104104
let path = url.path().trim_start_matches('/');
105105

106-
let async_reader = AsyncFileReader {
106+
let async_reader = AsyncReader {
107107
store: Arc::new(store),
108108
path: path.into(),
109109
};
110110
Ok(async_reader)
111111
}
112112

113113
#[cfg(feature = "async")]
114-
fn default_local_store(path: &str) -> PyGeoArrowResult<AsyncFileReader> {
115-
let async_reader = AsyncFileReader {
114+
fn default_local_store(path: &str) -> PyGeoArrowResult<AsyncReader> {
115+
let async_reader = AsyncReader {
116116
store: Arc::new(LocalFileSystem::new()),
117117
path: path.into(),
118118
};

python/geoarrow-io/src/input/sync.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@ use std::path::{Path, PathBuf};
1515

1616
/// Implements Read + Seek
1717
#[derive(Debug)]
18-
pub enum FileReader {
18+
pub enum SyncReader {
1919
File(String, BufReader<File>),
2020
FileLike(BufReader<PyFileLikeObject>),
2121
}
2222

23-
impl FileReader {
23+
impl SyncReader {
2424
pub(crate) fn try_clone(&self) -> std::io::Result<Self> {
2525
match self {
2626
Self::File(path, f) => Ok(Self::File(
@@ -32,7 +32,7 @@ impl FileReader {
3232
}
3333
}
3434

35-
impl Read for FileReader {
35+
impl Read for SyncReader {
3636
fn read(&mut self, buf: &mut [u8]) -> io::Result<usize> {
3737
match self {
3838
Self::File(_, reader) => reader.read(buf),
@@ -41,7 +41,7 @@ impl Read for FileReader {
4141
}
4242
}
4343

44-
impl Seek for FileReader {
44+
impl Seek for SyncReader {
4545
fn seek(&mut self, pos: SeekFrom) -> Result<u64, io::Error> {
4646
match self {
4747
Self::File(_, reader) => reader.seek(pos),
@@ -50,7 +50,7 @@ impl Seek for FileReader {
5050
}
5151
}
5252

53-
impl BufRead for FileReader {
53+
impl BufRead for SyncReader {
5454
fn fill_buf(&mut self) -> io::Result<&[u8]> {
5555
match self {
5656
Self::File(_, reader) => reader.fill_buf(),
@@ -66,7 +66,7 @@ impl BufRead for FileReader {
6666
}
6767
}
6868

69-
impl Length for FileReader {
69+
impl Length for SyncReader {
7070
fn len(&self) -> u64 {
7171
match self {
7272
Self::File(_path, f) => f.get_ref().len(),
@@ -87,8 +87,8 @@ impl Length for FileReader {
8787
}
8888
}
8989

90-
impl ChunkReader for FileReader {
91-
type T = FileReader;
90+
impl ChunkReader for SyncReader {
91+
type T = SyncReader;
9292

9393
fn get_read(&self, start: u64) -> parquet::errors::Result<Self::T> {
9494
let mut reader = self.try_clone()?;
@@ -111,7 +111,7 @@ impl ChunkReader for FileReader {
111111
}
112112
}
113113

114-
impl<'py> FromPyObject<'py> for FileReader {
114+
impl<'py> FromPyObject<'py> for SyncReader {
115115
fn extract_bound(ob: &Bound<'py, PyAny>) -> PyResult<Self> {
116116
if let Ok(path_buf) = ob.extract::<PathBuf>() {
117117
let path = path_buf.to_string_lossy().to_string();

python/geoarrow-io/src/parquet/async.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use std::sync::Arc;
22

33
use crate::error::{PyGeoArrowError, PyGeoArrowResult};
4-
use crate::input::{AnyFileReader, AsyncFileReader, construct_reader};
4+
use crate::input::{AnyFileReader, AsyncReader, construct_reader};
55
use crate::parquet::options::{
66
PyGeoParquetBboxQuery, PyGeoParquetReadOptions, PyRect, apply_options,
77
};
@@ -60,7 +60,7 @@ pub fn read_parquet_async(
6060
}
6161

6262
async fn read_parquet_async_inner(
63-
async_reader: AsyncFileReader,
63+
async_reader: AsyncReader,
6464
batch_size: Option<usize>,
6565
parse_to_native: bool,
6666
coord_type: Option<PyCoordType>,

rust/geoarrow-csv/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# Changelog
2+
3+
## 0.6.0 - 2025-10-15
4+
15
* feat(geoarrow-csv): Initial CSV reader, wrapping upstream arrow-csv by @kylebarron in https://github.com/geoarrow/geoarrow-rs/pull/1050
26
* feat(geoarrow-csv): add CSV writer by @kylebarron in https://github.com/geoarrow/geoarrow-rs/pull/1314
37
* docs: Geoarrow-csv docs by @nuts-rice in https://github.com/geoarrow/geoarrow-rs/pull/1340

rust/geoparquet/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
## Unreleased
66

7+
## 0.6.0 - 2025-10-15
8+
79
- Make `infer_geoarrow_schema` public. #1251
810

911
## 0.5.0 - 2025-08-07

0 commit comments

Comments
 (0)