NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #612 most downloaded on Packagist
Generates documentation for your REST API from attributes
Last release today
05 Oct 2026
Ships fairly regularly
a new release about every 3 weeks
Most releases are documented
notes for 44 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
14 years old
209 releases · first in 2012
Nothing published for this version
Nothing published for this version
Added support for the symfony/type-info component `yaml nelmio_api_doc: type_info: true `
nelmio_api_doc:
type_info: true
One column per quarter.
Nothing published for this version
Changed minimum Symfony version for 7.x from 7.0 to 7.1
Fixed Symfony 7.2 deprecation of tagged arguments
Added new optional parameter $context to PropertyDescriberInterface::supports()
$context to PropertyDescriberInterface::supports()Deprecated null type from $options in Nelmio\ApiDocBundle\Attribute\Model::__construct(). Pass an empty array ([]) instead.
null type from $options in Nelmio\ApiDocBundle\Attribute\Model::__construct(). Pass an empty array ([]) instead.null type from $options in NNelmio\ApiDocBundle\Attribute\Model::__construct(). Pass an empty array ([]) instead.Bumped swagger-ui files from 5.18.1 to 5.18.2
5.18.1 to 5.18.22.2.0Fixed incorrect directory updated for swagger-ui files from version 4.33.2
4.33.2Bumped swagger-ui files to 5.18.1
5.18.1#[OA\Property] being overwrittenFixed custom JMS enum type handling
Deprecated Nelmio\ApiDocBundle\Annotation namespace in favor of Nelmio\ApiDocBundle\Attribute namespace in preparation for 5.x. Consider upgrading to…
Nelmio\ApiDocBundle\Annotation namespace in favor of Nelmio\ApiDocBundle\Attribute namespace in preparation for 5.x. Consider upgrading to the new attribute syntax.- use Nelmio\ApiDocBundle\Annotation\Areas;
- use Nelmio\ApiDocBundle\Annotation\Model;
- use Nelmio\ApiDocBundle\Annotation\Operation;
- use Nelmio\ApiDocBundle\Annotation\Security;
+ use Nelmio\ApiDocBundle\Attribute\Areas;
+ use Nelmio\ApiDocBundle\Attribute\Model;
+ use Nelmio\ApiDocBundle\Attribute\Operation;
+ use Nelmio\ApiDocBundle\Attribute\Security;
Nothing published for this version
Nothing published for this version
Added support to configure options and serializationContext via nelmio_api_doc.models.names.
options and serializationContext via nelmio_api_doc.models.names.serializationContext not being applied to nested models.Added support to opt out of JMS serializer usage per endpoint by setting useJms in the serializationContext. ```php
useJms in the serializationContext.#[OA\Response(response: 200, content: new Model(type: UserDto::class, serializationContext: ["useJms" => false]))]
Create top level OpenApi Tag from Tags top level annotations/attributes
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Add ability to configure UI through configuration `yaml nelmio_api_doc: html_config: assets_mode: bundle redocly_config: expandResponses: '200,201' hi
nelmio_api_doc:
html_config:
assets_mode: bundle
redocly_config:
expandResponses: '200,201'
hideDownloadButton: true
swagger_ui_config:
deepLinking: true
Calling DocumentationExtension::getExtendedType() has been deprecated in favor of DocumentationExtension::getExtendedTypes() to align with the depreca…
DocumentationExtension::getExtendedType() has been deprecated in favor of DocumentationExtension::getExtendedTypes() to align with the deprecation introduced with symfony/symfony version 4.2.Nothing published for this version
Nothing published for this version
Added support for JMS @Discriminator annotation/attribute ```php
#[\JMS\Serializer\Annotation\Discriminator(field: 'type', map: ['car' => Car::class, 'plane' => Plane::class])]
abstract class Vehicle { }
class Car extends Vehicle { }
class Plane extends Vehicle { }
Nothing published for this version
Added support for some integer ranges (https://phpstan.org/writing-php-code/phpdoc-types#integer-ranges). Annotations attached to integer properties l
/**
* @var int<6, 11>
* @var int<min, 11>
* @var int<6, max>
* @var positive-int
* @var negative-int
*/
will be interpreted as appropriate minimum and maximum properties in the generated OpenAPI specification.Dropped support for PHP 7.2 and PHP 7.3. PHP 7.4 is the minimum required version now.
Nothing published for this version
Cache configuration option nelmio_api_doc.cache.item_id now automatically gets the area appended. `yml nelmio_api_doc: cache: pool: app.cache item_id:
nelmio_api_doc.cache.item_id now automatically gets the area appended.nelmio_api_doc:
cache:
pool: app.cache
item_id: nelmio_api_doc.docs
areas:
default:
...
area1:
...
Result in cache keys: nelmio_api_doc.docs.default & nelmio_api_doc.docs.area1 to be used respectively.nelmio_api_doc:
areas:
default: # Manual cache configuration
cache:
pool: app.cache
item_id: nelmio_api_doc.docs.default
...
area1:
cache:
pool: app.cache
item_id: nelmio_api_doc.docs.area1
...
Non-configured options will be inherited from nelmio_api_doc.cache.x-*) from configuration not being outputted in the generated specification.nelmio_api_doc:
documentation:
info:
title: 'My API'
description: 'My API description'
x-foo: 'bar'
Now results in JSON specification:{
...
"info": {
"title": "API",
"version": "1.0",
"x-foo": "bar"
},
...
}
oneOf instead of allOf.Nothing published for this version
Updated bundle directory structure to recommended file structure as described in https://symfony.com/doc/7.0/bundles/best_practices.html.
Updated bundle directory structure to recommended file structure as described in https://symfony.com/doc/7.0/bundles/best_practices.html.
It might be necessary to reinstall the assets:
bin/console assets:install
If your codebase mentions a file or directory by path then an update to this path is necessary. For example to following configuration:
doc-api:
resource: "@NelmioApiDocBundle/Resources/config/routing/swaggerui.xml"
prefix: /api/doc
Becomes:
doc-api:
resource: "@NelmioApiDocBundle/config/routing/swaggerui.xml"
prefix: /api/doc
Added bundle configuration options nelmio_api_doc.cache.pool and nelmio_api_doc.cache.item_id. `yml nelmio_api_doc: cache: pool: app.cache item_id: ne
nelmio_api_doc.cache.pool and nelmio_api_doc.cache.item_id.nelmio_api_doc:
cache:
pool: app.cache
item_id: nelmio_api_doc.docs
Added Redocly as an alternative to Swagger UI. https://github.com/Redocly/redoc.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Passing groups to PropertyDescriberInterface::describe() via the $groups parameter is deprecated, the parameter will get removed in a future version.…
PropertyDescriberInterface::describe() via the $groups parameter is deprecated, the parameter will get removed in a future version. Pass groups via $context['groups'] instead.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →