Skip to content

Latest commit

 

History

History
338 lines (243 loc) · 14.8 KB

CHANGES.md

File metadata and controls

338 lines (243 loc) · 14.8 KB

Flask-RESTful Changelog

Here you can see the full list of changes between each Flask-RESTful release.

Version 0.3.10

  • Compatibility with Flask 2.3 (#962)

Version 0.3.9

  • Compatibility with Flask 2.0

Version 0.3.8

Released February 06, 2020

  • Add Python 3.8 support (#835)
  • Fix wrongly parsed Decimal fields (#855)
  • Fix overridden response when calling abort with Response (#817)
  • Various small fixes and updates to documentation

Version 0.3.7

Released December 18, 2018

  • Fix error handling in python3 (#696)
  • Fix arguments with type=list (#705)
  • Return code for parse_args() is now configurable (#722)
  • Removed flask_restful.paging module.
  • Removed misleading help_on_404 functionality (#722)
  • JSON keys are no longer sorted by default in debug mode in python3 (#680)
  • Various small fixes and updates to documentation

Version 0.3.6

Released May 31, 2017

  • Argument.help now supports unicode strings (#564)
  • Flags can now be passed to inputs.regex (#621)
  • Fix behavior of action='append' in conjunction with location='json' (#645)
  • method_decorators can be a dict to apply decorator behavior for only specific HTTP methods (#532)
  • JSON keys are no longer sorted by default in debug mode in python3 (#680)
  • Various small fixes and updates to documentation

Version 0.3.5

Released December 9, 2015

  • Add nullable option to request parser to allow/disallow null values for arguments (#538)
  • Use Flask's exception log method in handle_error(e) method instead of directly logging the exception notice. (#496)
  • Argument.help now allows more flexible message formatting using the {error_msg} string interpolation token. (#518)
  • Prevent representation from being chosen at random when Accept: */* (#524)
  • Headers from HTTPExceptions are now returned in the response instead of being discarded (#523)
  • Marshalling now checks for a __marshallable__ method first before defaulting back to __getitem__ ()
  • Flask 1.0 compatability fixes (#506)

Version 0.3.4

Released July 20, 2015

  • Fixed issue where abort() and raise Exception were not equivalent (#205)
  • Fixed RequestParser settings not being copied properly (#483)
  • Add ability to configure json serializer settings from application config (#458)
  • Project metadata, tests, and examples are now included in source distributions (#475)
  • Various documentation improvements

Version 0.3.3

Released May 22, 2015

  • Disable challenge on 401 by default (THIS IS A BREAKING CHANGE, albeit a very small one with behavior that probably no one depended upon. You can easily change this back to the old way).
  • Doc fixes (#404, #406, #436, misc. other commits)
  • Fix truncation of microseconds in iso8601 datetime output (#368)
  • null arguments from JSON no longer cast to string (#390)
  • Made list fields work with classes (#409)
  • Fix url_for() when used with Blueprints (#410)
  • Add CORS "Access-Control-Expose-Headers" support (#412)
  • Fix class references in RequestParser (#414)
  • Allow any callables to be used as lazy attributes (#417)
  • Fix references to flask.ext.* (#420)
  • Trim support with fixes (#428)
  • Added ability to pass-in parameters into Resource constructors (#444)
  • Fix custom type docs on "Intermediate usage" and docstring (#434)
  • Fixed problem with RequestParser.copy (#435)
  • Feature/error bundling (#431)
  • Explicitly check the class type for propagate_exceptions (#445)
  • Remove min. year limit 1900 in inputs.date (#446)

Version 0.3.2

Released February 25, 2015

  • Doc fixes (#344, #378, #402)
  • Microseconds no longer truncated in ISO8601 format datetime inputs (#381)
  • Datetime inputs now preserve timezone instead of forcing conversion to UTC (#381)
  • Fixes content negotiation to respect q-values (#245)
  • Fix fields.URL when used with Blueprints (#379)
  • Fix BadRequest raised with empty body and application/json content type (#366)
  • Improved argument validation error messages (#386)
  • Allow custom validation for FileStorage type arguments (#388)
  • Allow lambdas to be specified for field attributes (#309)
  • Added regex input validator (#374)

Version 0.3.1

Released December 13, 2014

  • Adds strict option to parse_args() (#358)
  • Adds an option to envelop marshaled objects (#349)
  • Fixes initialization of Api.blueprint attribute (#263)
  • Makes Api.error_router fall back to Flask handlers (#296/#356)
  • Makes docs more viewable on mobile devices (#347)
  • Wheel distribution is now universal (#363)

Version 0.3.0

Released November 22, 2014

  • Adds @api.resource decorator (#311)
  • Adds custom error handling (#225)
  • Adds RequestParser inheritance (#249)
  • Adds 1/0 as valid values for inputs.boolean (#341)
  • Improved datetime serialization and deserialization (#345)
  • init_app now follows Flask extension guidelines (#130)
  • types module renamed to inputs (#243)
  • Fixes inputs.boolean inability to parse values from JSON (#314)
  • Fixes RequestParser inability to use arguments from multiple sources at once (#261)
  • Fixes missing Allow header when HTTP 405 is returned (#294)
  • Doc fixes and updates.

Version 0.2.12

Released March 4, 2014

  • Fixed a bug in error handling code.
  • Don't install tests by default.
  • Doc fixes and updates.

Version 0.2.11

Released January 17, 2014

  • Fixes the List field when marshalling a list of dictionaries. (#165)
  • Adds Boolean and Price types to fields.__all__ (#180)
  • Adds support for serializing a set object with a List field. (#175)
  • Fixes support for using callables as reqparser type arguments (#167)
  • Add configuration variable to control smart-errors behavior on 404 responses. (#181)
  • Fixes bug preventing use of Flask redirects. (#162)
  • Documentation fixes (#173)
  • Fixes bug swallowing tracebacks in handle_error. (#166)

Version 0.2.10

Released December 17, 2013

  • Removes twilio-specific type checks present in version 0.2.9.
  • Correctly bump version number in setup.py.

Version 0.2.9

Released December 17, 2013.

  • Adds new positive and iso8601interval types.
  • Typo fix.
  • Updating the test infrastructure to use common Twilio conventions and testing styles.

Version 0.2.8

Released November 22, 2013

  • Add 'absolute' and 'scheme' to fields.Url

Version 0.2.6

Released November 18, 2013

  • blueprint support
  • CORS support
  • allow custom unauthorized response
  • when failing to marshal custom indexable objects, its attributes are checked
  • better error messages

Version 0.2.5

Released Aug 6, 2013

  • add callable location
  • allow field type Fixed to take an attribute argument
  • added url_for() wrapper as Api.url_for(resource)

Version 0.2.4

Released Aug 5, 2013

  • Python 3.3 support.
  • You can now marshal nested fields.
  • Small fixes in docs.

Version 0.2.2

Released on May 5, 2013

  • JSON will be pretty-printed if you're running your app in debug mode.
  • pycrypto is now an optional dependency.

Version 0.2.1

Released on April 9, 2013

  • Use the default Flask-RESTful error handler, instead of the default Flask error handler, to handle 405 Not Allowed errors on requests to Api endpoints.

Version 0.2.0

Released on April 9, 2013

  • Flask-RESTful will no longer clobber your app's error handler; it will only handle errors that occur while handling Flask-RESTful routes. The breaking change is that 404 errors will default to using the Flask text/html error handler. Override this behavior by passing catch_all_404s=True to the Api constructor. (via @yaniv-aknin)
  • Arguments can now take location as a tuple, in case you want to specify that an argument could be passed in multiple places. (via @mindflayer)
  • Fixes a problem where passing an empty post body to a resource that expected a json argument would throw a 500.
  • Creation of the Api and initialization of the Flask app are no longer bundled together. (via @andrew-d)
  • marshal_with now works with responses that are tuples. (via @noise)
  • types.url will no longer throw a ascii decoding ValueError if you pass it Unicode characters

Version 0.1.7

Released on March 24, 2013

The first released version of 0.1.6 contained a problem with the tar.gz uploaded to PyPI. 0.1.7 contains the same changes as 0.1.6 but ensures the version you download from PyPI does not contain problems (if for example, you cached the old, broken version of 0.1.6).

Version 0.1.6

Released on February 27th, 2013

Version 0.1.5

Released on Jan 9th, 2013

  • Fix error handler for exceptions that do not have a message

Version 0.1.4

Released on Jan 8th, 2013

  • Crypto support for paging
  • Added paging helper for resources
  • Stricter arg parse
  • Flask view arguments are no longer implicitly parsed by RequestParser
  • Fixed incorrectly formatted err message

Version 0.1.3

Released on Jan 8th, 2013

  • Smart 404 error in case of slight mistakes in the URL
  • Scheme error message
  • Attribute/key accessible namespace for reqparse
  • Add Namespace with dual attribute/item access
  • Added the original requested URI in the error
  • Better message if user passes URL w/ no scheme
  • Allow chaining of add_argument calls
  • Fixed bug 21 : Endpoint name clash on different views
  • Fixed string formatting for python 2.6
  • Fixed dictionary comprehensions for python 2.6
  • Fixed r'' for python 2.6

Version 0.1.2

Released on Nov 19th, 2012

  • Fixed a bug in fields.Fixed when formatting a value of 0

Version 0.1.1

Released on Nov 19th, 2012

  • Added the Fixed field

Version 0.1

First public release