README.rdoc in paperclip-2.2.8 vs README.rdoc in paperclip-2.2.9.1

- old
+ new

@@ -77,21 +77,20 @@ ==Storage The files that are assigned as attachments are, by default, placed in the directory specified by the :path option to has_attached_file. By default, this -location is -":rails_root/public/system/:attachment/:id/:style/:basename.:extension". This +location is ":rails_root/public/system/:attachment/:id/:style/:filename". This location was chosen because on standard Capistrano deployments, the public/system directory is symlinked to the app's shared directory, meaning it will survive between deployments. For example, using that :path, you may have a file at /data/myapp/releases/20081229172410/public/system/avatars/13/small/my_pic.png NOTE: This is a change from previous versions of Paperclip, but is overall a -safer choice for the defaul file store. +safer choice for the default file store. You may also choose to store your files using Amazon's S3 service. You can find more information about S3 storage at the description for Paperclip::Storage::S3. @@ -102,13 +101,13 @@ to the public. Both :path and :url allow the same set of interpolated variables. ==Post Processing -Paperclip supports an extendible selection of post-processors. When you define +Paperclip supports an extensible selection of post-processors. When you define a set of styles for an attachment, by default it is expected that those -"styles" are actually "thumbnails". However, you can do more than just +"styles" are actually "thumbnails". However, you can do much more than just thumbnail images. By defining a subclass of Paperclip::Processor, you can perform any processing you want on the files that are attached. Any file in your Rails app's lib/paperclip_processors directory is automatically loaded by paperclip, allowing you to easily define custom processors. You can specify a processor with the :processors option to has_attached_file: @@ -139,12 +138,15 @@ has_attached_file :scan, :styles => { :text => { :quality => :better } }, :processors => [:rotator, :ocr] then both the :rotator processor and the :ocr processor would receive the options "{ :quality => :better }". This parameter may not mean anything to one -or more or the processors, and they are free to ignore it. +or more or the processors, and they are expected to ignore it. +NOTE: Because processors operate by turning the original attachment into the +styles, no processors will be run if there are no styles defined. + ==Events Before and after the Post Processing step, Paperclip calls back to the model with a few callbacks, allowing the model to change or cancel the processing step. The callbacks are "before_post_process" and "after_post_process" (which @@ -155,10 +157,10 @@ - returning nil is not the same) in a before_ filter, the post processing step will halt. Returning false in an after_ filter will not halt anything, but you can access the model and the attachment if necessary. NOTE: Post processing will not even *start* if the attachment is not valid -according to the validations. Your callbacks (and processors) will only be +according to the validations. Your callbacks and processors will *only* be called with valid attachments. ==Contributing If you'd like to contribute a feature or bugfix: Thanks! To make sure your