Skip to content

Latest commit

 

History

History
644 lines (498 loc) · 24.1 KB

CHANGELOG.md

File metadata and controls

644 lines (498 loc) · 24.1 KB

0.16.2: Maintenance Release

  • Ensure custom mustache context parent set in Template node fixes #1126
  • Display debug node name in debug panel if its known
  • Ensure auth-tokens are removed when no user is specified in settings
  • Ensure all a tags have blank target in info sidebar
  • Ensure links do not span tabs in the editor
  • Avoid creating multiple reconnect timers in websocket node
  • Fix inner reference in install fail message catalog entry Fixes #1120
  • Display buffer data properly for truncated buffers under Object property

0.16.1: Maintenance Release

  • Add colour swatches to debug when hex colour matched
  • Nodes with hasUsers set to false should not appear unused
  • Change hard error to verbose warning if using old node.js level
  • Don't filter debug properties starting with _ Fixes #1117
  • Node logged errors not displayed properly in debug pane Fixes #1116
  • Do not look for existing nodes when checking for wires on paste Fixes #1114
  • -v option not enabling verbose mode properly
  • Add node.js version check on startup

0.16.0: Milestone Release

Runtime

  • Drop support for node 0.10 and 0.12

Nodes

  • Add option to colourise debug console output Closes #1103
  • Add property validation to nodes using typedInput
  • Add common validator for typedInput fields Closes #1104
  • Update debug node console logging indicator icon Closes #1094
  • Let exec node (spawn) handle commands with spaces in path
  • Add symbol to debug node to indicate debugging also to console.log
  • Change file node to use node 4 syntax (drops support for 0.8)
  • add info for httprequest responseUrl property
  • Add res.responseUrl to httprequest node response
  • Add support for flow and global context in Template node (#1048)
  • Added YAML parser node (#1034)
  • node-red-node-serialport removed as a default node

Editor

  • Add install/remove dialog to increase friction Closes #1109
  • Report node catalogue load errors Closes #1009
  • Properly report module remove errors in palette editor Fixes #1043
  • Update rather than hide install button after success install
  • Tweak search box styling
  • Display info tips slightly longer
  • Allow tips to be enabled/disabled via menu option
  • Info-tips update
  • Make typedInput keyboard navigable
  • update Font Awesome to 4.7.0
  • Add expression editor for jsonata
  • Overhaul keyboard handling and introduce editor actions
  • Add Japanese translation file(editor.json) (#1084)
  • Add quick-add node mode with cmd/ctrl-click
  • Add cmd/ctrl-click to quick add wires
  • Use json-stringify-safe to detect circular references in debug msgs
  • debug - format if time if correct length/range
  • Make Debug object explorable
  • Initial debug pop-out window
  • Add proper three-way diff view
  • Focus tray body when edit dialog opened
  • Hit enter to edit first node in selection
  • Add node delete button to edit dialog
  • Add notification when runtime stopped due to missing types Part of #832

Fixes

  • Do not tie debug src loading to needsPermission Fixes #1111
  • Initialise nodeApp regardless of httpAdmin setting Closes #1096 #1095
  • Speed up reveal of search dialogs
  • Ensure flows exist before delegating status/error events Fixes #1069
  • Update package dependencies
  • Update MQTT to latest 2.2.1
  • Node status not being refreshed properly in the editor
  • Try to prevent auto-fill of password fields in node edit tray Fixes #1081
  • Fix whitespace in localfilesystem
  • fix bug where savesettings did not honor local settings variables (#1073)
  • Tidy up unused/duplicate editor messages Closes #922
  • Property expressions must not be blank
  • Tidy up merge commit of validatePropertyExpression
  • add port if wires array > number of ports declared.
  • Allow quoted property expressions Fixes #1101
  • Index all node properties for node search
  • Remove node 0.10 from travis config
  • update welcome message to use logger so it can be turned off/on if required (#1083)
  • Fix dynamically loading multiple node-sets from palette editor
  • Allow a node to reorder its outputs and maintain links Fixes #1031

0.15.3: Maintenance Release

  • Tcpgetfix: Another small check (#1070)
  • TCPGet: Ensure done() is called only once (#1068)
  • Allow $ and _ at start of property identifiers Fixes #1063
  • TCPGet: Separated the node.connected property for each instance (#1062)
  • Corrected 'overide' typo in XML node help (#1061)
  • TCPGet: Last property check (hopefully) (#1059)
  • Add additional safety checks to avoid acting on non-existent objects (#1057)
  • add --title for process name to command line options
  • add indicator for fire once on inject node
  • reimplement $(env var) replace to share common code.
  • Fix error message for missing node html file, and add test.
  • Let credentials also use $(...) substitutions from ENV
  • Rename insecureRedirect to requireHttps
  • Add setting to cause insecure redirect (#1054)
  • Palette editor fixes (#1033)
  • Close comms on stopServer in test helper (#1020)
  • Tcpgetfix (#1050)
  • TCPget: Store incoming messages alongside the client object to keep reference
  • Merge remote-tracking branch 'upstream/master' into tcpgetfix
  • TCPget can now handle concurrent sessions (#1042)
  • Better scope handling
  • Add security checks
  • small change to udp httpadmin
  • Fix comparison to "" in tcpin
  • Change scope of clients object
  • Works when connection is left open
  • First release of multi connection tcpget
  • Fix node.error() not printing when passed false (#1037)
  • fix test for CSV array input
  • different test for Pi (rather than use serial port name)
  • Fix missing 0 handling for css node with array input

0.15.2: Maintenance Release

  • Revert bidi changes to nodes and hide menu option until fixed Fixes #1024
  • Let xml node set options both ways
  • Bump serialport to use version 4
  • gpio node handle multiple bits of data returned in one go
  • HTTP In should pass application/octet-stream as buffer not string Fixes #1023
  • Handle missing httpNodeRoot setting properly
  • Config sidebar not handling node definition error properly
  • Add minimum show time to deploy spinner to avoid flicker
  • Add work-in-progress update button to palette-editor
  • Add log.removeHandler function
  • Add Crtl/Shift/p shortcut for manage palette
  • Add spinner to deploy button
  • Status messages from nodes in subflows not delegated properly Fixes #1016
  • fix spelling in join node info
  • Speed up tab scrolling
  • Update delay burst test to be more tolerant of timing Fixes #1013

0.15.1: Maintenance Release

  • Update default palette catalogue to use https
  • Disable palette editor if npm not found - and fix for Windows
  • Searching package catalogue should be case-insensitive Fixes #1010
  • contenteditable fields not handled in config nodes Fixes #1011
  • Change html link refs from _new to _blank to be standards compliant

0.15.0: Milestone Release

Runtime

  • Increase default apiMaxLength to 5mb and add to default settings Closes #1001
  • Add v2 /flows api and deploy-overwrite protection
  • Encrypt credentials by default
  • Ensure errors thrown by RED.events handlers don't percolate up

Editor

  • Mark nodes as changed when they are moved
  • Added parent containment option for draggable. (#1006)
  • Ignore bidi event handling on non-existent and non-Input elements Closes #999
  • Remove list of flows from menu
  • Allow nodes to be imported with their credentials
  • Add workspace search option
  • Add scrollOnAdd option to editableList
  • Add swift markup to editor for open whisk node
  • Scrollable tabs 👍
  • Allow linking to individual flow via url hash
  • Avoid duplicating existing subflows on import
  • Add import-to-new-tab option
  • Add new options to export-nodes dialog
  • Stop nodes being added beyond the outer bounds of the workspace
  • Default config nodes to global scope unless in a subflow Closes #972
  • Bidi support for Text Direction and Structured Text (#961)
  • Fix jQuery selector, selecting more than one help pane/popover and displaying incorrectly. (#970)
  • Fixes removeItem not passing row data to callback. (#965)
  • Move common components and add searchBox
  • Add initial palette sidebar

Nodes

  • Inject node label - show topic for timestamp mode if short
  • Let change node set type if total match
  • Clean up status on close for several core nodes.
  • Change node: re-parse JSON set value each time to avoid pass-by-ref
  • Better handle HTTP Request header capitalisation
  • Enable ES6 parsing in Function editor by default Fixes #985
  • Update debug sidebar to use RED.view.reveal to show debug nodes
  • Add full path tip to file node, And tidy up Pi node tips
  • Remove WebSocket node maxlistener warning
  • Update mqtt-broker node to use fully name-space qualified status messages
  • Let UDP node better share same port instance if required
  • Add number of units to the delay node (rate) (#994)
  • Allow http middleware to skip rawBodyParser
  • Let change node move property to sub-property.
  • Add info to exec warning about buffered output if using python
  • TCP node: pass on latest input msg properties
  • Make sure MQTT broker is really set
  • Fix escape character catch in TCPGet + support 0x?? sequences
  • Fix split character in TCP Request node
  • Add CSS highlighting to the template node (#950)
  • Only update switch previous value after all rules are run

Other

  • Add npm build/test scripts Closes #946 #660
  • Move travis to node 6 and 7 - drop 5 and 0.12

0.14.6: Maintenance Release

Fixes

  • Tell ace about Function node globals. Closes #927
  • Tidy up mqtt nodes - linting and done handling. Closes #935
  • Fix invalid html in TCP and HTML node edit templates
  • Add proper help text to link nodes
  • Handle importing old mqtt-broker configs that lack properties
  • Update ace to 1.2.4
  • Allow config nodes to provide a sort function for their select list
  • Add log warning if node module required version cannot be satisfied
  • Handle empty credentials file. Closes #937
  • Add RPi.GPIO lib test for ArchLinux

0.14.5: Maintenance Release

Fixes

  • Cannot clear cookies with http nodes
  • let HTML parse node allow msg.select set select
  • Validate nodes on import after any references have been remapped
  • Debug node handles objects without constructor property Fixes #933
  • Ensure 'false' property values are displayed in info panel Fixes #940
  • Fix node enable/disable over restart - load configs after settings init

0.14.4: Maintenance Release

Nodes

  • Update trigger node ui to use typedInputs
  • Better handling of quotes in CSV node
  • Clarify the MQTT node sends msg.payload - closes #929
  • Inject node should reuse the message it is triggered with Closes #914
  • Stop trigger node re-using old message
  • Allow node.status text to be 'falsey' values

Fixes

  • Handle DOMException when embedded in an iframe of different origin Fixes #932
  • Fix double firing of menu actions
  • Fix select box handling in Safari - fixes #928
  • Clear context in node test helper Fixes #858
  • Allow node properties to be same as existing object functions Fixes #880
  • Handle comms link closing whilst completing the initial connect
  • Protect against node type names that clash with Object property names Fixes #917
  • Clone default node properties to avoid reference leakage
  • Strip tab node definition when exporting
  • Check for null config properties in editor before over-writing them
  • Add hasUsers flag to config nodes

Editor

  • Add sql mode to ace editor
  • Keyboard shortcuts dialog update (#923)
  • Ensure importing link nodes to a subflow doesn't add outbound links Fixes #921
  • Add updateConfigNodeUsers function to editor
  • Scroll to bottom when item added to editableList
  • Form input widths behave more consistently when resizing Fixes #919 #920

0.14.3: Maintenance Release

Fixes

  • Create default setting.js in user-specified directory. Fixes #908
  • MQTT In subscription qos not defaulting properly
  • Let exec node handle 0 as well as "0"

0.14.2: Maintenance Release

Fixes

  • Cannot add new twitter credentials. Fixes #913
  • Support array references in Debug property field

0.14.1: Maintenance Release

Fixes

  • Handle undefined property that led to missing wires in the editor
  • Remove duplicate 'Delete' entry in keyboard shortcut window. Closes #911
  • Add 'exec' to node-red-pi launch script. Closes #910

0.14.0: Milestone Release

Editor

  • Replace edit dialog with edit tray
  • Enable shift-drag detach of just the selected link
  • Allow workspace tabs to be re-ordered
  • Scope keyboard shortcuts to dom elements
  • Ensure parent nodes marked as changed due to child config node changes
  • Validate all edit dialog inputs when one changes
  • Add editableList widget and update Switch/Change nodes to use it
  • Add option to filter Debug sidebar by flow and highlight subflow-emitting nodes
  • Back off comms reconnect attempts after prolonged failures
  • Prompt for login if comms reconnect fails authentication
  • Change style of nodes in subflow template view
  • Add CHANGELOG.md and make it accessible from menu

Runtime

  • Always log node warnings on start without requiring -v
  • Add support for loading scoped node modules. Closes #885
  • Add process.env.PORT to settings.js
  • Clear node context on deploy. Closes #870
  • Enable finer grained permissions in adminAuth

Nodes

  • Enable config nodes to reference other config nodes
  • Add Split/Join nodes
  • Add Link nodes
  • Add support to HTTP In node for PATCH requests. Closes #904
  • Add cookie handling to HTTP In and HTTP Response nodes
  • Add repeat indicator to inject node label. Closes #887
  • Add javascript highlighter to template node
  • Add optional timeout to exec node
  • Add TLS node and update MQTT/HTTP nodes to use it
  • Let trigger node also send last payload to arrive
  • Add timestamp as a default typedInput and update Inject and change nodes to match,
  • Add QoS option to MQTT In node
  • Add status to exec spawn mode
  • Add Move capability to Change node
  • Update Serial node to support custom baud rates
  • Add support for array-syntax in typedInput msg properties
  • Add RED.util to Function node sandbox
  • Capture error stack on node.error. Closes #879

Fixes

  • Add error handling to all node definition api calls
  • Handle null return from Function node in array of messages
  • Defer loading of token sessions until they are accessed. Fixes #895
  • set pi gpio pin status correctly if set on start
  • Prevent parent window scrolling when view is focused. Fixes #635
  • Handle missing tab nodes in a loaded flow config
  • Ensure typedInput dropdown doesn't fall off the page
  • Protect against node types with reserved names such as toString. Fixes #880
  • Do not rely on the HTML file to identify where nodes are registered from
  • Preserve node properties on import
  • Fix regression in delay node. topic based queue was emptying all the time instead of spreading out messages.
  • Throw an error if a Function node adds an input event listener
  • Fix hang on partial deploy with disconnected mqtt node
  • TypedInput: preload type icons to ensure width calc correct
  • Ensure tcp node creates a buffer of size 1 at least
  • Return editorTheme default if value is undefined
  • Fix RED.util.compareObjects for Function created objects and Buffers
  • Ensure default settings copied to command-line specified userDir

0.13.4: Maintenance Release

  • Add timed release mode to delay node
  • Enable link splicing for when import_dragging nodes. Closes #811
  • Fix uncaught exception on deploy whilst node sending messages
  • Deprecate old mqtt client and connection pool modules
  • Change node: add bool/num types to change mode Closes #835
  • Validate fields that are $(env-vars) Closes #825
  • Handle missing config nodes when validating node properties
  • Pi node - don't try to send data if closing
  • Load node message catalog when added dynamically
  • Split palette labels on spaces and hyphens when laying out
  • Warn if editor routes are accessed but runtime not started Closes #816
  • Better handling of zero-length flow files Closes #819
  • Allow runtime calls to RED._ to specify other namespace
  • Better right alignment of numerics in delay and trigger nodes
  • Allow node modules to include example flows
  • Create node_modules in userDir
  • Ensure errors in node def functions don't break view rendering Fixes #815
  • Updated Inject node info with instructions for flow and global options

0.13.3: Maintenance Release

  • Fix crash on repeated inject of invalid json payload
  • Add binary mode to tail node
  • Revert Cheerio to somewhat smaller version
  • Add os/platform info to default debug

0.13.2: Maintenance Release

  • Don't force reconnect mqtt client if message arrives (fixes the MQTT connect/disconnect endless cycle)
  • Add -p/--port option to override listening port
  • Invert config node filter toggle button colours so state is more obvious
  • Add timeout to httprequest node
  • Tidy up of all node info content - make style consistent
  • Make jquery spinner element css consistent with other inputs
  • tcp node add reply (to all) capability
  • Allow the template node to be treated as plain text
  • Validate MQTT In topics Fixes #792
  • httpNodeAuth should not block http options requests Fixes #793
  • Disable perMessageDeflate on WS servers - fixes 'zlib binding closed' error
  • Clear trigger status icon on re-deploy
  • Don't default inject payload to blank string
  • Trigger node, add configurable reset
  • Allow function properties in settings Fixes #790 - fixes use of httpNodeMiddleware
  • Fix order of config dialog calls to save/creds/validate
  • Add debounce to Pi GPIO node

0.13.1: Maintenance Release

  • Revert wrapping of http request object

0.13.0: Milestone Release

  • Add 'previous value' option to Switch node
  • Allow existing nodes to splice into links on drag
  • CORS not properly configured on multiple http routes Fixes #783
  • Restore shift-drag to snap/unsnap to grid
  • Moving nodes with keyboard should flag workspace dirty
  • Notifications flagged as fixed should not be click-closable
  • Rework config sidebar and deploy warning
  • Wrap http request object to match http response object
  • Add 'view' menu and reorganise a few things
  • Allow shift-click to detach existing wires
  • Splice nodes dragged from palette into links
  • try to trim imported/dragged flows to [ ]
  • Move version number as title of NR logo
  • Moving nodes mark workspace as dirty
  • Ok/Cancel edit dialogs with Ctrl-Enter/Escape
  • Handle OSX Meta key when selecting nodes
  • Add grid-alignment options
  • Add oneditresize function definition
  • Rename propertySelect to typedInput and add boolean opt
  • Add propertySelect to switch node
  • Add propertySelect support to Change node
  • Add context/flow/global support to Function node
  • Add node context/flow/global
  • Add propertySelect jquery widget
  • Add add/update/delete flow apis
  • Allow core nodes dir to be provided to runtime via settings
  • Tidy up API passed to node modules
  • Move locale files under api/runtime components
  • Add flow reload admin api

0.12.5: Maintenance Release

  • Add attribute capability to HTML parser node
  • Add Pi Keyboard code node
  • Fix for MQTT client connection cycling on partial deploy
  • Fix for tcp node properly closing connections
  • Update sentiment node dependencies
  • Fix for file node handling of UTF8 extended characters

0.12.4: Maintenance Release

  • Add readOnly setting to prevent file writes in localfilesystem storage
  • Support bcrypt for httpNodeAuth
  • Pi no longer needs root workaround to access gpio
  • Fix: Input File node will not retain the file name

0.12.3: Maintenance Release

  • Fixes for TCP Get node reconnect handling
  • Clear delay node status on re-deploy
  • Update Font-Awesome to v4.5
  • Fix trigger to block properly until reset
  • Update example auth properties in settings.js
  • Ensure httpNodeAuth doesn't get applied to admin routes
  • TCP Get node not passing on existing msg properties

0.12.2: Maintenance Release

  • Enable touch-menu for links so they can be deleted
  • Allow nodes to be installed by path name
  • Fix basic authentication on httpNode/Admin/Static
  • Handle errors thrown in Function node setTimeout/Interval
  • Fix mqtt node lifecycle with partial deployments
  • Update tcp node status on reconnect after timeout
  • Debug node not handling null messages
  • Kill processes run with exec node when flows redeployed
  • Inject time spinner incrementing value incorrectly

0.12.1: Maintenance Release

  • Enable touch-menu for links so they can be deleted
  • Allow nodes to be installed by path name
  • Fix basic authentication on httpNode/Admin/Static

0.12.0: Milestone Release

  • Change/Switch rules now resize with dialog width
  • Support for node 4.x
  • Move to Express 4.x
  • Copy default settings file to user dir on start up
  • Config nodes can be scoped to a particular subflow/tab
  • Comms link tolerates <5 second breaks in connection before notifying user
  • MQTT node overhaul - add will/tls/birth message support
  • Status node - to report status events from other nodes
  • Error node can be targeted to specific other nodes
  • JSON node can encode Array types
  • Switch node regular expression rule can now be set to be case-insensitive
  • HTTP In node can accept non-UTF8 payloads - will return a Buffer when appropriate
  • Exec node configuration consistent regardless of the spawn option
  • Function node can now display status icon/text
  • CSV node can now handle arrays
  • setInterval/clearInterval add to Function node
  • Function node automatically clears all timers (setInterval/setTimeout) when the node is stopped

0.11.2: Maintenance Release

  • Allow XML parser options be set on the message
  • Add 'mobile' category to the palette (no core nodes included)
  • Allow a message catalog provide a partial translation
  • Fix HTTP Node nls message id
  • Remove delay spinner upper limit
  • Update debug node output to include length of payload

0.11.1: Maintenance Release

  • Fix exclusive config node check when type not registered (prevented HTTP In node from being editable unless the swagger node was also installed)

0.11.0: Milestone Release

  • Add Node 0.12 support
  • Internationalization support
  • Editor UI refresh
  • Add RBE node
  • File node optionally creates path to file
  • Function node can access clearTimeout
  • Fix: Unable to login with 'read' permission

0.10.10: Maintenance Release

  • Fix permissions issue with packaged nrgpio script
  • Add better help message if deprecated node missing

0.10.9: Maintenance Release

Fix packaging of bin scripts

0.10.8: Maintenance Release

  • Nodes moved out of core
    • still included as a dependency: twitter, serial, email, feedparser
  • no longer included: mongo, arduino, irc, redis
  • node icon defn can be a function
  • http_proxy support
  • httpNodeMiddleware setting
  • Trigger node ui refresh
  • editorTheme setting
  • Warn on deploy of unused config nodes
  • catch node prevents error loops

0.10.6: Maintenance Release

Changes:

  • Performance improvements in editor
  • Palette appearance update
  • Warn on navigation with undeployed changes
  • Disable undeployed node action buttons
  • Disable subflow node action buttons
  • Add Catch node
  • Add logging functions to Function node
  • Add send function to Function node
  • Update Change node to support multiple rules

0.10.4: Maintenance Release

Changes:

  • http request node passes on request url as msg.url
  • handle config nodes appearing out of order in flow file - don't assume they are always at the start
  • move subflow palette category to the top, to make it more obvious
  • fix labelling of Raspberry Pi pins
  • allow email node to mark mail as read
  • fix saving library content
  • add node-red and node-red-pi start scripts
  • use $HOME/.node-red for user data unless specified otherwise (or existing data is found in install dir)

0.10.3: Maintenance Release

Fixes:

  • httpAdminAuth was too aggressively deprecated (ie removed); restoring with a console warning when used
  • adds reporting of node.js version on start-up
  • mongo node skip/limit options can be strings or numbers
  • CSV parser passes through provided message object

0.10.2: Maintenance Release

Fixes:

  • subflow info sidebar more useful
  • adds missing font-awesome file
  • inject node day selection defaulted to invalid selection
  • loading a flow with no tabs failed to add nodes to default tab