- Pass operations constructed by plugins to downstream marshmallow plugin (
138
). Thanksyoichi
. - [apispec.ext.marshmallow] Generate parameter specification from marshmallow Schemas (
127
). Thanksewalker11
for the suggestion thanksyoichi
for the PR. - [apispec.ext.flask] Add support for Flask MethodViews (
85
,125
). Thankslafrech
andboosh
for the suggestion. Thanksdjanderson
andyoichi
for the PRs.
- Release wheel distribution.
Bug fixes:
- [apispec.ext.marshmallow]: Properly handle callable
default
values in output spec (131
). ThanksNightBlues
.
Bug fixes:
- [apispec.ext.marshmallow]: Include
default
in output spec whenFalse
is the default for aBoolean
field (130
). Thanksnebularazer
.
Features:
- [apispec.ext.bottle] Added bottle plugin (
128
). Thankslucasrc
.
Features:
- [apispec.ext.marshmallow] Sort list of required field names in generated spec (
124
). Thanksdradetsky
.
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
).
Features:
- [apispec.core]: Definition helper functions receive the
definition
keyword argument, which is the current state of the definition (122
). Thanksmartinlatrille
for the PR.
Other changes:
- [apispec.ext.marshmallow] Backwards-incompatible: Remove
dump
parameter fromschema2parameters
,fields2parameters
, andfield2parameter
(114
). Thankslafrech
andfrol
for the feedback andlafrech
for the PR.
Features:
- [apispec.core]: Add
extra_fields
parameter to APISpec.definition (110
). Thankslafrech
for the PR. - [apispec.ext.marshmallow]: Preserve the order of
choices
(113
). Thanksfrol
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': '...'}
to APISpec.definition. Thanks for reporting,lafrech
. - [apispec.ext.marshmallow]: Allow additional properties when translating
Nested
fields usingallOf
(108
). Thankslafrech
for the suggestion and the PR. - [apispec.ext.marshmallow]: Respect
dump_only
andload_only
specified inclass Meta
(84
). Thankslafrech
for the fix.
Other changes:
- Drop support for Python 3.3.
Features:
- [apispec.ext.marshmallow]: Translate
allow_none
onFields
tox-nullable
(66
). Thankslafrech
.
Bug fixes:
- [apispec.ext.marshmallow]: Fix corruption of
Schema._declared_fields
when serializing an APISpec (107
). Thanksserebrov
for the catch and patch.
Bug fixes:
- [apispec.ext.marshmallow]: Fix behavior when passing Schema instances to APISpec.definition. The Schema's class will correctly be registered as a an available ref (
84
). Thankslafrech
for reporting and for the PR.
Bug fixes:
- [apispec.ext.tornado]: Remove usage of
inspect.getargspec
for Python >= 3.3 (102
). Thanksmatijabesednik
.
Bug fixes:
- [apispec.ext.marshmallow]: Prevent unnecessary warning when generating specs for marshmallow Schema's with autogenerated fields (
95
). Thankskhorolets
reporting and for the PR. - [apispec.ext.marshmallow]: Correctly translate
Length
validator to minItems and maxItems for array-type fields (Nested
andList
) (97
). ThanksYuriHeupa
for reporting and for the PR.
Features:
- [apispec.ext.marshmallow]: Add support for properties that start with x-. Thanks
martinlatrille
for the PR.
Features:
- [apispec.core]: Allow
description
to be passed toAPISpec.definition
(93
). Thanksmartinlatrille
.
Features:
- [apispec.ext.marshmallow]: Allow
'query'
to be passed as a field location (89
). Thankslafrech
.
Bug fixes:
- [apispec.ext.flask]: Properly strip off
basePath
whenAPPLICATION_ROOT
is set on a Flask app's config (78
). Thanksdeckar01
for reporting andasteinlein
for the PR.
Features:
- [apispec.core]: Maintain order in which paths are added to a spec (
87
). Thanksranjanashish
for the PR. - [apispec.ext.marshmallow]: Maintain order of fields when
ordered=True
on Schema. Thanks againranjanashish
.
Features:
- [apispec.ext.marshmallow]: Add support for
Dict
field (80
). Thanksericb
for the PR. - [apispec.ext.marshmallow]:
dump_only
fields addreadOnly
flag in OpenAPI spec (79
). Thanksitajaja
for the suggestion and PR.
Bug fixes:
- [apispec.ext.marshmallow]: Properly exclude nested dump-only fields from parameters (
82
). Thanksincognick
for the catch and patch.
Support:
- Update tasks.py for compatibility with invoke>=0.13.0.
Features:
- [apispec.ext.marshmallow]: Inspect validators to set additional attributes (
66
). Thanksdeckar01
for the PR.
Bug fixes:
- [apispec.ext.marshmallow]: Respect
partial
parameters onSchemas
(74
). Thanksincognick
for reporting.
Bug fixes:
- [apispec.ext.flask]: Flask plugin respects
APPLICATION_ROOT
from app's config (69
). Thanksdeckar01
for the catch and patch. - [apispec.ext.marshmallow]: Fix support for plural schema instances (
71
). Thanks againdeckar01
.
Features:
- Support vendor extensions on paths (
65
). Thankslucascosta
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
). Thankswhoiswes
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.
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.
Bug fixes:
- Fix generation of metadata for
Nested
fields (61
). Thanksmartinlatrille
.
Features:
- Add
APISpec.add_tags
method for adding Swagger tags. Thanksmartinlatrille
.
Bug fixes:
- Fix bug in marshmallow extension where metadata was being lost when converting marshmallow
Schemas
whenmany=False
. Thanks againmartinlatrille
.
Other changes:
- Remove duplicate
SWAGGER_VERSION
fromapi.ext.marshmallow.swagger
.
Support:
- Update docs to reflect rename of Swagger to OpenAPI.
Features:
apispec.ext.marshmallow.swagger.schema2jsonschema
properly introspectsSchema
instances whenmany=True
(53
). Thanksfrol
for the PR.
Bug fixes:
- Fix error reporting when an invalid object is passed to
schema2jsonschema
orschema2parameters
(52
). Thanks againfrol
.
Features:
APISpec.add_path
acceptsPath
objects (49
). ThanksTrii
for the suggestion and the implementation.
Bug fixes:
- Use correct field name in "required" array when
load_from
anddump_to
are used (48
). Thanksbenbeadle
for the catch and patch.
Features:
- Add
APISpec#add_parameter
for adding common Swagger parameter objects. Thanksjta
. - The field name in a spec will be adjusted if a
Field's
load_from
anddump_to
attributes are the same.43
. Thanks againjta
.
Bug fixes:
- Fix bug that caused a stack overflow when adding nested Schemas to an
APISpec
(31
,41
). Thanksalapshin
anditajaja
for reporting. Thanksitajaja
for the patch.
schema2jsonschema
andschema2parameters
can introspect a marshmallowSchema
instance as well as aSchema
class (37
). Thanksfrol
.- 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.
- Skip dump-only fields when
dump=False
is passed toschema2parameters
andfields2parameters
. Thanksfrol
.
Bug fixes:
- Raise
SwaggerError
whenvalidate_swagger
fails. Thanksfrol
.
- Correctly pass
dump
parameter tofield2parameters
.
- Add
dump
parameter tofield2property
(32
).
- Rename and repackage as "apispec".
- Support
enum
field of JSON Schema based onOneOf
andContainsOnly
validators.
- Add
schema2parameters
,fields2parameters
, andfield2parameters
. - Removed
Fixed
fromswagger.FIELD_MAPPING
for compatibility with marshmallow>=2.0.0.
- First release.