Blog

Quick v2.0.0 Released!

Eric Peterson April 30, 2019

Spread the word

Eric Peterson

April 30, 2019

Spread the word


Share your thoughts


We are pleased to announce the general availability of Quick 2.0.0. It's been a long road with 14 betas(!) and months of testing from dedicated users. The end result is a more refined and performant product. Let's walk through some of the headline features:

Revamped relationship and eager loading

Relationships in Quick now load and eager load faster. Nested relationships can be eager loaded. Eager loaded relationships can be constrained at runtime. So much love went in to relationships this release. Overall, you'll find them fast, reliable, and extendable. Enjoy.

More powerful Key Types supporting more database structures

Key Types are Quick's way of interacting with all the different ways to handle primary keys and databases. In Quick 2.0, Key Types are more reusable, paving the way for new key types like sequence-based or other strategies.

Massive performance increase

Removing CFCollection in favor of arrays and some good, old fashioned performance testing led to a massive speed increase. In fact, on Lucee (thanks to its shallow duplicate functionality), it rivals the speed of queryExecute itself!

Virtual Service

Until we have good support for dynamic static methods, here's the next best thing — Virtual Quick Services. These services act like an instance of the entity while avoiding having to create a new entity manually each time. If you are a fan of CBORM's virtual services, we think you'll like these.

CBORM compatibility layer

Speaking of CBORM, included with Quick now is a small CBORM compatibility layer. Now, CBORM and CFML ORM is massive. This compatibility layer seeks to make the transition less painful by providing aliases for common retrieval and criteria builder methods used. Check out the docs for the complete list of compatibility methods.

Column aliases in queries

Lastly, a small feature but a huge quality of life improvement, you can now provide either column names or column aliases when constraining your queries. No more having to remember to use created_date instead of createdDate.

Wrap Up

There's much more to take in! Head over to the upgrade guide over on the docs to take a look.

Special thanks to Andrew Davis, Jon Clausen, Samuel Knowlton, and Richard Herbert for their contributions to this release.

Whether or not you've used Quick or any ORM before, we really think you'll love it.

Add Your Comment

Recent Entries

12 Days of BoxLang - Day 4: TestBox

12 Days of BoxLang - Day 4: TestBox

Today we’re celebrating one of the most exciting new additions to the BoxLang ecosystem:

the TestBox BoxLang CLI Runner — a fast, native way to run your TestBox tests directly through the BoxLang Runtime. ⚡

No server required. No CommandBox needed. Just pure, ultra-fast BoxLang-powered testing from the command lineon Windows, Mac, and Linux.

If you’re building modern applications with BoxLang — web apps, CLIs, serverless functions, Android apps, or OS-level utilities — this new feature gives you a unified, flexible testing workflow you can run anywhere.

Victor Campos
Victor Campos
December 13, 2025
12 days of BoxLang - Day 3: SocketBox!

12 days of BoxLang - Day 3: SocketBox!

As BoxLang continues evolving into a modern, high-performance, JVM-based runtime, real-time communication becomes essential for the applications we all want to build: dashboards, collaboration tools, notifications, live feeds, multiplayer features, and more.

That’s where SocketBox steps in — the WebSocket upgrade listener built to work seamlessly with CommandBox and the BoxLang MiniServer. ⚡

Today, for Day 3, we’re highlighting how SocketBox supercharges BoxLang development by giving you fast, flexible, and framework-agnostic WebSocket capabilities.

Maria Jose Herrera
Maria Jose Herrera
December 12, 2025
12 Days of BoxLang - Day 2: CommandBox

12 Days of BoxLang - Day 2: CommandBox

BoxLang + CommandBox: The Enterprise Engine Behind Your Deployments

For Day 2 of our 12 Days of Christmas series, we’re diving into one of the most powerful parts of the BoxLang ecosystem: CommandBox the defacto enterprise servlet deployment platform for BoxLang.

If BoxLang is the language powering your applications, CommandBox is the engine room behind it all. ⚙️

Victor Campos
Victor Campos
December 11, 2025