Hello @hoackers and everyone else!
This post is more or less a pre-announcement. I have started to define the Hoa roadmap for 2017, taking the form of a set of RFC. The Central
repository will host these RFC. A new request for comment
label has been created to classify them. Concretely, I have created a new milestone to track this roadmap.
So far, here is the global RFC:
-
Better errors with codes and
hoa explain
, - Compile API documentation examples in executable tests,
- Online API browser,
- Simplify getter naming, introduce data conversion naming,
-
Enhanced
Hoa\Iterator
API, -
New library:
Hoa\Option
, -
New library:
Hoa\Future
, - API documentation v2,
- More hack book chapters,
-
Define commit type, and enhance the
CHANGELOG
format, -
New library:
Hoa\Heap
.
Only the RFC about Hoa\Option
has ben drafted so far. Other will come. I am planning to write them these following days.
The main goal of this roadmap is to increase Hoa’s quality and safety. People are using our projects, this is cool, we do not suffer from big issues (except the documentation maybe, we can create another RFC to have more hack book chapters… [done]), so I would like to prepare the future. The future of PHP is uncertain, but we might have better types, maybe async intrinsics… People are more and more dealing with a lot of dependencies, we see issues about: “I have this project, and Hoa is failing overthere, why?”. If we provide tools to explain errors, to analyse/track what happened, we could potentially reduce the amount of these issues. The relation between a new user and Hoa can be better too: “Wow, the devtools are really great, I am efficient with this”, even this is a not a direct users (most of our users are indirect, they are using a project that is using Hoa, so the user experience is crucial here).
Another goal of this roadmap is performance. I would like to provide extremely fast and efficient libraries. The enhanced Hoa\Iterator
API will be a big part of this work, it will help to reduce the amount of memory allocations and manipulations. Hoa\Future
(might replace Hoa\Promise
, we will discuss about it in the RFC) might replace several allocations and branch decisions in Hoa\Socket
, and so Hoa\Websocket
& co.
Finally, API documentation. This is a big topic. I really love what Rust does at this level. I would like to mimic it, and to provide a new API format, still compatible with all IDE.
This is, dear fellow Hoa citizens, the roadmap for 2017. Are you exciting about? Do you think it goes in the correct direction regarding our situation? What do you think about this new format (I think having RFC will provide natural subjects for the monthly Hoa Virtual Meeting)?
Cheers!