1.0.0-Beta18
Last updated
Last updated
This release introduces several new features and configurations to enhance functionality and security. It also continues to squash tons of bugs to bring about CFML compatibility. Key updates include:
Enhanced arrayFind
and arrayFindNoCase
functions, allowing value closures to accept item indices.
New validBoxLangTemplates
configuration for filtering templates processable by the Runnable Loader.
New validClassExtensions
configuration to specify permissible class extensions.
A new security
configuration section designed to disallow BIFs, Components, and Imports, enhancing security.
arrayFind
, arrayFindNoCase
value closures, accept the value and now the index of the item as the second param
New configuration: validBoxLangTemplates
to determine which templates the Runnable Loader can process
New configuration: validClassExtensions
to determine which class extensions to work with
New security
configuration section for disallowing: BIFS, Components, Imports
Internal refactor to make the class locator and resolvers have a life-cycle based on the runtime and not alone
Remove debugmode capture on miniserver, delegate to the core runtime.
Consolidate CastAttempt
and Attempt
into a hierarchy
New DynamicFunction
type that can be used to generate dynamic BoxLang functions using Java Lambda proxies. Great for code generation
Import nested classes
Java static funcitons not behaving as expected
array.find does not use cf rules to convert result of predicate to boolean
QueryColumnType doesn't handle "idstamp" (mssql)
static scope in application.cfc not initialized before psuedoConstructor runs
Auto-escaping of {} in regex needs to ignore already-escaped braces
Instead of removing special chars from Java FQN, replace with __ to avoid conflicts
Tag expressions not parsing inside template island inside braces
duplicate() doesn't work on empty structs
randrange() not inclusive of upper bound
array.find - can't cast closure to string