New features:
- Using Flowhub's API service for OAuth token exchange
Internal changes:
- Dependencies now utilize a package lockfile
- Now using NoFlo 1.4
- No longer depending on legacy noflo-github components
New features:
- Packet inspection has been changed to a unified timeline showing packets from all edges (including subgraphs). Select edges in the graph to filter the list
- The IDE now ships with a caching-enabled Service Worker, which should make the web app a proper PWA with offline support
Internal changes:
- Web Components are now modern JavaScript running on Polymer 3.x
- App build is now made out of multiple chunks to separate UI widgets and UI logic from each other
- Docker build of noflo-ui is now a multi-stage build to reduce image size
- Preview build of the latest noflo-ui
master
is now available in https://noflojs.org/noflo-ui - Local development is now faster via
npm run dev
, powered by Webpack Dev Server - Builds no longer include a zip file of noflo-ui. If a zip file is needed, simply grab the contents of the
browser
folder
Bugfixes:
- WebRTC runtime addresses are shown in a nicer way
- Projects connected to an
opener
runtime can only be clicked when we have an opener context - More consistent handling of graph IDs in live mode
Bugfixes:
- Updated fbp-protocol-client to improve WebRTC runtime compatibility
Bugfixes:
- Updated fbp-protocol-client to fix messaging issue with "opener" runtimes
New features:
- fbp-spec test suites in a project get automatically executed against runtime when something is modified in the project
- fbp-spec suites are loaded and displayed when a project is opened
- fbp-spec executions are also shown in the runtime events screen
Bugfixes:
- Runtime selector works again
- Fixed project deletion not updating the UI
- Errors transmitted by runtime are again shown in the runtime events screen
New features:
- Component specs received from a runtime are now shown in the UI
- Component spec changes are transmitted back to the runtime
- Newly-created components get a generated basic fbp-spec template
Bugfixes:
- NoFlo UI now uses namespaces more consistently when communicating with a runtime
New features:
- NoFlo components can now also be written in TypeScript (when your runtime supports it)
Bugfixes:
- Component sources are sent correctly to runtime upon creation
Bugfixes:
- Node inspectors can now be opened even when there are no events from runtime
Bugfixes:
- Pulling repos from GitHub works again
New features:
- When creating a graph it is possible to decide whether it will be a subgraph or a main graph
- Component inspector now displays a list of project graphs where the component is in use
Bugfixes:
- Runtime registration works more reliably
- Main graph handling is more consistent
New features:
- The runtime live mode is now fully editable just like regular projects
- Modal screens now match the current selected UI theme
- Errors coming from the runtime now include stack traces if available
- Errors are shown in the app UI instead of native notification pop-ups
- Output and errors sent from runtime are now visible in the right-hand bar
- Runtime output can be cleared with the Clear button in the right-hand bar
- Permission errors with runtime communication are now visible
- All messages to and from runtime are now validated against the FBP Protocol schema, with failures shown in UI
- All errors coming from runtime are also logged into browser's developer console
Bugfixes:
- Fixed node inspector updating of values
- Fixed editing of node and graph names in Safari
- Fixed issue with read-only mode not getting triggered correctly
Internal changes:
- Switched runtime communications to use the new fbp-client library
- Switched
npm start
from unmaintained simple-server to http-server - Switched build to more efficient webpack 4.x
- Now loading external JavaScript/CSS dependencies from
browser/vendor
directory instead ofnode_modules
- Converted the noflo-ui codebase from CoffeeScript to ES6 with AirBnB rules
Bugfixes:
- Fixed New component dialog setting a wrong language
Bugfixes:
- The running status of FBP runtimes accessed in live mode is now shown correctly
- GitHub scopes dialog on main screen shows up again when user hasn't authorized necessary scopes for GitHub synchronization
Internal changes:
- Updated the-graph to 0.11 and React to 15.x
New features:
- It is now possible to de-register remote GitHub repositories from noflo-ui
New features:
- If project doesn't have graphs set to be main either by name or metadata, the first graph will be selected as default
main
when downloading from GitHub
Bugfixes:
- Fixed opening already-downloaded projects via GitHub URL even if they don't have a main graph defined
New features:
- It is now possible to delete runtimes and projects directly from the main screen
- Users can enable "debug mode" and edit noflo-ui live in Flowhub
Bugfixes:
- Examples list now updates automatically as runtimes and projects are added or removed
Bugfixes:
- Graph minimap hides when viewing component source code
- Fixed broken GitHub pull when received a single file
- Dropped jslint to save 1MB of download, and because it doesn't work correctly with ES6
New features:
- noflo-ui now ships with a Dockerfile, allowing you to build and run the IDE with Docker. We also provide automated builds on Docker Hub
- It is now possible to open projects from GitHub in noflo-ui by simply using a URL. Here are some examples:
- https://app.flowhub.io/#github/c-base/ingress-table -- opens the main graph of the repository
master
branch - https://app.flowhub.io/#github/c-base/ingress-table/blob/master/graphs/FetchData.json -- opens the selected graph from the repository
master
branch - https://app.flowhub.io/#github/c-base/ingress-table/blob/master/components/DetectAttack.coffee -- opens the selected component from the repository
master
branch
- https://app.flowhub.io/#github/c-base/ingress-table -- opens the main graph of the repository
- Tube, the noflo-ui light theme, now works more consistently across the app
- Component and graph creation now includes a visual icon picker
- We now prevent graphs and components inside a project from using overlapping names
- Programming language selection when creating components is now filtered by runtime type
- Pulling a repository from GitHub now opens it after the project has been successfully downloaded
- GitHub operations now check API rate limits before proceeding
Bugfixes:
- Fixed issue with identifying which subgraphs of a project can be sent to runtime
- Fixed issue with component library allowing creation of circular dependencies (graphs using themselves as subgraph)
- Fixed subgraph creation dialog
- Fixed a race condition with initial data loading that might cause some components not to show up in their projects
- Fixed code editor contents sometimes overlapping line numbers
- When synchronizing a repository with GitHub, the operation selector for files now reflects the real selected option
- Graph modifications are now correctly picked up as something that can be pushed to GitHub
- Introduced throttling to GitHub pull operations to prevent browser canceling some of them
- If a graph pulled from GitHub can't be parsed, the error message includes the name of the failing graph
Internal changes:
- Updated noflo-ui to run on NoFlo 1.0
- Updated noflo-ui to run on Polymer 2.x
- Builds are done directly with webpack now, instead of via grunt-noflo-browser
- Switched tests from PhantomJS to Karma and Chrome Headless
Bugfixes:
- Fixed GitHub tab not opening
New features:
- Updated NoFlo browser demos
Bugfixes:
- Fixed multiple selection of nodes in graph editor
- Fixed auto-scrolling of packets list in edge inspector
Internal changes:
- Upgraded noflo-ui to run on NoFlo 0.8
- Removed all usage of deprecated NoFlo APIs
- Switched actions to use a property instead of bracket IPs
Bugfixes:
- Fixed iOS support
Internal changes:
- Updated noflo-ui to Polymer 1.0
- Switched to the-graph 0.10 which no longer depends on Polymer
- GitHub communications are now done using a Redux-style middleware
- IndexedDB operations are now done using a Redux-style middleware
- noflo-ui build now uses locally-installed grunt
- to run the test suite, run
npm run test
- to make a local build, run
npm run build
- to run the test suite, run
New features:
- Added support for the new
opener
FBP protocol transport for opening Flowhub from a running NoFlo web app
New features:
- Updated MsgFlo component templates to latest API
- Component templates can now receive project namespace and component name
Bugfixes:
- Fixed saving components coming from runtime when using Edit as project
- Ensured runtimes saved via live mode URL get proper labels
Bugfixes:
- Safety for parsing repository URLs coming from a runtime
New features:
- When synchronizing a project with GitHub, we now default to Ignore instead of push to make it easier to push changes more selectively
- Project repository and branch information is now read from runtime when using Edit as project
- Examples are downloaded as local projects when clicked so they'll stay available when offline
Internal changes:
- Polymer elements from the-graph were moved into this repository to aid in Polymer 1.x migration
New features:
- Redesigned the top part of the main application screen to take significantly less space
- Added link to app documentation
New features
- Added informative banner on GitHub access for non-authenticated and free users
Performance improvements
- The main JavaScript file (
noflo-ui.js
) and several of the bigger dependencies are now minified. This reduces bandwidth required to start the app. Sourcemaps are provided, so debugging the project should work as before.
New features
- The Edit as project button is now shown only when the runtime allows editing
- Runtimes are now persisted on Flowhub registry when opening them via Edit as project for easier access across your multiple devices
New features
- Updated
the-graph
to version 0.9 that includes support for read-only live mode
New features
- It is now possible to copy a live mode session into a project with the Edit as project button
- Live mode was changed to be read only
- Updated NoFlo component examples to the 0.8 Process API
- Project namespace used as library identifier for components and graphs is now separately editable
Bugfixes
- Information packets are now shown full in the packet inspectors instead of getting cut off
- Fixed sending of duplicate
graph:clear
messages to runtimes in project mode - Fixed the-graph capturing
s
andf
shortcuts when typing in the search field
Internal changes
- Now using
the-graph
version 0.8. The JavaScript is now bundled via Webpack instead of included in Polymer elements. This reduces the number of HTTP requests needed.
New features
- Single sign-on link for managing user's Flowhub Plan
Bugfixes
- Fixed fbp-spec tests for components not executing. #587
Internal changes
- Added an
npm start
command, for serving the UI when developing
Bugfixes
- Fixed compatibility with latest GitHub OAuth implementation
New features
- User information is automatically refreshed from the server at application start-up, allowing instant updates to plan status and other details
- Users can now authorize the app to access either their public or private GitHub repositories from the main screen
Bugfixes
- Examples that require SSL connection are no longer listed when on HTTP
- Fixed login in Chrome app build
- Fixed login in hosted SSL app
Bugfixes
- Selecting edges now sends
network:edges
again, so runtime can selectively send edge data. #328 - Incoming edge data no longer relies on
id
convention for matching edges. #293 - Updated noflo-runtime module to improve connection reliability with iframe runtimes
- Improved error handling of IndexedDB errors
Internal changes
- Runtime communication is now done using a React-middleware style pipeline. This should reduce risk of stale state compared to old approach. Some basic tests have been added.
- Fetching of user information from API is now done using React-middleware style pipeline. Some tests were added.
Bugfixes
- Safari 10 compatibility
- Added logic to wait for full runtime connection before sending components and graphs
Breaking changes
- Switched from The Grid to direct GitHub authentication. This means changes are required for running NoFlo UI in custom URLs. See the README for more information
New features
- Allow editing YAML component code (primarily for MsgFlo)
- Added Python/JS/CoffeeScript/YAML component templates for MsgFlo
Internal changes
- Runtime information is now declared in YAML files under
./runtimeinfo
instead of being hardcoded various places in the app
Bugfixes
- Fixed build on Windows (issue #595)
Bugfixes
- Fixed display of data packet payloads
Bugfixes
- Updated the-graph to support pinch-zoom on touchscreen devices
New features
- Update from
fbp
1.3.0 to 1.5.0. Several syntax additions were made, see the changelog
New features
- Automatic running and visualization of fbp-spec tests when components or graphs change
- Component libraries are cached by runtime. Allows full editing of graphs when not connected to runtime
- Component search now also seeks descriptions, not just names
- Component changes are now sent to the runtime only after user has stopped typing, instead of on every change
- YAML editing (for fbp-spec) now supports syntax highlighting and linting
- NoFlo component creation template now uses more modern 'WirePattern' component
- EcmaScript 6 support for JavaScript runtimes
- Python component language support, including syntax highlighting
Breaking changes
- The iframe runtime communication is now serialized as JSON. Old noflo-browser apps must be rebuilt with
noflo-runtime-iframe 0.6.0+
to be compatible.
Bugfixes
- Fixed Safari 9 compatibility
Internal changes
- Using NoFlo 0.7 instead of NoFlo 0.5
- Using Webpack and NPM dependencies for building instead of component.io. Requires using NPM version 3 or higher
- NoFlo browser build "preview.html" is fetched from http://noflojs.org instead of being bundled. Offline capable after initial load.
- Graph tests are now editable in graph inspector
- Moved graph preview HTML (
noflo-browser
only) to its own tab in the inspector - Fixed resizing of code and spec editors
- Support for toggling the
secure
option for edges, useful for hiding sensitive data like API tokens. - Add support for MsgFlo, distributed message queue based FBP runtime.
- Can now input secret string for manually added runtimes.
- Added support for
.hpp
(C++),.c
(C), and.py
(Python) files in GitHub synchronization. - Added support for editing and synchronizing fbp-spec tests. TODO: Running the tests
- Fixed GitHub push and pull with non-ASCII characters.
- Request re-login if there is no token, fixes login error with Pro plans
- Fix component editing (Stefan Sauer)
- Add "seen ago" label also on runtime selector (Stefan Sauer)
- More readable colors in runtime selector
- Match new superagent API in bergie/octo
- Specify superagent version (API changes after 0.21.0)
- Enabled JSHint and CoffeeLint addons for component editor (#271)
- the-graph 0.3.10
Polymer 0.5.3(doesn't work in Safari 7-8)
- Fix GitHub pull and synchronization
- Offer https when loaded on app.flowhub.io
- alter some tests
- fix klay deps
- Update to the-graph 0.3.8
- Update to the-graph 0.3.7
- Allow adding runtimes manually
- Add support for sndflo runtime
- Allow using a custom build for noflo-browser iframe runtimes
- Fix unable to change runtime type for a graph
- Compatibility with Android Add to homescreen feature with Chrome 39+
- Update to Polymer 0.5.1
- Fix Safari 7.1+ (#404)
- Fixes GitHub permission issue
- Support for C, C++ in component code editor
- Added component template for imgflo components
- Full support for custom runtime registry and OAuth provider
- WebRTC runtime support, including live debugging of NoFlo UI itself
- Support for launching external NoFlo browser runtime from URL/QR code
- Removed duplicate notification pop-ups
- Fixes to graph preview HTML handling
- Fixes to preview maximization
- New loading and error state visualization
- Enabled opening subgraphs and components also in gist examples
- Allow to configure at buildtime endpoints for runtime registry and OAuth provider
- Version naming scheme changed, all noflo-ui versions will be X.Y.0, custom builds should use X.Y.1+
- Copy and paste (via the-graph)
- Reverted the-graph dependency to use a specific version so noflo-ui tags will work
- Added support for changing the node icon of subgraphs
- Fixed access to component code in live mode
- MicroFlo import errors are now non-fatal, the specific functionality will just be unavailable
- Support for an offline-mode with reduced functionality, specified at build time
- Fixed creating new graphs with same name would overwrite existing graph
- Fixed login not working due to missing error handling on Gravatar failures
- Major refactoring to follow the Flux pattern
- Full project synchronization with GitHub
- Ability to connect dynamically to unregistered runtimes via supplying a URL-encoded runtime definition instead of the ID in format
endpoint?protocol=websocket&address=ws://example.net:3569
. For example:
#runtime/endpoint%3Fprotocol%3Dwebsocket%26address%3Dws%3A%2F%2Flocalhost%3A3570
- Graph search: in the search input, press tab to toggle modes (search library / search graph)
- More bugfixes and tweaks
- Firefox
shim-shadowdom
styling fix #320
- Updated to Polymer 0.4.0
- JavaFBP support via newer noflo-runtime library
- Added the
noflo-react
andnoflo-amd
components and the appropriate Require.js setup to the bundled HTML runtime - Added
noflo-webaudio
- Minor authentication fixes
- Disable git upload button until you type a commit message
- z-index layering refactor and pixel tweaks
- Bigger curves for loopback edges in the-graph
- Autolayout fix
- Node inspector renders a
<select>
dropdown for ports withvalues
set - Number scrubber fixes
- Changing label now changes node id #214
- Changes to search UX #238
- Polymer 0.2.4
- Font Awesome 4.1.0
- Added support for viewing component source code for library components. Requires runtime-level support
- Support for Chrome 35+ (native custom elements) and Polymer 0.2.3
- Pinch zoom gesture via Hammer.js
- No changes, just version bump for Chrome app
- Added examples to home screen
- Added support for
int
anddate
inport types in Node Inspector - Fixed IndexedDB initialization issue with Chrome Apps
connect
events are also shown now in the edge logs
- We now get the GitHub token, Flowhub plan, and user information through a single API call
- Added some anonymized usage metrics to help guide development
- Undo/redo are now disabled when there is no history in that direction
- Project creation now requires login
- Made CHANGES.md