Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 0 additions & 21 deletions .changeset/rust-redirect-on-builder.md

This file was deleted.

22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,27 @@
# @smooai/fetch

## 3.7.1

### Patch Changes

- 0518da3: Rust: move the redirect option off `RequestInit` and onto the builder

3.7.0 added `RequestInit.follow_redirects`. Adding a public field to a struct
consumers construct is a **breaking change** in Rust semver, shipped under a
minor — building the SmooAI monorepo against 3.7.0 fails with
`error[E0063]: missing field` in **129 exhaustive constructors** across ~40 crates.

The option is now `FetchBuilder::with_follow_redirects`, matching the shape Go
and .NET already use, and `RequestInit` is back to its 3.6.2 fields. Redirect
policy is per-Client in reqwest anyway, so the builder was the right home from
the start.

`client::fetch` keeps its exact signature; a new `client::fetch_with_redirect_policy`
takes the extra argument, so nothing that compiled against 3.6.2 needs changing.

3.7.0 is yanked from crates.io. The other four languages were unaffected —
Python added a defaulted dataclass field, Go and .NET added builder methods.

## 3.7.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion dotnet/SmooAI.Fetch/SmooAI.Fetch.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<NoWarn>$(NoWarn);CS1591</NoWarn>

<PackageId>SmooAI.Fetch</PackageId>
<Version>3.7.0</Version>
<Version>3.7.1</Version>
<Authors>SmooAI</Authors>
<Company>SmooAI</Company>
<Description>Resilient HTTP client for .NET with Polly-based retry, timeouts, typed JSON responses, and auth token injection. Port of @smooai/fetch.</Description>
Expand Down
2 changes: 1 addition & 1 deletion go/fetch/version.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package fetch

// Version is the current version of the smooai-fetch Go package.
const Version = "3.7.0"
const Version = "3.7.1"
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@smooai/fetch",
"version": "3.7.0",
"version": "3.7.1",
"description": "A powerful fetch client library built on top of the native `fetch` API, designed for both Node.js and browser environments. Features built-in support for retries, timeouts, rate limiting, circuit breaking, and Standard Schema validation.",
"homepage": "https://github.com/SmooAI/fetch#readme",
"bugs": {
Expand Down
2 changes: 1 addition & 1 deletion python/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "smooai-fetch"
version = "3.7.0"
version = "3.7.1"
description = "A resilient HTTP fetch client with retries, timeouts, rate limiting, and circuit breaking."
# readme = "README.md"
authors = [{ name = "SmooAI", email = "brent@smooai.com" }]
Expand Down
2 changes: 1 addition & 1 deletion python/src/smooai_fetch/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
and circuit breaking.
"""

__version__ = "3.7.0"
__version__ = "3.7.1"

# Core client
# Builder
Expand Down
2 changes: 1 addition & 1 deletion rust/fetch/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion rust/fetch/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "smooai-fetch"
version = "3.7.0"
version = "3.7.1"
edition = "2021"
description = "A resilient HTTP fetch client with retries, timeouts, rate limiting, and circuit breaking."
license = "MIT"
Expand Down
Loading