v1.0 preview#
n8n is preparing to release its 1.0 version. This document describes planned changes, including breaking changes, and new features. It includes guidance on how to test preview builds of 1.0. Where work is in progress or completed, you can view the pull requests containing the changes.
Expected new features#
Python support in the Code node#
Currently the Code node supports JavaScript (node.js). v1.0 will add support for Python.
Expected changes#
Improvements to data processing for multi-input nodes#
This change ensures predictable behavior. Incoming nodes will no longer be forced to execute when the multi-input node runs.
Fail workflows on expression syntax or runtime errors#
Workflow executions will fail when there are syntax errors or runtime errors in expressions. For example, expressions that reference non-existent nodes.
Expected breaking changes#
Force all n8n instances to have an owner account#
This makes user management mandatory, and removes support for other methods such as BasicAuth and JWT. It will include a change to n8n Cloud pricing plans to make user management is available to all tiers. Some tiers may still be limited to one user.
Remove support for MySQL and MariaDB as n8n backend databases#
The default database will remain SQLite. Postgres is the recommended alternative.
Main mode as default#
n8n will now run in main mode by default. Refer to Execute all workflows in the same process for more information on own and main mode. You should use Queue mode if you need scalability.
Ensure users can't install custom nodes in the ~/.n8n/node_modules
directory#
Custom nodes and credentials will install to ~/.n8n/custom
(or the directory defined by CUSTOM_EXTENSION_ENV
). Custom nodes that are npm packages will live in ~/.n8n/nodes
.
Change node execution order#
In multi-branch workflows, n8n has to decide what order to execute nodes on the branches. Currently, it executes the first node of each branch, then the second of each branch, and so on. The new order ensures each branch executes completely before starting the next one. Branches are ordered based position, from top to bottom. If two branches are at the same height, the leftmost executes first.
Changes to how the Merge node processes data#
This relates to the improvements to data processing for multi-input nodes.
Websockets will become the default method to update the n8n UI#
Support for websockets was introduced in v0.215.0 (PR #5443) but SSE (server side events) are still the default until 1.0.
New behavior for Date data transformation functions#
View a list of data transformation functions that operate on dates. Currently, they return a Date object. The new behavior will ensure the return type matches the type of the object the function is called on.
Fully remove the deprecated request library#
The HTTPRequest node will use the new HttpRequest interface. If you build nodes, refer to HTTP request helpers for more information on migrating to the new interface.
Replace WEBHOOK_TUNNEL_URL
with WEBHOOK_URL
#
Refer to Webhook URL for more information about this configuration option.
How to test 1.0#
n8n produces a nightly build of the 1.0 release candidate, with the latest changes. You should expect bugs: this is work-in-progress, which n8n is releasing to enable advanced testing and gather feedback.
To get the latest release candidate build, pull the Docker image:
1 |
|
If you're already running n8n, modify the command to use different ports and a different name.
To report issues, use GitHub issues or the forum. Use the v1
label on your GitHub issue or forum post.
Why is 1.0 important?#
Version 1.0 is a milestone in an application's development. It indicates that the software has enough major features, and enough stability, to be considered reliable and full-featured.
This doesn't mean development stops: many new features and feature upgrades beyond v1.0 are planned.