Code Monkey home page Code Monkey logo

msgflo-project's Introduction

MsgFlo - Flow-Based Programming with Message Queues Build Status

Implementation of the Flow-Based Programming using message queues as the communications layer between different processes. Initial message queue transports targeted are AMQP and MQTT.

MsgFlo lets you build robust polyglot FBP systems spanning multiple computers/devices. A node can be implemented in any language, to reuse existing code, libraries and developer know-how.

In FBP each component is a black-box that processes and produces data, without knowledge about where the input data comes from, or where the output data goes. This ensures that a service is easy to change, and facilitates automated testing.

MsgFlo is designed to enable partial and gradual integration into existing systems; by using standard broker/transports, not placing restrictions on message payloads, allowing to use existing queue names, and integrating non-MsgFlo nodes seamlessly.

Status

In Production

  • Used in production at TheGrid website builder, with AMQP/RabbitMQ. 20 roles, 1'000'000 jobs/weekly+
  • Used in production in imgflo image processing server. 4 roles, 200'000 jobs/weekly+
  • Used for IoT networks at hackerspaces c-base and Bitraf, using MQTT/Mosquitto.

Client support

Tooling

  • msgflo executable implements the FBP runtime protocol.
  • Initial support for automated testing using fbp-spec
  • Experimental support for visually building networks using Flowhub
  • guv provides autoscaling of workers when using Heroku/AMQP.

Licence

MIT, see ./LICENSE

Documentation

Please refer to https://msgflo.org

Support

Flowhub logo

MsgFlo is a part of Flowhub, a platform for building robust IoT systems and web services.
We offer an Integrated Development Environment and consulting services.

Debugging

The msgflo executable, as well as the transport/participant library uses the debug NPM module. You can enable (all) logging using:

export DEBUG=msgflo*

msgflo-project's People

Contributors

