Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove unnecessary scopes and document required scopes #509

Draft
wants to merge 7 commits into
base: develop
Choose a base branch
from

Conversation

JaniruTEC
Copy link
Contributor

This PR removes the call to MinioClient#bucketExists, adds documentation on required scopes and closes #339.

@JaniruTEC JaniruTEC marked this pull request as draft November 8, 2023 14:57
@CLAassistant

This comment was marked as resolved.

This implementation depends on multiple (reasonable) assumptions and insights gained from the source code of MinIO:
- "maxKeys" is implemented as page size: The iterator returned by "MinioClient.listObjects" automatically loads another batch of 0 <= count <= maxKeys results if the number of calls to the iterator exceeds the number of previously loaded results. The extension function "MinioClient.listObjectsLimit" limits the number of objects returned in total.
- The iterator returned by "MinioClient.listObjects" will only return up to one error result. If there is an error result, it will always be returned as the next and only remaining result.
- AWS as well as other S3 providers return the results of "listObjects" in a sorted fashion. This implementation breaks if a provider doesn't abide to this contract.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Remove "Allow List All Bucket Names" scope from S3 and document required scopes
2 participants