Future roadmap and maintentance challenges #348
Replies: 3 comments
-
After reading our own tickets and Ducktape's ones I think we can consider these featured to be added to make Chimeny "feature complete" (not as in finished, but as "comparably done to e.g. MapStruct or AutoMapper"):
ATM we are releasing unstable releases on 0.8.0 with tags like "milestone 1", because we are still missing a few things to make it stable. We trace them in the milestone for 0.8.0. We can use that opportunity to introduce all breaking changes we can predict at once, so that people migrating from 0.7.x would experience them exactly once. So, what breaking changes we would still have to introduce?
These could be done before releasing 0.8.0, which would allow adding all of these new features in purely additive way. What breaking changes would be left if we wanted to finally release 1.0? The ones which requires users' feedback: which defaults are sane and convenient, which methods/types could be better named, etc. This would be best done after all of these features would be implemented, so that people could use them and have some thought about them. As a result we could have a roadmap like this:
IMHO it sounds doable and strikes a nice balance between sticking to API people complain about and breaking things every 3 months for everyone. But we would have to make decisions which features we would like to eventually implement and which are off the table. |
Beta Was this translation helpful? Give feedback.
-
For now we're going to stabilize 0.8.0:
|
Beta Was this translation helpful? Give feedback.
-
It seems that 0.8.x fulfilled its role. There might be a release or two in 0.8.x line, but I already started working on improvements that would have to happen in 1.0.0-RC, as they are breaking changes. It seems that so far we do not have any features planned that would require us breaking anything, so we might implement them after 1.0.0 will be released, as 1.1.0, 1.2.0, etc. The roadmap kinda worked as planned - even though I haven't gotten any external feedback :P - and I can close this discussion. |
Beta Was this translation helpful? Give feedback.
-
At the moment we are mostly waiting for the feedback and bug reporting to see if the total rewrite required by 0.8.0 haven't broken anything. Additionally, we have a few points we would like to address before releasing 0.8.0 (the biggest being how we want to change how automatic derivation works).
It will take a while, especially since I need a break after the marathon for that release.
But at some point we will have to discuss what's next and which of the existing tickers we actually want to ever implement?
To make it easier to us to asses how much effort would be needed to implement things with out current codebase (we can simplify this and that, but I do not expect wonders), I created a few drafts:
Chimney implementation ideas
These address issues/tickets which I believe would be the most impactful on the codebase (not necessarily on the users). IMHO each of these is doable, but it looks like a several months of full time work, after which codebase would gain another 10kloc (including tests).
Any thoughts?
Beta Was this translation helpful? Give feedback.
All reactions