This blog post is a public copy of our monthly newsletter sent on October 18. If you'd like to receive upcoming updates by email, you can subscribe to our newsletter here.
We had a great time at GopherCon and loved getting the chance to know everyone who was able to stop by our happy hour! Read more in our post Temporal @ GopherCon2022.
If you weren’t able to be in Chicago with us or just can’t get enough of Go, we’ve got you covered! On October 26, Tom Wheeler, our Principal Curriculum Developer, is hosting a workshop about developing applications using Temporal and Go. No matter your experience level with Temporal, you won't want to miss it!
Are you still missing the workshops from Replay? Check out Tom’s new Temporal 101 course! It’s a free, self-paced course available now to learn Temporal anywhere and anytime.
To learn more about what’s been going on with Temporal, check out our updates below!
We have announced the public beta of the Temporal Cloud UI at cloud.temporal.io. Users with a Temporal Cloud account can now access our latest Cloud UI and self-service features. More information can be found here.
Python test framework new CDN: The Python SDK is nearing GA availability with some serious momentum behind it. We did notice that pulling down the test framework from the previous host didn’t have that same momentum. To resolve this issue, we’re now using a new content delivery network (CDN) to download the time skipping test server and Temporalite. This functionality is also available in TypeScript.
Encrypt the things!: Data Converter is a cornerstone of Temporal, which provides immense security value to Workflow providers and consumers. While Data Converter is fairly comprehensive, there are some specific areas that don’t go through the encryption path (for example, errors and stack traces). In our continued effort to bring comprehensive support to Data Converter, the latest releases of Temporal's TypeScript and Go SDKs now encrypt error messages and stack traces.
Scheduled Actions Beta: A huge segment of users adopt Temporal for its durable Cron capabilities. While the Temporal Cron has always been powerful and reliable, the user experience has been historically… rough. The breadth of features also leaves a lot to be asked for. Scheduled Actions takes the great parts of our original Cron functionality but with an entirely reimagined user experience and feature set. Schedule Actions is now in Beta and turned on by default with Temporal Server v1.18. We doubt you’ll ever use another Cron tool again.
Batch operation API: Manipulating individual Temporal resources is easy enough, but when it comes to thousands or millions of resources, life isn’t so easy. There has always a bit of irony here, considering Temporal is a system designed around hyperscale Workloads. In v1.18 of Temporal Server, we’ve turned on the Batch operation API by default. We still have some improvements to make in this problem space, but the Batch API is a huge step in the right direction.
Added support for ElasticSearch 8, deprecated ElasticSearch 6: Just keeping up with the latest and greatest for our dependencies. Our wonderful technical writing team recently released a guide covering the migration process of ES6 -> ES7.
Removed 30 day max retention limit: Historically, it has been impossible to configure a Namespace retention policy greater than 30 days. Believe it or not, this was not an arbitrary limit as much an implication of legacy architecture design choices. We are beholden to the past no longer, and after some refactoring this limit has been officially removed!
Timers section to app dev guide: We've added a Timers section to the Application development guide, which shows how to sleep inside of Workflow code.
Side effects section to app dev guide: A Side Effects section has been added to the Application development guide. The section shows how to implement a Side Effect in your Workflow code. Currently Go and Java are represented.
History Shard docs page: We’ve added a page documenting the History Shard concept in the Clusters core concept guide. It explains what a History Shard does and how it works, providing a foundation for the discussion around choosing the optimal number of History Shards for your use case.
Cluster metrics reference: This is not a complete list of metrics that are emitted by the Cluster, but represents many of the most commonly used ones. We will continuously expand on this moving forward.
Meet the team:
Content and community
Temporal’s Flagship Community Meetup: We gather as a community (virtually on Zoom) once a month to discuss use cases, upcoming events, and the latest releases and features. Register through the following link, temporal.io/meetup.
Dominik @ Strange Loop: Our own Dominik Tornow recently presented a compelling argument about Workflows as a new abstraction for distributed systems at Strange Loop 2022. The talk was a huge hit with the crowd and deeply examines the requirements of building reliable applications in our modern Cloud world.
GopherCon and GopherPizza! demo: In addition to StrangeLoop 2022, our team also made it out to this year's GopherCon. Fitz, one of our amazing advocates, gave a lightning talk about Temporal, which generated quite a bit of buzz. We also had a booth where we demoed an application, also written by Fitz, called GopherPizza!
Upcoming DashCon: As you may already know, we’re pretty fond of our partners over at Datadog. That’s why we were beyond excited when the Datadog team approach our own Rain Leander about participating in a panel at this year's DashCon. The topic of the panel is "What Users Really Want" which dives into the best ways of understanding how users are truly experiencing your product and methods to improve their engagement.
Meet the team:
Twitter thread of the month
Check out @DominikTornow's Twitter page for a thread on recovery in the face of failure. Also, see his talk from Strange Loop 2022, where he discusses "Workflows, a new abstraction for distributed systems".