Changelog¶
0.47.0 (2026-03-22)¶
Features:
Add pagination metadata field descriptions to OpenAPI schema (#846). Thanks @galuszkak for the PR.
Other changes:
Drop support for Python 3.9 (#811).
0.46.2 (2025-09-10)¶
Features:
0.46.1 (2025-04-26)¶
Features:
Support marshmallow 4 (#758).
0.46.0 (2025-04-18)¶
Features:
Rely on marshmallow (>= 3.24) for schema ordering (#742).
Other changes:
Backwards-incompatible: Drop marshmallow < 3.24.1 (#742).
0.45.0 (2024-10-25)¶
Features:
Backwards-incompatible: Remove
flask_smorest.__version__(#616).
Other changes:
0.44.0 (2024-02-26)¶
Features:
Always use
flask.jsonto serialize data (API output, ETag, API docs). Ensures a user-defined custom JSON serializer is used everywhere. (#561)
0.43.0 (2024-02-12)¶
Bug fixes:
Other changes:
Officially support Python 3.12 (#591). Thanks @goddessana for the PR.
Require Flask>=3.0.2 and Werkzeug>=3.0.01 (#604).
0.42.3 (2023-12-05)¶
Bug fixes:
Fix OpenAPI docs to include response headers when pagination is used (#578). Thanks @drcpu-github for the report and the PR.
0.42.2 (2023-11-09)¶
Features:
Support Flask 3.x and werkzeug 3.x (#576).
0.42.1 (2023-08-17)¶
Bug fixes:
Fix order of path parameters extracted from Flask route (#541). Thanks @ddorian for the report and the PR.
Other changes:
Fix setup.py to require Flask>=2.0.1, needed since 0.42.0.
0.42.0 (2023-05-15)¶
Features:
Backwards-incompatible: Support multiple APIs in a single application via
Apiparamconfig_prefix. TheApiobject is now accessible atapp.extensions["flask-smorest"]["apis"][config_prefix]["ext_obj"]rather thanapp.extensions["flask-smorest"]["ext_obj"]. (#485) Thanks @petraszd for the contribution.
Other changes:
0.41.0 (2023-03-30)¶
Features:
Allow multiple responses with same status code and different content types (#481).
Set
stacklevelin calls to warnings/warn (#462).
Other changes:
Officially support Python 3.11 (#416).
0.40.0 (2022-10-16)¶
Features:
Support apispec 6.0.0 (#408).
Document webargs’s
DelimitedList(#409).Backwards-incompatible: Rework ETag feature. Drop the “ETag computed with API response data using another schema” case and allow decorating a whole
MethodViewat once rather than decorating each method. (#394)
Other changes:
0.39.0 (2022-08-16)¶
Features:
Use
grather than_app_ctx_stack.top. The latter is deprecated in Flask 2.2 (#392).Use standard
jsonrather thanflask.jsonto generate ETag data. Our use offlask.jsonis broken in Flask 2.2. Also always sort keys when serializing data for ETag computation (this reverts #305). ETag is now insensitive to payload dict order. (#393)
Bug fixes:
Import MethodView from flask rather than MethodViewType` which is removed in Flask 2.2 (#387). Thanks @0x78f1935 for the contribution.
0.38.1 (2022-06-20)¶
Features:
Add
formatargument toflask openapi printandflask openapi writecommands to provide a YAML output (#367). Thanks @derlikh-smart for the contribution.
0.38.0 (2022-05-23)¶
Features:
Support nested blueprints documentation (#341). Thanks @Cnoor0171 for the PR.
0.37.0 (2022-02-16)¶
Features:
Add
content_typeargument toresponseandalt_response, to document a response content type that differs from the default one. It can be used to document a file response. (#330).
0.36.0 (2022-01-14)¶
Features:
Add
parameterargument toregister_blueprintto document path parameters in url_prefix (#313).Don’t force
sort_keys=Truein_generate_etagto respectJSON_SORT_KEYSapp setting (#305).
Bug fixes:
Fix automatic documentation of responses with a status code implying an empty body response to reflect that the body is empty (#318).
Other changes:
0.35.0 (2021-10-07)¶
Features:
Backwards-incompatible: Modify
alt_responsesignature. The second positional is now a response reference as string. If none is provided, then the response dic is built using keyword arguments. The schema is optional and can be a reference as string. (#283)Allow
alt_responseto define a success response, so that other processings applying to this response are correctly documented (#284).
Other changes:
0.34.1 (2021-09-27)¶
Bug fixes:
Fix method order in spec for view functions (#281).
0.34.0 (2021-08-24)¶
Features:
Add
tagsparameter toBlueprint.routeandBlueprint.add_url_rule(#275).
Bug fixes:
When registering a
MethodView, if methods are specified with themethodsargument, only document those methods (#274).
0.33.0 (2021-08-23)¶
Features:
Backwards-incompatible: Lazy-register components (default responses, ETag and pagination headers) so that they only appear in the spec if they are used. Remove
ResponseReferencesPlugin. RenamePAGINATION_HEADER_FIELD_NAMEtoPAGINATION_HEADER_NAME. (#268)Override
Blueprint.add_url_ruleto allow the use ofadd_url_rule, not only theroutedecorated form (#272).
Other changes:
Backwards-incompatible: Drop apispec < 5.1.0 (#265)
0.32.0 (2021-07-29)¶
Features:
Support
Blueprintregistration with custom names (a feature introduced in Flask 2.0.1) (#266).Replace
missingwithload_defaultinPaginationParametersSchema. The latter is deprecated in marshmallow 3.13.0. (#265)
Other changes:
0.31.3 (2021-07-26)¶
Bug fixes:
Quote RapiDoc parameters (#262). Thanks @TimDiekmann for the PR.
0.31.2 (2021-06-21)¶
Bug fixes:
Document ETag headers in OpenAPI spec (#254). Thanks @TimDiekmann for the PR.
Use
click.echofor spec output commands (#255). Thanks @greyli for the PR.
0.31.1 (2021-06-01)¶
Features:
Support RapiDoc interface to expose the API spec (#248).
0.31.0 (2021-05-12)¶
Features:
Support Flask 2 and Werkzeug 2 (#243).
Other changes:
0.30.0 (2021-04-13)¶
Other changes:
Backwards-incompatible: Support webargs 8. Drop support for webargs 7. The main change is about management of unknown fields in requests.
unknowndefaults toNonefor body locations. (#239)
0.29.0 (2021-02-13)¶
Features:
0.28.0 (2021-02-04)¶
Features:
Pass
Apiinstance to _prepare_*_doc callbacks (#222).Allow the user to opt-out of the feature adding a default error to each response and allow customization of the default error name (#222).
Backwards-incompatible: Only add referenced default responses to the spec, using
ResponseReferencesPlugin. (#208) Thanks @lindycoder for the pull-request.
Bug fixes:
Document error response even if
@responsedecorator is not used (#222).
0.27.0 (2021-01-13)¶
Bug fixes:
Don’t pass field metadata as kwargs (deprecated in marshmallow 3.10.0) (#205).
Other changes:
Backwards-incompatible: Require marshmallow >= 3.10.0 (#205).
0.26.0 (2020-12-17)¶
Features:
Backwards-incompatible: Use warnings.warn rather than log warnings in application log (#194).
Other changes:
Backwards-incompatible: Support webargs 7. Drop support for webargs 6. The main change is about management of unknown fields in requests. Users should refer to webargs documentation, sections Upgrading to 7.0 and Setting unknown. (#203)
0.25.1 (2020-12-17)¶
Features:
Officially support Python 3.9 (#195).
Other changes:
Bound dependencies versions in setup.py (#202).
0.25.0 (2020-10-02)¶
Features:
Backwards-incompatible: Rework Werkzeug converters documentation to make it more extensible and document converter parameters (#182).
Backwards-incompatible: Don’t document
intformat as"int32"andfloatformat as"float", as those are platform-dependent (#188).Document Werkzeug’s
AnyConverter(#191).
Other changes:
Backwards-incompatible: Drop support for marshmallow 2.
Backwards-incompatible: Drop support for apispec 3.
0.24.1 (2020-08-10)¶
Bug fixes:
Fix bug introduced in 0.24.0 preventing setting a status code or header when returning a
Responseobject. (#178). Thanks @marksantcroos for reporting.
0.24.0 (2020-07-17)¶
Features:
Backwards-incompatible: Add
OPENAPI_SWAGGER_UI_CONFIGto allow passing a dict of Swagger UI configuration parameters. RemoveOPENAPI_SWAGGER_UI_SUPPORTED_SUBMIT_METHODS: the same can be achieved by passingsupportedSubmitMethodsinOPENAPI_SWAGGER_UI_CONFIG. RemovelayoutanddeepLinkingdefault overrides. Those can be passed inOPENAPI_SWAGGER_UI_CONFIGas well. (#171). Thanks @joshua-harrison-2011 for the pull-request.
0.23.0 (2020-07-08)¶
Features:
Backwards-incompatible: Make API title and version mandatory parameters. Before this change, the version would default to
"1"and the title would beapp.name. Those two parameters can be passed at init or as application configuration parametersTITLEandAPI_VERSION. Also renameOpenAPIVersionNotSpecifiedtoMissingAPIParameterError. (#169). Thanks @playpauseandstop for the help on this.Backwards-incompatible: Rework pagination documentation to allow more customization. This change will break code overriding
PAGINATION_HEADER_DOC,_make_pagination_headeror_prepare_pagination_doc(#153).
0.22.0 (2020-06-19)¶
Features:
Add
flask openapi printandflask openapi writecommands (#154).
Other changes:
Backwards-incompatible: Drop support for Python 3.5.
0.21.2 (2020-06-09)¶
Bug fixes:
Use HTTPStatus
phrase, notname, in response description (#158).
0.21.1 (2020-05-29)¶
Bug fixes:
Deep-copy the documentation information for each method of a resource. This fixes a crash when a view function serves several methods, due to apispec mutating doc info dict. (#147) Thanks @DrChrisLevy for reporting.
0.21.0 (2020-03-24)¶
Features:
Support webargs 6.0.0 (#132).
Other changes:
Backwards-incompatible: Drop support for webargs < 6.0.0. Marshmallow 3 code with stacked
@argumentsusing the same location must ensure the arguments schema haveMeta.unknown=EXCLUDE. This also applies to@argumentswithquerylocation stacked with@paginate. Also, validation error messages are namespaced under the location. See the upgrading guide in webargs documentation for more details and a comprehensive list of changes. (#132)
0.20.0 (2020-03-20)¶
Bug fixes:
Backwards-incompatible: Use
HTTPStatusnamerather thanphraseto name error components. This fixes an issue due tophrasecontaining spaces not being URL-encoded. Also changeDefaultErrorintoDEFAULT_ERRORfor consistency. This change will break code referencing one of those errors. (#136). Thanks @michelle-avery for reporting.
Other changes:
Backwards-incompatible: Remove
OPENAPI_REDOC_VERSIONandOPENAPI_SWAGGER_UI_VERSION. Remove hardcoded CDNs. Users should modify their code to useOPENAPI_REDOC_URLandOPENAPI_SWAGGER_UI_URLinstead. The docs provide examples of CDN URLs. (#134).
0.19.2 (2020-02-20)¶
Bug fixes:
Fix
utils.deepupdatefor the case where the original value is a string or integer and the updated value is adict(#129). Thanks @maj-skymedia for reporting.
0.19.1 (2020-02-20)¶
Bug fixes:
Fix a regression introduced in 0.19.0. With marshmallow 2, the response would contain two
'X-Pagination'headers: the correct header and an empty one. (#128)
0.19.0 (2020-02-19)¶
Features:
Backwards-incompatible: Refactor automatic documentation generation. At import time, each decorator stores information under its own namespace in the view function’s
_apidocattribute. Then at app init time, the information is used to generate the docs. This allows access to init time parameters, such as OpenAPI version or application parameters like feature toggle flags, when generating the doc. Custom decorators storing doc in_apidocmust adapt by storing doc under their own name (e.g.:_apidoc['custom']), creating a doc preparation callback (e.g.:_prepare_custom_docand appending this callback toBlueprint._prepare_doc_cbks. (#123).Define all possible HTTP responses as response components and automatically document “error” responses:
"Default Error"when@responseis used, response returned by@argumentson client input error, and responses for 304, 412 and 428 when@etagis used. Also document pagination header. (#125).Document error response in
@paginatedecorator (#126).
Bug fixes:
Backwards-incompatible: Ensure pagination arguments are in query string.
'page'and'page_size'arguments passed in any other location are ignored by@paginatedecorator. (#127)
0.18.5 (2020-01-30)¶
Other changes:
Restrict webargs to <6.0.0 in setup.py due to breaking changes introduced in webargs 6 (#117).
0.18.4 (2020-01-07)¶
Features:
check_etaglogs a warning if method is not PUT, PATCH or DELETE (#116).
Bug fixes:
Only return 304 on GET and HEAD (#115).
0.18.3 (2019-12-20)¶
Features:
0.18.2 (2019-10-21)¶
Features:
Officially support Python 3.8 (#108).
0.18.1 (2019-10-07)¶
Bug fixes:
Fix passing
spec_kwargsinApi.__init__andappinApi.init_app(#103).
0.18.0 (2019-09-22)¶
Rename to flask-smorest (#42).
0.17.0 (2019-09-19)¶
Features:
Backwards-incompatible: Only return status code and short name in error handler (#84).
Backwards-incompatible: Remove logging from error handler. Logging can be achieved in application code by overriding
handle_http_exception. Remove_prepare_error_response_content. Response payload is computed inhandle_http_exception. (#85)Backwards-incompatible: Remove
InvalidLocationError. The mapping from webargs locations to OAS locations is done in apispec and no exception is raised if an invalid location is passed. (#81)Add
content_typeargument toBlueprint.argumentsand provide reasonable default content type forformandfiles(#83).Add
descriptionparameter toBlueprint.argumentsto pass description forrequestBody(#93).Allow customization of docstring delimiter string (#49).
Support file uploads as multipart/form-data (#97).
Bug fixes:
Fix documentation of
formandfilesarguments: userequestBodyin OAS3, document content type (#83).
Other changes:
Backwards-incompatible: Don’t republish
NestedQueryArgsParseranymore. This belongs to user code and can be copied from webargs doc (#94).Backwards-incompatible: Bump minimum apispec version to 3.0.0.
0.16.1 (2019-07-15)¶
Bug fixes:
Fix detection of unhandled exceptions in error handler for Flask=>1.1.0 (#82).
Other changes:
Bump minimum Flask version to 1.1.0. From this version on, uncaught exceptions are passed to the error handler as
InternalServerErrorwith the exception attached asoriginal_exceptionattribute. (#82)
0.16.0 (2019-06-20)¶
Features:
Add
parametersargument toBlueprint.routeto pass documentation for parameters that are shared by all operations of a path (#78).
Other changes:
Backwards-incompatible: Bump minimum apispec version to 2.0.0.
Backwards-incompatible: Path parameters documentation passed in
Blueprint.docis no longer merged with automatic documentation. It should be passed inBlueprint.routeinstead.Backwards-incompatible: Remove
Api.schemaandApi.definition. Those methods are useless sinceSchemacomponents are automatically registered by apispec. Manual component registration is still possible using the internal apispecComponentsobject. (#75)
0.15.1 (2019-06-18)¶
Bug fixes:
marshmallow 3.0.0rc7 compatibility (#77).
0.15.0 (2019-05-09)¶
Features:
Add parameters to pass examples and headers in
Blueprint.responsedecorator (#63).Add parameters to pass examples for
requestBodyin OpenAPI v3 inBlueprint.argumentsdecorator (#68).Support status codes expressed as
HTTPStatusinBlueprint.responsedecorator (#60). Thanks @Regzand for reporting.
Other changes:
Bump minimum apispec version to 1.3.2.
Bump minimum werkzeug version to 0.15. With 0.14.x versions, 412 responses are returned with no content.
Backwards-incompatible: When using
Blueprint.docdecorator to provide additional documentation to the response described in theBlueprint.responsedecorator, the user must use the same format (str,intorHTTPStatus) to express the status code in both decorators. This is a side-effect of (#60). Now that headers and examples can be described inBlueprint.response, this should not be a common use case.
0.14.1 (2019-04-18)¶
Features:
Officially support Python 3.7 (#45).
Rename
Api.definitiontoApi.schema. KeepApi.definitionas an alias toApi.schemafor backward compatibility (#53).
Bug fixes:
Fix passing route with path parameter default value (#58). Thanks @zedrdave for reporting.
When no descrition is provided to
Blueprint.response, don’t add an empty string as description in the docs.Fix returning a
tuplesubclass from a view function. Only rawtupleinstances are considered as Flask’s (return value, status, headers).tuplesubclasses are treated aslistand can be paginated/dumped. Rawtuplereturn values should be cast to another type (e.g.list) to be distinguished from (return value, status, headers) tuple. (#52) Thanks @asyncee for reporting.
0.14.0 (2019-03-08)¶
Features:
Allow view functions decorated with
responseto return aResponseobject or a tuple with status and/or headers (#40).Allow view functions decorated with
paginateto return a tuple with status and/or headers (#40). The pagination header is now passed in the response tuple. Users relying on undocumentedget_context()['headers']as a workaround to pass headers must update their code to pass headers in the response tuple as well.
Bug fixes:
Fix ETag computation when headers contain a duplicate key.
0.13.1 (2019-02-13)¶
Features:
Register Werkzeug’s
UUIDConverterinApiso thatuuidpath parameters are correctly documented.
0.13.0 (2019-02-12)¶
Features:
Add
flask_pluginandmarshmallow_pluginspec kwargs to allow overriding base plugins.Backwards-incompatible: Rename
pluginsspec kwarg toextra_plugins.Backwards-incompatible: Don’t default to OpenAPI version 2.0. The version must now be specified, either as
OPENAPI_VERSIONapp parameter or asopenapi_versionspec kwarg.Support apispec 1.0.0.
Other changes:
Backwards-incompatible: Drop support for apispec 0.x.
0.12.0 (2018-12-02)¶
Features:
Backwards-incompatible:
Api.register_converterdoesn’t register converter in Flask app anymore. It should be registered manually usingapp.url_map.converters['converter_name'] = Converter.Api.definition,Api.register_fieldandApi.register_convertercan be called before app initialization. The information is buffered and passed to the internalAPISpecobject when it is created, inApi.init_app.
0.11.2 (2018-11-28)¶
Bug fixes:
Fix typo in
ErrorHandlerMixin._prepare_error_response_content.
0.11.1 (2018-11-20)¶
Features:
The
HTTP_METHODSlist that defines the order of the methods in the spec is now a class attribute ofBlueprint. It can be overridden to enforce another order.
Bug fixes:
Import
Mappingfromcollections.abcrather thancollections. The latter is deprecated in Python 3.7 and will be removed in 3.8.Merge manual doc added with
Blueprint.docwith automatic documentation after auto doc is prepared (i.e. adapted to OpenAPI version) (#19). Thanks @fbergroth for reporting.Merge automatic path parameter documentation with existing manual doc rather than append as duplicate parameter (#23). Thanks @congenica-andrew for reporting.
Fix path parameter documentation structure when using OpenAPI v3.
Document http status codes as strings, not integers.
Fix use of Swagger UI config parameter
OPENAPI_SWAGGER_UI_URL.
Other changes:
100% test coverage !
0.11.0 (2018-11-09)¶
Features:
Backwards-incompatible: Rework of the ETag feature. It is now accesible using dedicated
Blueprint.etagdecorator.check_etagandset_etagare methods ofBlueprintandetag.INCLUDE_HEADERSis replaced withBlueprint.ETAG_INCLUDE_HEADERS. It is enabled by default (only on views decorated withBlueprint.etag) and disabled withETAG_DISABLEDapplication configuration parameter.is_etag_enabledis now private. (#21)Backwards-incompatible: The
responsedecorator returns aResponseobject rather than a (Responseobject, status code) tuple. The status code is set in theResponseobject.Support apispec 1.0.0b5.
0.10.0 (2018-10-24)¶
Features:
Backwards-incompatible: Don’t prefix all routes in the spec with
APPLICATION_ROOT. If using OpenAPI v2, setAPPLICATION_ROOTasbasePath. If using OpenAPI v3, the user should specifyserversmanually.Backwards-incompatible: In testing and debug modes,
verify_check_etagnot only logs a warning but also raisesCheckEtagNotCalledErrorifcheck_etagis not called in a resource that needs it.
0.9.2 (2018-10-16)¶
Features:
Api.register_blueprintpasses**optionskeyword parameters toapp.register_blueprintto overrideBlueprintdefaults. Thanks @dryobates for the suggestion.
0.9.1 (2018-10-11)¶
Features:
Support apispec 1.0.0b3.
Bug fixes:
Fix crash when serving documentation at root of application. Thanks @fbergroth for the suggestion.
0.9.0 (2018-10-01)¶
Features:
Backwards-incompatible: When pagination parameters are out of range, the API does not return a 404 error anymore. It returns a 200 code with an empty list and pagination metadata (#10).
Backwards-incompatible: Remove dependency on python-dateutil. This is an optional marshmallow dependency. Whether it is needed to deserialize date, time, or datetime strings depends on the application.
Rework internal features by using mixin classes. This makes the code cleaner and adds customization possibilities (#9).
Backwards-incompatible:
DEFAULT_PAGINATION_PARAMETERSis a class attribute ofBlueprint.Backwards-incompatible: When no
Pageclass is passed topagination, (i.e. when doing pagination in view function), the pagination parameters are passed as aPaginationParametersobject. The item count must be passed by setting it asitem_countattribute of thePaginationParametersobject. Theset_item_countfunction is removed.The pagination header name can be configured by overriding
PAGINATION_HEADER_FIELD_NAMEclass attribute ofBlueprint. If set toNone, no pagination header is added to the response.Backwards-incompatible: The
paginatedecorator doesn’t useNestedQueryFlaskParserby default. It is renamed toNestedQueryArgsParserand it can be used by overridingBlueprint.ARGUMENTS_PARSER.Default error handler is registered for generic
HTTPException. Other extensions may register other handlers for specific exceptions or codes (#12).
Other changes:
Backwards-incompatible: Drop Flask 0.x support. Flask>=1.0 is now required.
0.8.1 (2018-09-24)¶
Features:
Add page (page number) to pagination metadata.
Set produces and consumes root document attributes when using OpenAPI v2.
Bug fixes:
Document body parameter correctly when using OpenAPI v3.
0.8.0 (2018-09-20)¶
Features:
Add
API_SPEC_OPTIONSapp config parameter. Thanks @xalioth for the suggestion.Backwards-incompatible:
Apiaccepts aspec_kargsparameter, passed as kwargs to the internalAPISpecinstance.spec_pluginsis removed, plugins shall be passed asspec_kwargs={'plugins': [...]}.Backwards-incompatible: Get summary and description from docstrings (#5).
Add support for marshmallow 3.0.0b13. 2.x and 3b are now supported.
Add support for apispec 1.0.0b2. 0.x and 1b are now supported.
Bug fixes:
0.7.0 (2018-07-19)¶
Other changes:
Backwards-incompatible: Remove
_wrapper_classfromPage. Creating a custom pager is easier by just overridingPagemethods.Backwards-incompatible: Let
OPENAPI_SWAGGER_UI_SUPPORTED_SUBMIT_METHODSdefault to “all methods” list.
0.6.1 (2018-06-29)¶
Bug fixes:
Swagger UI integration: respect
OPENAPI_SWAGGER_UI_URLconfiguration paramater.Api.register_field: useAPISpec.register_fieldrather than accessself.spec.ma_plugindirectly.
0.6.0 (2018-06-29)¶
Features:
Backwards-incompatible: Use apispec 0.39.0 plugin class interface.
Backwards-incompatible: Expose APISpec’s
register_fieldandregister_converter methodsfromApiobject.Api.register_convertersignature is modified to makenameparameter optional.Pass extra apispec plugins to internal APISpec instance.
Other changes:
Backwards-incompatible: Drop official support for Python 3.4.
0.5.2 (2018-06-21)¶
Features:
Pass OpenAPI version as
OPENAPI_VERSIONapp config parameter.Add Swagger UI (3.x) integration.
0.5.1 (2018-06-18)¶
Features:
ReDoc: Use unpkg CDN for 2.x version.
0.5.0 (2018-06-05)¶
Features:
Backwards-incompatible: In
Blueprint.route, the endpoint name defaults to the function name with the case unchanged. Before this change, the name was lowercased.Backwards-incompatible: Pagination is now managed by dedicated
Blueprint.paginatedecorator.Add
etag.INCLUDE_HEADERSto specify which headers to use for ETag computation (defaults to['X-Pagination']).In
verify_check_etag, endpoint name is added to the warning message.
0.4.2 (2018-04-27)¶
Bug fixes:
Pagination: don’t crash if
item_countis not set, just log a warning and set no pagination header.API spec: Fix leading/trailing slash issues in api-docs Blueprint. Fixes compatibility with Flask 1.0.
0.4.1 (2018-04-17)¶
Features:
Allow multiple calls to
Blueprint.argumentson a view function.Enforce order of fields in
PaginationParametersSchemaandPaginationMetadataSchema.Minor improvements in test_examples.py.
0.4.0 (2018-04-05)¶
Features:
Backwards-incompatible: The case of a parameter both in URL and in arguments Schema is now unsupported.
Backwards-incompatible: By default, Schema parameter passed in
Blueprint.argumentsis documented as required.Backwards-incompatible:
APISpec.register_fieldnow uses apispec API. It must be passed a(type, format)couple or an already registeredFieldclass (this includes base marshmallowFields. When using(type, format),formatdoesn’t default toNoneanymore.Preserve order when serving the spec file: - Fields are printed in declaration order if Schema.Meta.ordered is True - Methods in a method view are printed in this order: [‘OPTIONS’, ‘HEAD’, ‘GET’, ‘POST’, ‘PUT’, ‘PATCH’, ‘DELETE’] - Paths are added in declaration order
Bug fixes:
Document response as array when using paginate_with.
0.3.0 (2018-03-02)¶
Features:
Add leading and trailing
/to OPENAPI_URL_PREFIX if missing.Backwards-incompatible: Change default URL path for OpenAPI JSON to
'openapi.json'.
Bug fixes:
Fix OpenAPI docs URL paths.
Backwards-incompatible:
Blueprint.route(self, rule, **options)matchesflask’sBlueprintsignature.
0.2.0 (2018-03-02)¶
Features:
formatparameter inregister_converterandregister_fieldis now optional and defaults toNone.APISpec inherits from original apispec.APISpec.
Backwards-incompatible: The internal
APISpecinstance is now exposed as public attributespecofApi.register_converterandregister_fieldare not proxied anymore byApiand must be called onspec.Backwards-incompatible:
Api.register_convertertakes anameparameter and registers a converter in theFlaskapplication as well as in its internalAPISpecinstance.Backwards-incompatible:
Api.register_spec_pluginis removed.api.register_spec_plugin(...)shall be replaced withapi.spec.setup_plugin(...).
0.1.1 (2018-02-16)¶
Bug fixes:
Fix version number.
Support:
Add dev-requirements.txt.
0.1.0 (2018-02-16)¶
First release.