Skip to content

Commit 06ba9b5

Browse files
chore(deps): bump the non-arrow group with 6 updates (#264)
Bumps the non-arrow group with 6 updates: | Package | From | To | | --- | --- | --- | | [pyo3](https://github.com/pyo3/pyo3) | `0.28.2` | `0.28.3` | | [rustac](https://github.com/stac-utils/rustac) | ``0f0158e`` | ``bc98b7e`` | | [stac](https://github.com/stac-utils/rustac) | ``0f0158e`` | ``bc98b7e`` | | [stac-duckdb](https://github.com/stac-utils/rustac) | ``0f0158e`` | ``bc98b7e`` | | [stac-io](https://github.com/stac-utils/rustac) | ``0f0158e`` | ``bc98b7e`` | | [tokio](https://github.com/tokio-rs/tokio) | `1.50.0` | `1.51.0` | Updates `pyo3` from 0.28.2 to 0.28.3 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pyo3/pyo3/releases">pyo3's releases</a>.</em></p> <blockquote> <h2>PyO3 0.28.3</h2> <p>This patch contains several fixes for stability of the PyO3 0.28.x series:</p> <ul> <li><code>Python::attach</code> and <code>Python::try_attach</code> will no longer return before the thread initializing the interpreter has finished runnning <code>site.py</code> when using the <code>auto-initialize</code> feature.</li> <li>Fix unsoundness in <code>PyBytesWriter::write_vectored</code> when targeting the Python 3.15 prerelease interpreter.</li> <li>Fix possible deadlock in <code>.into_pyobject()</code> implementation for C-like <code>#[pyclass]</code> enums.</li> </ul> <p>A couple of edge cases causing compile failures were also fixed.</p> <p>Thank you to the following contributors for the improvements:</p> <p><a href="https://github.com/alex"><code>@​alex</code></a> <a href="https://github.com/bschoenmaeckers"><code>@​bschoenmaeckers</code></a> <a href="https://github.com/chirizxc"><code>@​chirizxc</code></a> <a href="https://github.com/davidhewitt"><code>@​davidhewitt</code></a> <a href="https://github.com/Embers-of-the-Fire"><code>@​Embers-of-the-Fire</code></a> <a href="https://github.com/Icxolu"><code>@​Icxolu</code></a> <a href="https://github.com/maurosilber"><code>@​maurosilber</code></a> <a href="https://github.com/ngoldbaum"><code>@​ngoldbaum</code></a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md">pyo3's changelog</a>.</em></p> <blockquote> <h2>[0.28.3] - 2026-04-02</h2> <h3>Fixed</h3> <ul> <li>Fix compile error with <code>#[pyclass(get_all)]</code> on a type named <code>Probe</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/5837">#5837</a></li> <li>Fix compile error in debug builds related to <code>_Py_NegativeRefcount</code> with Python &lt; 3.12. <a href="https://redirect.github.com/PyO3/pyo3/pull/5847">#5847</a></li> <li>Fix a race condition where <code>Python::attach</code> or <code>try_attach</code> could return before <code>site.py</code> had finished running. <a href="https://redirect.github.com/PyO3/pyo3/pull/5903">#5903</a></li> <li>Fix unsoundness in <code>PyBytesWriter::write_vectored</code> with Python 3.15 prerelease versions. <a href="https://redirect.github.com/PyO3/pyo3/pull/5907">#5907</a></li> <li>Fix deadlock in <code>.into_pyobject()</code> implementation for C-like <code>#[pyclass]</code> enums. <a href="https://redirect.github.com/PyO3/pyo3/pull/5928">#5928</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/PyO3/pyo3/commit/743af645e7143be6abe2217aafaa0540cf532af4"><code>743af64</code></a> release: 0.28.3</li> <li><a href="https://github.com/PyO3/pyo3/commit/2042b4c0c1da74844f43f4970ab52386abf6deac"><code>2042b4c</code></a> fix deadlock when initializing enum via <code>into_pyobject()</code> (<a href="https://redirect.github.com/pyo3/pyo3/issues/5928">#5928</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/01572470d031d16cd14fdc96f330397b4055f424"><code>0157247</code></a> ci: update UI tests for Rust 1.94 (<a href="https://redirect.github.com/pyo3/pyo3/issues/5859">#5859</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/e234f8a75aaa0c0c0feecaf360107a78a7c0e436"><code>e234f8a</code></a> Update getting-started.md (<a href="https://redirect.github.com/pyo3/pyo3/issues/5899">#5899</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/c06848d5f466350efe6bd05c9fc6cd923a12dd78"><code>c06848d</code></a> fix ffi-check in 3.15.0a7 (<a href="https://redirect.github.com/pyo3/pyo3/issues/5873">#5873</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/83f4283bde6e207827edeb9422e79944ced8327c"><code>83f4283</code></a> remove unused <code>try_trait_v2</code> feature when enabling the <code>nightly</code> feature (<a href="https://redirect.github.com/pyo3/pyo3/issues/5868">#5868</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/0de57ed453eeb47e40b011d8be2cdc0028116ebc"><code>0de57ed</code></a> Fix unsoundness in <code>PyBytesWriter::write_vectored</code> (<a href="https://redirect.github.com/pyo3/pyo3/issues/5907">#5907</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/49cd13fae22c5e46a4b0946539b9e64bb8ccb573"><code>49cd13f</code></a> fixes <a href="https://redirect.github.com/pyo3/pyo3/issues/5900">#5900</a> -- address race condition with initialization and site.py loading...</li> <li><a href="https://github.com/PyO3/pyo3/commit/c90d163638ef4a754fd31a3a29e3ba2ebc05a354"><code>c90d163</code></a> [fix] Fix <code>std::ffi</code> import for <code>_Py_NegativeRefcount</code> (<a href="https://redirect.github.com/pyo3/pyo3/issues/5847">#5847</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/b79d7257dd0abd9d6d029878d8f0902a8e35e695"><code>b79d725</code></a> fix(pyo3-macros): allow pyclass named Probe (<a href="https://redirect.github.com/pyo3/pyo3/issues/5837">#5837</a>)</li> <li>See full diff in <a href="https://github.com/pyo3/pyo3/compare/v0.28.2...v0.28.3">compare view</a></li> </ul> </details> <br /> Updates `rustac` from `0f0158e` to `bc98b7e` <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/stac-utils/rustac/commit/bc98b7e1b5edaed2c59161b4217348e7f2273380"><code>bc98b7e</code></a> feat: add generic search client traits and adapters (<a href="https://redirect.github.com/stac-utils/rustac/issues/994">#994</a>)</li> <li>See full diff in <a href="https://github.com/stac-utils/rustac/compare/0f0158ed527c8c9d162cd079391c58d8e09face5...bc98b7e1b5edaed2c59161b4217348e7f2273380">compare view</a></li> </ul> </details> <br /> Updates `stac` from `0f0158e` to `bc98b7e` <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/stac-utils/rustac/commit/bc98b7e1b5edaed2c59161b4217348e7f2273380"><code>bc98b7e</code></a> feat: add generic search client traits and adapters (<a href="https://redirect.github.com/stac-utils/rustac/issues/994">#994</a>)</li> <li>See full diff in <a href="https://github.com/stac-utils/rustac/compare/0f0158ed527c8c9d162cd079391c58d8e09face5...bc98b7e1b5edaed2c59161b4217348e7f2273380">compare view</a></li> </ul> </details> <br /> Updates `stac-duckdb` from `0f0158e` to `bc98b7e` <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/stac-utils/rustac/commit/bc98b7e1b5edaed2c59161b4217348e7f2273380"><code>bc98b7e</code></a> feat: add generic search client traits and adapters (<a href="https://redirect.github.com/stac-utils/rustac/issues/994">#994</a>)</li> <li>See full diff in <a href="https://github.com/stac-utils/rustac/compare/0f0158ed527c8c9d162cd079391c58d8e09face5...bc98b7e1b5edaed2c59161b4217348e7f2273380">compare view</a></li> </ul> </details> <br /> Updates `stac-io` from `0f0158e` to `bc98b7e` <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/stac-utils/rustac/commit/bc98b7e1b5edaed2c59161b4217348e7f2273380"><code>bc98b7e</code></a> feat: add generic search client traits and adapters (<a href="https://redirect.github.com/stac-utils/rustac/issues/994">#994</a>)</li> <li>See full diff in <a href="https://github.com/stac-utils/rustac/compare/0f0158ed527c8c9d162cd079391c58d8e09face5...bc98b7e1b5edaed2c59161b4217348e7f2273380">compare view</a></li> </ul> </details> <br /> Updates `tokio` from 1.50.0 to 1.51.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/tokio-rs/tokio/releases">tokio's releases</a>.</em></p> <blockquote> <h2>Tokio v1.51.0</h2> <h1>1.51.0 (April 3rd, 2026)</h1> <h3>Added</h3> <ul> <li>net: implement <code>get_peer_cred</code> on Hurd (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7989">#7989</a>)</li> <li>runtime: add <code>tokio::runtime::worker_index()</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7921">#7921</a>)</li> <li>runtime: add runtime name (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7924">#7924</a>)</li> <li>runtime: stabilize <code>LocalRuntime</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7557">#7557</a>)</li> <li>wasm: add wasm32-wasip2 networking support (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7933">#7933</a>)</li> </ul> <h3>Changed</h3> <ul> <li>runtime: steal tasks from the LIFO slot (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7431">#7431</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>docs: do not show &quot;Available on non-loom only.&quot; doc label (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7977">#7977</a>)</li> <li>macros: improve overall macro hygiene (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7997">#7997</a>)</li> <li>sync: fix <code>notify_waiters</code> priority in <code>Notify</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7996">#7996</a>)</li> <li>sync: fix panic in <code>Chan::recv_many</code> when called with non-empty vector on closed channel (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7991">#7991</a>)</li> </ul> <p><a href="https://redirect.github.com/tokio-rs/tokio/issues/7431">#7431</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7431">tokio-rs/tokio#7431</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/7557">#7557</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7557">tokio-rs/tokio#7557</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/7921">#7921</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7921">tokio-rs/tokio#7921</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/7924">#7924</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7924">tokio-rs/tokio#7924</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/7933">#7933</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7933">tokio-rs/tokio#7933</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/7977">#7977</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7977">tokio-rs/tokio#7977</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/7989">#7989</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7989">tokio-rs/tokio#7989</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/7991">#7991</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7991">tokio-rs/tokio#7991</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/7996">#7996</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7996">tokio-rs/tokio#7996</a> <a href="https://redirect.github.com/tokio-rs/tokio/issues/7997">#7997</a>: <a href="https://redirect.github.com/tokio-rs/tokio/pull/7997">tokio-rs/tokio#7997</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/tokio-rs/tokio/commit/0af06b7bab12c58161b1d0ae79bdf4452305d42f"><code>0af06b7</code></a> chore: prepare Tokio v1.51.0 (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8005">#8005</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/01a7f1dfabc93293743701074752ff0d8e787595"><code>01a7f1d</code></a> chore: prepare tokio-macros v2.7.0 (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8004">#8004</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/eeb55c733ba9a83c51d08b1629dca6a5ec0f4b2b"><code>eeb55c7</code></a> runtime: steal tasks from the LIFO slot (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7431">#7431</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/1fc450aefba4b05cdff9b7825ca5e39cccb3780e"><code>1fc450a</code></a> runtime: stabilize <code>LocalRuntime</code> (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7557">#7557</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/324218f9bbdc26e4bb527d036613826824f3078b"><code>324218f</code></a> Merge tag 'tokio-1.47.4' (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8003">#8003</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/aa65d0d0b8ea6eec80985b9d231390f137493071"><code>aa65d0d</code></a> chore: prepare Tokio v1.47.4 (<a href="https://redirect.github.com/tokio-rs/tokio/issues/8002">#8002</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/bf18ed452d6aae438e84ae008a01a74776abdc19"><code>bf18ed4</code></a> sync: fix panic in <code>Chan::recv_many</code> when called with non-empty vector on clo...</li> <li><a href="https://github.com/tokio-rs/tokio/commit/43134f1e5784993eb4fb3863933d74ac9e28f598"><code>43134f1</code></a> wasm: add wasm32-wasip2 networking support (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7933">#7933</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/b4c3246d330379430937bdbb5e1b0c37282ae23e"><code>b4c3246</code></a> macros: improve overall macro hygiene (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7997">#7997</a>)</li> <li><a href="https://github.com/tokio-rs/tokio/commit/7947fa4bd79d7345aa7e6b189fc1fbb6983a4351"><code>7947fa4</code></a> rt: add runtime name (<a href="https://redirect.github.com/tokio-rs/tokio/issues/7924">#7924</a>)</li> <li>Additional commits viewable in <a href="https://github.com/tokio-rs/tokio/compare/tokio-1.50.0...tokio-1.51.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Pete Gadomski <pete.gadomski@gmail.com>
1 parent 93f93ab commit 06ba9b5

3 files changed

Lines changed: 41 additions & 28 deletions

File tree

Cargo.lock

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

Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ duckdb-bundled = ["stac-duckdb/bundled"]
1313
openssl-vendored = ["dep:openssl"]
1414

1515
[dependencies]
16+
async-stream = "0.3.6"
1617
clap = "4.6.0"
1718
duckdb = "1.10501.0"
1819
futures-core = "0.3.32"
@@ -22,7 +23,7 @@ geojson = "1.0.0"
2223
object_store = { version = "0.13.2", features = ["gcp", "aws", "azure", "http"] }
2324
openssl = { version = "0.10", features = ["vendored"], optional = true }
2425
parquet = "58.1.0"
25-
pyo3 = { version = "0.28.0", features = ["extension-module"] }
26+
pyo3 = { version = "0.28.3", features = ["extension-module"] }
2627
pyo3-arrow = "0.17.0"
2728
pyo3-async-runtimes = { version = "0.28.0", features = [
2829
"tokio",
@@ -38,7 +39,7 @@ stac = { git = "https://github.com/stac-utils/rustac", features = ["geoarrow", "
3839
stac-duckdb = { git = "https://github.com/stac-utils/rustac" }
3940
stac-io = { git = "https://github.com/stac-utils/rustac", features = ["store-all", "geoparquet"] }
4041
thiserror = "2.0.18"
41-
tokio = { version = "1.50.0", features = ["rt-multi-thread"] }
42+
tokio = { version = "1.51.0", features = ["rt-multi-thread"] }
4243
tracing = "0.1.44"
4344

4445
[build-dependencies]

src/search.rs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ use pyo3::prelude::*;
77
use pyo3::{Bound, FromPyObject, PyErr, PyResult, exceptions::PyValueError, types::PyDict};
88
use pyo3_object_store::AnyObjectStore;
99
use serde_json::{Map, Value};
10-
use stac::api::{Fields, Filter, Items, Search, Sortby};
10+
use stac::api::{Fields, Filter, Items, Search, Sortby, StreamItemsClient};
1111
use stac::{Bbox, geoparquet::WriterOptions};
1212
use stac_io::{Format, StacStore, api::Client};
1313
use std::sync::Arc;
@@ -308,10 +308,15 @@ async fn search_api(
308308
async fn iter_search_api(
309309
href: String,
310310
search: Search,
311-
) -> Result<impl Stream<Item = stac_io::Result<Map<String, Value>>>> {
311+
) -> Result<impl Stream<Item = stac_io::Result<Map<String, Value>>> + 'static> {
312312
let client = Client::new(&href)?;
313-
let stream = client.search_stream(search).await?;
314-
Ok(stream)
313+
Ok(async_stream::try_stream! {
314+
let inner = client.search_stream(search).await?;
315+
futures_util::pin_mut!(inner);
316+
while let Some(item) = inner.next().await {
317+
yield item?;
318+
}
319+
})
315320
}
316321

317322
/// Creates a [Search] from Python arguments.

0 commit comments

Comments
 (0)