All Versions
64
Latest Version
Avg Release Cycle
64 days
Latest Release
820 days ago
Changelog History
Page 5
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
oroptional
,Hash
orArray
- @ShPakvel. - ๐ #743: Added
allow_blank
parameter validator to validate non-empty strings - @elado. - ๐ #745: Removed
atom+xml
,rss+xml
, andjsonapi
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 adefault
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., withformat :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
anddescription
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
forArray
when not specified - @manovotn. - ๐ #645: Invoking
body false
will return204 No Content
- @dblock. - 0๏ธโฃ #801: Only evaluate permitted parameter
values
anddefault
lazily on each request when declared as a proc - @dblock. - ๐ #679: Fixed
OPTIONS
method returning 404 when combined withprefix
- @dblock. - ๐ #679: Fixed unsupported methods returning 404 instead of 405 when combined with
prefix
- @dblock.
- #803, #820: Added
-
v0.9.0 Changes
๐ Features
- #691: Added
at_least_one_of
parameter validator - @dblock. - ๐ #698:
error!
setsstatus
forEndpoint
too - @dspaeth-faber. - ๐ #703: Added support for Auth-Middleware extension - @dspaeth-faber.
- ๐ #703: Removed
Grape::Middleware::Auth::Basic
- @dspaeth-faber. - ๐ #703: Removed
Grape::Middleware::Auth::Digest
- @dspaeth-faber. - ๐ #703: Removed
Grape::Middleware::Auth::OAuth2
- @dspaeth-faber. - ๐ #719: Allow passing options hash to a custom validator - @elado.
- ๐ #716: Calling
content-type
will now return the current content-type - @dblock. - ๐ #705: Errors can now be presented with a
Grape::Entity
class - @dspaeth-faber.
๐ Fixes
- #691: Added
-
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 byRegexpValidator
- @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 fromerror!
- @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 withinclude_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
orHash
) support torequires
,optional
andgroup
- @bwalex. - ๐ #550: Added possibility to define reusable params - @dm1try.
- ๐ #560: Use
Grape::Entity
documentation to define required and optional parameters withrequires using:
- @reynardmh. - ๐ #572: Added
documentation
support torequires
,optional
andgroup
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 toGrape::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
- ๐ #475: Added support for the
:jsonapi
,application/vnd.api+json
media type registered at http://jsonapi.org - @bcm. - ๐ #471: Added parameter validator for a list of allowed values - @vickychijwani.
- โฌ๏ธ #488: Upgraded to Virtus 1.0 - @dblock.
๐ Fixes
Development
- ๐ Implemented Rubocop, a Ruby code static code analyzer - @dblock.
- ๐ #475: Added support for the
-
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
andoptional
take blocks that initialize new scopes - @asross. - #452: Added
with
as a hash option to specify handlers forrescue_from
anderror_formatter
- @robertopedroso. - ๐ #433, #462: Validation errors are now collected and
Grape::Exceptions::ValidationErrors
is raised - @stevschmid.
๐ Fixes
-
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 theX-Cascade: true
header from the API response - @dblock. - ๐ #392: Extracted headers and params from
Endpoint
toGrape::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
andafter
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 withgroup
) - @jbarreneche. - ๐ #427: Fix:
declared(params)
breaks whenparams
contains array - @timhabermaas.
- ๐ #344: Added
-
v0.4.0 Changes
- ๐ #356: Fix: presenting collections other than
Array
(eg.ActiveRecord::Relation
) - @zimbatm. - ๐ #352: Fix: using
Rack::JSONP
withGrape::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 longerstring
- @dblock. - Raw body input from POST and PUT requests (
env['rack.input'].read
) is now available inapi.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 supportsrequirements
- @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.
- ๐ #356: Fix: presenting collections other than