Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
4e939f7
Version bump
Sep 24, 2024
12d0f33
use lower casing on module name everywhere
jclausen Sep 25, 2024
ad82196
add boxlang to matrix
otisnado Dec 6, 2024
f24031d
ci: enable workflow dispatch to run test from trigger
otisnado Jan 24, 2025
7b0db55
fix: rename server-boxlag@1.json to server-boxlang@1.json
otisnado Jan 24, 2025
8c168b6
change repository directory to match 12d0f33739ad7fcf4bc625c5edfa1d0d…
otisnado Jan 26, 2025
240dd47
set default working directory due module name is in lower case
otisnado Jan 26, 2025
4cd4bc3
EnricoMi/publish-unit-test-result-action@v2 and actions/upload-artifa…
otisnado Jan 26, 2025
c01fe65
ci: upgrade deprecated version of actions/upload-artifact
otisnado Jan 31, 2025
6a9032e
build: install commandbox-boxlang with force till commandbox 6.2.0
otisnado Jan 31, 2025
dd635f7
ci: use ubuntu-24.04 runner
otisnado Feb 5, 2025
ba765ff
add lucee@6 to matrix
jclausen Nov 1, 2024
9f480af
Generate cbValidation constraints from Swagger docs
elpete Feb 11, 2025
f2531db
BoxLang compatibility
elpete Feb 13, 2025
57953e1
Merge pull request #45 from coldbox-modules/generate_cbvalidation_con…
jclausen Feb 16, 2025
dbcaa0b
Merge branch 'main' into development
jclausen Oct 1, 2025
66c3279
Trigger build
elpete Oct 27, 2025
c82579c
Fix BoxLang and expand testing matrix
elpete Oct 27, 2025
4cf958c
Add Java version for ACF 2025
elpete Oct 27, 2025
2403854
Mark BoxLang Prime as experimental for now
elpete Oct 27, 2025
2c313ff
Use Java 21 for CommandBox
elpete Oct 27, 2025
7b96ca9
Specify more Java versions
elpete Oct 27, 2025
da7c732
Make experimental tests able to fail
elpete Oct 28, 2025
4a9956d
Merge pull request #48 from coldbox-modules/fix_boxlang
jclausen Oct 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:

formatCheck:
name: Checks Source Code Formatting
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
steps:
- name: Checkout Repository
uses: actions/checkout@v3
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ on:
type: boolean

env:
MODULE_ID: cbSwagger
MODULE_ID: cbswagger
SNAPSHOT: ${{ inputs.snapshot || false }}

jobs:
Expand All @@ -25,7 +25,7 @@ jobs:
##########################################################################################
build:
name: Build & Publish
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
steps:
- name: Checkout Repository
uses: actions/checkout@v3
Expand Down Expand Up @@ -133,7 +133,7 @@ jobs:
prep_next_release:
name: Prep Next Release
if: github.ref == 'refs/heads/main'
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: [build]
steps:
# Checkout development
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/snapshot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
branches:
- 'development'
workflow_dispatch:

jobs:
##########################################################################################
Expand All @@ -18,7 +19,7 @@ jobs:
##########################################################################################
format:
name: Code Auto-Formatting
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v3

Expand Down
77 changes: 48 additions & 29 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,32 +10,65 @@ on:
jobs:
tests:
name: Tests
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
defaults:
run:
working-directory: ${{ github.workspace }}/cbswagger
env:
DB_USER: root
DB_PASSWORD: root
continue-on-error: ${{ matrix.experimental }}
strategy:
fail-fast: false
matrix:
cfengine: [ "lucee@5", "adobe@2018", "adobe@2021" ]
coldboxVersion: [ "^6.0.0" ]
cfengine: [ "lucee@5", "lucee@6" ,"adobe@2018", "adobe@2021", "adobe@2023", "adobe@2025", "boxlang-cfml@1" ]
coldboxVersion: [ "^6.0.0", "^7.0.0", "^8.0.0" ]
experimental: [ false ]
include:
- cfengine: "adobe@2023"
coldboxVersion: "^6.0.0"
- coldboxVersion: "^8.0.0"
cfengine: "boxlang@1"
experimental: true
- coldboxVersion: "be"
cfengine: "lucee@5"
experimental: true
- coldboxVersion: "be"
cfengine: "lucee@6"
experimental: true
- coldboxVersion: "be"
cfengine: "lucee@be"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2018"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2021"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2023"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2025"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@be"
experimental: true
- coldboxVersion: "be"
cfengine: "boxlang@1"
experimental: true
- coldboxVersion: "be"
cfengine: "boxlang@be"
experimental: true
- coldboxVersion: "be"
cfengine: "boxlang-cfml@1"
experimental: true
- coldboxVersion: "be"
cfengine: "boxlang-cfml@be"
experimental: true
steps:
- name: Checkout Repository
uses: actions/checkout@v3
uses: actions/checkout@v5
with:
path: cbswagger

