Hello Arrow devs,

I've written a PR for the C++ S3FileSystem that adds an option
"allow_create_buckets" which when false will error if attempting to create
or delete a bucket [1]. I've made the default value for this setting false,
though made it easy to override in URI, during construction, or after
construction. However, this is a breaking API change, so want to check:
Does this change seem reasonable to others?

My intention is to make creating and deleting buckets opt-in, rather than
opt-out. In my experience working with S3 in an industry setting, it's rare
to want to create buckets through an API that doesn't allow setting IAM
access policies or resource (cost-tracking) tags. And it seems likewise
undesirable to be able to accidentally delete the bucket using the
filesystem. There are definitely use-cases (like integration testing) where
creating and deleting buckets are useful, I just think it's slightly safer
for users to opt-in to that functionality.

Thanks,

Will Jones

[1] https://github.com/apache/arrow/pull/13206

Reply via email to