githubEdit

1.0.0-Beta20

October 25th, 2024

🚀 Introducing BoxLang 1.0.0 Beta 20! 🚀

This release brings another round of powerful tools and refinements to the BoxLang community, making development more dynamic and robust than ever. We’ve added new capabilities for debugging and tracing, expanded context-sensitive controls for thread management, and introduced new methods for fluent attachment handling.

For deeper flexibility, our improvements enhance configurability, streamline session control, and add deeper levels of JSON serialization management. Plus, we’ve squashed a wide range of bugs, enhancing stability across database connections, date handling, and runtime compatibility with CFML.

New Feature

BL-117arrow-up-right trace bif and component

BL-670arrow-up-right Setup the thread's context class loader when an application is defined with the correct loader from the Applications java settings

BL-684arrow-up-right showDebugOuput added to request box context to allow for tracer/debugging outputs

BL-688arrow-up-right new computeAttachmentIfAbsent, to make fluent attachments on IBoxAttachable implementations

BL-689arrow-up-right refactor escapeHTML to the lib we use instead of multiple functions

BL-698arrow-up-right DateTime objects don't have a len member method

Improvements

BL-672arrow-up-right Add line break in dump console output

BL-673arrow-up-right Allow access to super scope from thread

BL-683arrow-up-right reuse config of validTemplateExtensions

BL-686arrow-up-right Add ability to deep merge config items from the environment.

BL-687arrow-up-right track current request context in thread

BL-690arrow-up-right improve concurrency of session ID creation

BL-693arrow-up-right Move from immutable verbiage to unmodifiable

BL-703arrow-up-right Need to set explicit `/` path on session cookies

BL-707arrow-up-right if calling serializeJSON() on a class, and the class is marked as not serializable, then return empty struct

BL-708arrow-up-right if calling serializeJSON() on a class, properties marked as not serialiable should be skipped.

BL-709arrow-up-right Arrays/Lists/Structs/Maps/Classes that have been visited already by JSON will not serialize again but show a recursion marker

Bugs

BL-640arrow-up-right bx-compat-cfml datediff fails to convert string

BL-645arrow-up-right Update parser to allow for `@module` notations on imports and `new` operators

BL-663arrow-up-right NOT operator precedence not grabbing operators in the chain

BL-668arrow-up-right Java Doc implementation is stricter that ACF and Lucee

BL-671arrow-up-right Missed module class hierarchy to have the runtime class loader as the parent

BL-675arrow-up-right ortus.boxlang.runtime.events.InterceptorPool: Errors announcing [logMessage] interception ortus.boxlang.runtime.types.exceptions.BoxRuntimeException: An error occurred while attempting to log the message

BL-676arrow-up-right Dump not showing BoxLang type NullValue as null

BL-678arrow-up-right DBInfo schema and several other columns can be null, make sure you address it

BL-680arrow-up-right boxclass dump looping construct exception

BL-696arrow-up-right java class method not found

BL-697arrow-up-right argument collection optional param is null

BL-701arrow-up-right Cannot convert class ortus.boxlang.runtime.types.DateTime to SQL type requested due to com.mysql.cj.exceptions.WrongArgumentException - Conversion from ortus.boxlang.runtime.types.DateTime to TIMESTAMP is not supported.

BL-702arrow-up-right DatabaseException: There is no known date-time pattern for '09/24/2024' value at ortus.boxlang.runtime.jdbc.PendingQuery.executeStatement(PendingQuery.java:390)

BL-704arrow-up-right cannot get lenght of native java date time objects

BL-705arrow-up-right Can't cast [2021-01-01 12:00:00 pm] to a DateTime.

Last updated

Was this helpful?