Urgent.News

What's breaking now, across thousands of outlets.

Tech

n8n 2.0: What Changed and Should You Upgrade?

If you run n8n in production, upgrading from 1.x to 2.0 is bigger than a version bump. The n8n 2.0 changes several defaults around Code nodes, task runners, Python execution, file access, databases, OAuth, binary data, and workflow publishing . Some of these changes are also security improvements while the others can actually change how an existing workflow behaves. But, instead of listing every…

The latest release of n8n, version 2.0, brings several significant changes aimed at enhancing security and workflow stability. When upgrading from the previous 1.x versions, it's essential to understand what has changed and how it might impact your existing workflows.

One of the core themes in n8n 2.0 is native security. The platform now enables task runners by default, blocks Code node access to environment variables by default, and disables nodes capable of arbitrary command execution by default. This alteration means that workflows that previously functioned smoothly could behave differently after the upgrade, even if the workflow itself remains unchanged.

For developers, the most crucial aspect is that the migration question shifts from whether a workflow opens and functions to whether it executes with the same inputs, permissions, side effects, and outputs. This necessitates a more rigorous evaluation of how your workflows will perform after the upgrade.

Some of the key changes include:

1. Task runners are now enabled by default, which provides stronger isolation and security for Code nodes.

2. The $evaluateExpression() function within Code nodes will no longer work, as task runners have altered the execution environment.

3. Python Code nodes have changed significantly, moving from a Pyodide-based implementation to an external task-runner model. This change requires careful review of any Python-based workflows to ensure compatibility.

4. The ExecuteCommand and LocalFileTrigger nodes are disabled by default, reflecting a heightened focus on security. Workflows that rely on these nodes will need to be reviewed and adjusted accordingly.

5. File access has become more restricted, with default configurations limiting the ability to read and write local files. This change is particularly relevant for self-hosted installations dealing with sensitive file types such as PDFs, images, and documents.

6. MySQL and MariaDB are no longer supported as n8n's storage backends. While the MySQL node remains functional, the platform now recommends PostgreSQL for long-term compatibility.

Before upgrading, it is crucial to test your workflows thoroughly. This includes identifying any Code nodes, Python nodes, or file access nodes that may be affected by the changes in n8n 2.0. By carefully reviewing and adjusting these components, you can ensure a smoother transition and maintain the stability and security of your workflows.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

More from Tuesday 22 September →