See also
Need help upgrading to a newer version? Check out the upgrading guide.
Changelog¶
6.3.0 (2023-03-10)¶
Features:
6.2.0 (2023-03-06)¶
Features:
6.1.0 (2023-03-03)¶
Bug fixes:
Serialize min/max values in
field2range
(#825).
Other changes:
Test against Python 3.11 (#809).
6.0.2 (2022-11-10)¶
Bug fixes:
Allow passing
openapi_version
as string inmarshmallow OpenAPIConverter
(#810). Thanks @paradoxxxzero for the PR.
6.0.1 (2022-11-05)¶
Bug fixes:
6.0.0 (2022-10-15)¶
Features:
Support
fields.Enum
(#802).Backwards-incompatible: Change
MarshmallowPlugin.map_to_openapi_type
from a decorator to a classic function, taking a field as first argument (#804).Backwards-incompatible: Remove
validate_spec
from public API. Users may call their validator of choice directly (#803).
Other changes:
Drop support for marshmallow < 3.18.0 (#802).
6.0.0b1 (2022-10-04)¶
Features:
5.2.2 (2022-05-13)¶
Bug fixes:
Fix schema property ordering regression in
ApiSpec.to_yaml()
(#768). Thanks @vorticity for the PR.
5.2.1 (2022-05-01)¶
Bug fixes:
Fix type hints for
APISpec.path
andBasePlugin
methods (#765).
5.2.0 (2022-04-29)¶
Features:
Use
raise from
whenever possible (#763).
Refactoring:
Use a
tuple
rather than anamedtuple
for “schema key” (#725).
Other changes:
5.1.1 (2021-09-27)¶
Bug fixes:
Fix field ordering in “ordered” schema classes documentation (#714).
Other changes:
5.1.0 (2021-08-10)¶
Features:
Add
lazy
option to component registration methods. This allows to add components to the spec only if they are actually referenced. (#702)Add
BasePlugin.header_helper
andMarshmallowPlugin.header_helper
(#703).
Bug fixes:
Ensure plugin helpers get component copies. Avoids issues if a plugin helper mutates its inputs. (#704)
5.0.0 (2021-07-29)¶
Features:
Rename
doc_default
todefault
. Since schema metadata is namespaced in a singlemetadata
parameter, there is no name collision withdefault
parameter anymore (#687).Don’t build schema component reference in
OpenAPIConverter.resolve_nested_schema
. This is done later inComponents
(#700).MarshmallowPlugin
: resolve schemas inallOf
,oneOf
,anyOf
andnot
(#701). Thanks @stefanv for the initial work on this.
Other changes:
Refactor
Components
methods to make them consistent. Usecomponent_id
rather thanname
, remove**kwargs
when unused. (#696)
5.0.0b1 (2021-07-22)¶
Features:
Resolve all component references in paths and components. All references must be passed as strings, not as a
{$ref: '...'}}
dict (#671).
Other changes:
Don’t use deprecated
missing
marshmallow field attribute but useload_default
instead (#692).Refactor references resolution.
get_ref
method is moved fromAPISpec
toComponents
(#655).APISpec.clean_parameters
andAPISpec.clean_parameters
are now private methods (#695).Drop support for marshmallow < 3.13.0 (#692).
4.7.1 (2021-07-06)¶
Bug fixes:
Correct spelling of
'null'
: remove extra quotes (#689). Thanks @mjpieters for the PR.
4.7.0 (2021-06-28)¶
Features:
4.6.0 (2021-06-14)¶
Features:
Support
Pluck
field (#677). Thanks @mjpieters for the PR.Support
TimeDelta
field (#678).
4.5.0 (2021-06-04)¶
Features:
Support OpenAPI 3.1.0 (#579).
Bug fixes:
Other changes:
Don’t pass field metadata as keyword arguments in the tests. This is deprecated since marshmallow 3.10. apispec is still compatible with marshmallow >=3,<3.10 but tests now require marshmallow >=3.10. (#675)
4.4.2 (2021-05-24)¶
Bug fixes:
Respect
partial
marshmallow schema parameter: don’t document the field as required. (#627). Thanks @Anti-Distinctlyminty for the PR.
4.4.1 (2021-05-07)¶
Bug fixes:
4.4.0 (2021-03-31)¶
Features:
Populate
additionalProperties
fromMeta.unknown
(#635). Thanks @timsilvers for the PR.Allow
to_yaml
to pass kwargs toyaml.dump
(#648).Resolve header references in responses (#650).
Resolve example references in parameters, request bodies and responses (#651).
4.3.0 (2021-02-10)¶
Features:
Add
apispec.core.Components.header
to register header components (#637).
4.2.0 (2021-02-06)¶
Features:
Make components public attributes of
Components
class (#634).
4.1.0 (2021-01-26)¶
Features:
Bug fixes:
Fix docstrings documenting kwargs type as dict (#534).
Use
x-minimum
andx-maximum
extensions to document ranges that are not of number type (e.g. datetime) (#614).
Other changes:
Test against Python 3.9.
4.0.0 (2020-09-30)¶
Features:
Backwards-incompatible: Automatically generate references for schemas passed as strings in responses and request bodies. When using
MarshmallowPlugin
, if a schema is passed as string, the marshmallow registry is looked up for this schema name and if none is found, the name is assumed to be a reference to a manually created schema and a reference is generated. No exception is raised anymore if the schema name can’t be found in the registry. (#554)
4.0.0b1 (2020-09-06)¶
Features:
Backwards-incompatible: Ignore
location
field metadata. This attribute was used in webargs but it has now been dropped. ASchema
can now only have a single location. This simplifies the logic inOpenAPIConverter
methods, wheredefault_in
argument now becomeslocation
. (#526)Backwards-incompatible: Don’t document
int
format as"int32"
andfloat
format as"float"
, as those are platform-dependent (#595).
Refactoring:
OpenAPIConverter.field2parameters
andOpenAPIConverter.property2parameter
are removed.OpenAPIConverter.field2parameter
becomes private. (#581)
Other changes:
3.3.2 (2020-08-29)¶
Bug fixes:
Fix crash when field metadata contains non-string keys (#596). Thanks @sanzoghenzo for the fix.
3.3.1 (2020-06-06)¶
Bug fixes:
3.3.0 (2020-02-14)¶
Features:
3.2.0 (2019-12-22)¶
Features:
3.1.1 (2019-12-17)¶
Bug fixes:
Don’t emit a warning when passing “default” as response status code in OASv2 (#521).
3.1.0 (2019-11-04)¶
Features:
Add
apispec.core.Components.example
for adding Example Objects (#515). Thanks @codeasashu for the PR.
Support:
Test against Python 3.8 (#510).
3.0.0 (2019-09-17)¶
Features:
Add support for generating user-defined OpenAPI properties for custom field classes via an
add_attribute_function
method (#478 and #498).[apispec.ext.marshmallow]: Backwards-incompatible
fields.Raw
andfields.Field
are now represented by OpenAPI Any Type (#495).[apispec.ext.marshmallow]: Backwards-incompatible: The
schema_name_resolver
function now receives aSchema
class, aSchema
instance or a string that resolves to aSchema
class. This allows a custom resolver to generate different names depending on schema modifiers used in aSchema
instance (#476).
Bug fixes:
[apispec.ext.marshmallow]: With marshmallow 3, the default value of a field in the documentation is the serialized value of the
missing
attribute, notmissing
itself (#490).
Refactoring:
clean_parameters
andclean_operations
are nowAPISpec
methods (#489).[apispec.ext.marshmallow]:
Schema
resolver methods are extracted fromMarshmallowPlugin
into aSchemaResolver
class member (#496).[apispec.ext.marshmallow]:
OpenAPIConverter
is now a class member ofMarshmallowPlugin
(#493).[apispec.ext.marshmallow]:
Field
to properties conversion logic is extracted fromOpenAPIConverter
intoFieldConverterMixin
(#478).
Other changes:
2.0.2 (2019-07-04)¶
Bug fixes:
Fix compatibility with marshmallow 3.0.0rc8 (#469).
Other changes:
Switch to Azure Pipelines (#468).
2.0.1 (2019-06-26)¶
Bug fixes:
Don’t mutate
operations
andparameters
inAPISpec.path
to avoid issues when calling it twice with the sameoperations
orparameters
(#464).
2.0.0 (2019-06-18)¶
Features:
Add support for path level parameters (#453). Thanks @karec for the PR.
Backwards-incompatible: A
apispec.exceptions.DuplicateParameterError
is raised when two parameters with same name and location are passed to a path or an operation (#455).Backwards-incompatible: A
apispec.exceptions.InvalidParameterError
is raised when a parameter is missing requiredname
andin
attributes after helpers have been executed (#455).
Other changes:
1.3.3 (2019-05-05)¶
Bug fixes:
marshmallow 3.0.0rc6 compatibility (#445).
1.3.2 (2019-05-02)¶
Bug fixes:
Fix handling of OpenAPI v3 components content without schema in
MarshmallowPlugin
(#443).
1.3.1 (2019-04-29)¶
Bug fixes:
1.3.0 (2019-04-24)¶
Features:
1.2.1 (2019-04-18)¶
Bug fixes:
1.2.0 (2019-04-08)¶
Features:
1.1.2 (2019-04-07)¶
Bug fixes:
Fix behavior when using “2xx”, 3xx”, etc. for response keys (#422). Thanks @zachmullen for reporting.
1.1.1 (2019-04-02)¶
Bug fixes:
Fix passing references for parameters/responses when using
MarshmallowPlugin
(#414).
1.1.0 (2019-03-17)¶
Features:
Resolve
Schema
classes in response headers (#409).
1.0.0 (2019-02-08)¶
Features:
Expanded support for OpenAPI Specification version 3 (#165).
Add
summary
anddescription
parameters toAPISpec.path
(#227). Thanks @timakro for the suggestion.Add
apispec.core.Components.security_scheme
for adding Security Scheme Objects (#245).[apispec.ext.marshmallow]: Add support for outputting field patterns from
Regexp
validators (#364). Thanks @DStape for the PR.
Bug fixes:
[apispec.ext.marshmallow]: Fix automatic documentation of schemas when using
Nested(MySchema, many==True)
(#383). Thanks @whoiswes for reporting.
Other changes:
Backwards-incompatible: Components properties are now passed as dictionaries rather than keyword arguments (#381).
# <1.0.0
spec.components.schema("Pet", properties={"name": {"type": "string"}})
spec.components.parameter("PetId", "path", format="int64", type="integer")
spec.components.response("NotFound", description="Pet not found")
# >=1.0.0
spec.components.schema("Pet", {"properties": {"name": {"type": "string"}}})
spec.components.parameter("PetId", "path", {"format": "int64", "type": "integer"})
spec.components.response("NotFound", {"description": "Pet not found"})
Deprecations/Removals:
Backwards-incompatible: The
ref
argument passed to fields is no longer used (#354). References for nestedSchema
are stored automatically.Backwards-incompatible: The
extra_fields
argument ofapispec.core.Components.schema
is removed. All properties may be passed in thecomponent
argument.
# <1.0.0
spec.definition("Pet", schema=PetSchema, extra_fields={"discriminator": "name"})
# >=1.0.0
spec.components.schema("Pet", schema=PetSchema, component={"discriminator": "name"})
1.0.0rc1 (2018-01-29)¶
Features:
Automatically generate references to nested schemas with a computed name, e.g.
fields.Nested(PetSchema())
->#components/schemas/Pet
.Automatically generate references for
requestBody
using the above mechanism.Ability to opt out of the above behavior by passing a
schema_name_resolver
function that returnsNone
toapi.ext.MarshmallowPlugin
.References now respect Schema modifiers, including
exclude
andpartial
.Backwards-incompatible: A
apispec.exceptions.DuplicateComponentNameError
is raised when registering two components with the same name (#340).
1.0.0b6 (2018-12-16)¶
Features:
1.0.0b5 (2018-11-06)¶
Features:
apispec.core.Components
is added. EachAPISpec
instance has aComponents
object used to define components such as schemas, parameters or responses. “Components” is the OpenAPI v3 terminology for those reusable top-level objects.apispec.core.Components.parameter
andapispec.core.Components.response
are added.Backwards-incompatible:
apispec.APISpec.add_path
andapispec.APISpec.add_tag
are renamed toapispec.APISpec.path
andapispec.APISpec.tag
.Backwards-incompatible:
apispec.APISpec.definition
is moved to theComponents
class and renamed toapispec.core.Components.schema
.
# apispec<1.0.0b5
spec.add_tag({'name': 'Pet', 'description': 'Operations on pets'})
spec.add_path('/pets/', operations=...)
spec.definition('Pet', properties=...)
# apispec>=1.0.0b5
spec.tag({'name': 'Pet', 'description': 'Operations on pets'})
spec.path('/pets/', operations=...)
spec.components.schema('Pet', properties=...)
Plugins can define
parameter_helper
andresponse_helper
to modify parameter and response components definitions.MarshmallowPlugin
resolves schemas in parameters and responses components.Components helpers may return
None
as a no-op rather than an emptydict
(#336).
Bug fixes:
MarshmallowPlugin.schema_helper
does not crash when no schema is passed (#336).
Deprecations/Removals:
The legacy
response_helper
feature is removed. The same can be achieved fromoperation_helper
.
1.0.0b4 (2018-10-28)¶
Backwards-incompatible:
apispec.ext.flask
,apispec.ext.bottle
, andapispec.ext.tornado
are moved to a separate package, apispec-webframeworks. (#302).
If you use these plugins, install apispec-webframeworks
and
update your imports like so:
# apispec<1.0.0b4
from apispec.ext.flask import FlaskPlugin
# apispec>=1.0.0b4
from apispec_webframeworks.flask import FlaskPlugin
Thanks @ergo for the suggestion and the PR.
1.0.0b3 (2018-10-08)¶
Features:
[apispec.core]: Backwards-incompatible:
openapi_version
parameter ofAPISpec
class does not default to'2.0'
anymore andinfo
parameter is merged with**options
kwargs.
Bug fixes:
[apispec.ext.marshmallow]: Exclude
load_only
fields when documenting responses (#119). Thanks @luisincrespo for reporting.[apispec.ext.marshmallow]: Exclude
dump_only
fields when documenting request body parameter schema.
1.0.0b2 (2018-09-09)¶
Drop deprecated plugin interface. Only plugin classes are now supported. This includes the removal of
APISpec
’sregister_*_helper
methods, as well as itsschema_name_resolver
parameter. Also drop deprecatedapispec.utils.validate_swagger
. (#259)Use
yaml.safe_load
instead ofyaml.load
when reading docstrings (#278). Thanks @lbeaufort for the suggestion and the PR.
1.0.0b1 (2018-07-29)¶
Features:
[apispec.core]: Backwards-incompatible: Remove
Path
class. Plugins’path_helper
methods should now return a path as a string and optionally mutate theoperations
dictionary (#238).[apispec.core]: Backwards-incompatible: YAML support is optional. To install with YAML support, use
pip install 'apispec[yaml]'
. You will need to do this if you useFlaskPlugin
,BottlePlugin
, orTornadoPlugin
(#251).[apispec.ext.marshmallow]: Allow overriding the documentation for a field’s default. This is especially useful for documenting callable defaults (#196).
0.39.0 (2018-06-28)¶
Features:
[apispec.core]: Backwards-incompatible: Change plugin interface. Plugins are now child classes of
apispec.BasePlugin
. Built-in plugins are still usable with the deprecated legacy interface. However, the new class interface is mandatory to pass parameters to plugins or to access specific methods that used to be accessed as module level functions (typically inapispec.ext.marshmallow.swagger
). Also,schema_name_resolver
is now a parameter ofapispec.ext.marshmallow.MarshmallowPlugin
. It can still be passed toAPISpec
while using the legacy interface. (#207)[apispec.core]: Backwards-incompatible:
APISpec.openapi_version
is now anapispec.utils.OpenAPIVersion
instance.
0.38.0 (2018-06-10)¶
Features:
[apispec.core]: Backwards-incompatible: Rename
apispec.utils.validate_swagger
toapispec.utils.validate_spec
andapispec.exceptions.SwaggerError
toapispec.exceptions.OpenAPIError
. Usingvalidate_swagger
will raise aDeprecationWarning
(#224).[apispec.core]:
apispec.utils.validate_spec
no longer relies on thecheck_api
NPM module.prance
andopenapi-spec-validator
are required for validation, and can be installed usingpip install 'apispec[validation]'
(#224).[apispec.core]: Deep update components instead of overwriting components for OpenAPI 3 (#222). Thanks @Guoli-Lyu.
Bug fixes:
[apispec.ext.marshmallow]: Fix description for parameters in OpenAPI 3 (#223). Thanks again @Guoli-Lyu.
Other changes:
Drop official support for Python 3.4. Only Python 2.7 and >=3.5 are supported.
0.37.1 (2018-05-28)¶
Features:
[apispec.ext.marshmallow]: Fix OpenAPI 3 conversion of schemas in parameters (#217). Thanks @Guoli-Lyu for the PR.
0.37.0 (2018-05-14)¶
Features:
0.36.0 (2018-05-07)¶
Features:
0.35.0 (2018-04-10)¶
Features:
[apispec.ext.marshmallow]: Recurse over properties when resolving schemas (#186). Thanks @lphuberdeau.
[apispec.ext.marshmallow]: Support
writeOnly
andnullable
in OpenAPI 3 (fall back tox-nullable
for OpenAPI 2) (#165). Thanks @lafrech.
Bug fixes:
[apispec.ext.marshmallow]: Always use
field.missing
instead offield.default
when introspecting fields (#32). Thanks @lafrech.
Other changes:
0.34.0 (2018-04-04)¶
Features:
Other changes:
0.33.0 (2018-04-01)¶
Features:
[apispec.ext.marshmallow]: Respect
data_key
argument on fields (in marshmallow 3). Thanks @lafrech.
0.32.0 (2018-03-24)¶
Features:
[apispec.ext.bottle]: Allow
app
to be passed tospec.add_path
(#188). Thanks @dtaniwaki for the PR.
Bug fixes:
[apispec.ext.marshmallow]: Fix issue where “body” and “required” were getting overwritten when passing a
Schema
to a parameter (#168, #184). Thanks @dlopuch and @mathewmarcus for reporting and thanks @mathewmarcus for the PR.
0.31.0 (2018-01-30)¶
[apispec.ext.marshmallow]: Use
dump_to
for name even ifload_from
does not match it (#178). Thanks @LeonAgmonNacht for reporting and thanks @lafrech for the fix.
0.30.0 (2018-01-12)¶
Features:
0.29.0 (2018-01-04)¶
Features:
0.28.0 (2017-12-09)¶
Features:
0.27.1 (2017-12-06)¶
Bug fixes:
0.27.0 (2017-10-30)¶
Features:
[apispec.core]: Add
register_operation_helper
.
Bug fixes:
Order of plugins does not matter (#136).
Thanks @yoichi for these changes.
0.26.0 (2017-10-23)¶
Features:
[apispec.ext.marshmallow]: Generate “enum” property with single entry when the
validate.Equal
validator is used (#155). Thanks @Bangertm for the suggestion and PR.
Bug fixes:
0.25.4 (2017-10-09)¶
Bug fixes:
0.25.3 (2017-09-27)¶
Bug fixes:
[apispec.ext.marshmallow]: Correctly handle multiple fields with
location=json
(#75). Thanks @shaicantor for reporting and thanks @yoichi for the patch.
0.25.2 (2017-09-05)¶
Bug fixes:
0.25.1 (2017-08-23)¶
Bug fixes:
0.25.0 (2017-08-15)¶
Features:
Other changes:
Don’t swallow
YAMLError
when YAML parsing fails (#135). Thanks @djanderson for the suggestion and the PR.
0.24.0 (2017-08-15)¶
Features:
[apispec.ext.marshmallow]: Add
swagger.map_to_swagger_field
decorator to support custom field classes (#120). Thanks @frol for the suggestion and thanks @dradetsky for the PR.
0.23.1 (2017-08-08)¶
Bug fixes:
0.23.0 (2017-08-03)¶
Pass
operations
constructed by plugins to downstream marshmallow plugin (#138). Thanks @yoichi.[apispec.ext.marshmallow] Generate parameter specification from marshmallow Schemas (#127). Thanks @ewalker11 for the suggestion thanks @yoichi for the PR.
[apispec.ext.flask] Add support for Flask MethodViews (#85, #125). Thanks @lafrech and @boosh for the suggestion. Thanks @djanderson and @yoichi for the PRs.
0.22.3 (2017-07-16)¶
Release wheel distribution.
0.22.2 (2017-07-12)¶
Bug fixes:
[apispec.ext.marshmallow]: Properly handle callable
default
values in output spec (#131). Thanks @NightBlues.
0.22.1 (2017-06-25)¶
Bug fixes:
[apispec.ext.marshmallow]: Include
default
in output spec whenFalse
is the default for aBoolean
field (#130). Thanks @nebularazer.
0.22.0 (2017-05-30)¶
Features:
0.21.0 (2017-04-21)¶
Features:
[apispec.ext.marshmallow] Sort list of required field names in generated spec (#124). Thanks @dradetsky.
0.20.1 (2017-04-18)¶
Bug fixes:
[apispec.ext.tornado]: Fix compatibility with Tornado>=4.5.
[apispec.ext.tornado]: Fix adding paths for handlers with coroutine methods in Python 2 (#99).
0.20.0 (2017-03-19)¶
Features:
[apispec.core]: Definition helper functions receive the
definition
keyword argument, which is the current state of the definition (#122). Thanks @martinlatrille for the PR.
Other changes:
0.19.0 (2017-03-05)¶
Features:
[apispec.core]: Add
extra_fields
parameter toAPISpec.definition
(#110). Thanks @lafrech for the PR.[apispec.ext.marshmallow]: Preserve the order of
choices
(#113). Thanks @frol for the PR.
Bug fixes:
[apispec.ext.marshmallow]: ‘discriminator’ is no longer valid as field metadata. It should be defined by passing
extra_fields={'discriminator': '...'}
toAPISpec.definition
. Thanks for reporting, @lafrech.[apispec.ext.marshmallow]: Allow additional properties when translating
Nested
fields usingallOf
(#108). Thanks @lafrech for the suggestion and the PR.[apispec.ext.marshmallow]: Respect
dump_only
andload_only
specified inclass Meta
(#84). Thanks @lafrech for the fix.
Other changes:
Drop support for Python 3.3.
0.18.0 (2017-02-19)¶
Features:
0.17.4 (2017-02-16)¶
Bug fixes:
0.17.3 (2017-01-21)¶
Bug fixes:
0.17.2 (2017-01-03)¶
Bug fixes:
[apispec.ext.tornado]: Remove usage of
inspect.getargspec
for Python >= 3.3 (#102). Thanks @matijabesednik.
0.17.1 (2016-11-19)¶
Bug fixes:
[apispec.ext.marshmallow]: Prevent unnecessary warning when generating specs for marshmallow Schema’s with autogenerated fields (#95). Thanks @khorolets reporting and for the PR.
[apispec.ext.marshmallow]: Correctly translate
Length
validator tominItems
andmaxItems
for array-type fields (Nested
andList
) (#97). Thanks @YuriHeupa for reporting and for the PR.
0.17.0 (2016-10-30)¶
Features:
[apispec.ext.marshmallow]: Add support for properties that start with
x-
. Thanks @martinlatrille for the PR.
0.16.0 (2016-10-12)¶
Features:
[apispec.core]: Allow
description
to be passed toAPISpec.definition
(#93). Thanks @martinlatrille.
0.15.0 (2016-10-02)¶
Features:
Bug fixes:
[apispec.ext.flask]: Properly strip off
basePath
whenAPPLICATION_ROOT
is set on a Flask app’s config (#78). Thanks @deckar01 for reporting and @asteinlein for the PR.
0.14.0 (2016-08-14)¶
Features:
[apispec.core]: Maintain order in which paths are added to a spec (#87). Thanks @ranjanashish for the PR.
[apispec.ext.marshmallow]: Maintain order of fields when
ordered=True
on Schema. Thanks again @ranjanashish.
0.13.0 (2016-07-03)¶
Features:
[apispec.ext.marshmallow]: Add support for
Dict
field (#80). Thanks @ericb for the PR.[apispec.ext.marshmallow]:
dump_only
fields addreadOnly
flag in OpenAPI spec (#79). Thanks @itajaja for the suggestion and PR.
Bug fixes:
[apispec.ext.marshmallow]: Properly exclude nested dump-only fields from parameters (#82). Thanks @incognick for the catch and patch.
Support:
Update tasks.py for compatibility with invoke>=0.13.0.
0.12.0 (2016-05-22)¶
Features:
[apispec.ext.marshmallow]: Inspect validators to set additional attributes (#66). Thanks @deckar01 for the PR.
Bug fixes:
[apispec.ext.marshmallow]: Respect
partial
parameters onSchemas
(#74). Thanks @incognick for reporting.
0.11.1 (2016-05-02)¶
Bug fixes:
0.11.0 (2016-04-12)¶
Features:
Support vendor extensions on paths (#65). Thanks @lucascosta for the PR.
Backwards-incompatible: Remove support for old versions (<=0.15.0) of webargs.
Bug fixes:
Fix error message when plugin does not have a
setup()
function.[apispec.ext.marshmallow] Fix bug in introspecting self-referencing marshmallow fields, i.e.
fields.Nested('self')
(#55). Thanks @whoiswes for reporting.[apispec.ext.marshmallow]
field2property
no longer pops offlocation
from a field’s metadata (#67).
Support:
Lots of new docs, including a User Guide and improved extension docs.
0.10.1 (2016-04-09)¶
Note: This version is a re-upload of 0.10.0. There is no 0.10.0 release on PyPI.
Features:
Add Tornado extension (#62).
Bug fixes:
Compatibility fix with marshmallow>=2.7.0 (#64).
Fix bug that raised error for Swagger parameters that didn’t include the
in
key (#63).
Big thanks @lucascosta for all these changes.
0.9.1 (2016-03-17)¶
Bug fixes:
Fix generation of metadata for
Nested
fields (#61). Thanks @martinlatrille.
0.9.0 (2016-03-13)¶
Features:
Add
APISpec.add_tags
method for adding Swagger tags. Thanks @martinlatrille.
Bug fixes:
Fix bug in marshmallow extension where metadata was being lost when converting marshmallow
Schemas
whenmany=False
. Thanks again @martinlatrille.
Other changes:
Remove duplicate
SWAGGER_VERSION
fromapi.ext.marshmallow.swagger
.
Support:
Update docs to reflect rename of Swagger to OpenAPI.
0.8.0 (2016-03-06)¶
Features:
apispec.ext.marshmallow.swagger.schema2jsonschema
properly introspectsSchema
instances whenmany=True
(#53). Thanks @frol for the PR.
Bug fixes:
0.7.0 (2016-02-11)¶
Features:
APISpec.add_path
acceptsPath
objects (#49). Thanks @Trii for the suggestion and the implementation.
Bug fixes:
Use correct field name in “required” array when
load_from
anddump_to
are used (#48). Thanks @benbeadle for the catch and patch.
0.6.0 (2016-01-04)¶
Features:
Add
APISpec#add_parameter
for adding common Swagger parameter objects. Thanks @jta.The field name in a spec will be adjusted if a
Field's
load_from
anddump_to
attributes are the same. #43. Thanks again @jta.
Bug fixes:
0.5.0 (2015-12-13)¶
schema2jsonschema
andschema2parameters
can introspect a marshmallowSchema
instance as well as aSchema
class (#37). Thanks @frol.Backwards-incompatible: The first argument to
schema2jsonschema
andschema2parameters
was changed fromschema_cls
toschema
.
Bug fixes:
Handle conflicting signatures for plugin helpers. Thanks @AndrewPashkin for the catch and patch.
0.4.2 (2015-11-23)¶
Skip dump-only fields when
dump=False
is passed toschema2parameters
andfields2parameters
. Thanks @frol.
Bug fixes:
Raise
SwaggerError
whenvalidate_swagger
fails. Thanks @frol.
0.4.1 (2015-10-19)¶
Correctly pass
dump
parameter tofield2parameters
.
0.4.0 (2015-10-18)¶
Add
dump
parameter tofield2property
(#32).
0.3.0 (2015-10-02)¶
Rename and repackage as “apispec”.
Support
enum
field of JSON Schema based onOneOf
andContainsOnly
validators.
0.2.0 (2015-09-27)¶
Add
schema2parameters
,fields2parameters
, andfield2parameters
.Removed
Fixed
fromswagger.FIELD_MAPPING
for compatibility with marshmallow>=2.0.0.
0.1.0 (2015-09-13)¶
First release.