And here we go, 24.04 has just been released! This time, instead of starting freshly from a Bitcoin release, I caught up all the Bitcoin Core Commits since Riecoin 23.04 was released. Though, I still ended up rebasing the code to the current Bitcoin Core Code so we have a proper Commit History.
I did some refactoring on some source files of interest like ChainParams.cpp or by removing lots of SoftFork preactivation bloat as well as some no longer useful Pre Fork 2 stuff. I also rewrote a lot of Test Units to use the Fork 2 PoW instead of original...
Regarding actual Riecoin related changes, in summary there was the Testnet Reset and some preventive measures against spam transactions, one of which is even benefitting RIC holders.
- Testnet3 was reset and we now have a new Testnet2404. Genesis Block starts already with Fork 2 Rules (so does RegTest), and Block Time here is 5 minutes rather than 2.5 so he have less blocks to download for Testnet, while we can still mine Blocks almost instantly if needed.
- Block Size was reduced to half Bitcoin's (instead of double). It was just overkill and even after dividing it by 4 it will still be for years certainly (with 4x faster Blocks, it is still 2x Bitcoin's capacity!). Though, it is still nice to have some future proof margin.
- Miners must burn half of Transaction Fees. This has two purposes, one as anti spam (along with the measure below), and the other to support holders as this elegantly makes Riecoin something like a stakeable currency. You don't earn interest with money out of thin air (unlike in PoS), but since burning continuously reduces the supply, this effectively increases the value of holdings over time.
- An absolute minimum Fee Rate is now enforced at Consensus level. The value is currently negligible (0.00000001 RIC per byte). This is combined with the previous measure so a malicious miner cannot just get back all the Fee used to bloat the Blockchain but need to burn half. I considered already making the Rate an appreciable one that would disincentive spammers (such spam have already been observed), but think that such rate might be a bit controversial, and may have some subtle ramifications that would make it too risky. The idea is more to have some code ready in case the circumstances require a temporary increase of the Fees. So for now, I just set it to a very low value.
The antispam measures are actually Soft Forks, and made effective about 1 month after release to give people time to upgrade (2 weeks for the third one as its consequences are minimal - the rate is already enforced at relay level since ages, no node will relay transactions with lower Fees, but technically nothing prevents someone to mine their own transactions with 0 Fee).
I trust the current three active Exchanges in upgrading at most few days after release, as well as Pool Operators.
And failing to upgrade "on time" would not really be an issue for most people, except Solo Miners and Pools who have to upgrade within a month, otherwise due to claiming all the Transaction Fees rather than half, Blocks containing Transactions would be rejected.