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

Introducing BoxLang AI Explorer: A Local Catalog for Every AI Pattern

Introducing BoxLang AI Explorer: A Local Catalog for Every AI Pattern

Learning a new AI API usually means jumping between scattered documentation pages, guessing at imports, and copy-pasting code that may or may not still work. We wanted something better for BoxLang AI, so we built the BoxLang AI Explorer: a local, browser-based catalog of runnable BoxLang AI examples, organized by category and difficulty, each with guidance, source code, and sample output.

Luis Majano
Luis Majano
August 14, 2026
Community Spotlight: BoxLang Express Brings Node-Style HTTP to the JVM

Community Spotlight: BoxLang Express Brings Node-Style HTTP to the JVM

If you've spent years in Spring Boot, Micronaut, or Jakarta EE, "web framework" usually means a servlet container, an embedded Tomcat or Netty, a build step, and a fat jar before anything answers a request. What if you could skip all of that and still be on the JVM?

Luis Majano
Luis Majano
August 12, 2026