Since the last couple of updates, including the most recent one work on Hive Stream hasn't slowed down or stopped, and the big features haven't stopped rolling in either.
In the last update, we saw the introduction of storage adapters allowing you to use a trove of databases and shipping with support for JSON, SQLlite and MongoDB and of course, the ability to write code-level smart contracts.
Changes
Time-based actions. Announced here in its own post, time-based actions allowing you to perform contract method calls using time values. So you can execute automated method calls that take place at different intervals like every hour, every 3 seconds, every day, every 3 hours and so on. It's a huge game-changing feature that allows you to write smart dApps.
Support for Hive Engine. The latest incarnation of Steem Engine, Hive Engine is the famous side-chain for Hive. In the latest release, support for observing numerous Hive Engine transactions has been added in.
Work has started on a new contract for running a lottery. It's not finished yet, but you can spy the work in progress taking place for the lotto contract which will allow you to run automated lotteries.
Added in a Fisher-Yates shuffle that can be used in your contracts, allowing you to shuffle arrays. There is also a test case to ensure it works.
Fixed an issue with the stop method (identified by tests) which had a leak.
Threw out old tests and started writing them from scratch. There were some problems with the existing tests and some had become outdated as well. It seemed smarter to just start again.
Fixed an issue with adapter calls not being checked. This is more for situations where adapters with improperly implemented methods were not defined or the adapter is broken, which would mean the entire streamer would break as some of these adapter calls are made during parts of the lifecycle.
Tests now run in verbose mode. This will show you the success and failure of each test case. I might disable this in future if the tests grow to the point where this list is too long.
Wrapped all async/await calls in try/catch statements inside of the dice contract. This means when things break, we can handle errors in a cleaner and safer way.
What's next
The time-based actions feature will require more tests, as will the rest of the package. The lotto contract will be completed and a blog post will be written detailing how it pieces together, so you can run your own lottery-type dApps on the Hive blockchain. Then I will decide on the next contract (if you have a suggestion, let me know in the comments).
Work on the ability to verify contract code deployed will be started soon as well. After some feedback when the feature was released, some asked if there was a way to safely use contracts and ensure a contract being used is what is deployed. So, I'll explore some ideas on that shortly. But, I am thinking a simple hash checker might do the trick and something that uses custom JSON to publish the hashes.
Hive Stream Updates (April 13th, 2020) | Ecency
Hive Apps Are Cheap. The Way People Run Them Is Not.beggars ·
HiveReactKit Dev Update: Translation Controls & Wallet Trxns UXsagarkothari88 ·