# - name: Setup Database and Fixtures
# run: |
Expand All @@ -44,31 +77,17 @@ jobs:
# mysql -u${{ env.DB_USER }} -p${{ env.DB_PASSWORD }} < test-harness/tests/resources/coolblog.sql

- name: Setup Java
uses: actions/setup-java@v3
uses: actions/setup-java@v5
with:
distribution: "temurin"
java-version: "11"
java-version: 21

- name: Setup CommandBox CLI
uses: Ortus-Solutions/setup-commandbox@v2.0.1

# Not Needed in this module
#- name: Setup Environment For Testing Process
# run: |
# # Setup .env
# touch .env
# # ENV
# printf "DB_HOST=localhost\n" >> .env
# printf "DB_DATABASE=mydatabase\n" >> .env
# printf "DB_DRIVER=MySQL\n" >> .env
# printf "DB_USER=${{ env.DB_USER }}\n" >> .env
# printf "DB_PASSWORD=${{ env.DB_PASSWORD }}\n" >> .env
# printf "DB_CLASS=com.mysql.cj.jdbc.Driver\n" >> .env
# printf "DB_BUNDLEVERSION=8.0.19\n" >> .env
# printf "DB_BUNDLENAME=com.mysql.cj\n" >> .env

- name: Install Test Harness with ColdBox ${{ matrix.coldboxVersion }}
run: |
box install commandbox-boxlang --force
box install
cd test-harness
box package set dependencies.coldbox=${{ matrix.coldboxVersion }}
Expand All @@ -88,16 +107,16 @@ jobs:
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
junit_files: test-harness/tests/results/**/*.xml
junit_files: ${{ github.workspace }}/cbswagger/test-harness/tests/results/**/*.xml
check_name: "${{ matrix.cfengine }} ColdBox ${{ matrix.coldboxVersion }} Test Results"

- name: Upload Test Results to Artifacts
if: always()
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: test-results-${{ matrix.cfengine }}-${{ matrix.coldboxVersion }}
path: |
test-harness/tests/results/**/*
${{ github.workspace }}/cbswagger/test-harness/tests/results/**/*

- name: Show Server Log On Failures
if: ${{ failure() }}
Expand All @@ -106,12 +125,12 @@ jobs:

