All Versions
64
Latest Version
Avg Release Cycle
128 days
Latest Release
624 days ago

Changelog History
Page 3

  • v1.0.2 Changes

    December 20, 2013

    ๐Ÿ›  Fixes

    • ๐Ÿš… more secure generation of secret in rails generator
    • ensure popen3 doesn't hang
  • v1.0.1 Changes

    November 28, 2013

    ๐Ÿ”„ Changes

    • FileDataStore doesn't use hours_minutes_seconds in its path - it uses a random string instead (12_15_59_saf4fs_file.png -> sdf4c2G_file.png)

    ๐Ÿ”‹ Features

    • model attribute xxx_changed? method (useful e.g. in validations)

    ๐Ÿ›  Fixes

    • ๐Ÿ’Ž proper support for Ruby 1.8.7 and JRuby (version 1.7.8)
    • ๐Ÿ‘ท routed endpoints can deal with returned Attachment objects (rather than returned Job objects) and return 404 if the endpoint proc returns nil
    • 0๏ธโƒฃ default Content-Disposition header doesn't url-encode filename unless the request is from IE
    • fetch_url deals with urls that redirect to https (previously was blowing up)
  • v1.0.0 Changes

    November 24, 2013

    ๐Ÿ”„ Changes

    • ๐Ÿ”ง configuration
      • Dragonfly[:images] -> Dragonfly.app and Dragonfly.app(:named_app)
      • configuration block DSL overhaul
      • Rails is set up using a generator, not by requiring the file "dragonfly/rails/images"
      • Rack::Cache is not inserted by Dragonfly - this is up to the user
    • data store spec
      • store/retrieve -> read/write
      • write takes a Content, not a TempObject (though the interface is much the same)
      • return nil on read to signify not found instead of raising
    • S3, Couch and Mongo data stores extracted into separate gems
    • models
      • easier and simpler to include in custom models using Dragonfly::Model
      • image_accessor, asset_accessor, xxx_accessor, etc. -> single dragonfly_accessor
      • user needs to extend Dragonfly::Model::Validations manually to use dragonfly validations
    • Custom processors, datastores, generators and analysers are made easier by Content object which has convenience methods
    • โœ‚ Removed "encoders" - these are covered by processors now
    • โœ‚ Removed "job" shortcuts - they are not needed as processors can invoke other processors
    • No "smart" determination of mime-type - just use file extension (anything more than that can be done by the user)
    • ๐Ÿ“‡ metadata is required to be serializable to/from JSON
    • removed allow_fetch_file and allow_fetch_url in favour of more fine-control with fetch_file_whitelist and fetch_url_whitelist
    • 0๏ธโƒฃ switch off dealing with legacy urls by default
    • proper requires throughout the code instead of autoloading
    • simple 500 response for unknown errors

    ๐Ÿ”‹ Features

    • 0๏ธโƒฃ model attachment default (by specifying a path to a e.g. a default image)
    • convert and thumb processors take a 'frame' option
    • thumb takes a 'format' option
    • fetch_file and model.attachment_url= accept a data uri string
    • Attachment#xxx_stored, e.g. my_model.my_attachment_stored? (my_attachment here being the attachment name)
    • ๐Ÿ‘ท define for creating custom methods on Job/Attachment objects
    • url_path_prefix for when mounted in Rack with a "SCRIPT_NAME"
    • ๐Ÿšš when customizing response headers, ability to remove headers by setting to nil
    • ๐Ÿ‘ better logging
      • for each response
      • for shell commands

    ๐Ÿ›  Fixes

    • inserting CookieMonster doesn't depend on existence of ActionDispatch::Cookies
    • image? returns false for pdfs
    • fetch_url raises more useful ErrorResponse on error
    • โš  shell commands don't print warnings to stderr
    • ๐Ÿ‘ท ability to assign attachment/job from other app
  • v0.9.15 Changes

    May 04, 2013

    ๐Ÿ”‹ Features

    • ๐Ÿ‘ Allow turning off support of legacy urls

    ๐Ÿ›  Fixes

    • More conservative URL escaping - back to Rack::Utils.escape_path
    • Don't check for malicious strings when deserializing from datastores (they're to be trusted)
  • v0.9.14 Changes

    February 13, 2013

    ๐Ÿ”‹ Features

    • Attachment#b64_data

    ๐Ÿ›  Fixes

    • ๐Ÿ›  Fix '+' character being converted to ' ' (revert to URI.escape instead of Rack::Utils.escape)
    • ๐Ÿ‘Œ Support old-style deprecated urls (with a check for malicious ones)
    • ๐Ÿ– Handle case where uid is an empty string
  • v0.9.13 Changes

    January 30, 2013

    ๐Ÿ”„ Changes

    • URLS are encoded/decoded with JSON, not with Marshal
  • v0.9.12 Changes

    April 08, 2012

    ๐Ÿ”‹ Features

    • ๐Ÿ‘ Allow using a mongo replica set with mongo datastore

    ๐Ÿ›  Fixes

    • define_macro_on_include was giving a stack error with multiple accessors on same app
  • v0.9.11 Changes

    March 12, 2012

    ๐Ÿ”‹ Features

    • ๐Ÿ‘ Allow the S3 base URL to be customised with url_host (or per-request)
    • โž• Added App#name (name as per Dragonfly[:app_name])

    ๐Ÿ”„ Changes

    • ๐Ÿ‘ Better inspect for App, Processor, Analyser, Encoder, Generator, Job, TempObject, RoutedEndpoint, JobEndpoint

    ๐Ÿ›  Fixes

    • ๐Ÿ‘€ Rescue from Excon::Errors::Conflict which apparently gets raised sometimes (don't know why - see https://github.com/markevans/dragonfly/issues/167)
    • Alias portrait and landscape without question marks, so magic_attributes can be used with them
    • Fixed stack error when using define_macro_on_include twice
    • ๐Ÿ”€ Use fog's sync_clock to overcome potential S3 time skew problems
    • Using :name in urls was causing problems when filenames had dashes in them
  • v0.9.10 Changes

    January 11, 2012

    ๐Ÿ›  Fixes

    • FileDataStore was causing errors when the storage path was flat (not in a directory structure)
  • v0.9.9 Changes

    December 30, 2011

    ๐Ÿ”‹ Features

    • Created tempfiles use the original file extension if known
    • Added :case_sensitive option to validates_property for dealing with upper-case extensions and mime-types.
    • Github Markup syntax on readme for code highlighting
    • ๐Ÿ”ง S3DataStore can use https for remote urls (either configurable or per-url)
    • to_file can take :mode option for setting custom permissions
    • 0๏ธโƒฃ to_file creates intermediate subdirs by default, can be turned off with :mkdirs => false option
    • โž• Added some more S3 regions

    ๐Ÿ”„ Changes

    • Datastores now use temp_object.meta, not the second arg passed in to store
    • ๐Ÿ‘ท meta, name, etc. now lazily load the job on an attachment - previously you'd have to call apply to get the meta from the datastore
    • When assigning an image via the activemodel extensions, mark that uid attribute will change
    • ๐Ÿš… validates_property uses Rails 3 validators
    • ๐Ÿ”ง Deprecated saved 'heroku' config, in favour of configuring S3 explicitly

    ๐Ÿ›  Fixes

    • ๐Ÿ‘ท Model attachment urls are consistent now - the name is appended to the url (with format "/:job/:name") ONLY if it has the "name" magic attribute
    • identify wasn't working properly for files with capital letter extensions
    • 0๏ธโƒฃ S3 datastore sets content mime_type by default
    • File extensions with numbers like JP2 weren't being processed/analysed properly
    • Protect against object_ids being recycled and messing with analyser cache
    • All url segments are correctly url-escaped now
    • ๐Ÿ›  Fixed TempObject File.open mode
    • S3DataStore was breaking on bucket_exists? when using AWS IAM
    • Put CookieMonster before ActionDispatch::Cookies in rack middleware stack - that way Rack::Cache won't come between them and mess things up