Skip to content

Releases: nelmio/NelmioApiDocBundle

2.11.0 (2015-12-04)

04 Dec 08:19
49238f4
Compare
Choose a tag to compare

Hi! This release contains a few bug fixes, but the main improvement is the support of Symfony 3.0.

Special thank to @Ener-Getick! And tank you to all other contributors.


CHANGELOG

  • Added: Symfony 3.0 support
  • Added: default-value parameter to JsonSerializableParser
  • Fixed: FOSRestBundle compatibility
  • Fixed: route host with placeholder
  • Fixed: tests
  • Fixed: empty string is now a valid default parameter value that is successfully merged with other parameters, preventing access of uninitialized array key 'default' Added functional test case for mergeParameters() that covers this issue

2.10.3 (2015-10-28)

28 Oct 17:31
Compare
Choose a tag to compare
  • Fixed: @ApiDoc parameters setting will override lower parameter definitions in the hierarchy (#739)

2.10.2 (2015-10-27)

27 Oct 16:45
8b7dfdd
Compare
Choose a tag to compare
  • Fixed: let the js library set the proper Content-type header when sending files in sandbox (#501)
  • Fixed: support Symfony 2.8+

The whole documentation has been updated!

2.10.1 (2015-10-27)

27 Oct 08:27
09bb83e
Compare
Choose a tag to compare
  • Fixed: restore 5.3 compat (implicit, see commit message: 09bb83e)
  • Fixed: options for forms were not passed through (#736)

2.10.0 (2015-10-23)

23 Oct 09:43
fb86395
Compare
Choose a tag to compare

Hi!

(Please read the text below, thanks!)

This release contains numerous fixes and a few improvements. Most of them are related to newer versions of different dependencies. For instance, this bundle now requires Symfony 2.3+ (it does not work well with 2.8|3.0 though). Take a look at the CHANGELOG section at the end of this page for more information. Thank you to all contributors!

The "Pull-Request-Gate"

I refactored the test suite a bit in order to speed it up, nothing fancy here but the feedback loop gets better. Talking about it, I am alone maintaining this bundle I've created more than 3 years ago. However, I don't have the opportunity to use it anymore, so it is rather complicated to check Pull Requests and to fix bugs. It took me some time to understand why the test suite was failing for weeks.

Now that it is back to green, I decided to close all open PRs, because CI statuses are "stale" (i.e. statuses don't reflect the real statuses of the PRs). It does not mean that I won't accept PRs anymore, but it is time to start from scratch. That is why all PRs are now closed. I hope you will better understand why I did that now (note also that I closed all PRs using the GitHub interface, that is why I didn't leave any message...).

Roadmap Proposal

Anyway, v2.10 should be pretty stable (most of the other versions were stable) and should work well with all stable Symfony versions. What I'd like to do first is:

  1. make the bundle stable = make it work well with all Symfony versions > 2.3. There is some work for the upcoming Symfony versions (> 2.7). I think it should be easy, but I need your help.
  2. fix the integration of the DunglasApiBundle. This feature introduced in a previous version is not stable enough, due to recent changes. It is an optional dependency and feature, so it should not impact many users, but it would be nice to have a good integration of this bundle, because it deserves it :)
  3. accept new features/improvements again

One More Thing

I will continue to maintain this bundle, to fix bugs, and to merge new features. This bundle has been installed more than 2 million times. 2 million. That's a lot, and it is constantly increasing (according to Packagist), which means this bundle is more and more used. Behind these numbers, there are developers just like you and me. If you use this bundle, and want to give it some love like these 100 awesome developers already, please contribute!

You can ping me on Twitter if you want to talk to me.

Thank you,
William.

CHANGELOG

  • Warning: bump Symfony requirements to 2.3
  • Warning: switched to stable version of DunglasApiBundle
  • Added: Twig 2 compatibility
  • Added: a parser for JsonSerializable classes
  • Added: support for using name in the input and output options for JsonSerializable and validation parsers
  • Added: pipe to escaped symbols of jQuery selector
  • Added: handle "array" parameter in FOSRestBundle QueryParam or RequestParam
  • Added: improve true/false/null default values on configuration
  • Added: view option to api:doc:dump command
  • Fixed: deprecated route options
  • Fixed: mistake in #720
  • Fixed: deprecated twig stuff usage
  • Fixed: ApiDocExtractor to accept callable classes as controllers
  • Fixed: prevent BC break in DunglasApiBundle
  • Fixed: change getViewCache() method visibility to private
  • Fixed: extractor view data caching
  • Fixed: prevent error "Undefined index" when no subtype provided
  • Fixed: only display filters on collections GET services
  • Fixed: deprecated FormType::setDefaultOptions() usage
  • Fixed: reverted fix "LINK workaround for firefox"

2.9.0 (2015-05-16)

16 May 17:17
de31760
Compare
Choose a tag to compare

In this release, there a two major features:

Thanks to all contributors!

Changelog

  • Added: optimization on the regex
  • Added: DunglasJsonLdApiBundle support
  • Added: Introduce the concept of 'views'
  • Added: javascript for collapsing sections in json-response
  • Added: pass children options to subform
  • Added: form options to ApiDoc input
  • Added: minor tweaks to improve UI
  • Fixed: tests and travis-ci configuration
  • Fixed: documentation
  • Fixed: DunglasApi filters supports
  • Fixed: memory limit issue wirh entity list
  • Fixed: deprecated forms setDefaultOptions method
  • Fixed: enhanced DunglasApiBundle support
  • Fixed: DunglasJsonLdApiBundle support
  • Fixed: binding of on-click handler for json-toggler
  • Fixed: usage of private service-alias
  • Fixed: not attaching api_key to query if empty
  • Fixed: sandbox with host

2.8.0 (2015-03-06)

06 Mar 10:50
f23351b
Compare
Choose a tag to compare

What's New?

A lot of fixes have been pushed since 2.7.0, but this release also contains numerous new features such as a great Swagger support, UI/UX improvements, and a few new ways to retrieve useful information.

For more information, please read the changelog below.

Changelog

  • Added: support for collections
  • Added: allow parsers to remove/replace root parameters
  • Added: support for localstorage
  • Added: support for Security annotation
  • Added: query parameters in sandbox request URL
  • Added: alternate model naming strategy
  • Added: optional color codes for tags annotation
  • Added: show/hide button and list/expand operations buttons on sections
  • Added: nested JMS groups exclusion
  • Added: ability to specify param-type of input class.
  • Added: caching layer with the controllers and routing files as resources
  • Added: Post-parser support for response map models
  • Added: default value handling
  • Added: 'type' to API item if applicable
  • Fixed: type annotations
  • Fixed: PhpDoc Handler for @link annotation and add tests
  • Fixed: display select to choose http method in sandbox
  • Fixed: form errors parser. Mirrored actual form-errors response by FOSRest. Made sure that FieldErrors is not duplicated.
  • Fixed: parsing of filters, default values, descriptions and base path in SwaggerFormatter
  • Fixed: tests by adding separate form type
  • Fixed: disabling required for HTTP PUT requests
  • Fixed: checking HTTP method type
  • Fixed: side effect introduce with list/expand buttons
  • Fixed: collection handling
  • Fixed: improve directive parsing, and separate test class for parsing directives.
  • Fixed: better regex pattern matching and added tests for parsing array<..> directives.
  • Fixed: replace incorrect jQuery.size() method
  • Fixed: honor body format before uploading file type parameters
  • Fixed: #486
  • Fixed: only show request format dropdown when there are multiple formats
  • Fixed: 'items' parameter for collections in parameters
  • Fixed: impossible to access an attribute ("custom_endpoint") on a NULL variable
  • Fixed: missing handling for DataTypes::COLLECTION in parameters (input)
  • Fixed: endpoint is undefined in sandbox when custom_endpoint is disabled
  • Fixed: the wrong endpoint value check when no endpoint is set in config
  • Fixed: Swagger commands

2.7.0 (2014-07-30)

30 Jul 09:11
Compare
Choose a tag to compare

What's New?

This release contains numerous fixes and improvements as well as new shiny features.

The sandbox now supports different authentication schemes such as http + basic or bearer. The http_basic delivery has been kept for BC purpose but will be remove at some point. You should rather use the new type parameter:

# app/config/config.yml
nelmio_api_doc:
    sandbox:
        authentication:             # default is `~` (`null`), if set, the sandbox automatically
                                    # send authenticated requests using the configured `delivery`

            name: access_token      # access token name or query parameter name or header name

            delivery: http          # `query`, `http`, and `header` are supported

            # Required if http delivery is selected.
            type:     basic         # `basic`, `bearer` are supported

The sandbox now displays better input HTML elements depending on the type of each field. It is also possible to disable the "body formats" select box and links to the Symfony web profiler have been added.

For more information, please read the changelog below.

Changelog

  • Added: new authentication configuration
  • Added: parse JSM\Inline (#372)
  • Added: if a description is not provided use form label
  • Added: workaround for Firefox not sending LINK in uppercase what then is denied by nginx. More info: http://stackoverflow.com/questions/9645037/nginx-rejects-custom-http-methods-if-not-all-upper-case
  • Added: default parameters in {JmsMetadata,Validator}Parser, and FOSRestHandler
  • Added: unified data types [actualType and subType]
  • Added: default values support for form types
  • Added: support to properly handle file upload POST
  • Added: support for different parameter types
  • Added: file type to FormTypeParser
  • Added: support for nullable option in RequestParam
  • Added: configuration option to disable body formats
  • Added: PostParserInterface to JmsMetadataParser to get ValidatorParser found children parsed
  • Added: show web profiler link in sandbox
  • Fixed: toggle click event
  • Fixed: embedded collection of custom FormType Error
  • Fixed: css for tags output
  • Fixed: don't parse custom properties as classes
  • Fixed: doubled parameters
  • Fixed: in FormTypeParser, FormType constructor should be called when possible
  • Fixed: missing array key checks
  • Fixed: small bug introduced when adding 'new parameter'
  • Fixed: wrong HTML structure a>div
  • Fixed: wrong HTML structure ul>li
  • Fixed: remove duplicate HTML ID
  • Fixed: wrong HTML tag
  • Updated: documentation, config reference

2.6.0 (2014-06-25)

25 Jun 07:01
Compare
Choose a tag to compare

What's New?

  • The @ApiDoc annotation gets a new property named tags, which allow to tag a method (e.g. beta or in-development). You can configure either a single tag or an array of tags.
  • Under the request_format configuration node, there is a new available node named request_formats, allowing you to register custom mime types for XML and JSON formats:
# app/config/config.yml
nelmio_api_doc:
    sandbox:
        request_format:
            formats:                            # default `json` and `xml`,
                json: application/json          # override to add custom formats or disable
                xml: application/xml            # default formats

Changelog

  • Added: implement Tags for functions
  • Added: request formats configuration
  • Fixed: retrieval of the validation MetadataFactory
  • Fixed: simplified the Travis configuration
  • Fixed: pressing enter in the sandbox mode will now lead to submit the form
  • Fixed: broken documentation with Validator Constraints in FOSRestBundle requirements (#357)
  • Minor improvements (documentation, tests)

2.5.2 (2014-05-16)

16 May 09:35
Compare
Choose a tag to compare
  • Fixed: only show sandbox config if enabled
  • Fixed: ValidatorParser in Symfony 2.5
  • Fixed: parse of input forms with options required
  • Fixed: Form Parser improvements for date, datetime & choice form types (format & types)