Skip to content

ColdBox 8.3.0 release docs: What's New, browser testing guide, routing and WireBox updates - #301

Merged
lmajano merged 13 commits into
v8.xfrom
claude/bx-playwright-research-plan-ddfqpm
Oct 10, 2026
Merged

lmajano merged 13 commits into
v8.xfrom
claude/bx-playwright-research-plan-ddfqpm

Conversation

@lmajano

@lmajano lmajano commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Release docs for ColdBox 8.3.0.

What's New 8.3.0 (readme/release-history/whats-new-with-8.3.0.md): the complete release page.

  • Highlights:
    • browser testing with @browser on BaseTestCase (COLDBOX-1457);
    • Router.registerMiddleware() (COLDBOX-1460);
    • group meta, and route middleware in BaseTestCase.execute() (COLDBOX-1459);
    • thread-safe scope wiring (COLDBOX-1455, #718);
    • the scheduler onOneServer() drift fix (COLDBOX-1458);
    • the CFScopes to EngineScopes compatibility note.
  • Release notes in ColdBox and WireBox tabs, with Jira and PR links. COLDBOX-1453, 1454 and 1456 are included as fixes.
  • The release date is left for release day (description: Upcoming release).

Guide updates

  • Routing:
    • "Sharing Route Metadata" (group meta);
    • "Named Middleware" (registerMiddleware(), Router.DuplicateMiddleware, force);
    • a registered name as a middleware target.
  • Integration testing: "Route Middleware" in the execute method page. The unsupported coldboxAppKey annotation is removed from the test annotations page.
  • WireBox object scopes: the EngineScopes rename and wiring lock notes.
  • Browser Testing guide (new, from the earlier commits): Overview, Setup, Writing Browser Tests, Named Routes, Authentication with saved sessions, Artifacts and Debugging, Continuous Integration, Troubleshooting. It now uses BaseTestCase + @browser, notes that the route helpers need a loaded app, and adds a caveat for optional placeholders with params.

Open question for the owner: with @appMapping( "/root" ) and no webMapping, routeURL() / visitRoute() build /root/... paths. The examples that pair @appMapping with visitRoute may need @webMapping( "/" ), or a code change in ColdBox.

🤖 Generated with Claude Code

https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi

claude added 2 commits October 1, 2026 12:14
Document BrowserTestCase, TestBox browser support and bx-playwright for
real-browser tests of ColdBox applications on BoxLang: setup, writing
specs, named route helpers, loginAs()/logout() and the BrowserTesting
module security model, artifacts and debugging, GitHub Actions and
troubleshooting. Link the guide from the testing overview, the testing
classes and integration testing pages, and add the What's New With
8.3.0 release page.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
@lmajano lmajano changed the title Browser Testing guide: BrowserTestCase, named routes, loginAs() and CI COLDBOX-1457 Browser Testing guide: BrowserTestCase, named routes, loginAs() and CI Oct 1, 2026
claude added 2 commits October 1, 2026 15:08
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
ColdBox no longer ships test-only login endpoints. The Authentication page
now shows bx-playwright saved sessions: log in once through the real login
page, then browse( ..., { session : "name" } ).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
@lmajano lmajano changed the title COLDBOX-1457 Browser Testing guide: BrowserTestCase, named routes, loginAs() and CI COLDBOX-1457 Browser Testing guide: BrowserTestCase, named routes, saved sessions and CI Oct 1, 2026
claude added 6 commits October 1, 2026 21:10
… aborts

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
… abort left open

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
ColdBox/coldbox-platform#708 drops BrowserTestCase: TestBox now attaches
browser support to any spec annotated with @browser, @browserprofile or
@baseurl (Ortus-Solutions/TestBox#222), and BaseTestCase gains the route
helpers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
@lmajano lmajano changed the title COLDBOX-1457 Browser Testing guide: BrowserTestCase, named routes, saved sessions and CI COLDBOX-1457 Browser Testing guide: @browser on BaseTestCase, named routes, saved sessions and CI Oct 9, 2026
- Release page covers all of 8.3.0 (COLDBOX-1453 to 1460, #718): browser
  testing, registerMiddleware(), group meta, route middleware in execute(),
  thread-safe scope wiring, scheduler drift fix, CFScopes to EngineScopes.
- Routing: group meta section, named middleware section, registered name
  as middleware target; execute() route middleware section.
- Object scopes: EngineScopes rename and wiring lock notes.
- Browser testing: route helpers need a loaded app, optional placeholder
  caveat, removed the unsupported coldboxAppKey annotation (also from the
  test annotations page).
- Release history index lists 8.0.0 to 8.3.0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
@lmajano lmajano changed the title COLDBOX-1457 Browser Testing guide: @browser on BaseTestCase, named routes, saved sessions and CI ColdBox 8.3.0 release docs: What's New, browser testing guide, routing and WireBox updates Oct 10, 2026
…lders with params

Matches ColdBox #720: routeURL() leaves out the appMapping (webMapping
keeps a sub folder), params fill optional placeholders, and the helpers
throw BaseTestCase.NoColdBoxApp without a loaded app.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
v8.x already documents registerMiddleware() (middleware.md) and group
meta (routing-groups.md), so the conflicting sections take the v8.x
text and the links point to it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UU9aLossoYUkQNwubnitBi
@lmajano
lmajano merged commit d23a45a into v8.x Oct 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants