🔥 BoxLang 1.1 is Here! 🔥
We’re excited to announce the release of BoxLang 1.1.0, packed with powerful new features, critical bug fixes, and performance-focused improvements that make the language even more robust, secure, and developer-friendly.
Since our stable 1.0 launch, the community momentum around BoxLang has been incredible. We’ve been listening closely to your feedback and pushing forward on our mission to build the most flexible, modern dynamic language for the JVM. This release delivers just that—with new parsing helpers, enhanced runtime safety, security configuration controls, and performance upgrades across the board.
Let’s dive into what’s new in 1.1! 👇
Download
Please visit our download page or our quick installation guides to upgrade your installation.
Professional Open Source
BoxLang is a professional open-source product, with three different licences:
- Open-Source Apache2
- BoxLang +
- BoxLang ++
BoxLang is free, open-source software under the Apache 2.0 license. We encourage and support community contributions. BoxLang+ and BoxLang ++ are commercial versions offering support and enterprise features. Our licensing model is based on fairness and the golden rule: Do to others as you want them to do to you. No hidden pricing or pricing on cores, RAM, SaaS, multi-domain or ridiculous ways to get your money. Transparent and fair.
BoxLang is more than just a language; it's a movement.
Join us and redefine development on the JVM Ready to learn more? Explore BoxLang's Features, Documentation, and Community.
Release Notes
New Features
- BL-1365 Add
parse()
helper methods directly to runtime, which returns parse result - BL-1388 new security configuration item:
populateServerSystemScope
that can allow or not the population of theserver.system
scope or not
Improvements
- BL-1333 Create links to BoxLang modules
- BL-1351 match
getHTTPTimeString()
and default time to now - BL-1358 Work harder to return partial AST on invalid parse
- BL-1363 Error executing dump template [/dump/html/BoxClass.bxm]
- BL-1375 Compat - Move Legacy Date Format Interception to Module-Specific Interception Point
- BL-1381 allow box class to be looped over as collection
- BL-1382 Rework event bus interceptors to accelerate during executions
- BL-1383 Compat - Allow handling of decimals where timespan is used
- BL-1387 Allow Numeric ApplicationTimeout assignment to to be decimal
Bugs
- BL-1354 BoxLang date time not accepted by JDBC as a date object
- BL-1359 contracting path doesn't work if casing of mapping doesn't match casing of abs path
- BL-1366 sessionInvalidate() "Cannot invoke String.length() because "s" is null"
- BL-1370 Some methods not found in java interop
- BL-1372 string functions accepting null
- BL-1374 onMissingTemplate event mystyped as missingtemplate
- BL-1377 fileExists() not working with relative paths
- BL-1378 optional capture groups throw NPE in reReplace()
- BL-1379 array length incorrect for xml nodes
- BL-1384 Numeric Session Timeout Values Should Be Duration of Days not Seconds
Add Your Comment