bergie avatar greenkeeper[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

msgflo-project's Issues

An in-range update of mocha is breaking the build ๐Ÿšจ

Version 5.1.1 of mocha was just published.

Branch Build failing ๐Ÿšจ
Dependency mocha
Current Version 5.1.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

mocha is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • โŒ continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Release Notes v5.1.1

5.1.1 / 2018-04-18

๐Ÿ› Fixes

Commits

The new version differs by 6 commits.

  • e0bc1c1 Release v5.1.1
  • eac31fe update package-lock.json [ci skip]
  • fde558d update CHANGELOG.md for v5.1.1 [ci skip]
  • a5fd5e6 Revert "remove default js in "--watch-extensions" option; closes #3275"
  • 7057638 update outdated info in docs/README.md [ci skip]
  • 5212718 fix ESLint problems and consolidate configuration

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those donโ€™t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot ๐ŸŒด

An in-range update of mqtt is breaking the build ๐Ÿšจ

Version 2.18.0 of mqtt was just published.

Branch Build failing ๐Ÿšจ
Dependency mqtt
Current Version 2.17.0
Type dependency

This version is covered by your current version range and after updating it in your project the build failed.

mqtt is a direct dependency of this project, and it is very likely causing it to break. If other packages depend on yours, this update is probably also breaking those in turn.

Status Details
  • โŒ continuous-integration/travis-ci/push The Travis CI build could not complete due to an error Details

Release Notes v2.18.0
  • Use mqtt-packet typings #819
Commits

The new version differs by 11 commits.

  • 902b146 Bumped v2.18.0
  • 20e8611 Updated dependencies
  • 25a0c4b Merge pull request #819 from saboya/use-mqtt-packet-typings
  • 4152e03 Use mqtt-packet typings.
  • a194fc3 Merge pull request #814 from zousandian/master
  • d18975d Update: weapp url add port number when not 80 or 443
  • 4efb91c Merge pull request #813 from zousandian/master
  • 5bcf821 Fixed: weapp's real device environment can only send data of type String or ArrayBuffer
  • a18c037 Merge pull request #811 from zousandian/master
  • 05263bd Fixed: weapp url should not set port, remove port from weapp url builder
  • afc8049 Fixed: weapp url should not set port, remove port from weapp url builder

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those donโ€™t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot ๐ŸŒด

Version 10 of node.js has been released

Version 10 of Node.js (code name Dubnium) has been released! ๐ŸŽŠ

To see what happens to your code in Node.js 10, Greenkeeper has created a branch with the following changes:

  • Added the new Node.js version to your .travis.yml

If youโ€™re interested in upgrading this repo to Node.js 10, you can open a PR with these changes. Please note that this issue is just intended as a friendly reminder and the PR as a possible starting point for getting your code running on Node.js 10.

More information on this issue

Greenkeeper has checked the engines key in any package.json file, the .nvmrc file, and the .travis.yml file, if present.

  • engines was only updated if it defined a single version, not a range.
  • .nvmrc was updated to Node.js 10
  • .travis.yml was only changed if there was a root-level node_js that didnโ€™t already include Node.js 10, such as node or lts/*. In this case, the new version was appended to the list. We didnโ€™t touch job or matrix configurations because these tend to be quite specific and complex, and itโ€™s difficult to infer what the intentions were.

For many simpler .travis.yml configurations, this PR should suffice as-is, but depending on what youโ€™re doing it may require additional work or may not be applicable at all. Weโ€™re also aware that you may have good reasons to not update to Node.js 10, which is why this was sent as an issue and not a pull request. Feel free to delete it without comment, Iโ€™m a humble robot and wonโ€™t feel rejected ๐Ÿค–


FAQ and help

There is a collection of frequently asked questions. If those donโ€™t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot ๐ŸŒด

An in-range update of fbp-spec is breaking the build ๐Ÿšจ

Version 0.2.2 of fbp-spec just got published.

Branch Build failing ๐Ÿšจ
Dependency fbp-spec
Current Version 0.2.1
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As fbp-spec is โ€œonlyโ€ a devDependency of this project it might not break production or downstream projects, but โ€œonlyโ€ your build or test tools โ€“ preventing new deploys or publishes.

I recommend you give this issue a high priority. Iโ€™m sure you can resolve this ๐Ÿ’ช

Status Details
  • โŒ continuous-integration/travis-ci/push The Travis CI build failed Details

Commits

The new version differs by 25 commits.

  • 3268a1e Bump
  • 4545d7f Remove component.json
  • b8f1243 Merge pull request #123 from flowbased/retry-connection
  • ebf5373 subprocess: Timeout faster
  • a4b622a fbp-protocol-client: Require 0.1.12, fixes hang on connection error
  • 812e605 Prefer using connection retrying to handle starttimeout
  • 7df0344 runner: Retry runtime connection
  • 31a9d8d Merge pull request #115 from flowbased/greenkeeper/mocha-3.5.0
  • b418882 fix(package): update mocha to version 3.5.0
  • f049992 Merge pull request #113 from flowbased/greenkeeper/chai-4.1.0
  • a722147 fix(package): update chai to version 4.1.0
  • 2d80ce3 Merge pull request #109 from flowbased/greenkeeper/chai-4.0.1
  • ad83c8c fix(package): update chai to version 4.0.1
  • 89763b0 Merge pull request #106 from flowbased/greenkeeper/mocha-3.4.1
  • 1d4facb fix(package): update mocha to version 3.4.1

There are 25 commits in total.

See the full diff

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot ๐ŸŒด

An in-range update of mocha is breaking the build ๐Ÿšจ

The devDependency mocha was updated from 6.0.2 to 6.1.0.

๐Ÿšจ View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

mocha is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • โŒ continuous-integration/travis-ci/push: The Travis CI build could not complete due to an error (Details).

Release Notes for v6.1.0

6.1.0 / 2019-04-07

๐Ÿ”’ Security Fixes

  • #3845: Update dependency "js-yaml" to v3.13.0 per npm security advisory (@plroebuck)

๐ŸŽ‰ Enhancements

  • #3766: Make reporter constructor support optional options parameter (@plroebuck)
  • #3760: Add support for config files with .jsonc extension (@sstephant)

๐Ÿ“  Deprecations

These are soft-deprecated, and will emit a warning upon use. Support will be removed in (likely) the next major version of Mocha:

๐Ÿ› Fixes

  • #3829: Use cwd-relative pathname to load config file (@plroebuck)
  • #3745: Fix async calls of this.skip() in "before each" hooks (@juergba)
  • #3669: Enable --allow-uncaught for uncaught exceptions thrown inside hooks (@givanse)

and some regressions:

๐Ÿ“– Documentation

๐Ÿ”ฉ Other

  • #3830: Replace dependency "findup-sync" with "find-up" for faster startup (@cspotcode)
  • #3799: Update devDependencies to fix many npm vulnerabilities (@XhmikosR)
Commits

The new version differs by 28 commits.

  • f4fc95a Release v6.1.0
  • bd29dbd update CHANGELOG for v6.1.0 [ci skip]
  • aaf2b72 Use cwd-relative pathname to load config file (#3829)
  • b079d24 upgrade deps as per npm audit fix; closes #3854
  • e87c689 Deprecate this.skip() for "after all" hooks (#3719)
  • 81cfa90 Copy Suite property "root" when cloning; closes #3847 (#3848)
  • 8aa2fc4 Fix issue 3714, hide pound icon showing on hover header on docs page (#3850)
  • 586bf78 Update JS-YAML to address security issue (#3845)
  • d1024a3 Update doc examples "tests.html" (#3811)
  • 1d570e0 Delete "/docs/example/chai.js"
  • ade8b90 runner.js: "self.test" undefined in Browser (#3835)
  • 0098147 Replace findup-sync with find-up for faster startup (#3830)
  • d5ba121 Remove "package" flag from sample config file because it can only be passes as CLI arg (#3793)
  • a3089ad update package-lock
  • 75430ec Upgrade yargs-parser dependency to avoid loading 2 copies of yargs

There are 28 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those donโ€™t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot ๐ŸŒด

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.