Changelog

Getting all the news on new features we ship

  • Enforcing Enterprise Restrictions

    Ben Hardill

    Starting with the v2.8.0 release FlowFuse will be taking a slightly stricter approach to License enforcement outside of FlowFuse Cloud. Previously when a license expired the platform would continue to run with the same capabilities as when the license was valid.

    If you are currently running with older version with an expired license please contact the Sales team to discuss renewing your license before upgrading. You can check your current license on the Admin Settings -> Overview page.

    Notifications

    Starting 30 days before the license expires:

    • Admin users will see a banner showing the number of days left.

      expiring banner

    • A email will be sent to all Admin users.

    The email will be sent again every Sunday evening in the 30 days.

    After Expiry

    • All running instances will be suspended.

    • Instances will not be started.

    • No new Instances or Devices can be created.

    • A email will be sent to all Admin users saying the license has expired.

    • A banner showing the license as expired will be shown to all users.

      expired banner

    • All connections to the MQTT broker will be refused (This will impact Project Nodes and Device control).

    Applying a New License

    A new license can be applied in the Admin Settings -> Settings section.

    Once applied you will be able to restart all existing Instances and create new Instances and Devices. The MQTT will accept new connections.

  • Single Sign On Updates

    Ben Hardill

    In the v2.7.0 release we have included some new SSO features

    User creation on first log in

    Before v2.7.0 users needed to be created before they could use SSO to log in to FlowFuse. Now if enabled in the SSO configuration users will be created when they first sign in. If team membership is controlled by SSO Groups (SAML only) then they will be added to the relevant teams, otherwise if the system is configured to create a Team for a new user it will do so.

    FlowFuse Cloud customers should contact support to discuss enabling this feature for their teams.

    Managing FlowFuse Admins with SSO Groups

    It is now possible to configure a group to manage which users are granted administration privileges. The name of the group can be added to the SSO configuration (SAML only).

    NOTE: It is advised to maintain a backup admin user that does not authenticate via SSO so ensure access can be maintained if the SSO provider is unavailable. Also the system will not remove the admin flag from a user if that would leave the platform with no admins even if they removed from the group.

    This feature is not available to FlowFuse Cloud customers.

  • Notifications Inbox

    We've made some changes to the way notifications are displayed and handled in FlowFuse to make it easier to see what's going on in your system, with a new, dedicated, "Notifications Inbox".

    Screenshot showing the new Notifications Inbox in FlowFuse Screenshot showing the new Notifications Inbox in FlowFuse

    Whilst the only notifications we're supporting right now are team invites, this groundwork will allow us to expand the types of notifications we can send in the future to give better visibility of what's happening in your FlowFuse environment.

  • Managing devices

    Steve McLaughlin

    We have added bulk operations for managing devices.

    In this first iteration we have added the ability to delete multiple devices at once.

    To use this feature, navigate to the devices page, application devices or instance devices and place a check in the box next to the devices you wish to delete. Once you have selected the devices you wish to delete, click the trash can button above the table & confirm the deletion.

    We will be adding more bulk operations in the future, so keep an eye out for more updates.

    Deleting multiple devices

  • FlowFuse Assistant Writes JSON

    Steve McLaughlin

    The FlowFuse Assistant can now assist you by generating JSON.

    Wherever you edit JSON in the Rich Monaco Editor you will see the "Ask the FlowFuse Assistant 🪄" code lens. That includes the Inject Node, the Template Node and any contrib node that uses the built-in editor for writing JSON.

    We think you will find this to be a great time saver and a good helper when you are unsure of the syntax.

    Just ask for what you want and it does a decent job of figuring it out.

    Here are some examples:

    Asking the Assistant to generate JSON from within the template node

    Prompting from within the Template Node Resulting JSON

    Asking the Assistant to generate JSON from within the inject node for the payload value

    Prompting from within the Inject Nodes Typed Input Resulting JSON

    This is just the beginning of the FlowFuse Assistant's capabilities. Stay tuned!

    Updating the Assistant to get these new features

    If you are running Node-RED v4.x, head over to the Palette Manager, update the plugin and restart your instance.

    Updating assistant on Node-RED 4

    If you are still running Node-RED v3.x, you can update the plugin by adding @flowfuse/nr-assistant to the instance settings then restart it.

    Updating assistant on Node-RED 3

  • Applications Search

    With hundreds of devices and instances running in FlowFuse, it can be very difficult to find the resource you're looking for. That's why we've introduced a new search feature that allows you to search across all of your FlowFuse instances, devices and applications from a single place.

    Screenshot showing the new Notifications Inbox in FlowFuse Screenshot showing the new Notifications Inbox in FlowFuse

    The view will automatically filter as you type making it easy to find the resource you're looking for, it will keep reference to any applications and or child instances/devices where appropriate.

  • Persistent Storage on FlowFuse Cloud

    Ben Hardill

    Users of FlowFuse Cloud and self-hosted users on Kubernetes can now make use of a new persistent storage solution.

    Starting with the v2.6.0 release the Pods running the Node-RED Instances will have a Persistent Volume mounted on /data/storage in which files can be written. These files will persist for the lifetime of the Instance including across Susspend/Resume and Stack upgrades.

    This update means nodes like node-red-node-sqlite can be used to store data safely.

    This capability replaces the current FlowFuse FileServer which made use of custom versions of the Node-RED code File nodes to store and read files from a remote network store. However this didn't allow 3rd party nodes to also benefit from the storage provided.

    New instances created will default to use the new Persistent Storage volumes. If you want to upgrade an existing instance that uses the FileServer storage, get in touch with Support and we can help migrate your data over.

    Similar support for Docker will be available in later releases.

  • The FlowFuse Assistant

    Steve McLaughlin

    We are excited to announce the first release of The FlowFuse Assistant, a new plugin for your Node-RED instances designed to enhance your development experience.

    In this initial release, The FlowFuse Assistant can help you create function nodes for those times when a no-code solution is either not feasible or not possible. Additionally, it works directly inside the Function Node editor right where you need it.

    This is just the beginning. The FlowFuse Assistant will continue to evolve, with future updates bringing even more powerful features and enhancements.

    Starting from today, FlowFuse Assistant is available on FlowFuse Cloud. Users will need to update their instances to the latest stack to enable it.

    Node-RED Editor toolbar button for the assistant

    FlowFuse Assistant Input Dialog

    Flowfuse Assistant Code Lens

  • Immersive Editor Experience

    Joe Pavitt

    We found out that many users have to frequently switch between the Node-RED Editor and FlowFuse UI. This back-and-forth movement was often necessary to view logs, save snapshots, restart the Editor after updates, and perform other tasks.

    We're always seeking to reduce friction in the FlowFuse user experience, and as such, we've introduced a large overhaul of the developer experience for Node-RED when running in FlowFuse, in what we're calling the "Immersive Editor".

    Node-RED Editor toolbar button for the assistant

    Now, the instances tabs are all available in the same view as the Editor, and you can manage your instance, watch logs, capture snapshots and event restart it, all without leaving the Node-RED Editor.

    The new Immersive Editor is available for instances running Node-RED 4.0.2 or later - older versions of Node-RED will still use the separate views.

  • Multi-line Environment Variables

    Steve McLaughlin

    FlowFuse now supports the input of multi-line environment variables for your Node-RED instances running on FlowFuse.

    This unlocks the ability to store certs or multi-line values like JSON as environment variables.

    We've also improved the .env file import to support the use of multi-line values too.

    multiline environment variables

  • Running the Device Agent behind an HTTP proxy

    Nick O'Leary

    The FlowFuse Device Agent allows you to manage your Node-RED instances wherever you want them to run. It connects back to the platform over a secure https connection.

    For some enterprise customers, that has posed a challenge as they protect their network with an HTTP proxy that all traffic has to be directed to.

    With the 2.5.0 release of the Device Agent, we now support running the Device Agent behind a proxy - letting it run in even more locations.

    Support comes using the industry standard set of http_proxy environment variables - familiar to anyone running services behind a proxy.

    Full details are available in our http proxy documentation.

  • Compare Snapshots flows

    Steve McLaughlin

    We have now added the ability to select a snapshot and compare it to other snapshots making it easier to understand what is in the current snapshot and what has changed in relation to the 2nd snapshot.

    Both snapshots are overlayed and you can step through the differences or use the new slider to visualise the differences.

    Selecting a snapshot for comparison

    Comparing selected snapshot with another

  • Custom hostnames for your instances

    Nick O'Leary

    Enterprise teams on FlowFuse Cloud can now configure their own subdomain to point at their Node-RED application.

    Within FlowFuse Cloud, Node-RED instances are reached by their provided url: <name>.flowfuse.cloud.

    With this new option, it is possible to add a custom hostname for the instance that works alongside the provided url.

    For example, if you have built a dashboard you can now configure your instance to make that available via dashboard.example.com or any other subdomain you own.

    We only support subdomains at this time, but adding support for top-level domains is on the roadmap.

    Read more on how to setup custom hostnames.

  • Snapshot Upload

    Steve McLaughlin

    Snapshots are a point-in-time backup of Node-RED that can be used to easily revert back to previous version, or to push out to other instances and devices as part of our Pipelines feature.

    Following on from the recent work around snapshots to permit Instance Snapshot Downloads and Snapshot Uploads, we have now added the ability to download application device snapshots.

    This means you can download a snapshot from any device or instance and upload it to any device or instance on any FlowFuse instance.

    Also, to improve access to these actions, we have also updated the application and device snapshot table items menu to present all relevant snapshot actions.

    Application Snapshots

    Application Snapshots Table Menu

    Instance Snapshots

    Instance Snapshots Table Menu

    Device Snapshots

    Device Snapshots Table Menu

  • Snapshot Upload

    Steve McLaughlin

    Snapshots are a point-in-time backup of Node-RED that can be used to easily revert back to previous version, or to push out to other instances and devices as part of our Pipelines feature.

    As promised we have now provided a way for you to upload your locally downloaded snapshots.

    Upload snapshot

    This means you can now easily take a snapshot and move it between FlowFuse platforms or, if you prefer, automate it via the APIs it is built on.

    We hope you like this nifty little feature.

    Stay tuned as we expect the final peices in the overall Snapshot Improvements to be delivered in the coming days.

  • Snapshot Improvements

    Nick O'Leary

    Snapshots are a point-in-time backup of Node-RED that can be used to easily revert back to previous version, or to push out to other instances and devices as part of our Pipelines feature.

    We have lots planned to improve the overall workflow with snapshots, and have a couple updates to share that are available today.

    Viewing snapshot contents

    Following the work done to enable viewing flows in the Team Library, we've added the same capability to snapshots.

    Each snapshot now has a 'View Snapshot' option that will display the flows without having to open up the full Node-RED editor.

    Downloading snapshots

    We've also added the ability to download snapshots locally - allowing you to take your own offline backups of your flows.

    The 'Download Snapshot' option is currently available on Instance Snapshots, but we'll be rolling it out to all snapshot types in the near future. We are also working on an Import feature that will let you upload a snapshot back into the platform.

    Download snapshot

  • Managing Node-RED versions on Devices

    Nick O'Leary

    We have added the ability to manage the Node-RED version running on application-assigned Devices within FlowFuse.

    Ordinarily, a device will get its Node-RED version from the snapshot deployed to it. However, for an Application-assigned device, you may not yet have a snapshot to deploy.

    The new option, available under Device/Settings/Editor lets you pick what version of Node-RED the device should use - overriding what is in the active snapshot.

    For devices running v2.4.1 or later of the Device Agent, Node-RED will get updated when the setting is saved. For older versions of the Device Agent, it will require a new snapshot to be deployed to trigger the update.

  • Customizing instance health-check settings

    Nick O'Leary

    When running Node-RED within FlowFuse, the platform actively monitors the instances to make sure they are running smoothly and automatically restarts them if it detects a problem. It does this by regularly polling Node-RED to make sure it is still responsive.

    This provides protection for the case where a user's flows accidentally creates a tight loop in its code and locks up the runtime.

    We have to do this with care; it is entirely possible that a user's flows are intentionally doing some hard work that causes our health check to temporarily fail. For that reason, we only restart Node-RED if it fails a number of health-check polls in a row.

    But even with that in place, there are still edge cases where a user's flows need to do some really hard work that can exceed what the default health-check polling is configured to handle.

    We have now added the ability to customize how often we check the instance health. By default this is done every 7.5 seconds, but can now be extended via the instance settings.

    This will require the instance to be updated to the latest stack to enable the option.

    Health check interval in Instance settings

  • Team Library - Flow Viewer

    Joe Pavitt

    The Library feature allows you to save and share common functionality and flows across your team on FlowFuse. We've just added the ability to preview any flows saved here, making it easier to understand what they do and explore your collections of flows before importing them into your workspace.

    This new feature will better help you maintain and manage your team's shared flows, and give better visibility on flows that your fellow Team members are building.

    Example entry being visualized from the Team Library