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.
3.1.2 - 2024-09-24
- Coldbox 7 updates for router declarations which don't declare a handler
3.1.1 - 2024-06-05
- Fix
box.json
version ofswagger-sdk
3.0.0 - 2024-05-30
- Interaction to WireBox via base test case and not application scope
- Removed support for Adobe Coldfusion 2016
- Removes
default
key from response object if empty and other status code keys are present Issue #28
- Virtual application testing
- Updated github actions
- Updated module template provisions
- Added support for samples path shortcut annotation (
~
) in annotation JSON$ref
pointers - Added support for using globbing patterns in
excludeRoutes
array. Issue #37 - Added
cbswagger
endpoint caching ( defaults totrue
) andcacheEnabled
setting. - Added URL convention for clearing/bypassing endpoint cache (
swaggerCache=false
)
- Added the ability to excludes routes by prefix
- Regression on
@tags
being json syntax
- Added the ability to add
@tags
to annotations so they can show up on the operations metadata as array oftags
- Removed
externalDocs
from theinfo
struct as it is not supported on the OpenApi Spec v3.
operationID
renamed tox-coldbox-operation
since they are ColdBox centric. It was also causing issues usingoperationID
as it needed to be unique across the entire swagger document.
- Add CORS support for cbswagger endpoint #25
- On lucee the
displayName
defaults toComponent
, skipping this default to select the correctoperationId
for the resource - The
moduleName
hint for theappendFunctionInfo
was mispelled
- When defining external files in annotations, you can now prefix them with
~
and this will expand to the module setting ofsamplesPath
. This way you can write your annotations in a more cleaner manner. - Auto-publishing of changelog's to github
- New changelog looks according to keepachangelog.com
- Updates to support ColdBox 6
- Allow
@security
annotation to override the security mechanisms defined in config. The value can be a JSON array of security directives, a file pointer, or for convenience the name of a security schema. See readme for examples. - Support for discovering responses and examples by conventions in the
resources/apidocs
folder convention. See readme for examples. - Ability to exclude routes from the generated spec via the
excludeRoutes
configuration key.
- Add default
samplesPath
config item toresources/apidocs
in the ModuleConfig - Add convention samples parsing and refactor segment parsing to separate methods
- Fixes for new router syntax not parsing actions correctly or not taking into account actions attached to verbs
-
feature
: Upgraded to swagger-sdk 2.0.0 to support OpenAPI 3.0.x. A great guide on migrating is here: https://blog.readme.io/an-example-filled-guide-to-swagger-3-2/ -
Migrated
cbswagger
settings to themoduleSettings
struct instead of top-level in theconfig/ColdBox.cfc
. Make sure you move your settings. -
feature
: You can now pass aformat
to the/cbswagger
endpoint to either get the OpenAPI doc asjson
oryml
. Eg:/cbswagger?format=yml
-
feature
: You have two distinct routes for the json and yml formats:/cbswagger/json
and/cbswagger/yml
-
You can choose your default output format via the module settings:
defaultFormat
setting. Valid options arejson
andyml
-
features
: Support for ColdBox 5 event routing and response routing. -
improvement
: You can now tag your handlers with adisplayName
that will be used for operation ID building -
improvement
: Improved the way operation Ids are reported so they can be unique when reusing handler actions. -
improvement
: RefactoredcreateLinkedHashMap()
->structNew( "ordered" )
-
improvement
: Removed lucee 4.5, acf11 support.
- Fix for detecting ColdBox 5
- Update build process for new module standards
- ColdBox 5 Compatiblity for inherited entry points
- Non RESTFul action params where not being translated on routes.
- Fixed
int32
tointeger
on examples and tests so they can validate in the schema
- Added Editor standards
- Fix to modules invocation path on RouteParser when no cfmapping defined.
- Updates to readme
- Set the contact object and license object according to spec 2 defaults
- Default the API schemes to http/s
- Dropped cf10 from automated tests
- Added API Docs to S3 via Travis
- Fixes a bug where an error was thrown when an api route does not contain a handler
- Implements parsing of Coldbox route parameter types
- Adds new function metadata handling for parameters and responses
- Auto maps hints provided in function metadata to as method descriptions
- Add
$ref
sanitization and inherited metadata introspection - Add the ability to handle arrays returned from
$ref
keys. Prepends moudule routing to operation id - ACF syntax corrections and add better throw for attempts to parse component with syntax errors
- Normalization to new module templates
- HTTP Verbs should be lower case #1
- Exception when
handler
ormodule
does not exist in a route.
- Overall syntax Ortus standards
- Some var scoping issues
- Added persistence and injections to services
- Added more documentation to handler, services and readme
- Added swagger-sdk as a module dependency
- Add module introspection
- Forgebox integration updates
- Initial Module Release