docs: add Tencent COS S3-compatible configuration example#3451
Open
Sidra-009 wants to merge 6 commits into
Open
docs: add Tencent COS S3-compatible configuration example#3451Sidra-009 wants to merge 6 commits into
Sidra-009 wants to merge 6 commits into
Conversation
rambleraptor
approved these changes
Jun 3, 2026
Contributor
rambleraptor
left a comment
There was a problem hiding this comment.
I think this sounds great. Since the URL won’t change, we could consider having some kind of property that auto-sets the URI.
ebyhr
reviewed
Jun 3, 2026
| | s3.force-virtual-addressing | True | Whether to use virtual addressing of buckets. This is set to `True` by default as OSS can only be accessed with virtual hosted style address. | | ||
| | s3.anonymous | True | Configure whether to use anonymous connection. If False (default), uses key/secret if configured or standard AWS configuration methods. | | ||
| --- | ||
|
|
Member
There was a problem hiding this comment.
Why did you remove the table for "Alibaba Cloud Object Storage Service (OSS)"?
ebyhr
reviewed
Jun 3, 2026
Comment on lines
+207
to
+209
| | s3.access-key-id | `<access-key>` | Access key for COS | | ||
| | s3.secret-access-key | `<secret-key>` | Secret key for COS | | ||
| | s3.session-token | `<optional-session-token>` | Optional session token | |
Member
There was a problem hiding this comment.
nit: The second column is labeled "Example." I would suggest avoiding using placeholder text in this column:
Suggested change
| | s3.access-key-id | `<access-key>` | Access key for COS | | |
| | s3.secret-access-key | `<secret-key>` | Secret key for COS | | |
| | s3.session-token | `<optional-session-token>` | Optional session token | | |
| | s3.access-key-id | admin | Access key for COS | | |
| | s3.secret-access-key | password | Secret key for COS | | |
| | s3.session-token | AQoDYXdzEJr... | Optional session token | |
ebyhr
reviewed
Jun 3, 2026
Comment on lines
+214
to
+220
| catalog = load_catalog( | ||
| { | ||
| "s3.endpoint": "https://cos.ap-guangzhou.myqcloud.com", | ||
| "s3.access-key-id": "<access-key>", | ||
| "s3.secret-access-key": "<secret-key>", | ||
| } | ||
| ) |
Member
There was a problem hiding this comment.
Have you verified whether this code snippet actually works? Leading ** look missing.
catalog = load_catalog(
**{
"s3.endpoint": "https://cos.ap-guangzhou.myqcloud.com",
"s3.access-key-id": "<access-key>",
"s3.secret-access-key": "<secret-key>",
}
)
ebyhr
reviewed
Jun 3, 2026
| time.tzset() | ||
|
|
||
| if hasattr(time, "tzset"): | ||
| time.tzset() |
Author
There was a problem hiding this comment.
thanks for the review i will split this PR into separate changes as suggested:
- COS documentation update
- Windows tzset fix
- markdownlint formatting fixes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related to #3239
Rationale for this change
This PR adds documentation for Tencent Cloud Object Storage (COS) showing how it can be used with PyIceberg via the existing S3FileIO / PyArrowFileIO implementation.
Tencent COS is S3-compatible, so no new filesystem backend (like fsspec/cosfs) or additional dependencies are required. Users can configure COS using standard S3 configuration keys such as
s3.endpoint,s3.access-key-id, ands3.secret-access-key.Are these changes tested?
Yes.
Verified locally that Tencent COS works using the S3-compatible configuration approach by setting the appropriate
s3.endpoint. No code changes were required, only configuration-level validation.Are there any user-facing changes?
Yes.
This improves documentation by adding a clear example for Tencent COS integration, helping users configure COS with PyIceberg using existing S3FileIO support.