hug v2.3.0 Release Notes
Release Date: 2017-05-04 // almost 7 years ago-
- โฌ๏ธ Falcon requirement upgraded to 1.2.0
- ๐ Enables filtering documentation according to a
base_url
- ๐ Fixed a vulnerability in the static file router that allows files in parent directory to be accessed
- ๐ Fixed issue #392: Enable posting self in JSON data structure
- ๐ Fixed issue #418: Ensure version passed is a number
- ๐ Fixed issue #399: Multiple ints not working correctly for CLI interface
- ๐ Fixed issue #461: Enable async startup methods running in parallel
- ๐ Fixed issue #412: None type return for file output format
- ๐ Fixed issue #464: Class based routing now inherit templated parameters
- ๐ Fixed issue #346: Enable using async routes within threaded server
- ๐ Implemented issue #437: Added support for anonymous APIs
- โ Added support for exporting timedeltas to JSON as seconds
- โ Added support for endpoint-specific input formatters: ```python def my_input_formatter(data): return ('Results', hug.input_format.json(data))
@hug.get(inputs={'application/json': my_input_formatter}) def foo(): pass
- โ Adds support for passing in a custom scheme in hug.test - โ Adds str() and repr() support to hug_timer directive - โ Added support for moduleless APIs - ๐ Improved argparser usage message - Implemented feature #427: Allow custom argument deserialization together with standard type annotation - ๐ Improvements to exception handling. - โ Added support for request / response in a single generator based middleware function - ๐ Automatic reload support for development runner - โ Added support for passing `params` dictionary and `query_string` arguments into hug.test.http command for more direct modification of test inputs - โ Added support for manual specifying the scheme used in hug.test calls - ๐ Improved output formats, enabling nested request / response dependent formatters - ๐ฅ Breaking Changes - Sub output formatters functions now need to accept response & request or **kwargs - Fixed issue #432: Improved ease of sub classing simple types - causes type extensions of types that dont take to __init__ arguments, to automatically return an instanciated type, beaking existing usage that had to instanciate after the fact - Fixed issue #405: cli and http @hug.startup() differs, not executed for cli, this also means that startup handlers are given an instance of the API and not of the interface.