Welcome to Meros’s Update #26, covering 12/19/19 to 1/15/20! These last four weeks have involved implementing some of Meros’s more exciting features, as well as making the code base more accessible than ever before, and fixing bugs to ensure a clean launch.
One feature which we’ve been excited about for a while is RandomX. RandomX is a CPU-only mining algorithm which has been discussed and audited heavily over the past year to make sure it’s viable for use. Meros uses it as CPU mining is far more decentralized than ASIC mining, and even GPU mining, with decentralization being a hallmark of an open and secure system.
The next feature we implemented is our adjustable spam filter. The basic principal behind the filter is every transaction must have extra data attached which causes the hash to be greater than the set difficulty. While this idea has been established for years, most implementations have a fixed difficulty that requires hard forks to change. With Meros, Merit Holders can vote on this difficulty allowing real-time updates as needed to respond to attacks.
We also optimized Verifications even further! In our last update, we said we reduced their size by 33%. We’ve since made them another 16% smaller, for a total reduction of 44%. We’re very happy with these improvements and the long-term increase in TPS they’ll offer.
When it comes to making the code base accessible, we’ve moved our build process over to Nimble! Once Nim is installed, running
nimble build from inside the Meros repository will download all dependencies and build them automatically. This should allow even more people to participate in our Developer Testnets, which require participants to build their own binaries.
As for issues, the notable ones we’re fixed are issues #88, #114, and #115. Issue #88 detailed a bug in our block generation code, in which Meros would suggest mining an invalid Block. #114 involved invalid testing methodology which was causing failures. #115 was some frequently used code infrequently returning the wrong result.
Currently, we have two notable works in the pipeline. The first is Merit Removals, our automatic penalty system for malicious actors on the network. We’ve implemented them previously, yet during our No-Consensus-DAG branch, we changed the definition of a ‘malicious act’. This meant we had to temporarily remove them. We’re currently working on adding them back according to the current protocol.
The second is our next testnet! As we’ve stated before, before we launch Meros, the plan is to have an extended testnet to properly verify Meros’s functionality and security. While we’re not there yet, we do want to be able to demonstrate what we’ve been working on, as well as look for any existing bugs we don’t currently know about. Once Merit Removals are finished, we plan on hosting Developer Testnet 2 for anyone who wants to participate. We’re very excited to be able to work together with the community on improving Meros to be the best it can be.
That summarizes our work over the past weeks. As we’ve always said and will always say, we’re very excited for Meros’s future. We’ll make sure to update you with our progress soon.