NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1932 most downloaded on PyPI
Connexion - API first applications with OpenAPI/Swagger
Last release 11 months ago
13 Oct 2025
Release timing varies
gaps range from 8 days to 8 months
Nearly every release is documented
notes for 59 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
164 releases · first in 2015
Update sqlalchemy example to work with Python 3.8, 3.9 and 3.10 by @ifeLawal in #2025
connexion.ConnexionMiddleware.add_api by @bastantoine in #2030testpaths and {posargs} in poetry-pytest invocation by @chrisinmtown in #2067Full Changelog: 3.2.0...3.3.0
One column per quarter.
Handle starlette/templating.py:161: DeprecationWarning: The name is… by @mavwolverine in #1976
name is… by @mavwolverine in #1976swagger_ui_options in docstring for FlaskApp by @FelixSchwarz in #2007hello module in v3 getting-started doc by @chrisinmtown in #2003Full Changelog: 3.1.0...3.2.0
Allow the specification to be specified as a URL. by @mjp4 in #1871
Full Changelog: 3.0.6...3.1.0
Bugfix/starlette root path by @Ruwann in #1833
Full Changelog: 3.0.5...3.0.6
Fix broken swagger_ui when using Swagger 2 specification with references.
Fix broken swagger_ui when using Swagger 2 specification with references.
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.4...3.0.5
Set Starlette upperbound version to <0.33 until https://github.com/encode/starlette/discussions/2361 is resolved.
Set Starlette upperbound version to <0.33 until https://github.com/encode/starlette/discussions/2361 is resolved.
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.3...3.0.4
Fix regression in app startup time
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.2...3.0.3
Add migration guide for migrating from Connexion 2 to 3
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.1...3.0.2
Fix error handlers on FlaskApp to match documented behavior
FlaskApp to match documented behaviorFull Changelog: https://github.com/spec-first/connexion/compare/3.0.0...3.0.1
Fix deprecation warning for Validator.iter_errors by @jonasboecquaert in https://github.com/spec-first/connexion/pull/1536
Connexion 3 fundamentally changes how Connexion is designed and implemented, and how it fits into the wider Python API ecosystem. We adopted the ASGI interface, which makes Connexion both modular and well-integrated with most modern Python API tooling.
It brings some major changes compared to 2.X:
App and new AsyncApp allow you to use Connexion as a stand-alone framework
App interface was extended so you no longer have to care about the framework used
underneathour documentation_For further details, check:
add_middleware interface by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1683Full Changelog: https://github.com/spec-first/connexion/compare/2.13.0...3.0.0
Bump starlette by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1734
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.0a7...3.0.0a8
Move from caret to inequality requirements by @marcin-lulek-cint in https://github.com/spec-first/connexion/pull/1704
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.0a6...3.0.0a7
Unpack error handler when registering on middleware by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1695
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.0a5...3.0.0a6
Make security pluggable by @Ruwann in https://github.com/spec-first/connexion/pull/1671
add_middleware interface by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1683Full Changelog: https://github.com/spec-first/connexion/compare/3.0.0a4...3.0.0a5
Fix stream replay in validators by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1678
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.0a3...3.0.0a4
Pass through lifespan events by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1673
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.0a2...3.0.0a3
Fix ReadTheDocs config for Poetry by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1663
Full Changelog: https://github.com/spec-first/connexion/compare/3.0.0a1...3.0.0a2
The deprecated positions for x-body-name are no longer supported
AsyncApp built on top of Starlette.connexion.AsyncApp insteadoptions argument has been renamed to swagger_ui_optionsuri_parser_class is now passed to the App or its add_api() method directly
instead of via the options argument.jsonifier is now passed to the App or its add_api() method instead of setting it
as an attribute on the Api.connexion.request is now a Starlette Request instead of a Flask Requestx-body-name are no longer supportedpass_context_arg_name has been removed. Context is now available as global
request-level context, or can be passed in by defining a context_ parameter in your view function.MethodViewResolver has been renamed to MethodResolver, and a new MethodViewResolver
has been added to work with Flask's MethodView specifically.Full Changelog: https://github.com/spec-first/connexion/compare/2.13.0...3.0.0a1
(v2) Add missing dependency packaging at min version 25 by @chrisinmtown in #2086
Full Changelog: 2.15.0...2.15.1
(v2) Add missing dependency packaging at min version 25 by @chrisinmtown in #2086
Full Changelog: 2.15.0...2.15.1rc1
Update NumberConverter regex to match new Werkzeug behavior (v2) by @RobbeSneyders in #1643
Full Changelog: 2.14.2...2.15.0
Remove semicolon from text/plain content type in example Swagger spec by @chrisinmtown in #2056
Full Changelog: 2.15.0rc2...2.15.0rc3
Roll back Flask version pin for improved compatibility by @chrisinmtown in #2058
Full Changelog: 2.15.0rc1...2.15.0rc2
Update NumberConverter regex to match new Werkzeug behavior (v2) by @RobbeSneyders in #1643
Full Changelog: 2.14.2...2.15.0rc1
Fix Flask upper limit to 2.3 by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1585
Full Changelog: https://github.com/spec-first/connexion/compare/2.14.1...2.14.2
Don't interpret simple parameter as deepObject by @fgreinacher in https://github.com/spec-first/connexion/pull/1570
Full Changelog: https://github.com/spec-first/connexion/compare/2.14.0...2.14.1
Only warn about the schema's x-body-name being deprecated if it's used. by @lanzkron in https://github.com/spec-first/connexion/pull/1554
Full Changelog: https://github.com/spec-first/connexion/compare/2.13.1...2.14.0
Fix uri parsing for query parameter with empty brackets by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1501
Full Changelog: https://github.com/spec-first/connexion/compare/2.13.0...2.13.1
[FIX] MethodViewResolver CamelCase Methods by @jdkent in https://github.com/spec-first/connexion/pull/1467
Full Changelog: https://github.com/spec-first/connexion/compare/2.12.0...2.13.0
Fix for aiohttp and multipart/form-data uploads by @ddurham2 in https://github.com/spec-first/connexion/pull/1222
Full Changelog: https://github.com/spec-first/connexion/compare/2.11.2...2.12.0
Change deprecated aiohttp req.has_body to req.can_read_body by @cbosborn in https://github.com/spec-first/connexion/pull/1296
Full Changelog: https://github.com/spec-first/connexion/compare/2.11.1...2.11.2
Add Python 3.9 to supported versions in setup.py by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1459
Full Changelog: https://github.com/spec-first/connexion/compare/2.11.0...2.11.1
Bump upperbound version for jsonschema to 5.0.0 by @RobbeSneyders in https://github.com/spec-first/connexion/pull/1447
Full Changelog: https://github.com/spec-first/connexion/compare/2.10.0...2.11.0
~Due to unavailability of maintainers with access to the connexion PyPi project, this version has been released under a new PyPi project connexion2 fo
~Due to unavailability of maintainers with access to the connexion PyPi project, this version has been released under a new PyPi project connexion2 for now:
https://pypi.org/project/connexion2/~
EDIT 15/01/2022: This version is now available under the main PyPi repository: https://pypi.org/project/connexion/2.10.0/
Full Changelog: https://github.com/zalando/connexion/compare/2.9.0...2.10.0
Release with new (backwards-compatible) features: https://pypi.org/project/connexion/2.9.0/
Release with new (backwards-compatible) features: https://pypi.org/project/connexion/2.9.0/
Notable changes:
required: false for headers #1293Detailed list of changes: https://github.com/zalando/connexion/milestone/12
New maintenance/bugfix release https://pypi.org/project/connexion/2.8.0/
New maintenance/bugfix release https://pypi.org/project/connexion/2.8.0/
See https://github.com/zalando/connexion/milestone/11 for list of changes
AIOHTTP: get rid of @asyncio.coroutine (deprecated in Python 3.8)
server_args parameter to AbstractApp (#1173)@asyncio.coroutine (deprecated in Python 3.8) (#1186)_framework_to_connexion_response for StreamResponse (#1217)Fix aiohttp access_log duplicated if passed as argument
Require Python 3.6 for pip installation
Drop Python 2.7 support, support Python 3.8
ProblemException (#955)Handle deepObject and explode: true
AioHttpApi oauth middleware catches all OAuth problems
Fix case sensitive headers in aiohttp
Proper debug logs for aiohttp's StreamResponse
Enforce that spec has string keys (JSON does not support integer keys)
Get rid of deprecation warning when using connexion run ...
connexion run ... (#745)Connexion 2.0 supports version 3.0.x of the OpenAPI Specification! As 2.0 is a major version bump, you can expect some breaking changes from Connexion…
Connexion 2.0 supports version 3.0.x of the OpenAPI Specification! As 2.0 is a major version bump, you can expect some breaking changes from Connexion 1.5.3.
pip install connexion[swagger-ui]old_style_options have been removed).Operation interface has been formalized in the AbstractOperation class.Operation class has been renamed to Swagger2Operation.?q=1,2,3&q=4,5,6 will result in q = [4, 5, 6].
The old behavior is available by setting the collectionFormat to multi, or by importing decorators.uri_parsing.AlwaysMultiURIParser and passing parser_class=AlwaysMultiURIParser to your Api.swagger-spec-validator to openapi-spec-validator.SwaggerValidationError now raise the InvalidSpecification exception.
All spec validation errors should be wrapped with InvalidSpecification.x-tokenInfoFunc/x-tokenInfoUrl is missing, connexion now denies requests instead of allowing access without security-check.connexion.request.user / flask.request.user is no longer supported, use connexion.context['user'] insteadNothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Fix error codes for bad Content-Types in body validator.
Split FormData array parameters correctly
Bugfix:
- Fix log line to wrong logger
Update to swagger-spec-validator 2.3.1
This release contains no Python code changes!
This release contains no Python code changes!
* #583: make Connexion compatible with the latest gevent version
Nothing published for this version
* #559: allow local OAuth token validation via vendor extension, see Connexion's OAuth documentation
Your coding agent can read these notes before it upgrades. Set up the MCP server →