Blog

BoxLang 1.0.0 Beta 13 Launched

Luis Majano September 06, 2024

Spread the word

Luis Majano

September 06, 2024

Spread the word


Share your thoughts

This release introduces several new features aimed at enhancing the usability and functionality of BoxLang. We have closed a tremendous amounts of bugs on this release in order to bring more compatibility and stability to BoxLang. We have also started to introduce performance enhancements and more innovations as we progress towards final release. Enjoy!

What is BoxLang?

BoxLang is a modern dynamic JVM language that can be deployed on multiple runtimes: operating system (Windows/Mac/*nix/Embedded), web server, lambda, iOS, android, web assembly, and more. BoxLang combines many features from different programming languages, including Java, ColdFusion, Python, Ruby, Go, and PHP, to provide developers with a modern and expressive syntax.

It is also a drop-in replacement for Adobe ColdFusion and Lucee Engines.

How to get started?

Visit our docs at https://boxlang.ortusbooks.com and get coding today. If you want to try it out on the web then go to our online REPL at https://try.boxlang.io. You can also checkout our YouTube playlist: https://www.youtube.com/playlist?list=PLNE-ZbNnndB-40LvAbeSeT2Oi3V2gm_B8

Release Notes

Here are the latest release notes: https://boxlang.ortusbooks.com/readme/release-history/1.0.0-beta13

New Features

BL-142 Writedump output support

We have finalized the console output for the dump component, but we have also added the following ticket:

BL-508 New dump event to listen when an non-core output is detected so modules can handle it. onMissingDumpOutput

Which will allow module developers to collaborate their own output destinations for any dump in the language. This is something we have wanted for years and it's now a possibility. Just listen to the onMissingDumpOutput interception point, you get all the arguments to the BIF or component and you decide where things will go. VScode Dump Panel, here we come.

The console output has also been enhanced where everything will be pretty printed, including labels.

BL-489 Ability to mark a @BoxBif as excluded from documentation

This is more of an internal documentation process for the team.

BL-504 New dump template for Java instants

Java Instants will now be dumped nicely with an internal representation and a human readable representation.

BL-507 dump showUDFs

All the arguments for dumps are now available including this one for controlling the dumping of UDFs on classes.

Improvements

BL-497 Simplify BoxLang class dumps

BL-499 Add output and format to dump

BL-501 Some BIFs not fully supporting BigDecimal values

BL-517 access e.cause as shortcut for e.getCause()

BL-518 When creating an abstract class a new `AbstractClassException` is thrown. Great for testing frameworks

Bugs

BL-223 queryaddcolumn ignores the datatype

BL-471 Issue with #dateTimeFormat(now(),'mm-dd-yyyy')# function returning incorrect results

BL-492 structnew( "linked" ) doesn't work

BL-493 argumentCollection doesn't work with implicit constructor

BL-494 directory component must always return query

BL-498 BoxNewTransformer using hard-coded context name

BL-500 toNumeric() not accepting radix values of 2-36

BL-502 cannot cast [x to object] on generic caster when using `QuerySetCell()`

BL-505 Issue with `Duplicate()` Function Causing Null Pointer Exception in BoxLang

BL-506 final keyword not working on this scope

BL-509 directoryList() filters are not working as closures/lambdas as they are hardcoded as strings

BL-510 Cannot invoke "ortus.boxlang.runtime.types.Query.isEmpty()" because "this.query" is null

BL-511 Multiple pipe-delimited glob patterns are not working as directoryList filters

BL-512 DuplicationUtil not doing deep clones of structs according to all types

BL-513 Throwing custom type exceptions just shows `custom` as the type instead of the actual type in the throw

BL-514 remote access not treated as public but as private for functions

BL-515 Interfaces don't support multiple inheritance

BL-516 CFC source type not detected correctly for abstract or final classes

BL-521 Metadata with : in them in cfml mode not treated correctly

BL-522 xml entity parsing issue when calling `toString()` on Java objects

Add Your Comment

Recent Entries

CommandBox 6.2.0 Released!

CommandBox 6.2.0 Released!

We are pleased to announce the release of CommandBox 6.2.0, a minor release in our CLI, Server, and Package Manager.

Download

You can download the latest version by using the upgrade command from the CLI for an in-place upgrade.  It's also available on HomeBrew, and our download page:

https://www.ortussolutions.com/products/commandbox

What's New

This rel...

Brad Wood
Brad Wood
April 01, 2025
TestBox v6.3.0 Release

TestBox v6.3.0 Release

We are excited to announce the release of TestBox 6.3.0. This version emphasizes the all-new BoxLang Reporter, now with vibrant color outputs and seamless execution through BoxLang, improving the testing experience. To benefit from these improvements, update now and ensure your testing remains reliable and efficient.

Luis Majano
Luis Majano
March 31, 2025
BoxLang Virtual Machines Now on Azure – Power Your Applications with Ease

BoxLang Virtual Machines Now on Azure – Power Your Applications with Ease

We’re excited to announce that BoxLang Virtual Machines (VMs) are now available on the Microsoft Azure Marketplace. With just a few clicks, you can now deploy pre-configured, high-performance BoxLang environments in the cloud — including the ability to run legacy and modern CFML applications using the powerful BoxLang CFML engine.

BoxLang is a modern, flexible, and scalable programming language for the JVM, purpose-bui...

Cristobal Escobar
Cristobal Escobar
March 31, 2025