- name: Upload Debug Logs To Artifacts
if: ${{ failure() }}
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: Failure Debugging Info - ${{ matrix.cfengine }} - ${{ matrix.coldboxVersion }}
path: |
.engine/**/logs/*
.engine/**/WEB-INF/cfusion/logs/*
${{ github.workspace }}/cbswagger/.engine/**/logs/*
${{ github.workspace }}/cbswagger/.engine/**/WEB-INF/cfusion/logs/*

- name: Slack Notifications
# Only on failures and NOT in pull requests
Expand Down
2 changes: 1 addition & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"isPhysicalDirectoryPath": false
},
{
"logicalPath": "/cbSwagger",
"logicalPath": "/cbswagger",
"directoryPath": "./",
"isPhysicalDirectoryPath": false
}
Expand Down
12 changes: 6 additions & 6 deletions ModuleConfig.cfc
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
component {

// Module Properties
this.title = "cbSwagger";
this.title = "cbswagger";
this.author = "Jon Clausen <jon_clausen@silowebworks.com>";
this.webURL = "https://github.com/coldbox-modules/cbSwagger";
this.webURL = "https://github.com/coldbox-modules/cbswagger";
this.version = "@version.number@+@build.number@";
this.description = "A coldbox module to auto-generate Swagger API documentation from your configured routes";
this.entryPoint = "cbSwagger";
this.modelNamespace = "cbSwagger";
this.cfmapping = "cbSwagger";
this.entryPoint = "cbswagger";
this.modelNamespace = "cbswagger";
this.cfmapping = "cbswagger";
this.autoMapModels = true;
this.dependencies = [ "swagger-sdk" ];

Expand Down Expand Up @@ -75,7 +75,7 @@ component {
// A list of tags used by the specification with additional metadata.
// https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#tagObject
"tags" : [],
// Whether to enable endpoint and parsed doc caching by cbSwagger
// Whether to enable endpoint and parsed doc caching by cbswagger
"cacheEnabled" : true
};

Expand Down
14 changes: 7 additions & 7 deletions box.json
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
{
"name":"cbSwagger",
"version":"3.1.2",
"name":"cbswagger",
"version":"3.1.3",
"location":"https://downloads.ortussolutions.com/ortussolutions/coldbox-modules/cbswagger/@build.version@/cbswagger-@build.version@.zip",
"author":"Ortus Solutions, Corp",
"slug":"cbSwagger",
"slug":"cbswagger",
"type":"modules",
"keywords":"Swagger,OpenAPI,API Docs",
"homepage":"https://github.com/coldbox-modules/cbSwagger",
"documentation":"https://github.com/coldbox-modules/cbSwagger/wiki",
"homepage":"https://github.com/coldbox-modules/cbswagger",
"documentation":"https://github.com/coldbox-modules/cbswagger/wiki",
"repository":{
"type":"git",
"url":"https://github.com/coldbox-modules/cbSwagger"
"url":"https://github.com/coldbox-modules/cbswagger"
},
"bugs":"https://github.com/coldbox-modules/cbSwagger/issues",
"bugs":"https://github.com/coldbox-modules/cbswagger/issues",
"shortDescription":"A Coldbox Module which automatically generates api documentation from your configured SES routes",
"license":[
{
Expand Down
2 changes: 1 addition & 1 deletion build/.travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ notifications:
env:
# Fill out these global variables for build process
global:
- MODULE_ID=cbSwagger
- MODULE_ID=cbswagger
matrix:
- ENGINE=lucee@5
- ENGINE=adobe@2016
Expand Down
23 changes: 12 additions & 11 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Changed

- 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](https://github.com/coldbox-modules/cbSwagger/issues/28)
* 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](https://github.com/coldbox-modules/cbswagger/issues/28)

### Added

- 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](https://github.com/coldbox-modules/cbSwagger/issues/37)
- Added `cbswagger` endpoint caching ( defaults to `true` ) and `cacheEnabled` setting.
- Added URL convention for clearing/bypassing endpoint cache ( `swaggerCache=false` )
* 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](https://github.com/coldbox-modules/cbswagger/issues/37)
* Added `cbswagger` endpoint caching ( defaults to `true` ) and `cacheEnabled` setting.
* Added URL convention for clearing/bypassing endpoint cache ( `swaggerCache=false` )

## [2.7.0] => 2021-OCT-1

Expand Down Expand Up @@ -113,6 +113,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

- `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 the `moduleSettings` struct instead of top-level in the `config/ColdBox.cfc`. Make sure you move your settings.

- `feature` : You can now pass a `format` to the `/cbSwagger` endpoint to either get the OpenAPI doc as `json` or `yml`. Eg: `/cbswagger?format=yml`
Expand Down Expand Up @@ -200,4 +201,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

[3.1.1]: https://github.com/coldbox-modules/cbSwagger/compare/v3.1.0...v3.1.1

[3.0.0]: https://github.com/coldbox-modules/cbSwagger/compare/5be045e7bd456304f3e338fd5e4f5ca94342dad0...v3.0.0
[3.0.0]: https://github.com/coldbox-modules/cbswagger/compare/5be045e7bd456304f3e338fd5e4f5ca94342dad0...v3.0.0
Loading
Loading