All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
4.8.0 - Saturday, 2 May 2020 (compare to previous)
- Support @hideFromAPIDocumentation on controllers. (mpociot#745)
- Allow strategies to return null. (mpociot#739)
4.7.0 - Sunday, 12 April 2020 (compare to previous)
- Support for Laravel Vapor. (mpociot#729)
- Allow customization of static output path. (mpociot#730)
4.6.0 - Wednesday, 8 April 2020 (compare to previous)
- Allow
@authenticated
to be set at controller level. (mpociot#726)
4.5.1 - Saturday, 4 April 2020 (compare to previous)
- Fix version constraint...again. (mpociot#725)
4.5.0 - Tuesday, 31 March 2020 (compare to previous)
- Fix version constraints preventing installation on some Laravel 7 installations.
4.4.3 - Thursday, 26 March 2020 (compare to previous)
- Fixed link to Postman connection in docs when Laravel autoload is used (mpociot#714)
4.4.2 - Sunday, 21 March 2020 (compare to previous)
- Fixed double json encode when fetching collection in Laravel type docs (mpociot#713)
4.4.1 - Wednesday, 11 March 2020 (compare to previous)
- Support for body params as array (mpociot#710)
4.4.0 - Saturday, 7 March 2020 (compare to previous)
- Array query params can now be used and render properly (mpociot#700)
4.3.1 - Friday, 6 March 2020 (compare to previous)
- Updated Documentarian dependency for Laravel v7 (mpociot#699)
4.3.0 - Saturday, 22 February 2020 (compare to previous)
- Updated nunomaduro/collision to include v4 (mpociot#699)
- Use correct protocol for Postman collcetion URL (mpociot#697)
- Shim URL::formatRoot() on Lumen (mpociot#688)
- Made "Skipping route" message more descriptive (https://github.com/mpociot/laravel-apidoc-generator/commit/6f61469a9fa8be30e7812cf622a7832163a08bb8)
- Set a default value for the routematcher when fetching from config (mpociot#677)
- Fixed autogenerated docs endpoint address for Postman collection (mpociot#673)
- New Postman collection generation features (mpociot#666):
- Properly handle url parameters using the
:param
syntax (opposed to the Laravel-esque{param}
syntax) - Allow configuring the auth section of Postman collection config
- Add some documentation that was available but not exported in the Postman collection (for URL params and query params)
- Properly handle url parameters using the
- The package can now create a documentation endpoint automatically for
laravel
-type routes. This also allows users to install the package on dev-only enviornments but have their routes available in others, without writing custom routing code. (mpociot#659)
- Error when installing due to DI not working properly on constructor (mpociot#672)
- RouteMatcher to use can now be specified by user (mpociot#657)
- Also copy custom logo for non-static docs (https://github.com/mpociot/laravel-apidoc-generator/commit/720f9c9e9b2443bcfb474b959febaf6cf5c3f004)
- Fixed missing body parameters in response calls (https://github.com/mpociot/laravel-apidoc-generator/commit/5d9371c14391485630941c718d7f168afd540126)
- Add slashes to header values in bash templates to escape special chars (https://github.com/mpociot/laravel-apidoc-generator/commit/e693d746b1c1daf342c28e53daa8f7b34ce9da2b)
- Fixed iteration over null bug - set responses to empty array (https://github.com/mpociot/laravel-apidoc-generator/commit/a24b1e14b17ade8fb4aa1534448904e1075b004c)
- Update rebuild command to work with new docs locations (mpociot#646)
- Added
headers
stage (mpociot#624) - Support for non-static docs, changed source files locations (mpociot#608)
- Support for Eloquent API resources (mpociot#601)
bindings
replaced by@urlParam
annotation (mpociot#599)- Better support for arrays and objects in bodyParams (mpociot#597)
- Postman collection now have the body as
raw
instead offormdata
. (mpociot#627) - Nonexistent
@responseFile
annotations now show a warning and skip the route (mpociot#620) - Use symfony/var-exporter to export PHP arrays, ensuring short array syntax (mpociot#615)
- Use single quotes in PHP example template (mpociot#612)
- Transformer annotations are now given priority over all other response strategies (mpociot#620)
- Made ResponseCalls strategy only execute if no successful responses exist. (mpociot#605)
- Hide null responses in examples. (mpociot#605)
- Made
responses
stage additive (mpociot#605) - Renamed
query
andbody
inresponse_calls
config toqueryParams
andbodyParams
(mpociot#603)
- Removed
apply.response_calls.headers
in favour ofapply.headers
(mpociot#603) - Removed bindings in response_calls (mpociot#599)
- ResponseCalls: Call Lumen application correctly since it does not use HttpKernel (mpociot#585)
- Update usage of
clean*Parameters
in python template (https://github.com/mpociot/laravel-apidoc-generator/commit/02fb719d0d6c25e6ce72f30dc8b9604449061156) - Bugfix: really exclude parameters from examples, not just send empty strings (https://github.com/mpociot/laravel-apidoc-generator/commit/762e2e1003d389d6e785d31144eca89c40515926, https://github.com/mpociot/laravel-apidoc-generator/commit/e54b474578b53f97f4737664a63131b315aaf82d)
- Switched to a plugin architecture that allows support for external strategies (mpociot#570)
- Exclude Laravel Telescope routes when present (mpociot#579)
- Set status code for transformer response from tag if present (mpociot#581)
- Set status code for response call from actual response (mpociot#581)
- Removed references to removed helper functions in 6.0 (mpociot#576)
- Support for Laravel 6 (https://github.com/mpociot/laravel-apidoc-generator/commit/f7dd8d19b75755763e8e20ab4025075eba5cd51a)
- Use HTTPS in Postman collection if base_url is HTTPS (mpociot#575)
- Support for Laravel 6 (mpociot#572)
- Ability to exclude a query or body parameter from being included in the example requests (mpociot#552)
- Backwards compatibility for the changes to
@group
introduced in 3.12.0 (https://github.com/mpociot/laravel-apidoc-generator/commit/5647eda35ebb7f8aed35b31790c5f220b736e985)
- Specifying an
@group
for a method no longer requires you to add the description. (mpociot#556) - Pass the verbosity level down to the Collision library. (mpociot#556)
- Support for query parameters in the bash template (mpociot#545)
- Include query parameters and headers in the generated Postman collection (mpociot#537)
- Include Python out of the box as example language (mpociot#524)
- Moved nunomaduro/collision to "suggested" so it doesn't break PHP 7.0 (https://github.com/mpociot/laravel-apidoc-generator/commit/2f3a2144e1a4f1eb0229aea8b4d11707cb4aabbf)
- Stopped using config helper inside config file (mpociot#548)
--verbose
flag to show exception encountered when making response calls (https://github.com/mpociot/laravel-apidoc-generator/commit/dc987f296e5a3d073f56c67911b2cb61ae47e9dc)
- Postman collections and URLs in example requests now use the
apidoc.base_url
config variable (mpociot#523)
- Support for PHP array callable syntax in route action (mpociot#516)
- Added faker_seed (https://github.com/mpociot/laravel-apidoc-generator/commit/d2901e51a68c17066d4dd96054ff5bfdf124945b)
- Support for URL paths in include/exclude rules (mpociot#507)
- Handle exception for no URL::forceRootURL() method in Lumen (https://github.com/mpociot/laravel-apidoc-generator/commit/2146fa114dc18bc32c00b5c5550266d753d5aef3)
- Url parameter bindings (https://github.com/mpociot/laravel-apidoc-generator/commit/f0dc118c6b7792894bf9baa352d7fc4ca8ca74b5)
- Support for
@queryParams
in Dingo FormRequests (mpociot#506) - Easier customisation of example languages (https://github.com/mpociot/laravel-apidoc-generator/commit/0aa737a2e54a913eab4d024a1644c5ddd5dee8b8)
- Include PHP as example language (https://github.com/mpociot/laravel-apidoc-generator/commit/c5814762fa52095fe645716554839b6ae110ef89)
- Support for
@queryParams
in FormRequests (mpociot#504) - Added
default_group
key to replaceungrouped_name
(https://github.com/mpociot/laravel-apidoc-generator/commit/72b5f546c1b84e69fe43c720a04f448c3b96e345)
- Option to seed faker for deterministic output (mpociot#503)
- Support for binding prefixes (mpociot#498)
- Ability to override Laravel
config
(mpociot#496) - Allow override of the name 'general' for ungrouped routes (mpociot#491)
- Use parameter-bound URL in doc examples (mpociot#500)
- Request router now matches when router has sub-domain (mpociot#493)
- Allow users specify custom Content-type header for Markdown examples (mpociot#486)
- Ignore scalar type hints when checking for FormRequests (mpociot#474)
- Ability to set cookies on response calls (mpociot#471)
- Support for Lumen 5.7 (mpociot#467)
- Support for Laravel 5.8 (mpociot#462)
- Ability to annotate body parameters on FormRequest (mpociot#460)
- Ability to specify array and object body/query params using dot notation (mpociot#445)
- Ability to specify name and description of Postman collection (mpociot#443)
- Postman collection and documentation base URL now uses
config('app.url')
(mpociot#458)
- Fixed vendor tags (mpociot#444)
- Ability to replace json key values in response file (mpociot#434)
- Support for custom transfer serializers (mpociot#441)
- API groups are now sorted "naturally" (mpociot#428)
- Partial resource controllers are now properly supported (mpociot#429)
- PUT request body now formatted as
urlencoded
in Postman collection (mpociot#418) @responseFile
strategy now properly renders responses (mpociot#427)
- Ability to specify different responses for different status codes. (mpociot#416)
- Add
ResponseFileStrategy
to retrieve responses from files. (mpociot#410)
- Switch from
jQuery
tofetch
in JavaScript examples. (mpociot#411)
include
andexclude
route options now support wildcards (mpociot#409)
- Make
router
option case-insensitive (mpociot#407)
- Replaced use of
Storage::copy
with PHP'scopy
to work with absolute paths (mpociot#404)
- Replaced use of
config_path
with more generic option for better Lumen compatibility (mpociot#398)
- Ability to specify examples for body and query parameters (mpociot#394)
- Rendering of example requests' descriptions (mpociot#393)
- Rendering of query parameters' descriptions (mpociot#387)
- Official Lumen support (mpociot#382)
@queryParam
annotation (mpociot#383)@bodyParam
annotation (mpociot#362, mpociot#366)@authenticated
annotation (mpociot#369)- Ability to override the controller
@group
from the method. (mpociot#372) - Ability to use a custom logo (mpociot#368)
- Moved from command-line options to a config file (mpociot#362)
- Commands have been renamed to the
apidoc
namespace (previouslyapi
). (mpociot#350) - The
update
command has been renamed torebuild
and now uses the output path configured in the config file. (mpociot#370) @resource
renamed to@group
(mpociot#371)- Added more configuration options for response calls (mpociot#377)
- FormRequest parsing is no longer supported (mpociot#362)