Blog

CBWIRE 3.1 Released

Grant Copley September 25, 2023

Spread the word

Grant Copley

September 25, 2023

Spread the word


Share your thoughts

CBWIRE 3.1 Released

I'm very excited to announce the latest release of CBWIRE, version 3.1. This release contains a couple of bug fixes, but mostly new features that you can start using right away in your applications.

For starters, you no longer need to add wireStyles() or wireScripts() to your layout file because now there is an autoInjectAssets configuration property that you can enable which does this automatically. 

Lifecycle hooks provide event-driven programming for CBWIRE, and we've added two new lifecycle hooks: onUpdate() and onUpdateProperty(). The methods will fire anytime a data property is being updated.

If you have custom UDFs defined for your ColdBox application, such as an ApplicationHelper.cfm file, those methods are now available to all your component templates.

In prior versions of CBWIRE, your component consisted of a CFC and a separate CFM template. In 3.0, we added the ability to define your component and its template entirely in a single .CFM file. This has made working with CBWIRE much more enjoyable from a development perspective, but it did add some overhead when rendering the components. We've added the ability to cache single-file components, allowing you to enable caching in production to speed up UI rendering.

In the bugs, we unfortunately found scenarios where child components were not rendering correctly, as well as instances of HTML comments causing rendering issues. These have been resolved.

There's lots packed into 3.1 and we highly recommend upgrading, even if it's just for the bug fixes.

Enjoy and please let us know your thoughts on CBWIRE!

Changelog

Enhancements

  • CBWIRE 81: Add configuration property to include CBWIRE styling and JavaScript assets automatically. Remove the need to add wireScripts() and wireStyles() to templateBugs

  • CBWIRE 116: Add onUpdate() and onUpdateProperty() lifecycle hooks

  • CBWIRE 117: Add the ability to refresh all child components from the parent component when an action is called

  • CBWIRE 118: Add the ability to call CBWIRE UDFs from the cbwire template as computed properties are too limiting.

  • CBWIRE 119: Single file components file names are not unique and could create conflicts in high-traffic applications

  • CBWIRE 120: Clear any compiled single file components on ColdBox fwreinit

  • CBWIRE 121: Add params arguments as a substitute for parameters argument when calling onMount

  • CBWIRE 123: Add 'cacheSingleFileComponents' setting to control if single file components are cached

  • CBWIRE 126: Cleanup unnecessary variables available to templates to avoid potential collisions

  • CBWIRE 127: Add the ability to call application helpers defined in ColdBox.cfc or any installed modules from CBWIRE templates.

Bug Fixes

  • CBWIRE 124: Fix child components not re-rendering properly on subsequent requests

  • CBWIRE 122: HTML comments in component templates cause re-renders not to work.

Add Your Comment

Recent Entries

Protect Your Data with Proactive Database Security Management

Protect Your Data with Proactive Database Security Management

In today’s digital age, data is among the most valuable assets for businesses. It powers decision-making, customer engagement, and operational efficiency. However, as data volumes grow, so do the risks associated with managing it. Ensuring database security and compliance is no longer optional—it’s a necessity.


The Evolving Landscape of Database Security

Modern databases face a myriad of challenges, from increasingly sophisticated cyber threats to strin...

Cristobal Escobar
Cristobal Escobar
December 06, 2024
The Experts Driving BoxLang: The Team Behind the Revolution

The Experts Driving BoxLang: The Team Behind the Revolution

Introduction

BoxLang is not just another programming language; it’s a revolutionary step forward for JVM environments. But who are the minds behind this innovation? Meet the talented team of architects, developers, and engineers who have combined decades of experience to create BoxLang—a language built for scalability, performance, and efficiency. Let’s explore their ex...

Cristobal Escobar
Cristobal Escobar
December 04, 2024
Why BoxLang is the Modern Software Development Evolution You’ve Been Waiting For?

Why BoxLang is the Modern Software Development Evolution You’ve Been Waiting For?

In today’s software landscape, developers need tools that deliver flexibility, efficiency, and modernization. With decades of open-source expertise, Ortus Solutions introduces BoxLang—our most ambitious project yet. Built for the JVM, BoxLang integrates seamlessly with Java, offering powerful features for scalable, high-performance web applications. Fully compatible with CFML, it ensures a smooth transition and expanded capabilities for existing projects.

Maria Jose Herrera
Maria Jose Herrera
December 04, 2024