Windmill

W

Windmill

Join the community to ask questions about Windmill and get answers from other members.

Join

help

general

changelog

Node

We have an alpha of a NodeJS compatibility mode (a true one, where NodeJS is the actual runtime). We are looking for enterprise beta testers to test it with your legacy NodeJS code.

NEW [Major] 🔴

NEW [Major] 🔴 Schedule App Reports Send a PDF or PNG snapshot of any app at a given schedule to slack / discord / email or via any custom script....

Git sync

New feature: you can now sync your workspace with a Git repo. Any updated script, flow or app will be automatically pushed to the repo upon deploy! Only for EE. More details -> https://www.windmill.dev/docs/advanced/git_sync

We have added two new components to the

We have added two new components to the App builder: Dropdown menu: - Actions are fully customisable button components (color, label, icons,...) - They can trigger a runnable on click and/or trigger a side effect (open a modal, select a tab, etc.)...

It is now possible to define a node at

It is now possible to define a node at which the flow will return at for sync endpoints. The rest of the flow will continue asynchronously. Useful when some webhooks need to return extremely fast but not just the uuid (define first step as early stop) or when the expected return from the webhook doesn't need to the full flow being computed...

Competitors

@here Dedicated workers for full flows are now available in alpha for EE. Run each step of a flow on workers dedicated to the flows at blazing speed by just toggling a setting at the flow level and assigning your worker group to that flow. When a worker is assigned to a flow, it is capable of handling every steps. The full flow attached here made of 3 scripts (1 in python, 2 in typescript) and branches executed in 36ms of worker time and took 230ms end-to-end. This make windmill flows good fit for event streaming cases. We've benchmarked with @guillaume windmill to be the fastest workflow engine among airflow, prefect, temporal, and by quite a margin for airflow! Read more at: https://www.windmill.dev/docs/misc/benchmarks/competitors Also next week will be launch week. If you're a keen reader of this channel, you already know almost everything we will present except one major feature on day 5. But we will make special efforts on how we present things by having blog posts explaining in details each feature....
No description

Feat

We've added a tree viewer to the homepage, that includes expand/collapse functions and a clearer hierarchical layout.
No description

Ask Inkeep

Please use and try our new AI bot @Ask Inkeep for any simple questions! It's the same AI agent used in our docs

INIT_SCRIPT

new env variable INIT_SCRIPT to run a script at the start of a worker. Combine it with the EE worker group management UI to modify them directly from the workers page. This is more lightweight than having a separate docker images per worker group and make it much easier to iterate
No description

EE only search any scripts flows

EE only: search any scripts, flows, resources, apps for a specific string similar to github search.

There was a significant performance

There was a significant performance improvement for windmill_app for large results. We now avoid unecessary de/serialization which is both much faster and have a lighter memory footprint.

groups

Build your own meta components aka container groups Here is one of the alpha of one of those features announced today, you can now transform containers into groups so that you can make them generic by having the inner components of it connect to the group fields. The next iteration will allow to save those groups in the workspace. Inside those "container groups", you can refer to "group.x" to refer to one of those group field which make this independent of the id of the container itself...

Eval V2 are here!

Eval V2 are here! Apps go from already really fast to super blazing fast.. We now parse your eval and frontend scripts using the swc parser compiled to wasm to extract any references to outputs. It allows windmill to suggest dependencies for frontend scripts as shown in the video. More importantly, now evals are only evaluated on changes to the outputs that have been identified. It means that most likely a properly made windmill app could be as fast or faster than full code apps. Prior evals were recomputed for any change to any output. This scale really bad for complex apps and why we were careful about the usage of evals. Evals will not be converted automatically so you will have to press the toggle to go from Legacy Eval to New Eval. ...

We ve enhanced the Runs page with an

We've enhanced the Runs page with an improved UI for filters and a more compact view.
No description

And now you can run native powershell

And now, you can run native powershell scripts!
No description

We improved the Audit Logs page design

We improved the Audit Logs page design and we added more filters!
No description

Table rows now have properties similar

Table rows now have properties similar to List but instead of using iter.index, iter.value, one uses row.index, and row.value. It allows to do things like the example above. There is also a new 'inputs' output that contains the inputs of every rows.
No description

here Introducing Concurrency Limits

@here Introducing Concurrency Limits. Define them for scripts and flow's inline scripts and ensure that you never hit the API Limit of the targeted api. They work globally and across flow runs. You can define a time window so that it's not just instantaneous concurrency limits. No more hacking around with worker groups, do it in a few clicks! Implementation by @buldau...
No description

In the python script builder resource

In the python script builder, resource types are now added as TypedDict with autocompletion of properties!

Resource Types

Before:
import type Resource from https://...
export async function main(db: Resource<'postgresql'>)
import type Resource from https://...
export async function main(db: Resource<'postgresql'>)
...