githubEdit

1.0.0-Beta15

September 20, 2024

Welcome to Beta 15! This release brings several significant enhancements aimed at improving the efficiency and functionality of the CLI environment and continued bug fixing to bring our CFML compatibility to several client applications and Ortus Libraries. Key among these is the introduction of the bx-web-support module, which allows the CLI to interface with web server capabilities, making it an excellent tool for testing and feature auditing. Additionally, the merge capabilities within module settings have been refined to support deep merges from the configuration file, ensuring greater flexibility and control.

Moreover, running scripts or classes via CLI execution now supports the automatic detection and execution of Application.bx|cfc, streamlining the process for developers. The new ToString dump template enhances debugging by enabling a concise display format for lists of Java objects, simplifying the analysis and debugging process.

Overall, this beta release brings further stability for CFML applications migrating to BoxLang!

New Features

BL-544arrow-up-right Look and execute for Application.bx|cfc when running scripts or classes via CLI execution

We have always wanted even further CLI enhancements for applications built with BoxLang. Now you get it! BoxLang will look for an Application.bx|cfc whenever it executes a template or class and follow the process of application startup, settings, ORM, etc. The full life-cycle of an application but at the CLI level. This will allow you to completely test your web applications with no web server and even build CLI applications with easy application constructs!

BL-559arrow-up-right New bx-web-support module to support the CLI with web server capabilities. Great for testing, mocking and feature audits.

We have released the bx-web-support module which will give you mocking, testing and auditing capabilities for CLI testing and runners. This means that your CLI applications will look and feel like a real web application with a real web server, but using our mock approaches.

This module is still in it's alpha stages so expect much more development on it.

BL-574arrow-up-right Module settings should have a deep merge from the configuration file

All module settings in your boxlang.json can now be deeply merged automatically by BoxLang.

BL-580arrow-up-right Add a new ToString dump template that will take a list of java objects to display them in short hand format

We will be easing the visibility of certain human readable Java classes in our dump templates.

BL-581arrow-up-right Handle single values in arrayAppend merge=true

A nice feature to support further merging techniques with arrays.

Improvements

BL-503arrow-up-right dump improvement of UI when using expand/collapse

BL-545arrow-up-right Show errors in class pseudo constructor in tag context

BL-555arrow-up-right List utils need to trim all values when converting to arrays

BL-558arrow-up-right LocalDateTime not showing in dumps as a date/time string, but as a Java Object

BL-567arrow-up-right Update date/time and instant dump templates to be less verbose and more functional

BL-569arrow-up-right Allow CF tag islands and template islands to be nested more than one level deep.

BL-570arrow-up-right Merge CF lexer and grammar for faster parsing and more accurate lexing

BL-571arrow-up-right Make tag expression parsing smarter

BL-576arrow-up-right expandPath() must ignore invalid paths, just returning the input

BL-579arrow-up-right More IO BIFs need to ignore invalid paths

Bugs

BL-434arrow-up-right script block parsing can be tricked by comments

BL-546arrow-up-right Lucee allows properties to be anywhere in the pseduoconstructor of a class, not just at the top

BL-547arrow-up-right flush component only flushes up one buffer, not all the way

BL-550arrow-up-right Boxlang doesn't parse milliseconds in datetime string

BL-551arrow-up-right Date "string" doesn't have date time member functions available

BL-552arrow-up-right Querynew failing with more than one column defined

BL-553arrow-up-right Regular Expression Syntax not supported

BL-557arrow-up-right Metadata visitor doesn't support struct annotations with unquoted keys

BL-561arrow-up-right Hyper module failing

BL-562arrow-up-right bx-compat cfloop requires "index" when it shouldn't

BL-563arrow-up-right transaction shouldn't require global DSN

BL-564arrow-up-right cfproperty tag lucee allows non quoted properties

BL-565arrow-up-right Class name sensitivity based on provided rather than class found

BL-566arrow-up-right No reading dump templates due to pathing incorrectly in debug mode

BL-568arrow-up-right Static support not compatible with CFML

BL-572arrow-up-right javacast not actually casting as expected

BL-573arrow-up-right functions in variables scope vs values in variables scope

BL-575arrow-up-right bx-compat unquoted hashed expressions cause compiler error

BL-577arrow-up-right serializeJSON errors when serializing a function

BL-578arrow-up-right Sentinel loop with missing expressions fails

BL-582arrow-up-right mid() It does not remove characters if the count is more than the length

BL-583arrow-up-right Cannot invoke "ortus.boxlang.runtime.types.IStruct.putAll(java.util.Map)" because "recipient" is null

Last updated

Was this helpful?