Open dreispt opened 9 years ago
:+1: for 2
and the next topic after a roadmap is the specification. I would use one issue for each item in the list of the roadmap.
I like the idea. It sound pretty good.
And important is also understand very well with example what a milestone means. It should be cool even have a repository to show how should look a dummy module/repository following the methodology.
:+1: For me.
@nhomar +1 for # 1, 2 or 3?
I like the three of them..... we need is a clear guideline.
But I thin Milestone is not usable for roadmap, mileston is to mark the moment when you will achieve a set of roadmap tasks.
Then let's say Mileston mixed with either 1 or 2 my vote can count as +1 for the need of a methdology.
Milestones are used as the Odoo version in some projects. One example here: https://github.com/OCA/server-tools/milestones
It is nicer than using labels, as labels should not be growing over time.
I prefer the 2. Easy to implement, separate from README (this file is used for many purpose of which the apps store) and flexible enough. If I understood properly, 3 means we should have a 8.0-milestone repo for all OCA modules which doesnot make sense for 90% of the modules. A link in the README would be good enough for who is interested.
@elicoidal With 3 we use a repo milestone to tag Issues in the roadmap. No generic repo involved. Have close look at the example.
IMO, compared to a Roadmap issue with a checklist, using milestones has the advantage that the list is automatically maintained. As a bonus, if a Roadmap Issue has a check list in it, you also can get to immediately see it's status.
OK: I rechecked and indeed it seems like a good. Deserves a thorough guide though.
Odoo uses a "RDWIP" tag for their roadmap, but don't use milestones.
In my opinion tags should be used for Issue/PR triage and status, and milestones are more suitable for the roadmap.
But only one Milestone is allowed for each Issue/PR.
Se we need different milestones for "series maintenance" and "series roadmap".
For example: 8.0
for maintenance, and 8.0-roadmap
for the roadmap.
@max3903 @nhomar @elicoidal Reviving this discussion:
From the above, I feel that using "tags" (either Labels or Milestones) to mark "roadmaps" has the advantage of an automatically maintained status list, when compared to using a manually maintained Roadmap Issue. I'm inclined to use Milestones, but no strong opinion there.
Here is my proposed description of the process, open for suggestions: https://github.com/OCA/maintainer-tools/pull/104/files
I think we lack some feedbacks and experiences to determine today the best way to handle this and make it standard. Let's try the different options on few projects and see how contributors responds to each.
@max3903 Sounds good to me. Can an admin create a 8.0-roadmap
milestone on OCA/project-service so that I can try that there?
@dreispt done https://github.com/OCA/project/milestones
I lend towards option 2 (issues) with a correct tag (enhancement
for instance). Plus a link in the README pointing to a search of all issues and PR's tagged enhancement
.
I think that we should not use 8.0 and 7.0 as milestone names. I prefer tags for that (so we can for instance say a bug affects both 7.0 and 8.0). When we do proper release management, milestones should correspond to the names of the next planned releases.
@sbidoul Number of tags should not grow over time, milestones should.
If a bug impacts many versions, it should be written in the bug description (affects version 7.0 and 8.0) and the milestone should be set to the oldest one (7.0).
@max3903 I agree the number of labels should not grow over time. Still, using milestone for indicating the Odoo series does not feel right. I think milestones should be used to convey when an issue will be worked on (eg sprint, target release, etc).
In most github projects milestones relate to releases of the project itself. If you use milestones in an OCA project to indicate the Odoo series, the milestone indicates a release of another project (ie Odoo), and you prevent yourself to use milestones to organize releases of the the OCA project itself.
Using labels to convey the Odoo series gives us that freedom to use milestone for release management, and since there is an Odoo release every 12-18 month only, the list of labels will not grow that much.
So we could have milestones such as ideas
, roadmap
(ideas the PCS agrees to work on), in progress
(someone is working on it). If the PSC is sufficiently organized to do release management, then it can create milestones for the future releases.
It would be nice to have a generally agreed way to manage project Roadmaps.
We have these possibilities:
Using the README roadmap additions are made through PRs, The discussion about the feature would go in the PR. Roadmap list management, including cleaning up done items, is done with repo commits (probably through PRs also).
Using a reference "Roadmap Issue" each proposed feature can be either an Issue or a PR, and each can also have their own discussions. Roadmap list additions still have to be maintained manually, but don't need a repo commit.
Using repo milestones, feature ideas are created, and Maintainers tag them with a milestone. Then GitHub automatically provides a dashboard with the roadmap status. No maintenance other than the individual Issues or PRs.
IMO using milestones seems to be the proper way. The project README could have a link to this list along with some text inviting to contribute.
It may be interesting to have specific milestones for feature roadmap and maybe wishlist, such as
8.0-roadmap
and8.0-wishlist
.Thoughts?