Skip to content

[C++][Python] Support per-filesystem S3 User-Agent - #53291

Closed
XiaoHongbo-Hope wants to merge 1 commit into
apache:mainfrom
XiaoHongbo-Hope:codex/s3-user-agent
Closed

XiaoHongbo-Hope wants to merge 1 commit into
apache:mainfrom
XiaoHongbo-Hope:codex/s3-user-agent

Conversation

@XiaoHongbo-Hope

Copy link
Copy Markdown

Rationale for this change

S3-compatible clients need per-filesystem application identifiers without process-wide AWS environment changes.

What changes are included in this PR?

Expose optional S3Options.user_agent / S3FileSystem(user_agent=...), pass it to the AWS client, and preserve it in equality and Python pickle. Empty values retain the SDK default.

Are these changes tested?

Added HTTP request tests for client isolation, default behavior, and pickle round trips. Cython translation passes; the local C++/Python build and runtime tests are in progress.

Are there any user-facing changes?

One optional constructor argument; existing defaults are unchanged.

Was AI used for this PR?

Code, tests, and description were AI-assisted and reviewed by AI.

@github-actions

Copy link
Copy Markdown

Thanks for opening a pull request!

This pull request has been automatically converted to a draft because its title doesn't match Arrow's required format.

If this is not a minor PR, could you open an issue for this pull request on GitHub? https://github.com/apache/arrow/issues/new/choose

Opening GitHub issues ahead of time contributes to the Openness of the Apache Arrow project.

Then could you also rename the pull request title in the following format?

GH-${GITHUB_ISSUE_ID}: [${COMPONENT}] ${SUMMARY}

or

MINOR: [${COMPONENT}] ${SUMMARY}

After updating the title, you can mark the pull request as ready for review.

See also:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant