deltachat / deltachat-core

Delta.Chat C-Library with e2e chat-over-email functionality & Python bindings
https://c.delta.chat
Other
304 stars 27 forks source link

Prefer Project-list over Milestones? #119

Closed r10s closed 6 years ago

r10s commented 6 years ago

[continued discussion of https://github.com/deltachat/deltachat-core/issues/90#issuecomment-370338265 ]

@testbird wrote:

Here is what I did and why: I created a second project for the 1.0 release https://github.com/orgs/deltachat/projects/2?fullscreen=true, and reduced it to be merely a simple issue list and monitor.

The advantages are, that

  • it supports one complete list containing the 1.0 issues of both -core and -android. (Instead of the different tabs in the old milestone interface, the open issues are listed in the "To do" column, and the already closed ones under "Done", .)
  • There is no need to manually manage check marks, closing/re-opening a listed issue will automatically move the issue between the "To do" and "Done" columns.
  • Compared to the milestone list, it is also possible to drag and drop the issues into a manual order, if desired and where it makes sense, and to add additional notes into the list ("+" on the column).

Adding further issues can be done through the right panel of an issue (just like with milestones), or through the "+ add cards" search interface on the project's page.

(Only the general "Deltachat Isses" project is intended to and shows an "Issue Pool" column and a "Lineup (To do)" column in the sense that they allow picking out issues and create some kind of technically derived bug fixing plan.)

r10s commented 6 years ago

@testbird Thank you for clarification.

So the advantage of the "Project" at https://github.com/orgs/deltachat/projects/2 is that it combines deltachat-android and deltachat-core.

Without testing handling etc. one big disadvantage, however, seems to be that the Project is not visible if you're not logged in into Github. Eg. the "version 1.0 release" link at https://delta.chat/en/download shows a 404 error now :(

If this cannot be fixed, I suggest, we re-create the Milestones. The project could exist in addition to this. Maybe it is possible for the project automation to create the lists automatically from milestones?

What do you think?

testbird commented 6 years ago

the Project is not visible if you're not logged

Ouch, that's bad. Could not find an issue about that, only these: https://stackoverflow.com/questions/40532661/make-github-organization-projects-public https://medium.com/@bmpvieira/how-to-make-your-github-organization-project-board-public-fb5a243f28e4

It works nicely on gitlab https://gitlab.com/fdroid/fdroiddata/boards?=

testbird commented 6 years ago

Another thing for the general issue project is that the automation did not auto-add the new issues created to the project. Will have to see if I there is an error in the config.

r10s commented 6 years ago

I think the medium.com solution is more a hack. We should not go this way. Chances are good no one can maintain this in a few months.

I've played around a little with projects lists in other repos, eg. nextcloud also uses projects (in addition to milestones) and the list from inside a project is public: https://github.com/nextcloud/server/issues?q=is%3Aopen+is%3Aissue+project%3Anextcloud%2Fserver%2F2

However, similar lists in Delta Chat aren't: https://github.com/deltachat/deltachat-core/issues?q=is%3Aopen+is%3Aissue+project%3Adeltachat%2F1

Maybe this is related to repo-wide projects vs. org-wide projects. Seems as if Github does not want to let us prefer projects :)

testbird commented 6 years ago

Yep, what a large org/project bug in github! I will have to move the 1.0 issues back into milestones.

Having found out about github's stance on github issues https://github.com/isaacs/github/issues/6 maybe at some point the time is right to import the project in an alternative like gitlab.

r10s commented 6 years ago

Regarding projects and milstones at all: I think we both may be useful.

Developing on the code and on the issues should work without keeping the project page in mind (however, the project page can use closed issues, milestones etc. then).

Apart from the non-public overview, I think we should get the milestones back. And the solution with the blocking milestone https://github.com/deltachat/deltachat-android/issues/222 as a workaround for a multi-repo milestone is not too bad IMHO :) And when having this basic functionality back, it is no big deal if the projects are not visible to users that are not logged in.

(another idea I had in the beginning btw was to use only one issue tracker for core+android, however, with increasing number of platforms, this not really a good idea an longer)

r10s commented 6 years ago

another difference between milestones and projects: milestones are shown in the issue lists below the title (together with the flags), projects are not (unless i've overseen sth)

/me learnt many things about milestones and projects this day :)

testbird commented 6 years ago

Thanks, when I got back to it yesterday afternoon you already repopulated the milestones.

BTW: When comparing the help pages, I learned that Github supports group milestones with issues from different projects. And also managing of related issues.

testbird commented 6 years ago

Do you want to keep the v1.0 project? I don't think it's worth having to maintain two lists.

r10s commented 6 years ago

Do you want to keep the v1.0 project? I don't think it's worth having to maintain two lists.

I agree, it's not worth maintaining two lists. So unless the v1.0 project list updates automatically, we should delete it.

BTW: When comparing the help pages, I learned that Github supports group milestones with issues from different projects. And also managing of related issues.

okay - i didn't even know projects have their own issues.

testbird commented 6 years ago

Deleted the project.

i didn't even know projects have their own issues.

Sorry, in the BTW above I meant gitlab, where github organisations correspond to groups, and github repositories correspond to projects. (And github projects correspond to Boards.)