All Versions
64
Latest Version
Avg Release Cycle
64 days
Latest Release
820 days ago

Changelog History
Page 5

  • v0.10.0 Changes

    December 19, 2014
    • #803, #820: Added all_or_none_of parameter validator - @loveltyoic, @natecj.
    • #774: Extended mutually_exclusive, exactly_one_of, at_least_one_of to work inside any kind of group: requires or optional, Hash or Array - @ShPakvel.
    • ๐Ÿ’Ž #743: Added allow_blank parameter validator to validate non-empty strings - @elado.
    • ๐Ÿšš #745: Removed atom+xml, rss+xml, and jsonapi content-types - @akabraham.
    • ๐Ÿ’Ž #745: Added :binary, application/octet-stream content-type - @akabraham.
    • ๐Ÿ’Ž #757: Changed desc can now be used with a block syntax - @dspaeth-faber.
    • 0๏ธโƒฃ #779: Fixed using values with a default proc - @ShPakvel.
    • ๐Ÿ’Ž #799: Fixed custom validators with required Hash, Array types - @bwalex.
    • ๐Ÿ’Ž #784: Fixed present to not overwrite the previously added contents of the response body whebn called more than once - @mfunaro.
    • ๐Ÿšš #809: Removed automatic (.:format) suffix on paths if you're using only one format (e.g., with format :json, /path will respond with JSON but /path.xml will be a 404) - @ajvondrak.
    • ๐Ÿ’Ž #816: Added ability to filter out missing params if params is a nested hash with declared(params, include_missing: false) - @georgimitev.
    • ๐Ÿ’Ž #819: Allowed both desc and description in the params DSL - @mzikherman.
    • ๐Ÿ’Ž #821: Fixed passing string value when hash is expected in params - @rebelact.
    • ๐Ÿ’Ž #824: Validate array params against list of acceptable values - @dnd.
    • ๐Ÿ”จ #813: Routing methods dsl refactored to get rid of explicit paths parameter - @AlexYankee.
    • ๐Ÿ’Ž #826: Find coerce_type for Array when not specified - @manovotn.
    • ๐Ÿ’Ž #645: Invoking body false will return 204 No Content - @dblock.
    • 0๏ธโƒฃ #801: Only evaluate permitted parameter values and default lazily on each request when declared as a proc - @dblock.
    • ๐Ÿ’Ž #679: Fixed OPTIONS method returning 404 when combined with prefix - @dblock.
    • ๐Ÿ’Ž #679: Fixed unsupported methods returning 404 instead of 405 when combined with prefix - @dblock.
  • v0.9.0 Changes

    ๐Ÿ”‹ Features

    ๐Ÿ›  Fixes

    • #687: Fix: mutually_exclusive and exactly_one_of validation error messages now label parameters as strings, consistently with requires and optional - @dblock.
  • v0.8.0 Changes

    ๐Ÿ”‹ Features

    • ๐Ÿ’Ž #639: Added support for blocks with reusable params - @mibon.
    • #637: Added support for exactly_one_of parameter validation - @Morred.
    • ๐Ÿ’Ž #626: Added support for mutually_exclusive parameters - @oliverbarnes.
    • โœ… #617: Running tests on Ruby 2.1.1, Rubinius 2.1 and 2.2, Ruby and JRuby HEAD - @dblock.
    • ๐Ÿ’Ž #397: Adds Grape::Endpoint.before_each to allow easy helper stubbing - @mbleigh.
    • ๐Ÿ“š #673: Avoid requiring non-existent fields when using Grape::Entity documentation - @qqshfox.

    ๐Ÿ›  Fixes

    • ๐Ÿ’Ž #671: Allow required param with predefined set of values to be nil inside optional group - @dm1try.
    • 0๏ธโƒฃ #651: The rescue_from keyword now properly defaults to rescuing subclasses of exceptions - @xevix.
    • ๐Ÿ’Ž #614: Params with nil value are now refused by RegexpValidator - @dm1try.
    • ๐ŸŽ #494: Fixed performance issue with requests carrying a large payload - @dblock.
    • ๐Ÿ’Ž #619: Convert specs to RSpec 3 syntax with Transpec - @danielspector.
    • ๐Ÿ’Ž #632: Grape::Endpoint#present causes ActiveRecord to make an extra query during entity's detection - @fixme.
  • v0.7.0 Changes

    ๐Ÿ”‹ Features

    • ๐Ÿ’Ž #558: Support lambda-based values for params - @wpschallenger.
    • 0๏ธโƒฃ #510: Support lambda-based default values for params - @myitcv.
    • ๐Ÿ’Ž #511: Added required option for OAuth2 middleware - @bcm.
    • #520: Use default_error_status to specify the default status code returned from error! - @salimane.
    • 0๏ธโƒฃ #525: The default status code returned from error! has been changed from 403 to 500 - @dblock.
    • ๐Ÿ’Ž #526: Allowed specifying headers in error! - @dblock.
    • ๐Ÿ’Ž #527: The before_validation callback is now a distinct one - @myitcv.
    • #530: Added ability to restrict declared(params) to the local endpoint with include_parent_namespaces: false - @myitcv.
    • ๐Ÿ’Ž #531: Helpers are now available to auth middleware, executing in the context of the endpoint - @joelvh.
    • ๐Ÿ’Ž #540: Ruby 2.1.0 is now supported - @salimane.
    • 0๏ธโƒฃ #544: The rescue_from keyword now handles subclasses of exceptions by default - @xevix.
    • ๐Ÿ’Ž #545: Added type (Array or Hash) support to requires, optional and group - @bwalex.
    • ๐Ÿ’Ž #550: Added possibility to define reusable params - @dm1try.
    • ๐Ÿ“š #560: Use Grape::Entity documentation to define required and optional parameters with requires using: - @reynardmh.
    • ๐Ÿ“š #572: Added documentation support to requires, optional and group parameters - @johnallen3d.

    ๐Ÿ›  Fixes

    • ๐Ÿ’Ž #600: Don't use an Entity constant that is available in the namespace as presenter - @fuksito.
    • ๐Ÿ’Ž #590: Fix issue where endpoint param of type Integer cannot set values array - @xevix.
    • ๐Ÿ’Ž #586: Do not repeat the same validation error messages - @kiela.
    • ๐Ÿ’Ž #508: Allow parameters, such as content encoding, in content_type - @dm1try.
    • ๐Ÿ’Ž #492: Don't allow to have nil value when a param is required and has a list of allowed values - @Antti.
    • ๐Ÿ’Ž #495: Fixed ParamsScope#params for parameters nested inside arrays - @asross.
    • ๐Ÿ’Ž #498: Dry'ed up options and headers logic, allow headers to be passed to OPTIONS requests - @karlfreeman.
    • ๐Ÿ’Ž #500: Skip entity auto-detection when explicitely passed - @yaneq.
    • ๐Ÿ’Ž #503: Calling declared(params) from child namespace fails to include parent namespace defined params - @myitcv.
    • ๐Ÿ’Ž #512: Don't create Grape::Request multiple times - @dblock.
    • 0๏ธโƒฃ #538: Fixed default values for grouped params - @dm1try.
    • ๐Ÿ“œ #549: Fixed handling of invalid version headers to return 406 if a header cannot be parsed - @bwalex.
    • ๐Ÿ’Ž #557: Pass content_types option to Grape::Middleware::Error to fix the content-type header for custom formats - @bernd.
    • ๐Ÿ’Ž #585: Fix after boot thread-safety issue - @etehtsea.
    • ๐Ÿ’Ž #587: Fix oauth2 middleware compatibility with draft-ietf-oauth-v2-31 spec - @etehtsea.
    • ๐Ÿ’Ž #610: Fixed group keyword was not working with type parameter - @klausmeyer.
  • v0.6.1 Changes

    October 19, 2013

    ๐Ÿ”‹ Features

    ๐Ÿ›  Fixes

    • #477: Fixed default_error_formatter which takes a format symbol - @vad4msiu.

    Development

    • ๐Ÿ’Ž Implemented Rubocop, a Ruby code static code analyzer - @dblock.
  • v0.6.0 Changes

    ๐Ÿ”‹ Features

    • โœ… Grape is no longer tested against Ruby 1.8.7 - @dblock.
    • ๐Ÿ— #442: Enable incrementally building on top of a previous API version - @dblock.
    • ๐Ÿ’Ž #442: API version can now take an array of multiple versions - @dblock.
    • ๐Ÿ’Ž #444: Added :en as fallback locale for I18n - @aew.
    • ๐Ÿ’… #448: Adding POST style parameters for DELETE requests - @dquimper.
    • ๐Ÿ’Ž #450: Added option to pass an exception handler lambda as an argument to rescue_from - @robertopedroso.
    • ๐Ÿ’Ž #443: Let requires and optional take blocks that initialize new scopes - @asross.
    • #452: Added with as a hash option to specify handlers for rescue_from and error_formatter - @robertopedroso.
    • ๐Ÿ’Ž #433, #462: Validation errors are now collected and Grape::Exceptions::ValidationErrors is raised - @stevschmid.

    ๐Ÿ›  Fixes

    • ๐Ÿšš #428: Removes memoization from Grape::Request params to prevent middleware from freezing parameter values before Formatter can get them - @mbleigh.
  • v0.5.0 Changes

    ๐Ÿ”‹ Features

    • ๐Ÿ“œ #344: Added parser :type, nil which disables input parsing for a given content-type - @dblock.
    • ๐Ÿšš #381: Added cascade false option at API level to remove the X-Cascade: true header from the API response - @dblock.
    • ๐Ÿ’Ž #392: Extracted headers and params from Endpoint to Grape::Request - @niedhui.
    • ๐Ÿ’Ž #376: Added route_param, syntax sugar for quick declaration of route parameters - @mbleigh.
    • 0๏ธโƒฃ #390: Added default value for an optional parameter - @oivoodoo.
    • ๐Ÿ’Ž #403: Added support for versioning using the Accept-Version header - @politician.
    • 0๏ธโƒฃ #407: Specifying default_format will also set the default POST/PUT data parser to the given format - @dblock.
    • ๐Ÿ’Ž #241: Present with multiple entities using an optional Symbol - @niedhui.

    ๐Ÿ›  Fixes

    • ๐Ÿ’Ž #378: Fix: stop rescuing all exceptions during formatting - @kbarrette.
    • #380: Fix: Formatter#read_body_input when transfer encoding is chunked - @paulnicholon.
    • ๐Ÿ’Ž #347: Fix: handling non-hash body params - @paulnicholon.
    • ๐Ÿ’Ž #394: Fix: path version no longer overwrites a version parameter - @tmornini.
    • ๐Ÿ’Ž #412: Fix: specifying content_type will also override the selection of the data formatter - @dblock.
    • ๐Ÿ’Ž #383: Fix: Mounted APIs aren't inheriting settings (including before and after filters) - @seanmoon.
    • ๐Ÿ’Ž #408: Fix: Goliath passes request header keys as symbols not strings - @bobek.
    • ๐Ÿ’Ž #417: Fix: Rails 4 does not rewind input, causes POSTed data to be empty - @dblock.
    • ๐Ÿ’Ž #423: Fix: Grape::Endpoint#declared now correctly handles nested params (ie. declared with group) - @jbarreneche.
    • ๐Ÿ’Ž #427: Fix: declared(params) breaks when params contains array - @timhabermaas.
  • v0.4.1 Changes

    • ๐Ÿ’Ž #375: Fix: throwing an :error inside a middleware doesn't respect the format settings - @dblock.
  • v0.4.0 Changes

    • ๐Ÿ’Ž #356: Fix: presenting collections other than Array (eg. ActiveRecord::Relation) - @zimbatm.
    • ๐Ÿ’Ž #352: Fix: using Rack::JSONP with Grape::Entity responses - @deckchair.
    • ๐Ÿ’Ž #347: Grape will accept any valid JSON as PUT or POST, including strings, symbols and arrays - @qqshfox, @dblock.
    • ๐Ÿ’Ž #347: JSON format APIs always return valid JSON, eg. strings are now returned as "string" and no longer string - @dblock.
    • Raw body input from POST and PUT requests (env['rack.input'].read) is now available in api.request.input - @dblock.
    • ๐Ÿ“œ Parsed body input from POST and PUT requests is now available in api.request.body - @dblock.
    • ๐Ÿ’Ž #343: Fix: return Content-Type: text/plain with error 405 - @gustavosaume, @wyattisimo.
    • ๐Ÿ’Ž #357: Grape now requires Rack 1.3.0 or newer - @jhecking.
    • ๐Ÿ’Ž #320: API namespace now supports requirements - @niedhui.
    • โช #353: Revert to standard Ruby logger formatter, require active_support/all if you want old behavior - @rhunter, @dblock.
    • ๐Ÿ›  Fix: undefined method 'call' for nil:NilClass for an API method implementation without a block, now returns an empty string - @dblock.
  • v0.3.2 Changes

    • ๐Ÿ’Ž #355: Relax dependency constraint on Hashie - @reset.