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

Are you attending Adobe CFSummit 2024?

Are you attending Adobe CFSummit 2024?

If you are attending the Adobe ColdFusion Summit 2024, this is what you need to know: As always, Ortus Solutions will be sponsoring this years event as Silver Sponsors, we are excited to meet all the new attendees and old friends of the community of Coldfusion developers

Maria Jose Herrera
Maria Jose Herrera
September 10, 2024
New BoxLang Feature: Functional binding to member methods

New BoxLang Feature: Functional binding to member methods

We’re excited to unveil a new feature that makes method referencing in BoxLang even smoother. Building on our recent update introducing functional static binding to built-in functions, we're now bringing the same ease to member methods.

Maria Jose Herrera
Maria Jose Herrera
September 09, 2024