Registry updates
We refactored Registry’s Resources API by removing ambiguous names to make it a bit easier for developer use and to reduce API size. Also, we add the ability to remove service records.
For further details, check out our last community call, README, and API reference, and try Registry and Fluence CLI with a new step-by-step example.
We refactored Registry’s Resources API by removing ambiguous names to make it a bit easier for developer use and to reduce API size. Also, we add the ability to remove service records.
For further details, check out our last community call, README, and API reference, and try Registry and Fluence CLI with a new step-by-step example.
Fluence network updates
We have added end-to-end tests for every build of AquaVM, Marine, Fluence JS, Aqua, Rust Peer, and builtin services, so it will be easier to develop and test every commit. For example, an AquaVM update triggers a rebuild of the whole stack and executes tests in aqua-playground and Registry.
Finally, we have migrated our documentation from Gitbook to Docusaurus.
We have added end-to-end tests for every build of AquaVM, Marine, Fluence JS, Aqua, Rust Peer, and builtin services, so it will be easier to develop and test every commit. For example, an AquaVM update triggers a rebuild of the whole stack and executes tests in aqua-playground and Registry.
Finally, we have migrated our documentation from Gitbook to Docusaurus.
Also, you can read about our latest updates in this article. Stay tuned!
Telegraph
Fluence Big Announcement 02.11.2022
If you thought we took the summer off, think again. The core team's been super busy and has major updates across the stack. Get ready to rev your dependencies. AquaVM updates This release includes several major updates of AquaVM, which has achieved a major…
Hello, Fluencers!
We're about to roll a breaking update to Kras environment.
This release is a step towards native fault tolerant deployments managed from the chain. It brings better performance and introduces Spells: the new feature implementing stateful recurring computations. Spells are services that can be scheduled similarly to cron-jobs and maintain state between executions. Spells are essential to deliver consistent application-specific Subnets (we explain our vision regarding Subnets here https://medium.com/fluence-network/fluence-2022-update-a8a5b0b25f48)
Also the update changes particle data format: now all service call results have a corresponding CID, making the execution content-addressable! It enables better compatibility with content-addressable storage (such as IPFS, Filecoin) and composition with other compute protocols that support CID.
If you use Kras environment, you should update your tools. Here's a list of compatible versions of our tooling and links to changelogs:
rust-peer = 0.0.77 https://github.com/fluencelabs/rust-peer-distro/releases/tag/distro-v0.0.77
aqua = 0.9.4 https://github.com/fluencelabs/aqua/releases/tag/aqua-v0.9.4
fluence-cli = 0.2.37 https://github.com/fluencelabs/fluence-cli/releases/tag/fluence-cli-v0.2.37
fluence-js = 0.28.0 https://github.com/fluencelabs/fluence-js/releases/tag/v0.28.0
marine = 0.12.6 https://github.com/fluencelabs/marine/releases/tag/marine-v0.12.6
mrepl = 0.19.0 https://github.com/fluencelabs/marine/releases/tag/mrepl-v0.19.0
Kindly note that our tooling is compatible with node.js 16.x, and will not work on node.js 18.x.
We're about to roll a breaking update to Kras environment.
This release is a step towards native fault tolerant deployments managed from the chain. It brings better performance and introduces Spells: the new feature implementing stateful recurring computations. Spells are services that can be scheduled similarly to cron-jobs and maintain state between executions. Spells are essential to deliver consistent application-specific Subnets (we explain our vision regarding Subnets here https://medium.com/fluence-network/fluence-2022-update-a8a5b0b25f48)
Also the update changes particle data format: now all service call results have a corresponding CID, making the execution content-addressable! It enables better compatibility with content-addressable storage (such as IPFS, Filecoin) and composition with other compute protocols that support CID.
If you use Kras environment, you should update your tools. Here's a list of compatible versions of our tooling and links to changelogs:
rust-peer = 0.0.77 https://github.com/fluencelabs/rust-peer-distro/releases/tag/distro-v0.0.77
aqua = 0.9.4 https://github.com/fluencelabs/aqua/releases/tag/aqua-v0.9.4
fluence-cli = 0.2.37 https://github.com/fluencelabs/fluence-cli/releases/tag/fluence-cli-v0.2.37
fluence-js = 0.28.0 https://github.com/fluencelabs/fluence-js/releases/tag/v0.28.0
marine = 0.12.6 https://github.com/fluencelabs/marine/releases/tag/marine-v0.12.6
mrepl = 0.19.0 https://github.com/fluencelabs/marine/releases/tag/mrepl-v0.19.0
Kindly note that our tooling is compatible with node.js 16.x, and will not work on node.js 18.x.
👏4🔥2
Computing Marketplace on Testnet
We are excited to announce the launch of Computing Marketplace and fault tolerant deployments on our private testnet. If you are using the latest Fluence CLI, your deployments are rolled out to ad-hoc subnetworks formed from marketplace nodes. You can edit and configure Aqua to manage subnetworks operating workflows and implement failover, load balancing, consensus or other algorithms you need for your app backend.
The testnet is private: community nodes are not yet participating in the marketplace. As we move towards delivery of verifiable proofs of compute, the testnet will be open for any compute providers.
Deployments now require testnet payment to nodes. Get started here to receive testnet tokens from faucet, test it out and provide feedback!
We are excited to announce the launch of Computing Marketplace and fault tolerant deployments on our private testnet. If you are using the latest Fluence CLI, your deployments are rolled out to ad-hoc subnetworks formed from marketplace nodes. You can edit and configure Aqua to manage subnetworks operating workflows and implement failover, load balancing, consensus or other algorithms you need for your app backend.
The testnet is private: community nodes are not yet participating in the marketplace. As we move towards delivery of verifiable proofs of compute, the testnet will be open for any compute providers.
Deployments now require testnet payment to nodes. Get started here to receive testnet tokens from faucet, test it out and provide feedback!
💬 Important Kras environment update!
Hey there! Just wanted to give you a heads up that we’re gonna do some maintenance on the Kras environment that’s gonna affect the services you’re using. We’re gonna remove all the services that were deployed before, so you’ll have to redeploy ’em if you wanna keep using ’em.
Thanks for bearing with us, we really appreciate it! We gotta do this to make sure everything stays stable and running smoothly.🙏
Hey there! Just wanted to give you a heads up that we’re gonna do some maintenance on the Kras environment that’s gonna affect the services you’re using. We’re gonna remove all the services that were deployed before, so you’ll have to redeploy ’em if you wanna keep using ’em.
Thanks for bearing with us, we really appreciate it! We gotta do this to make sure everything stays stable and running smoothly.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
💬 Major Network Update
Hey Fluencers,
A huge update has been rolled out to the Kras network, that includes all the latest features we’re been working on throughout the year. The protocol became more secure, performant, and closer to feature completeness. See about updates below and join the upcoming community call to learn about progress and the roadmap.
Subnets
We are introducing updated subnets: replicated deployments for your applications. Subnets allow to add qualities like fault tolerance, consensus or load balancing to your functions.
Every time you deploy an application to the Fluence network, you are defining a subnet configuration (amount of peers, acceptable pricing, etc) and have your code deployed to specified amount of peers. Subnet peers follow the coordination code that you write in Aqua, which could implement failovers, consensus or quorum algos, load balancing across peers, and any other distributed workflow.
Subnets are tied to on-chain marketplace deals, where all the participating peers and subnet configuration are managed. You can check out deployment quickstart to get some practical knowledge about deploying to subnets.
Fluence Peer (Nox)
We’ve done a significant revamp of the rust-peer, that is now called Nox. We also added arm64/aarch64 support to it, so devs could reliably run development environments on Arm based machines (M-series macs & alike). It is now comes with a set of monitoring and healthcheck http endpoints, so it could be properly run in production grade environments.
Additionally, we’ve introduced the ability to run your own private compute provider or local development environment in order to prepare to join the Fluence Mainnet network and earn by providing their CPU compute capacity after the Mainnet launch.
Please note that we are going remove all the services from Kras environment that were deployed before, so you’ll have to redeploy ’em if you wanna keep using ’em.
Developer Features
- Aqua
- We’ve Added Aqua tracing - we introduce
Logs will be inserted on each Aqua function enter and exit. Logs will be sent back to original producer of particle. Be sure to check our aqua changelog
- AIR beautifier tool was included into fluence air commandlet of Fluence CLI that helps to explore compiled air scripts in a human-readable format
- Abilities in Aqua - a way to organise code in modules and implement inversion of control pattern in Aqua.
- Lots of small quality of life improvements
- Marine and MarineJS. Introduced multi-module feature to MarineJS. Now Marine JS re-uses the same code as Rust Marine implementation, only giving it a Wasm VM interface for accessing it via browser.
- Fluence CLI
- Moved our CLI tooling to Node 18.
- CLI automagically checks for updates
- Projects that are scaffolded with Fluence CLI now have detailed annotations in configuration files
Hey Fluencers,
A huge update has been rolled out to the Kras network, that includes all the latest features we’re been working on throughout the year. The protocol became more secure, performant, and closer to feature completeness. See about updates below and join the upcoming community call to learn about progress and the roadmap.
Subnets
We are introducing updated subnets: replicated deployments for your applications. Subnets allow to add qualities like fault tolerance, consensus or load balancing to your functions.
Every time you deploy an application to the Fluence network, you are defining a subnet configuration (amount of peers, acceptable pricing, etc) and have your code deployed to specified amount of peers. Subnet peers follow the coordination code that you write in Aqua, which could implement failovers, consensus or quorum algos, load balancing across peers, and any other distributed workflow.
Subnets are tied to on-chain marketplace deals, where all the participating peers and subnet configuration are managed. You can check out deployment quickstart to get some practical knowledge about deploying to subnets.
Fluence Peer (Nox)
We’ve done a significant revamp of the rust-peer, that is now called Nox. We also added arm64/aarch64 support to it, so devs could reliably run development environments on Arm based machines (M-series macs & alike). It is now comes with a set of monitoring and healthcheck http endpoints, so it could be properly run in production grade environments.
Additionally, we’ve introduced the ability to run your own private compute provider or local development environment in order to prepare to join the Fluence Mainnet network and earn by providing their CPU compute capacity after the Mainnet launch.
Please note that we are going remove all the services from Kras environment that were deployed before, so you’ll have to redeploy ’em if you wanna keep using ’em.
Developer Features
- Aqua
- We’ve Added Aqua tracing - we introduce
fluence aqua --tracing compiler flag to Fluence CLI, that would augment AIR produced from Aqua with tracing logs that is integrated. Logs will be inserted on each Aqua function enter and exit. Logs will be sent back to original producer of particle. Be sure to check our aqua changelog
- AIR beautifier tool was included into fluence air commandlet of Fluence CLI that helps to explore compiled air scripts in a human-readable format
- Abilities in Aqua - a way to organise code in modules and implement inversion of control pattern in Aqua.
- Lots of small quality of life improvements
- Marine and MarineJS. Introduced multi-module feature to MarineJS. Now Marine JS re-uses the same code as Rust Marine implementation, only giving it a Wasm VM interface for accessing it via browser.
- Fluence CLI
- Moved our CLI tooling to Node 18.
- CLI automagically checks for updates
- Projects that are scaffolded with Fluence CLI now have detailed annotations in configuration files
🔥9❤6👏6
Core Protocol
- Aqua VM
- CRDT maps. We added two new key values types: mutable maps and canonicalized immutable maps. They are intended to improve structures handling as well as provide high-level map-like primitives to the Aqua language.
- Particle Signatures (proof carrying data for Proof of Execution) - we are driving Fluence towards the fully trustless computation model, where every code execution will be provided with an verifiable and auditable proof that this computation was done correctly. Computation proofs are distinct for Aqua and for Marine: by introducing Particle signatures, we’re advancing the implementation for Proof of Processing in Aqua and are in the research stages for Proof of Execution for Marine.
The particle signatures mechanism is a cornerstone of all security guarantees which Aqua/AIR brings. One of the main guarantees is that if a peer-in-the-middle changes a particle content, e.g. results of services execution, then it will be eventually revealed by other peers. This introduces mechanisms of both signatures generation and checking and is the essential building block of the computation verifiability.
Build with Fluence
🗓️ Join us at the upcoming community call on Oct 5th, 5pm UTC to walk through all the exciting updates and watch presentations from the teams buildings on Fluence. Sign up here.
Stay updated by following Fluence on Twitter, Telegram, or Blog.
- Aqua VM
- CRDT maps. We added two new key values types: mutable maps and canonicalized immutable maps. They are intended to improve structures handling as well as provide high-level map-like primitives to the Aqua language.
- Particle Signatures (proof carrying data for Proof of Execution) - we are driving Fluence towards the fully trustless computation model, where every code execution will be provided with an verifiable and auditable proof that this computation was done correctly. Computation proofs are distinct for Aqua and for Marine: by introducing Particle signatures, we’re advancing the implementation for Proof of Processing in Aqua and are in the research stages for Proof of Execution for Marine.
The particle signatures mechanism is a cornerstone of all security guarantees which Aqua/AIR brings. One of the main guarantees is that if a peer-in-the-middle changes a particle content, e.g. results of services execution, then it will be eventually revealed by other peers. This introduces mechanisms of both signatures generation and checking and is the essential building block of the computation verifiability.
Build with Fluence
🗓️ Join us at the upcoming community call on Oct 5th, 5pm UTC to walk through all the exciting updates and watch presentations from the teams buildings on Fluence. Sign up here.
Stay updated by following Fluence on Twitter, Telegram, or Blog.
🔥10🎉6👍3👏3
Fluence Update
Hey Fluencers,
We have rolled out an update to the Kras network, that includes all the latest features we’ve been working on during last month. We’re releasing improved developer tooling, updating our integration with js-based apps and rolling out several security updates.
Please note that we have removed all the services from Kras environment that were deployed before, so you might want to deploy them again. Just don't forget to remove
Developer Features
Known issues
What to expect next
Meet the Fluence Team
Stay updated by following Fluence on Twitter, Telegram, or Blog.
Hey Fluencers,
We have rolled out an update to the Kras network, that includes all the latest features we’ve been working on during last month. We’re releasing improved developer tooling, updating our integration with js-based apps and rolling out several security updates.
Please note that we have removed all the services from Kras environment that were deployed before, so you might want to deploy them again. Just don't forget to remove
.fluence directory first.Developer Features
- Fluence JS ClientWe are releasing a massive update for the Fluence JS Client.
A quick recap of Fluence JS purpose: it allows to use Fluence Network from Web and Node.js applications, e.g. websites.
The most notable change is that FluenceJS is now platform agnostic: a single package works with Node.js and Browser
Before: had a bunch of packages:
@js-client.api @js-client.node @js-client.web @js-client.web-cra @fluencelabs/network-environment ...
After: Just one import –
@fluencelabs/js-client
- Fluence CLI
-
Introduced
a set of
fluence localcommands to quickly spin up a local Fluence Network. We will be improving this further for better local dev & debug experience.
-
Improved
fluence deal logscommand that shows the logs of the deployed subnet to be more human-readable.
-
Simplified
fluence.yaml, now you can specify services and spell directly in the Deal definition
- Revised templates for the frontend development! Choose
tsfor TypeScript, and
jsfor JavaScript in
fluence init, it's now more robust and better integrated with the Fluence stack. Give it a try!
- We're moving forward to hide
fluence workersset of commands from the main user flow. This is due to the fact that
deal deployworks much more reliably, thus less reason to distract Developers from the main flow.
Known issues
- Some Deal Update events might be missed by Nox due to a bug. This is when you deploy a Deal, then change something, and run
deal deployagain.
In effect, you might never see that update applied. This will be fixed in the next release.
- FCLI preserves state between environment switches, the
fluence default envcommand.
In effect, if you have a Deal deployed to one environment, and you switch to another,
deal logs and others will not work. To mitigate that, remove
.fluencedirectory after the switch, and deploy your Deal again. We will rethink this approach in the future.
-
deal deploysends two transactions, and asks to approve each transaction, so you need to copy-paste TX Approval links twice. It takes a lot of attention not to miss that in your Terminal. Will be improved in the future.
What to expect next
- Fluence JS Client will be available to use in HTML pages through a CDN
- Long awaited possibility to remove Deals
- Provider UX will become complete, along with documentation
- Multi-layered Nox configuration would allow to specify several config files to Nox
Meet the Fluence Team
Fluence Labs is coming to Bangalore for 🇮🇳 India Blockchain Week. Meet us there on December 3-9!
Stay updated by following Fluence on Twitter, Telegram, or Blog.
🔥8👍2❤1
Hello developers, here’s an update from our CTO which we'll be sharing regularly from now on.
These weeks our main focus is preparing Fluence Network for launch. Big time. We are running Fluence’s DAR testnet together with our launch partners to make sure everything works well, making last tuning to various components:
- Fluence’s IPC blockchain,
- Compute Marketplace smart contracts,
- Capacity Commitments Prover that ensures availability of Compute Units on Fluence peers,
- Fluence CLI, especially the Provider flow,
- Managed Effects – security of effects for Nox
- Nox’s resources isolation for Workers
- Effectors: Wasm modules for Developers to access managed effects, namely IPFS and curl
- Aqua patterns to simplify development of Cloudless functions
Effectors are now being collected here: https://github.com/fluencelabs/effectors – better documentation will appear in the following weeks.
Aqua framework is being developed there: https://github.com/fluencelabs/aquaduct – not yet packaged for reuse, but you can learn some patterns from the PR.
To play with effectors and aquaduct, you may use stable Fluence CLI (install Fluence CLI, then do
We will switch focus towards improving developer experience once Fluence Network is up and running.
These weeks our main focus is preparing Fluence Network for launch. Big time. We are running Fluence’s DAR testnet together with our launch partners to make sure everything works well, making last tuning to various components:
- Fluence’s IPC blockchain,
- Compute Marketplace smart contracts,
- Capacity Commitments Prover that ensures availability of Compute Units on Fluence peers,
- Fluence CLI, especially the Provider flow,
- Managed Effects – security of effects for Nox
- Nox’s resources isolation for Workers
- Effectors: Wasm modules for Developers to access managed effects, namely IPFS and curl
- Aqua patterns to simplify development of Cloudless functions
Effectors are now being collected here: https://github.com/fluencelabs/effectors – better documentation will appear in the following weeks.
Aqua framework is being developed there: https://github.com/fluencelabs/aquaduct – not yet packaged for reuse, but you can learn some patterns from the PR.
To play with effectors and aquaduct, you may use stable Fluence CLI (install Fluence CLI, then do
fluence update stable`) with `fluence local up. Deployment on DAR should also work. Please reach out to us on Discord or Telegram if you have any issues.We will switch focus towards improving developer experience once Fluence Network is up and running.
GitHub
GitHub - fluencelabs/effectors
Contribute to fluencelabs/effectors development by creating an account on GitHub.
👍16❤7
Hello Fluencers, here's another update from our CTO Dmitry.
Read on, and join us later today in the Twitter Space with Fluence network capacity providers, starting at 3PM UTC https://twitter.com/i/spaces/1ypKdkrVwbyxW?s=20
***
Over the past few weeks, we have been focusing on the launch of the Fluence Mainnet, codenamed Kras. This milestone was successfully reached on March 20. Congratulations to the entire Fluence community!
From a technical standpoint, the Fluence Mainnet includes:
- Ethereum smart contracts (deployed a few weeks prior)
- Filecoin smart contracts
- The Axelar bridge between Ethereum and Filecoin
- The Fluence IPC Blockchain, anchored to Filecoin
- The Compute Marketplace and Capacity Commitments smart contracts on the Fluence blockchain
- A block explorer and network explorer
- Noxes, which are Fluence offchain peers
- Compute Capacity Proovers, which are companions to every Nox to prove available compute capacity
- The Fluence CLI and other tools
- And numerous other small components
I want to thank the entire Fluence team for their hard work in bringing all these moving parts together. It was an incredible effort with a fantastic result.
Now that the network is live, we are being cautious about adding compute capacity to it. Currently, only a limited number of compute providers and peers are available.
In the coming weeks, our main focus will be ensuring everything operates smoothly, fixing any bugs that may arise, and gradually increasing the network's compute capacity.
You can find resources for the Fluence Kras mainnet at https://kras.fluence.dev
The public Fluence testnet, codenamed Dar, is available at https://dar.fluence.dev
The successful launch of the Fluence mainnet would not have been possible without our launch partners, the first Fluence compute providers.
Later today at 3PM UTC, we are hosting a Twitter Space to meet the hidden heroes of the DePIN, Fluence compute providers. Join us if you're interested!
https://twitter.com/i/spaces/1ypKdkrVwbyxW?s=20
Read on, and join us later today in the Twitter Space with Fluence network capacity providers, starting at 3PM UTC https://twitter.com/i/spaces/1ypKdkrVwbyxW?s=20
***
Over the past few weeks, we have been focusing on the launch of the Fluence Mainnet, codenamed Kras. This milestone was successfully reached on March 20. Congratulations to the entire Fluence community!
From a technical standpoint, the Fluence Mainnet includes:
- Ethereum smart contracts (deployed a few weeks prior)
- Filecoin smart contracts
- The Axelar bridge between Ethereum and Filecoin
- The Fluence IPC Blockchain, anchored to Filecoin
- The Compute Marketplace and Capacity Commitments smart contracts on the Fluence blockchain
- A block explorer and network explorer
- Noxes, which are Fluence offchain peers
- Compute Capacity Proovers, which are companions to every Nox to prove available compute capacity
- The Fluence CLI and other tools
- And numerous other small components
I want to thank the entire Fluence team for their hard work in bringing all these moving parts together. It was an incredible effort with a fantastic result.
Now that the network is live, we are being cautious about adding compute capacity to it. Currently, only a limited number of compute providers and peers are available.
In the coming weeks, our main focus will be ensuring everything operates smoothly, fixing any bugs that may arise, and gradually increasing the network's compute capacity.
You can find resources for the Fluence Kras mainnet at https://kras.fluence.dev
The public Fluence testnet, codenamed Dar, is available at https://dar.fluence.dev
The successful launch of the Fluence mainnet would not have been possible without our launch partners, the first Fluence compute providers.
Later today at 3PM UTC, we are hosting a Twitter Space to meet the hidden heroes of the DePIN, Fluence compute providers. Join us if you're interested!
https://twitter.com/i/spaces/1ypKdkrVwbyxW?s=20
🔥17😱1
Fluence CTO Update
Hello Fluencers
The Fluence mainnet has been live for the past couple of weeks, and we've been absolutely focused on improving stability and preparing to scale the network.
It included many updates in all the main components, mostly the ones the developers almost do not see - but providers do.
See the fresh releases:
- nox 0.24.0
- Fluence CLI 0.16.3
- Capacity Commitments Prover (CCP) 0.10.0
- Explorer: https://explorer.fluence.dev for Kras, https://explorer.dar.fluence.dev for Dar
You can find a lot of fixes and changes in the respective release notes.
Stay tuned for more updates next week!
Don’t forget about our DePIN Evening taking place in Austin today, and tune into the livestream on our YouTube channel.
Hello Fluencers
The Fluence mainnet has been live for the past couple of weeks, and we've been absolutely focused on improving stability and preparing to scale the network.
It included many updates in all the main components, mostly the ones the developers almost do not see - but providers do.
See the fresh releases:
- nox 0.24.0
- Fluence CLI 0.16.3
- Capacity Commitments Prover (CCP) 0.10.0
- Explorer: https://explorer.fluence.dev for Kras, https://explorer.dar.fluence.dev for Dar
You can find a lot of fixes and changes in the respective release notes.
Stay tuned for more updates next week!
Don’t forget about our DePIN Evening taking place in Austin today, and tune into the livestream on our YouTube channel.
GitHub
Release nox: v0.24.0 · fluencelabs/nox
0.24.0 (2024-05-27)
⚠ BREAKING CHANGES
runtime: use async marine [fixes VM-365,NET-758,NET-757] (#2206)
core-manager: use hex format for CUIDs [fixes NET-804] (#2188)
Features
config: expose con...
⚠ BREAKING CHANGES
runtime: use async marine [fixes VM-365,NET-758,NET-757] (#2206)
core-manager: use hex format for CUIDs [fixes NET-804] (#2188)
Features
config: expose con...
🔥10❤4👍4