As of today's final release candidate code, HF24 will occur on September 8th, 2020, provided no major bugs are discovered in public testnet over the course of the coming week.
This is a long post that will cover the hardfork date, what's been worked on to be included in this hardfork, a look at where conversation and updates on the continued development of Hive can be found, and more. It's a big one!
HF24: An 'Eclipse' will occur on September 8th, 2020 🌘🌑🌒
"What is a release candidate for a hardfork", how timing works, and more was covered in the last post, so if you'd like to get refreshed you can read back here. In the time since the announcement of the potential Eclipse release candidate, the code has been "frozen" - this means that no unannounced changes to the way the chain works have been added to this version. The HF24 release candidate available today includes only the features that have already been communicated in past updates and are available at the public repo.
Over the course of the past months, API node operators and core developers have been running the code through its paces, finding and fixing all sorts of bugs and problematic API calls. During this first testing period, the Hive repository has been buzzing with activity. To prepare for this hardfork, work has been done on the Hive blockchain itself, on the Hivemind layer for social features and integrations, and on a large number of language libraries that developers use to build things on Hive. So, while what the release candidate code will do has never changed, there has been a lot of testing, fixing, testing, and fixing again on the best way to get it done.
To give you an example of what this looks like in a quantifiable way, over the course of the past four months the Hivemind code alone has had an average of 19 pull requests per month. (A pull request is a submission of code to an open source project for consideration.) This is almost SIX TIMES the rate of monthly contributions to the previous version of the code base.
In the past one month alone, 89 tracked members on the Hive public repo have overseen and contributed to 116 merge requests in 29 projects for the open source Hive blockchain, Hivemind, Hive websites and Hive language library code. Those are some pretty neat statistics!
The HF24 Eclipse release candidate is now ready for public testing and for witnesses and app developers (and anyone else) to spend the next week trying to find anything else that may need to be fixed.
GET THE CODE HERE: ⬇️
Witnesses, app developers and operators are encouraged to begin firing up nodes, with public testnet details to be announced here very shortly. Start trying to break things!
If everything in public testing goes well, exchanges will be notified two weeks in advance of the hardfork happening on September 8th, 2020. Confirmation of this will be posted here.
TL;DR! What does HF24 do, in point form? 📝
If all you need is a reminder of the things that are being included in this hardfork, here's a very short list:
Hive Blockchain updates:
- changing the chain ID to be unique to Hive
- newly powered up HP will have a cooldown time of 30 days before it will be counted towards governance voting
- the HIVE tokens distributed to the DHF fund will be slow converted into HBD to top up the fund over a several year period and to prevent market flooding
- Hived (core blockchain code) has been drastically reorganized to remove all previous ecosystem naming conventions and to reduce the costs and resources needed to run any type of node
- the ability to save blockchain state files for account history as a snapshot to help avoid node replays
- virtual operations fixes (a virtual op is one the blockchain itself makes, without needing keys)
- final airdrop corrections will be issued
- a number of things including voting and payouts calls, post sorting for feeds, etc. previously handled by hived (the blockchain itself) have been moved to hivemind, allowing for much faster response times for the chain and API calls and hugely increased capacity to serve traffic
- fixes across the board to most types of data including dates, tags, feed order and vote computations, pinned posts, and more
- decentralized blacklists can be created and followed, as well as following mutes, which means users have full control over participation (or not) and lists will not need to be maintained at repo level
Hive Programming Libraries that have been updated to work alongside all of the above updates:
That's it for hardfork details. When this week's testing is complete and exchanges are notified, a countdown post will be made to the finalized hardfork date. If for some reason a major bug is found, a revised date will be posted instead.
The rest of this post discusses where to find communication on future changes to Hive and how to get involved, and doesn't include any more specific details about HF24. Let's help everyone in the ecosystem who may not realize there are dedicated public discussion spaces for Hive and potential future hardforks to join in!
Where do I find detailed information about work on this hardfork and things happening around Hive? How can I learn more in between major finalized announcements?
Over the past few years, one of the biggest complaints for users has been that updates on development should be on chain and in publicly accessible places where anyone can observe or participate. Since the birth of Hive, this is one thing that has vastly improved! However, not having a single centralized ownership entity also means that collecting or presenting information on ideas for the core blockchain isn't as straightforward as a single account that represents the whole ecosystem.
Both a plus and a minus to actually working towards better decentralization means that the @HiveIO account doesn't represent any one person or team; it doesn't pick or choose any project to highlight over any others; it isn't meant to present ideas or opinions by individuals. It exists solely to announce important finalized information that everyone needs to thrive together on Hive... like new versions for witnesses, backed by voters, to decide to approve and run. So where do you go to learn and discuss and contribute in between the @HiveIO final releases and important announcements?
Around the Hive, people have been building spaces and tools for sharing and discussion. We have community members creating email mailing lists, newsletters, aggregate feeds, event listings, Discords and communities, and more. In a space that's looking to be more decentralized, it won't get made if you don't make it! Hivers have stepped up to answer the call.
With an increase in participation and more people sharing diverse opinions, there are new (and sometimes uncomfortable or very different than the current reality) futures for Hive being discussed and debated. Because it's happening in public now, it tends to be front of mind and more people are talking about it. Great! Just remember it can be tricky to appreciate that ideas and opinions shared publicly on chain are a jumping off point for everyone, and that anyone is able to join in. Part of being open and public on ideas for development means you're going to see many more from many different people, and there are bound to be some you won't agree with. You may have some of your own, and you should absolutely dive right in!
It's hard to let go of the concern that things are being talked about 'without you' from previous ecosystems. There are three main fully public places for current development, Hive community discussion and debate, and future plans that should be on your radar, because not everyone realizes they exist yet! Fostering great communication between everyone starts with the venues discussion happens in.
If you want to talk about the future of Hive, support, challenge, or suggest changes to the Hive blockchain or ecosystem, then check out the Hive Improvement Community:
This community has been mentioned in previous posts, but will keep being brought up as a place where a lot of feature requests and core governance, core code, rewards and economic conversations are happening. As of late, there have been some discussions on the rewards pool and the social aspect of Hive. This would be a pretty big change, which is why it's become a hot topic publicly debated in a community specifically dedicated to anyone and everyone weighing in on a path for the future. Public conversation, with ideas from anyone who wishes to share them, in a forum that developers, users, project managers, and stakeholders can use to engage on what they think is most important to Hive. There are no guarantees that discussions here will become future hardforks- it's just an important, public, on-chain place where everyone can weigh in and share opinions with each other, or pitch what they're coding for core development and why it matters.
If you want to follow individual contributions to everything development on Hive, check out the Hive Devs Community:
Developers who are working on blockchain, condenser, frontends, games, individual projects, and more place updates and announcements into this community, and interact here on things that are being built in the ecosystem. If you want a feed where you can find who is working on what, the progress they are making, and some of the up-and-coming things powered by Hive, this is a good place to start. You can engage directly with developers or as a developer yourself, on whatever matters to you, in a community specifically created to organize this content.
And finally, if you want to see the actual core code that is being written for the blockchain, check out the public Hive Gitlab.
This is where all of the core blockchain code lives. If you want to see exactly what people are suggesting be added and the code created and submitted to bring it to life, this repository is the heart of the blockchain and it's fully open source. If you want to add or take on a task yourself, want to submit a bug report or a feature request, or want to read and add comments, you can- remember there's a tutorial if you're not sure how to get started with GitLab. Another neat trick to save you time is to check the activity feed to see exactly what is being merged each day!