Blog

BoxLang v1.3.0 Released

Luis Majano June 23, 2025

Spread the word

Luis Majano

June 23, 2025

Spread the word


Share your thoughts

We're thrilled to announce the release of BoxLang v1.3.0! This significant update brings exciting new features, substantial performance improvements, and critical bug fixes that will enhance your development workflow and application reliability.

🌟 What's New in 1.3.0

Smart Compression & Beautiful JSON

Enhanced Zip Compression Control Take full control over your compression settings with the new compressionLevel parameter. Whether you need maximum compression for storage efficiency or faster processing with lighter compression, BoxLang now gives you the flexibility to choose.

// Maximum compression for archival
bx:zip compressionLevel="9"

// Balanced compression (default)
compress( compressionLevel: 6 )

// Fast compression for development
compress( compressionLevel: 1 )

Pretty JSON Serialization Finally! You can now generate beautifully formatted JSON with the new pretty parameter in jsonSerialize(). Perfect for configuration files, debugging, and human-readable data storage.

config = {
    database: "mysql",
    port: 3306,
    features: ["ssl", "compression", "caching"]
};

// Before: {"database":"mysql","port":3306,"features":["ssl","compression","caching"]}
compactJson = jsonSerialize( config );

// New: Pretty formatted JSON
prettyJson = jsonSerialize( config, pretty=true );
/* Output:
{
  "database" : "mysql",
  "port" : 3306,
  "features" : [ "ssl", "compression", "caching" ]
}
*/

Powerful New Array & Collection Operations

Introducing xNone() Functions The new xNone() family of functions lets you elegantly check if no elements in your collections match specific criteria. Available for arrays, lists, queries, and structs with both BIF and member function syntax.

// Array example - check if no even numbers exist
numbers = [ 1, 3, 5, 7, 9 ];
hasNoEvens = numbers.none( num -> num % 2 == 0 ); // true

// Product catalog example
products = [
    { name: "laptop", price: 999, inStock: true },
    { name: "phone", price: 599, inStock: true }
];

// Verify no out-of-stock items
allInStock = products.none( product -> !product.inStock ); // true

// Query example - check user data
users = queryNew( "name,age,status", "varchar,integer,varchar", [
    [ "Alice", 25, "active" ],
    [ "Bob", 30, "active" ]
] );

hasNoMinors = users.none( row -> row.age < 18 ); // true

🚀 Performance & Reliability Improvements

Revolutionary Query Concurrency

We've completely overhauled query concurrency handling, eliminating inconsistencies when multiple threads add data to queries simultaneously. Your multi-threaded applications will now run more reliably than ever.

Intelligent Caching Upgrades

  • Lazy Cache Expiration: Memory usage optimized with smarter expiration timing
  • Concurrency Fixes: Resolved cache entry collisions and timing issues
  • Performance Boost: Faster cache operations across the board

HTTP Response Compression

BoxLang now automatically compresses HTTP responses, significantly reducing bandwidth usage and improving page load times for your users.

🛡️ Enhanced Security & Developer Experience

Binary Integrity Verification

Every BoxLang binary now comes with cryptographic checksums, ensuring the integrity and authenticity of your downloads. Perfect for CI/CD pipelines and security-conscious deployments.

# GitHub Actions example
- name: Verify BoxLang Binary
  run: |
    wget https://downloads.boxlang.io/boxlang-1.3.0.jar.sha256
    sha256sum -c boxlang-1.3.0.jar.sha256
    echo "Binary integrity verified ✓"

Comprehensive Documentation

We've added extensive examples throughout our documentation for Built-in Functions and Components, making it easier than ever to learn and implement BoxLang features.

Enhanced Command Line Tools

All command-line tools now support --help and -h flags:

  • Mini Server
  • Feature Audit
  • CFTranspiler
  • Scheduler
  • BoxRunner
  • And more!

🔧 Critical Bug Fixes

Image Processing Resolved

  • Fixed scaleToFit creating black images
  • Resolved image resize functionality when used as member function

Database & Transaction Improvements

  • JDBC transactions now properly use app-default datasources
  • Fixed DATETIME parameter aliasing in prepared statements
  • Better handling of named datasources in queries

Mathematical Operations

  • Timestamp math operations now properly cast as fractional days for CFML compatibility
  • fix() function behavior now matches Lucee's implementation exactly

File Handling & HTTP

  • Resolved HTTP errors during file uploads
  • Fixed unnecessary disk writes for multi-part form fields
  • Better servlet path handling with ../ patterns

🎯 CFML Compatibility Enhancements

We continue to strengthen BoxLang's CFML compatibility with improvements like:

  • CFQuery parameter mapping (cfsqltype to sqltype)
  • Enhanced CFCatch support
  • Better parallel processing behavior
  • Improved class metadata handling

📈 Upgrade Recommendation

We strongly recommend all users upgrade to BoxLang 1.3.0. This release delivers substantial improvements in:

  • Reliability: Major concurrency and caching fixes
  • Performance: HTTP compression and optimized operations
  • Developer Experience: Better documentation, tooling, and debugging
  • Security: Binary checksums and scope protection

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:

  1. Open-Source Apache2
  2. BoxLang +
  3. 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 Subscription Plans

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.

Join the BoxLang Community ⚡️

Be part of the movement shaping the future of web development. Stay connected and receive the latest updates on Into the Box 2025, product launches, tool updates, and more.

Subscribe to our newsletter for exclusive content.

Follow Us on Social media and don’t miss any news and updates:

Join the BoxLang and CFML legends at Into the Box 2025. Let’s learn, share, and code together for a modern, cutting-edge web development future.

Add Your Comment

Recent Entries

BoxLang v1.8.0 : Revolutionary HTTP Client, SOAP Integration, and Production-Grade Stability

BoxLang v1.8.0 : Revolutionary HTTP Client, SOAP Integration, and Production-Grade Stability

The BoxLang team is excited to announce BoxLang 1.8.0, a massive release that revolutionizes HTTP capabilities, introduces comprehensive SOAP/WSDL integration, and delivers over 100 critical bug fixes for production-grade stability. This release focuses on modern web application development with fluent APIs, streaming support, persistent connection management, and extensive CFML compatibility improvements.

Luis Majano
Luis Majano
December 05, 2025
Ortus & BoxLang November Recap 2025

Ortus & BoxLang November Recap 2025

November 2025 was a big month at Ortus. BoxLang 1.7.0 arrived with real-time streaming, distributed caching, and faster compiler internals. ColdBox gained a cleaner debugging experience with full Whoops support, while CBWIRE 5 launched with stronger security, smarter lifecycles, and easier uploads.

Victor Campos
Victor Campos
December 02, 2025
Thanksgiving Week Extended + Cyber Monday Deals Are Live!

Thanksgiving Week Extended + Cyber Monday Deals Are Live!

Because you asked; we’re extending the Thanksgiving Week offer and officially launching our Cyber Monday BoxLang Deals today!

To support everyone who wants to understand whether they’re running on legacy CFML or modern-ready code, and whether BoxLang is the right fit; we’ve decided to extend the dates and increase the number of companies we can support.

Maria Jose Herrera
Maria Jose Herrera
December 01, 2025