Skip to main content

Releasing 0.7

· 5 min read
The LittleHorse Council
The LittleHorse Council

We are excited to announce the release of 0.7.2! This is our last release before we cut 1.0.0, which will be the first stable and production-ready LittleHorse distribution.

Get Started

LittleHorse is free for production use according to the Server-Side Public License!

To get started with LittleHorse OSS, you can:

Also, LittleHorse Enterprises LLC has released its first out our product-focused website! If you're still curious and want to learn even more, check out a few of our new in-depth tutorial series on our YouTube page.

New Features

Release 0.7 introduces many features designed to make your life easier. We plan to write blogs about all of them, so stay tuned!

Administrative Dashboard

The most exciting part of the 0.7.2 release of LittleHorse is the new LH Dashboard, which is an administrative portal into your LittleHorse Cluster. The LH Dashboard lets you check on all of your workflows and tasks and debug everything visually with fine-grained detail. Our quickstarts (see above) have everything you need to get started debugging your workflows with our dashboard.

The LH Dashboard is in the alpha stage, so we appreciate any bug reports or feature requests. Please file them on our github!

Idempotent Metadata Management

Managing your WfSpecs and TaskDefs just got much easier. Check out our updated docs for tutorials on how to keep your DevOps team happy and seamlessly integrate LittleHorse into your normal application development lifecycle.

Child Workflows

We also added the ability to run a WfRun which is a "child" of another WfRun. This allows for some interesting features, most importantly:

  • Sharing Variables between WfRun's
  • Foreign-key relationships between the child and parent WfRun's.

Stay tuned for an upcoming blog about why we added that feature. It was guided by our resident Domain-Driven Design expert, Eduwer Camacaro! Here's a hint: this feature makes it possible to use LittleHorse Workflows as a native data store for complex business entities. This is a great way to implement the "Aggregate Pattern."

Enhanced SearchWfRun

The rpc SearchWfRun request now has a repeated VariableMatch variable_filters field on it. This allows you to filter WfRun's by the value of one or more Variable's when searching for them, returning only matching WfRun's. This is super useful when using a LittleHorse WfRun to model a business entity, and you need to do something like "find all orders placed by user-id == john and status == OUT_FOR_SHIPPING".

In the past, this was possible using the rpc SearchVariable and then back the WfRunId out of the VariableId; however, that method is a little bit clunky. In reality, our users want to find a WfRunId matching certain criteria; they're not looking for a Variable.

What's Next?

We couldn't be more excited about what is coming next.

Apache2 Clients

Some members of the community have expressed concerns about our clients (SDK's + GRPC code) being licensed by the SSPL license. We heard you, and we will update them to the Apache 2.0 License before our 1.0.0 release! The server will remain SSPL.

Tutorials

One of our team members, Sohini, has been hard at work creating video tutorials which will help you get quickly up to speed on advanced LittleHorse concepts. You can find them here on our YouTube.

Additionally, our founder has recorded a series of zoom meetings with himself (yes, you read that right...Colt used zoom to record a tutorial video series) going through quickstarts in all of our three SDK's. You can find them here in Java, Go, or Python.

Approaching 1.0.0

What's missing before 1.0.0? We have some in-progress features that are already merged to master but only partially implemented. If you squint hard enough at our GRPC Api, you might notice that we have support for multi-tenancy and also fine-grained ACL's. They are NOT ready for production use as we need to iron out a few wrinkles, but we will have them ready for 1.0.0. We also are working on an rpc MigrateWfSpec which allows you to migrate a running WfRun from an older version of a WfSpec to a newer version. This is hard work for us but it will be highly useful for our users.

Additionally, we are expanding our end-to-end test coverage to try to shake out as many issues as possible before our users tell us about them. So far, the rate of new bugs that we've discovered has slowed down considerably, which makes us think we are getting close to the quality we expect from our own product.

What will change when we release 1.0.0? We will be following Semantic Versioning to the letter, which means we will be paying super close attention to any breaking changes to our API. If we want our users to use us for mission critical workloads, we need to take stability seriously—both in terms of performance and API compatibility.

We will also likely have three minor releases per year, with 12 months of patch support for each minor release. This release schedule is copied from Apache Kafka.

LH Cloud

Lastly, stay tuned for LittleHorse Cloud! Early access is open. If you would like to sign up for early access to LH Cloud, visit our website or contact sales@littlehorse.io.