Comments (2)
It was an after thought 6 years ago for marginal convenience on the assumption classes that ended in the word Bucket would be rare enough that the few libraries that used an AWS gem wouldn't be very likely to define non AWS Bucket classes.
It has turned out to be the single bigger source of frustration by a long shot in the relatively long life of the library. Meanwhile no one's written a blog post talking about how awesome inconveniences.
So I'm planning on making it deprecated in the next release with a big honking warning sign. And then the release after that I'll just get rid of it. For now it's probably safe for someone to just completely remove it. And when you upgrade you shouldn't have any problems.
"The best laid schemes of mice and men gang aft agley."
On Nov 23, 2011, at 11:36 AM, [email protected] wrote:
Hi guys,
I had wrote a class: ConversionsByBucket, and weird things stared to happen.
After much hand wringing I tracked it down s3/extensions.rb overriding const_missing and hijacking modules/classes ending in 'Bucket'.
So:
At the very least add a warning message, maybe:
puts "Transforming #{sym.to_s} into a AWS::S3::Bucket, if using AWS/S3, ending modules/class with Bucket is reserved"Is the overriding o const_missing really necessary -- seem heavy handed.
Thanks,
Jonathan
Reply to this email directly or view it on GitHub:
#45
from aws-s3.
First off dude -- thanks for your work on this library. Regarding backwards compatibility which I am sure is what you are worried about. I wonder if there is a good place to put a configuration setting to turn on or off this feature.
I.e.
# Some comments here explaining what this does
S3::Config.enable_bucket_class_conversions = true;
Then for those of us who have issues with it can set it to false. I didn't see an easy place to put it, but just a thought. I am more than happy for you to just drop it.
Thanks again.
Also, anyone who uses this feature should chime in.
from aws-s3.
Related Issues (20)
- content_type returns with a comma
- all meta data has "x-amz-meta" prefix to the name
- Error witth ActionView::Base.default_form_builder HOT 2
- Make the library threadsafe HOT 2
- How I can stub s3 in Rspec? HOT 1
- Header/Option for facilitating server-side encryption HOT 1
- Link to official Amazon SDK
- Consider adding additional contributors or transferring ownership HOT 8
- NameError: uninitialized constant AWS::S3::Base HOT 1
- aws-s3 license? HOT 3
- `.error.raise` on 403 Forbidden responses causes method_missing blowup HOT 1
- Unable to attach IAM role in S3 bucket policy HOT 1
- Ruby 2.5.1 not supported ? HOT 1
- Upload a directory method
- Cannot use environment variables with aws-s3?
- Problem getting data from S3 (No method value)
- Errno::EPIPE: Broken pipe HOT 2
- Warning Digest::Digest is deprecated; use Digest HOT 7
- Rails + aws-s3 : AWS::S3::Base.establish_connection! just once or before every s3 operation ?
- @@{:instance writer=>true} issue HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aws-s3.