1.0.0

May 1, 2025

This was our first stable release of the BoxLang language. It grouped the entire betas and release candidate features and fixes. This specific version included the following release notes from issues that changed between release candidate 3.

New Features

BL-1319 Create the config `runtimes` struct so any runtime can store their settings there by convention

BL-1327 Add simple rewrites to miniserver

Improvements

BL-1199 Add a `version` key to the boxlang.json to track the current version of the runtime.

BL-1275 expandPath(".") when running boxlang as a shell script does not point to the current working directory

BL-1278 Possible minor bug in Mail

BL-1285 Can we improve URL to PDF support?

BL-1286 Pre-compiled matchers for exception stack builds for performance

BL-1287 LineNumber alias on exception traces for multiple Box tools in the open

BL-1293 Upate isObject, isArray and IsStruct to have more edge cases and consistencies across engines

BL-1296 looping over XMLNode as collection only loops over child nodes

BL-1310 BoxLang file with no extension should try to determine if it's an executable class

BL-1311 Expand relative this.mappings in application class

BL-1323 change extract() BIF so filter argument works the same as directoryList()

BL-1324 make missing template error use relative path, not absolute path

BL-1334 Support samesite and expires in servlet

BL-1336 change compress() BIF so filter argument works the same as directoryList()

BL-1337 generatePBKDFKey() compat issues

BL-1339 SCryptVerify() doesn't support hashes generated in Adobe ColdFusion

Bugs

BL-1098 Compat: FileMove in ACF/Lucee automatically overwrites the destination file

BL-1123 Use of compat-transpiled name in scoped variable throws error

BL-1131 Compat: Error parsing date with zero month

BL-1218 Cookie with Quoted Value Intermittently comes back with URL-Escaped quotes

BL-1266 Rethrown Exception Inside Transaction Being Wrapped In Application Exception

BL-1267 Elvis using nullValue on right hand side throws error

BL-1271 Using BIFS in CLI schedulers throws an error that request context is empty

BL-1272 Dumping class with top argument results in Struct template error.

BL-1273 Class which implements IReferenceable alone throws errors when Attempting Serialize to JSON

BL-1274 Error with parseDateTime on ISO with fully numeric offset

BL-1279 relative include with ../../ can result in illegal class name

BL-1280 caches set operations relies on timeouts being Objects, do stricter validation and conversion to avoid can't cast string to longs

BL-1281 hash CFML compatability

BL-1282 cfml compat: returnformat is case sensitive for remote methods

BL-1283 cfml compat - cfinclude with non cfml files

BL-1284 CFML compat. Undefined query values are strings in ACF / Lucee

BL-1289 CacheLocator cache is too aggressive on same name but different location classes

BL-1290 dump templates for Function, Map and XML missing expand null checks

BL-1291 XML structkeyExists returns false when objects are there but isNull returns false

BL-1292 jsonSerialize() or deserialize with cookie setting is adding extra "

BL-1294 static initializer above properties is giving a syntax error

BL-1297 Update session storage key removal interceptor so it can detect if the clear is a session or not, as it could be in a cache that holds much more data

BL-1299 Serializing queries to JSON compatibility

BL-1301 DynamicObject.hasMethodNoCase() is returning false for methods that clearly exist and are invokable

BL-1302 JDBC - Missing support for no connection limit

BL-1303 Static access is not a valid construct for array access

BL-1304 featureAudit incorrectly reports the valueList() BIF as missing

BL-1306 cfhtmlhead does not work properly

BL-1307 Implement CFCookie Expires

BL-1308 cfcookie samesite attribute not honored

BL-1309 CFML Compat - cfcookie encodevalue attribute not honored

BL-1312 overriding `/` mapping in this.mappings not working

BL-1313 dump/abort doesn't always default response content type in servlet

BL-1317 ASM Boxpiler is not generating the correct bytecode when dealing with abstract classes

BL-1321 bx:location throws error in console

BL-1325 BX-PDF - Issue with PDF support and document section, specifically Acrobat Reader

BL-1326 documentsection name not properly setting bookmark name

BL-1328 Relax default permissions of bx:document

BL-1331 Compat: dateTimeFormat "h" mask

BL-1340 SCryptVerify() function aliases

BL-1341 hash() returns lower case from CFM pages

BL-1343 Schedulers defined in Application.bx do not have access to application scope values defined in onApplicationStart

BL-1345 cliread was closing the system.in instead of sharing across the cli

BL-1346 bitwise complement doesn't work with variable

BL-1348 Expansion of "/tmp" resolves to relative path.

BL-1349 elvis doesn't work in lambda

Tasks

BL-179 TimeBox Certification

BL-1136 Compat: Document DateAdd Behavior with Decimal Number Difference from ACF/Lucee

Last updated

Was this helpful?