From 9b57e2bd10af25936462cbf50aab6aad6fac7c1d Mon Sep 17 00:00:00 2001
From: Github Actions
Date: Tue, 17 Mar 2026 11:38:16 +0000
Subject: [PATCH 1/8] Version bump
---
box.json | 2 +-
changelog.md | 5 ++++-
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/box.json b/box.json
index 22f3d9e..5c400cd 100755
--- a/box.json
+++ b/box.json
@@ -1,6 +1,6 @@
{
"name":"Vite Based ColdBox Template",
- "version":"8.2.0",
+ "version":"8.3.0",
"author":"You",
"location":"forgeboxStorage",
"slug":"cbtemplate-vite",
diff --git a/changelog.md b/changelog.md
index 67fc405..c23800b 100644
--- a/changelog.md
+++ b/changelog.md
@@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
+## [8.2.0] - 2026-03-17
+
## [8.1.0] - 2025-10-10
## [8.0.1] - 2025-06-11
@@ -46,7 +48,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Cleanup of `tests` to new standards
- Added routing conventions to make it easier for the cli to add routes.
-[unreleased]: https://github.com/coldbox-templates/vite/compare/v8.1.0...HEAD
+[unreleased]: https://github.com/coldbox-templates/vite/compare/v8.2.0...HEAD
+[8.2.0]: https://github.com/coldbox-templates/vite/compare/v8.1.0...v8.2.0
[8.1.0]: https://github.com/coldbox-templates/vite/compare/v8.0.1...v8.1.0
[8.0.1]: https://github.com/coldbox-templates/vite/compare/v7.4.0...v8.0.1
[7.4.0]: https://github.com/coldbox-templates/vite/compare/v7.2.0...v7.4.0
From 48d52e41b294d6ab7b02c514736b97d6bcb2140c Mon Sep 17 00:00:00 2001
From: Luis Majano
Date: Fri, 1 May 2026 12:18:49 -0400
Subject: [PATCH 2/8] Added BoxLang Format
---
.bxformat.json | 125 +++++++++++++++++++++++++++++++++++++++++++++++++
.cfformat.json | 63 -------------------------
2 files changed, 125 insertions(+), 63 deletions(-)
create mode 100644 .bxformat.json
delete mode 100644 .cfformat.json
diff --git a/.bxformat.json b/.bxformat.json
new file mode 100644
index 0000000..ad1d254
--- /dev/null
+++ b/.bxformat.json
@@ -0,0 +1,125 @@
+{
+ "indentSize" : 4,
+ "tabIndent" : true,
+ "maxLineLength" : 115,
+ "newLine" : "\n",
+ "singleQuote" : false,
+ "preserveStringQuotes" : false,
+ "alignConsecutiveAssignments" : true,
+ "alignConsecutiveProperties" : true,
+ "bracketPadding" : true,
+ "parensPadding" : true,
+ "binaryOperatorsPadding" : true,
+ "semicolons" : true,
+ "cfFormatCompatibility" : true,
+ "sourceType" : null,
+ "struct" : {
+ "padding" : true,
+ "empty_padding" : false,
+ "quote_keys" : false,
+ "separator" : " : ",
+ "multiline" : {
+ "element_count" : 2,
+ "comma_dangle" : false,
+ "leading_comma" : {
+ "enabled" : false,
+ "padding" : true
+ },
+ "min_length" : 60
+ }
+ },
+ "property" : {
+ "multiline" : {
+ "element_count" : 3,
+ "comma_dangle" : false,
+ "leading_comma" : {
+ "enabled" : false,
+ "padding" : true
+ },
+ "min_length" : 30
+ },
+ "key_value" : {
+ "padding" : false
+ }
+ },
+ "array" : {
+ "padding" : true,
+ "empty_padding" : false,
+ "multiline" : {
+ "element_count" : 2,
+ "comma_dangle" : false,
+ "leading_comma" : {
+ "enabled" : false,
+ "padding" : true
+ },
+ "min_length" : 50
+ }
+ },
+ "for_loop_semicolons" : {
+ "padding" : true
+ },
+ "function" : {
+ "style" : "preserve",
+ "parameters" : {
+ "padding" : true,
+ "empty_padding" : false,
+ "comma_dangle" : false,
+ "multiline_count" : 3,
+ "multiline_length" : 50
+ },
+ "arrow" : {
+ "parens" : "always"
+ }
+ },
+ "arguments" : {
+ "padding" : true,
+ "empty_padding" : false,
+ "comma_dangle" : false,
+ "multiline_count" : 3,
+ "multiline_length" : 50
+ },
+ "braces" : {
+ "style" : "same-line",
+ "require_for_single_statement" : true,
+ "else" : {
+ "style" : "same-line"
+ }
+ },
+ "operators" : {
+ "position" : "end",
+ "comparison_style" : "preserve",
+ "ternary" : {
+ "style" : "flat",
+ "question_position" : "start"
+ }
+ },
+ "chain" : {
+ "break_count" : 3,
+ "break_length" : 2147483647
+ },
+ "template" : {
+ "component_prefix" : "bx",
+ "indent_content" : true,
+ "single_attribute_per_line" : false,
+ "self_closing" : false
+ },
+ "import" : {
+ "sort" : false,
+ "group" : false
+ },
+ "comments" : {
+ "preserve_blank_lines" : true,
+ "wrap" : false
+ },
+ "class" : {
+ "member_order" : "preserve",
+ "member_spacing" : 1,
+ "property_order" : "preserve",
+ "method_order" : "preserve",
+ "method_grouping" : false
+ },
+ "sql" : {
+ "uppercase_keywords" : true,
+ "indent_clauses" : true
+ }
+}
\ No newline at end of file
diff --git a/.cfformat.json b/.cfformat.json
deleted file mode 100644
index 443ef67..0000000
--- a/.cfformat.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "array.empty_padding": false,
- "array.padding": true,
- "array.multiline.min_length": 50,
- "array.multiline.element_count": 2,
- "array.multiline.leading_comma.padding": true,
- "array.multiline.leading_comma": false,
- "alignment.consecutive.assignments": true,
- "alignment.consecutive.properties": true,
- "alignment.consecutive.params": true,
- "alignment.doc_comments" : true,
- "brackets.padding": true,
- "comment.asterisks": "align",
- "binary_operators.padding": true,
- "for_loop_semicolons.padding": true,
- "function_call.empty_padding": false,
- "function_call.padding": true,
- "function_call.multiline.leading_comma.padding": true,
- "function_call.casing.builtin": "cfdocs",
- "function_call.casing.userdefined": "camel",
- "function_call.multiline.element_count": 3,
- "function_call.multiline.leading_comma": false,
- "function_call.multiline.min_length": 50,
- "function_declaration.padding": true,
- "function_declaration.empty_padding": false,
- "function_declaration.multiline.leading_comma": false,
- "function_declaration.multiline.leading_comma.padding": true,
- "function_declaration.multiline.element_count": 3,
- "function_declaration.multiline.min_length": 50,
- "function_declaration.group_to_block_spacing": "compact",
- "function_anonymous.empty_padding": false,
- "function_anonymous.group_to_block_spacing": "compact",
- "function_anonymous.multiline.element_count": 3,
- "function_anonymous.multiline.leading_comma": false,
- "function_anonymous.multiline.leading_comma.padding": true,
- "function_anonymous.multiline.min_length": 50,
- "function_anonymous.padding": true,
- "indent_size": 4,
- "keywords.block_to_keyword_spacing": "spaced",
- "keywords.group_to_block_spacing": "spaced",
- "keywords.padding_inside_group": true,
- "keywords.spacing_to_block": "spaced",
- "keywords.spacing_to_group": true,
- "keywords.empty_group_spacing": false,
- "max_columns": 115,
- "metadata.multiline.element_count": 3,
- "metadata.multiline.min_length": 50,
- "method_call.chain.multiline" : 3,
- "newline":"\n",
- "property.multiline.element_count": 3,
- "property.multiline.min_length": 30,
- "parentheses.padding": true,
- "strings.quote": "double",
- "strings.attributes.quote": "double",
- "struct.separator": " : ",
- "struct.padding": true,
- "struct.empty_padding": false,
- "struct.multiline.leading_comma": false,
- "struct.multiline.leading_comma.padding": true,
- "struct.multiline.element_count": 2,
- "struct.multiline.min_length": 60,
- "tab_indent": true
-}
From 8ad5d3211a784d99d547deece20a2342819239a2 Mon Sep 17 00:00:00 2001
From: Github Actions
Date: Fri, 1 May 2026 16:23:21 +0000
Subject: [PATCH 3/8] Version bump
---
box.json | 2 +-
changelog.md | 5 ++++-
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/box.json b/box.json
index 5c400cd..24f642d 100755
--- a/box.json
+++ b/box.json
@@ -1,6 +1,6 @@
{
"name":"Vite Based ColdBox Template",
- "version":"8.3.0",
+ "version":"8.4.0",
"author":"You",
"location":"forgeboxStorage",
"slug":"cbtemplate-vite",
diff --git a/changelog.md b/changelog.md
index c23800b..16ff78c 100644
--- a/changelog.md
+++ b/changelog.md
@@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
+## [8.3.0] - 2026-05-01
+
## [8.2.0] - 2026-03-17
## [8.1.0] - 2025-10-10
@@ -48,7 +50,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Cleanup of `tests` to new standards
- Added routing conventions to make it easier for the cli to add routes.
-[unreleased]: https://github.com/coldbox-templates/vite/compare/v8.2.0...HEAD
+[unreleased]: https://github.com/coldbox-templates/vite/compare/v8.3.0...HEAD
+[8.3.0]: https://github.com/coldbox-templates/vite/compare/v8.2.0...v8.3.0
[8.2.0]: https://github.com/coldbox-templates/vite/compare/v8.1.0...v8.2.0
[8.1.0]: https://github.com/coldbox-templates/vite/compare/v8.0.1...v8.1.0
[8.0.1]: https://github.com/coldbox-templates/vite/compare/v7.4.0...v8.0.1
From 0d9436b5533e1a99f939976173d32dfc2842d4fe Mon Sep 17 00:00:00 2001
From: Luis Majano
Date: Wed, 20 May 2026 16:31:42 +0200
Subject: [PATCH 4/8] new formatting
---
.bxformat.json | 26 +++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/.bxformat.json b/.bxformat.json
index ad1d254..59154e7 100644
--- a/.bxformat.json
+++ b/.bxformat.json
@@ -1,12 +1,12 @@
{
"indentSize" : 4,
"tabIndent" : true,
- "maxLineLength" : 115,
+ "maxLineLength" : 120,
"newLine" : "\n",
"singleQuote" : false,
"preserveStringQuotes" : false,
"alignConsecutiveAssignments" : true,
- "alignConsecutiveProperties" : true,
+ "alignConsecutiveProperties" : false,
"bracketPadding" : true,
"parensPadding" : true,
"binaryOperatorsPadding" : true,
@@ -17,9 +17,9 @@
"padding" : true,
"empty_padding" : false,
"quote_keys" : false,
- "separator" : " : ",
+ "separator" : ": ",
"multiline" : {
- "element_count" : 2,
+ "element_count" : 5,
"comma_dangle" : false,
"leading_comma" : {
"enabled" : false,
@@ -30,13 +30,13 @@
},
"property" : {
"multiline" : {
- "element_count" : 3,
+ "element_count" : 5,
"comma_dangle" : false,
"leading_comma" : {
"enabled" : false,
"padding" : true
},
- "min_length" : 30
+ "min_length" : 80
},
"key_value" : {
"padding" : false
@@ -46,13 +46,13 @@
"padding" : true,
"empty_padding" : false,
"multiline" : {
- "element_count" : 2,
+ "element_count" : 5,
"comma_dangle" : false,
"leading_comma" : {
"enabled" : false,
"padding" : true
},
- "min_length" : 50
+ "min_length" : 60
}
},
"for_loop_semicolons" : {
@@ -64,7 +64,7 @@
"padding" : true,
"empty_padding" : false,
"comma_dangle" : false,
- "multiline_count" : 3,
+ "multiline_count" : 5,
"multiline_length" : 50
},
"arrow" : {
@@ -76,7 +76,7 @@
"empty_padding" : false,
"comma_dangle" : false,
"multiline_count" : 3,
- "multiline_length" : 50
+ "multiline_length" : 60
},
"braces" : {
"style" : "same-line",
@@ -99,12 +99,12 @@
},
"template" : {
"component_prefix" : "bx",
- "indent_content" : true,
+ "indent_content" : false,
"single_attribute_per_line" : false,
"self_closing" : false
},
"import" : {
- "sort" : false,
+ "sort" : true,
"group" : false
},
"comments" : {
@@ -116,7 +116,7 @@
"member_spacing" : 1,
"property_order" : "preserve",
"method_order" : "preserve",
- "method_grouping" : false
+ "method_grouping" : true
},
"sql" : {
"uppercase_keywords" : true,
From 44918c93e65cbe1dc6935fd74f399fa446361b4a Mon Sep 17 00:00:00 2001
From: Luis Majano
Date: Wed, 20 May 2026 16:37:04 +0200
Subject: [PATCH 5/8] Update template with latest changes
---
box.json | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/box.json b/box.json
index 24f642d..1967774 100755
--- a/box.json
+++ b/box.json
@@ -25,8 +25,7 @@
".github/PULL_REQUEST_TEMPLATE.md"
],
"devDependencies":{
- "testbox":"^6.0.0",
- "commandbox-cfformat":"*"
+ "testbox":"^6.0.0"
},
"installPaths":{
"coldbox":"coldbox/",
@@ -39,9 +38,8 @@
},
"scripts":{
"postInstall":"pathExists .env || cp .env.example .env && package set ignore=[]",
- "format":"cfformat run config/,handlers/,interceptors/,models/,modules_app/,tests/specs/,*.cfc ./.cfformat.json --overwrite",
- "format:check":"cfformat check config/,handlers/,interceptors/,models/,modules_app/,tests/specs/,*.cfc ./.cfformat.json",
- "format:watch":"cfformat watch path='config/,handlers/,interceptors/,models/,modules_app/,tests/specs/,*.cfc' settingsPath='.cfformat.json'",
+ "format":"!boxlang format --source config/,handlers/,interceptors/,models/,modules_app/,tests/specs/,*.cfc",
+ "format:check":"!boxlang format --check --source config/,handlers/,interceptors/,models/,modules_app/,tests/specs/,*.cfc",
"docker:build":"!docker build --no-cache -t my-coldbox-app -f ./docker/Dockerfile ./",
"docker:run":"!docker run -it -p 8080:8080 my-coldbox-app",
"docker:bash":"!docker run -it my-coldbox-app /bin/bash",
From e5302fd07f3c257be32c6fe773ff0c387d15d420 Mon Sep 17 00:00:00 2001
From: Luis Majano
Date: Wed, 20 May 2026 16:43:31 +0200
Subject: [PATCH 6/8] Update template with latest changes
---
.github/workflows/snapshot.yml | 46 +++++++++++++++++++---------------
1 file changed, 26 insertions(+), 20 deletions(-)
diff --git a/.github/workflows/snapshot.yml b/.github/workflows/snapshot.yml
index 3f3efef..0d2f4d2 100644
--- a/.github/workflows/snapshot.yml
+++ b/.github/workflows/snapshot.yml
@@ -5,6 +5,11 @@ on:
branches:
- 'development'
+# Unique group name per workflow-branch/tag combo
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
+ cancel-in-progress: true
+
jobs:
##########################################################################################
# Tests
@@ -16,32 +21,33 @@ jobs:
##########################################################################################
# Format Source Code
##########################################################################################
- format:
- name: Code Auto-Formatting
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
-
- - name: Setup CommandBox CLI
- uses: Ortus-Solutions/setup-commandbox@v2.0.1
-
- - name: Auto-format
- run: |
- box install commandbox-cfformat
- box run-script format
-
- - name: Commit Format Changes
- uses: stefanzweifel/git-auto-commit-action@v4
- with:
- commit_message: Apply cfformat changes
- push_options: --force
+ # Will enable once we have more testing in.
+ # format:
+ # name: Code Auto-Formatting
+ # runs-on: ubuntu-latest
+ # steps:
+ # - uses: actions/checkout@v6
+
+ # - name: Setup CommandBox CLI
+ # uses: Ortus-Solutions/setup-commandbox@v2.0.1
+
+ # - name: Auto-format
+ # run: |
+ # box install commandbox-cfformat
+ # box run-script format
+
+ # - name: Commit Format Changes
+ # uses: stefanzweifel/git-auto-commit-action@v4
+ # with:
+ # commit_message: Apply cfformat changes
+ # push_options: --force
##########################################################################################
# Release it
##########################################################################################
release:
uses: ./.github/workflows/release.yml
- needs: [ tests, format ]
+ needs: [ tests ]
secrets: inherit
with:
snapshot: true
From 7097f790beacf206c61881026ce6c7f52f2c4595 Mon Sep 17 00:00:00 2001
From: Luis Majano
Date: Mon, 15 Jun 2026 17:53:56 +0200
Subject: [PATCH 7/8] Update template with latest changes
---
.bxlint.json | 68 +++++++++++++++++++++++++++++++++++++
.cflintrc | 79 -------------------------------------------
.vscode/settings.json | 16 +++------
3 files changed, 72 insertions(+), 91 deletions(-)
create mode 100644 .bxlint.json
delete mode 100644 .cflintrc
diff --git a/.bxlint.json b/.bxlint.json
new file mode 100644
index 0000000..14b2ed0
--- /dev/null
+++ b/.bxlint.json
@@ -0,0 +1,68 @@
+{
+ "diagnostics": {
+ "duplicateMethod": {
+ "enabled": true,
+ "severity": "error"
+ },
+ "duplicateProperty": {
+ "enabled": true,
+ "severity": "error"
+ },
+ "emptyCatchBlock": {
+ "enabled": true,
+ "severity": "warning"
+ },
+ "invalidExtends": {
+ "enabled": false,
+ "severity": "error"
+ },
+ "invalidImplements": {
+ "enabled": false,
+ "severity": "error"
+ },
+ "missingQueryParamCfsqltype": {
+ "enabled": true,
+ "severity": "warning"
+ },
+ "missingReturnStatement": {
+ "enabled": true,
+ "severity": "warning"
+ },
+ "shadowedVariable": {
+ "enabled": true,
+ "severity": "warning"
+ },
+ "unescapedQueryParam": {
+ "enabled": true,
+ "severity": "warning"
+ },
+ "unreachableCode": {
+ "enabled": true,
+ "severity": "warning"
+ },
+ "unscopedVariable": {
+ "enabled": true,
+ "severity": "warning"
+ },
+ "unusedImport": {
+ "enabled": true,
+ "severity": "warning"
+ },
+ "unusedPrivateMethod": {
+ "enabled": true,
+ "severity": "warning"
+ },
+ "unusedVariable": {
+ "enabled": true,
+ "severity": "hint"
+ }
+ },
+ "include": [],
+ "exclude": [],
+ "mappings": {},
+ "formatting": {
+ "experimental": {
+ "enabled": false
+ }
+ }
+}
\ No newline at end of file
diff --git a/.cflintrc b/.cflintrc
deleted file mode 100644
index 49615de..0000000
--- a/.cflintrc
+++ /dev/null
@@ -1,79 +0,0 @@
-{
- "output": [],
- "rule": [],
- "includes": [
- {
- "code": "AVOID_USING_STRUCTNEW"
- },
- {
- "code": "AVOID_USING_ARRAYNEW"
- },
- {
- "code": "AVOID_USING_CFINCLUDE_TAG"
- },
- {
- "code": "AVOID_USING_CFABORT_TAG"
- },
- {
- "code": "AVOID_USING_ABORT"
- },
- {
- "code": "ARG_VAR_CONFLICT"
- },
-
- {
- "code": "CFQUERYPARAM_REQ"
- },
- {
- "code": "COMPARE_INSTEAD_OF_ASSIGN"
- },
- {
- "code": "COMPONENT_HINT_MISSING"
- },
- {
- "code": "EXCESSIVE_FUNCTION_LENGTH"
- },
- {
- "code": "EXCESSIVE_COMPONENT_LENGTH"
- },
- {
- "code": "EXCESSIVE_ARGUMENTS"
- },
- {
- "code": "EXCESSIVE_FUNCTIONS"
- },
- {
- "code": "FUNCTION_TOO_COMPLEX"
- },
- {
- "code": "FUNCTION_HINT_MISSING"
- },
- {
- "code": "LOCAL_LITERAL_VALUE_USED_TOO_OFTEN"
- },
- {
- "code": "GLOBAL_LITERAL_VALUE_USED_TOO_OFTEN"
- },
- {
- "code": "MISSING_VAR"
- },
- {
- "code": "OUTPUT_ATTR"
- },
- {
- "code": "UNUSED_LOCAL_VARIABLE"
- },
- {
- "code": "UNUSED_METHOD_ARGUMENT"
- },
- {
- "code": "SQL_SELECT_STAR"
- },
- {
- "code": "VAR_ALLCAPS_NAME"
- }
- ],
- "inheritParent": false,
- "inheritPlugins": true,
- "parameters": {}
-}
\ No newline at end of file
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 9d74a9b..21679a8 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,14 +1,6 @@
{
- "boxlang.cfml.mappings": [
- {
- "logicalPath": "/coldbox",
- "directoryPath": "./coldbox",
- "isPhysicalDirectoryPath" :false
- },
- {
- "logicalPath": "/testbox",
- "directoryPath": "./testbox",
- "isPhysicalDirectoryPath" :false
- }
- ]
+ "boxlang.mappings": {
+ "coldbox" : "./lib/coldbox",
+ "testbox" : "./lib/testbox"
+ }
}
From 72a1ff88eddf333145e8301f5dc79c770a57152a Mon Sep 17 00:00:00 2001
From: Claude
Date: Tue, 29 Sep 2026 11:02:14 +0000
Subject: [PATCH 8/8] Fix main view for struct based RegisteredHandlers setting
in ColdBox 8.2
ColdBox 8.2 stores RegisteredHandlers as a struct instead of a list, which made
the default index view fail with "Can't cast Struct to a string". Loop the
setting as a collection and require coldbox ^8.2.0.
Co-Authored-By: Claude Opus 5.5
Claude-Session: https://claude.ai/code/session_01436jYJmdqfg6WZ62HQeoso
---
box.json | 2 +-
views/main/index.cfm | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/box.json b/box.json
index 1967774..664f076 100755
--- a/box.json
+++ b/box.json
@@ -34,7 +34,7 @@
},
"dependencies":{
"vite-helpers":"^2.0.0",
- "coldbox":"^8.0.0"
+ "coldbox":"^8.2.0"
},
"scripts":{
"postInstall":"pathExists .env || cp .env.example .env && package set ignore=[]",
diff --git a/views/main/index.cfm b/views/main/index.cfm
index bc93c99..fcb7ccd 100755
--- a/views/main/index.cfm
+++ b/views/main/index.cfm
@@ -39,7 +39,7 @@
index()