Skip to main content
Version: 1.10.x

LFX and Langflow version compatibility

Langflow and LFX are versioned together on the same major.minor line, so you can always tell which LFX release runs which flows.

Compatibility contract

LFX X.Y.N is guaranteed compatible with any flow exported from Langflow X.Y.M.

The major and minor numbers must match. The patches .N for LFX and .M for Langflow are released independently. An LFX patch fix does not require a Langflow patch release, and vice versa.

When LFX and a flow share the same major version but differ on minor, such as a flow exported from Langflow 1.9.x run with LFX 1.10.x, individual components may have been updated since the flow was saved. Use lfx upgrade to check compatibility and apply safe automatic fixes before running or serving such a flow. For more information, see Check and upgrade flows with lfx upgrade.

Compatibility matrix

Langflow versionCompatible LFX versionNotes
1.10.x1.10.xFully compatible. Same major.minor line.
1.11.x1.11.xFully compatible. Same major.minor line.
1.9.x or earlier1.10.xUse lfx upgrade --upgrade-flow=safe to apply safe component schema upgrades before running.
Any 1.x.x0.5.xLFX 0.5.x was a standalone release before version alignment. It is no longer compatible with Langflow 1.10+ flows.

Check and upgrade flows with lfx upgrade

The lfx upgrade command inspects a flow against the built-in component registry and reports any components that have become incompatible or that have safe automatic upgrades available.

lfx upgrade compares each component in the flow against a bundled index at _assets/component_index.json that ships with the LFX release.

Run it with no flags to get a read-only compatibility report. The command reads your flow JSON, walks through every component node, and prints one line per node with its status. It does not modify the file.


_10
lfx upgrade my-flow.json

Example output:


_10
[SAFE] Agent (AgentComponent) - id: abc123
_10
[OK] Chat Output (ChatOutput) - id: def456

CLI outputWhat it meansExample
[OK]Component matches the current registry.No action needed.
[SAFE]Component code changed, but ports and fields your flow uses still line up. lfx upgrade --write can apply this update automatically.An output that previously emitted only Message now also supports Data.
[BREAKING]A port or field your flow relies on was removed.An input that accepted Message and Data now accepts only Message and your flow uses a Data component.
[BLOCKED]The component type no longer exists in this LFX build.A bundle-only component is not installed in your environment.

To apply fixes or enforce stricter checks, run:


_10
# Apply all safe upgrades and overwrite the file
_10
lfx upgrade my-flow.json --write
_10
_10
# Fail if any safe upgrades are still pending (use after a dry run before running `--write`)
_10
lfx upgrade my-flow.json --strict

Inline compatibility checking with --upgrade-flow

Both lfx run and lfx serve accept an --upgrade-flow option so you can apply compatibility checks at execution without a separate lfx upgrade step.


_10
# Check only — fail if any component is blocked
_10
lfx run my-flow.json --upgrade-flow=check "Hello world"
_10
_10
# Apply safe upgrades in memory, then run
_10
lfx run my-flow.json --upgrade-flow=safe "Hello world"
_10
_10
# Same options for serve
_10
lfx serve my-flow.json --upgrade-flow=safe

ModeBehavior
checkReports compatibility issues and exits non-zero if any component is blocked. No changes are written to disk.
safeApplies all safe upgrades in memory, then runs or serves the flow. Blocked components still cause a non-zero exit.

Pin versions

Pin lfx~=1.10.0 in requirements.txt to track all patch releases for a given Langflow minor without crossing into the next minor automatically.


_10
# requirements.txt — allows 1.10.1, 1.10.2, … but not 1.11.0
_10
lfx~=1.10.0

Migrating from LFX 0.5.x to 1.10.0

LFX was realigned from its standalone 0.5.x line onto Langflow's major.minor line, so the version number jumps from 0.5.0 to 1.10.0 in one release. This is a version-numbering change, not 95 minor releases of new features.

This jump can affect existing dependency pins in unexpected ways:

Pin styleEffect
lfx==0.5.x or lfx<1.0Does not upgrade. The deployment stays on 0.5.x.
lfx>=0.5,<1Does not upgrade. The upper bound excludes 1.10.0.
lfx>=0.5 (no upper bound)Upgrades automatically to 1.10.0 on the next install.

Going forward, pin with lfx~=1.10.0 so you receive compatible patches without silently crossing minor lines.

Search