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)
4.7.0 - Sunday, 12 April 2020 (compare to previous)
4.6.0 - Wednesday, 8 April 2020 (compare to previous)
- Allow
@authenticated
to be set at controller level. (#726)
4.5.1 - Saturday, 4 April 2020 (compare to previous)
- Fix version constraint...again. (#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 (#714)
4.4.2 - Sunday, 21 March 2020 (compare to previous)
- Fixed double json encode when fetching collection in Laravel type docs (#713)
4.4.1 - Wednesday, 11 March 2020 (compare to previous)
- Support for body params as array (#710)
4.4.0 - Saturday, 7 March 2020 (compare to previous)
- Array query params can now be used and render properly (#700)
4.3.1 - Friday, 6 March 2020 (compare to previous)
- Updated Documentarian dependency for Laravel v7 (#699)
4.3.0 - Saturday, 22 February 2020 (compare to previous)
- Updated nunomaduro/collision to include v4 (#699)
- Use correct protocol for Postman collcetion URL (#697)
- Shim URL::formatRoot() on Lumen (#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 (#677)
- Fixed autogenerated docs endpoint address for Postman collection (#673)
- New Postman collection generation features (#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. (#659)
- Error when installing due to DI not working properly on constructor (#672)
- RouteMatcher to use can now be specified by user (#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 (#646)
- Added
headers
stage (#624) - Support for non-static docs, changed source files locations (#608)
- Support for Eloquent API resources (#601)
bindings
replaced by@urlParam
annotation (#599)- Better support for arrays and objects in bodyParams (#597)
- Postman collection now have the body as
raw
instead offormdata
. (#627) - Nonexistent
@responseFile
annotations now show a warning and skip the route (#620) - Use symfony/var-exporter to export PHP arrays, ensuring short array syntax (#615)
- Use single quotes in PHP example template (#612)
- Transformer annotations are now given priority over all other response strategies (#620)
- Made ResponseCalls strategy only execute if no successful responses exist. (#605)
- Hide null responses in examples. (#605)
- Made
responses
stage additive (#605) - Renamed
query
andbody
inresponse_calls
config toqueryParams
andbodyParams
(#603)
- Removed
apply.response_calls.headers
in favour ofapply.headers
(#603) - Removed bindings in response_calls (#599)
- ResponseCalls: Call Lumen application correctly since it does not use HttpKernel (#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 (#570)
- Exclude Laravel Telescope routes when present (#579)
- Set status code for transformer response from tag if present (#581)
- Set status code for response call from actual response (#581)
- Removed references to removed helper functions in 6.0 (#576)
- Support for Laravel 6 (https://github.com/mpociot/laravel-apidoc-generator/commit/f7dd8d19b75755763e8e20ab4025075eba5cd51a)
- Use HTTPS in Postman collection if base_url is HTTPS (#575)
- Support for Laravel 6 (#572)
- Ability to exclude a query or body parameter from being included in the example requests (#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. (#556) - Pass the verbosity level down to the Collision library. (#556)
- Support for query parameters in the bash template (#545)
- Include query parameters and headers in the generated Postman collection (#537)
- Include Python out of the box as example language (#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 (#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 (#523)
- Support for PHP array callable syntax in route action (#516)
- Added faker_seed (https://github.com/mpociot/laravel-apidoc-generator/commit/d2901e51a68c17066d4dd96054ff5bfdf124945b)
- Support for URL paths in include/exclude rules (#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 (#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 (#504) - Added
default_group
key to replaceungrouped_name
(https://github.com/mpociot/laravel-apidoc-generator/commit/72b5f546c1b84e69fe43c720a04f448c3b96e345)
- Option to seed faker for deterministic output (#503)
- Support for binding prefixes (#498)
- Ability to override Laravel
config
(#496) - Allow override of the name 'general' for ungrouped routes (#491)
- Use parameter-bound URL in doc examples (#500)
- Request router now matches when router has sub-domain (#493)
- Allow users specify custom Content-type header for Markdown examples (#486)
- Ignore scalar type hints when checking for FormRequests (#474)
- Ability to set cookies on response calls (#471)
- Support for Lumen 5.7 (#467)
- Ability to specify array and object body/query params using dot notation (#445)
- Ability to specify name and description of Postman collection (#443)
- Postman collection and documentation base URL now uses
config('app.url')
(#458)
- Fixed vendor tags (#444)
- Ability to replace json key values in response file (#434)
- Support for custom transfer serializers (#441)
- API groups are now sorted "naturally" (#428)
- Partial resource controllers are now properly supported (#429)
- PUT request body now formatted as
urlencoded
in Postman collection (#418) @responseFile
strategy now properly renders responses (#427)
- Ability to specify different responses for different status codes. (#416)
- Add
ResponseFileStrategy
to retrieve responses from files. (#410)
- Switch from
jQuery
tofetch
in JavaScript examples. (#411)
include
andexclude
route options now support wildcards (#409)
- Make
router
option case-insensitive (#407)
- Replaced use of
Storage::copy
with PHP'scopy
to work with absolute paths (#404)
- Replaced use of
config_path
with more generic option for better Lumen compatibility (#398)
- Ability to specify examples for body and query parameters (#394)
- Rendering of example requests' descriptions (#393)
- Rendering of query parameters' descriptions (#387)
- Official Lumen support (#382)
@queryParam
annotation (#383)@bodyParam
annotation (#362, #366)@authenticated
annotation (#369)- Ability to override the controller
@group
from the method. (#372) - Ability to use a custom logo (#368)
- Moved from command-line options to a config file (#362)
- Commands have been renamed to the
apidoc
namespace (previouslyapi
). (#350) - The
update
command has been renamed torebuild
and now uses the output path configured in the config file. (#370) @resource
renamed to@group
(#371)- Added more configuration options for response calls (#377)
- FormRequest parsing is no longer supported (#362)