FossifyOrg / General-Discussion

A place for discussing all apps in general plus anything else you want to say.
https://www.fossify.org
64 stars 3 forks source link

Issue management and what will happen to lost SMT issues? #5

Closed inson1 closed 8 months ago

inson1 commented 10 months ago

Should someone just rewrite it here? Or? I dont think there is software for that. +people notifications would be killed xD

naveensingh commented 10 months ago

Good catch. I'm still thinking about it. Rewriting it manually will take some time as there are many bug reports on all the repos there. There is a 'transfer issue' feature in GitHub but that requires write access to the original repo plus I don't think it's possible to do it in bulk.

I could do a basic Python scraper-type thing that just copies the issues but then again I'm not sure if doing such an automated operation would violate any Github terms.

Aga-C commented 10 months ago

Maybe let's leave the issues list empty and just wait for it to be filled by new reports. This way we will know what's important for people. However, if someone wants to do some work when there are no issues, there's still access to old lists.

inson1 commented 10 months ago

@naveensingh

I could do a basic Python scraper-type thing that just copies the issues but then again I'm not sure if doing such an automated operation would violate any Github terms.

I think if it would be with random longer stops and lets say it would took one week, Github couldnt do something about it

I found this https://docs.github.com/en/site-policy/github-terms/github-terms-of-service#3-account-requirements

A machine account is an Account set up by an individual human who accepts the Terms on behalf of the Account, provides a valid email address, and is responsible for its actions. A machine account is used exclusively for performing automated tasks. Multiple users may direct the actions of a machine account, but the owner of the Account is ultimately responsible for the machine's actions. You may maintain no more than one free machine account in addition to your free Personal Account.

naveensingh commented 10 months ago

@inson1 that sounds like a plan but @Aga-C's point is valid too. There are many issues with inactive reporters and unclear descriptions but at the same time, there is some valuable information there that are often helpful.

Since the issues are generally distinguishable based on their content, I think I will copy all the issues into a single new repo named legacy-issues or something like that.

Either way, this is not the priority now. We'll keep this thread open.

inson1 commented 10 months ago

@naveensingh Yea links/redesign/maybe buing the domain?/deploying the apps/weblate is more important right know. But I think its on same level as some important bug fix.

With your idea we would still loose the history. So I would add resolved issues to the projects. With open issues I would still add them too, but if they arent clear ping the person, add label "need more informations" and close it.

And ofc add label "old project issue" or "SMA issue" or "SMT issue"

This way we have history :) I would do transfer of old issues first and then slowly by some priority the open ones, because of the pinging of creators.

Aga-C commented 10 months ago

Why would it be so important to keep history? I think the best would be to consider it a new project with a fresh start, basing on old codebase. My reasons for not copying old issues:

I think, when people will move here, some of them will also move their reports. We can keep for some reference the list in some kind of Excel file, but don't raise them again on GitHub. Let's not make a mess at the beginning of the new-old project.

ronniedroid commented 10 months ago

How do I move my PRs? 😭

I had some PRs on SimpleKeyboard that I want to move here, should I wait until the renaming and re-linking is finished? What is the best way for me to contribute the PRs here?

naveensingh commented 10 months ago

@Aga-C @inson1 thanks for your excellent suggestions. I'll keep those in mind.

@ronniedroid you can fork the new repo on GitHub and add it as a new remote for your local changes from the SMT clone. If you don't do CLI, You can manage remotes using Android Studio's Git -> Remote -> Manage Remotes... option. Although it would be easier to merge a old PR now than after (less conflicts), I won't be merging big changes until things are a little stable and we have a release as that is the priority.

ronniedroid commented 10 months ago

Thanks for he quick reply.

So the changes I have are

Should I open the PRs now or wait for later?

naveensingh commented 10 months ago

Sounds like something that can't be merged on a quick review. Please open a PR at your leisure. I won't be reviewing anything now but maybe others will provide useful input/corrections if you open them now.

naveensingh commented 10 months ago

Also, keep them small if you can. Avoid unrelated additions/changes in the same PR.

ronniedroid commented 10 months ago

OK, I just did something stupid with git and lost three branches, the arabic layout, the numbers layout and the language selection/filtration. Stupid me.

I did open a PR for the voice input button which I did not lose thankfully.

Aga-C commented 10 months ago

@ronniedroid You can always check original PR because all code changes are still visible there.

Aga-C commented 10 months ago

@naveensingh Issues in Commons shouldn't be disabled as it was in SMT?

naveensingh commented 10 months ago

I was just setting it up, it's enabled now. It was disabled by default when I transferred the repos.

RustoMCSpit commented 10 months ago

i like the idea of the community just reposting the issues but of a far better quality. it would be best if we created a diverse array of tags the community could apply themselves

naveensingh commented 10 months ago

@Aga-C @inson1 @RustoMCSpit if you guys have any major bugs or feature requests, you can use the bug report and feature request templates.

@Aga-C since you have been actively contributing to SMT, let me know if you think we need to ask for more info by default. I don't want to make reporting issues too hard.

Aga-C commented 10 months ago

@Aga-C since you have been actively contributing to SMT, let me know if you think we need to ask for more info by default. I don't want to make reporting issues too hard.

I think the template is good as it is. I'd just change a bit how issues are handled (similarly as in NewPipe, they have a very nicely done issue system):

  1. After creating issue, despite "bug" or "enhancement" tags also "needs triage" is added to know, that this issue hasn't been checked by any member of FossifyX (let's call them moderators for convenience).
  2. Moderator checks the issue and removes "needs triage".
  3. If a template was missing, the moderator sets "missing template" tag and pings an author. If the issue is not fixed during a certain amount of time, the issue gets closed.
  4. If we need to get more information from the reporter, the moderator sets "waiting for author" and pings an author. The same as before, if author doesn't reply in a certain amount of time, the issue gets closed.
  5. There could also be more tags, to tell potential contributors' the priority of an issue, but I don't think of this as an important thing at the beginning.

I think that to keep the issue list clean with enough information for everyone to take the task, we need to keep points 3 and 4. If we will once forgive someone for not using the template, it will happen again and again. Even if we move existing major tasks from SMT, it would be good to rewrite them to the template. Also, closing issues in points 3 and 4 can be automated with bots, however I don't have knowledge how to set up one. There are surely some ready solutions, since it's very popular in many open-source projects.

inson1 commented 10 months ago

@ronniedroid That is over 1k issues, but maybe that is really be the best option if yes we should think of some code, so we would know if its done and search would be easier (Is there way how to exlude issues with some text in comment right?)

Aga-C commented 10 months ago

@ronniedroid That is over 1k issues, but maybe that is really be the best option if yes we should think of some code, so we would know if its done and search would be easier (Is there way how to exlude issues with some text in comment right?)

Why would we need all of these 1k issues? Just move manually the most critical bugs and most important feature requests, and it will be enough, just as @naveensingh requested. There is no sense in moving everything. After the release of the first version, it will be natural that people will raise issues. Probably some will be the same as they were already in SMT, but it will just show, that it's important for someone. No need to spam issues list prior to that.

inson1 commented 10 months ago

@Aga-C @naveensingh I'm against automatically closing issues without template. For something you dont need template. I'm missing independet text boxes for questions. Plus you could make the more important questions mandatory.

Aga-C commented 10 months ago

@Aga-C @naveensingh I'm against automatically closing issues without template. For something you dont need template. I'm missing independet text boxes for questions. Plus you could make the more important questions mandatory.

There wouldn't be any automated check, so it will be purely left for the moderator to decide. Automatic closing would only be after a certain time when author doesn't fix the issue.

Also, template is not set in stone. It's just a Markdown text that you can fill as you want, you can add what you want and even you can just ignore some fields if you feel it's not needed to answer them. Then it's up to the moderator to decide whether you were right with your assumptions.

Template is just a measure to avoid the mess. If one person will completely ignore the template, others will intentionally ignore it too.

ronniedroid commented 10 months ago

@ronniedroid That is over 1k issues, but maybe that is really be the best option if yes we should think of some code, so we would know if its done and search would be easier (Is there way how to exlude issues with some text in comment right?)

Sorry, I don't know why I am tagged here.

Aga-C commented 10 months ago

@naveensingh Another idea based on NewPipe - utilize Discussions inside project (not general on an org level) for general questions about apps. They have a link inside "Create issue" that leads to Discussions when someone chooses "Question".

naveensingh commented 10 months ago

@naveensingh Another idea based on NewPipe - utilize Discussions inside project (not general on an org level) for general questions about apps. They have a link inside "Create issue" that leads to Discussions when someone chooses "Question".

@Aga-C yes, I saw it too, I'll be working on it. I'll also add the tags you mentioned.

@Aga-C @naveensingh I'm against automatically closing issues without template. For something you dont need template. I'm missing independet text boxes for questions. Plus you could make the more important questions mandatory.

@inson1 If I do set up auto-close, it'll likely be a long delay like 60 days so no worries there. EDIT: I'm thinking about whether to add a template for questions or redirect them to discussions.

Sorry, I don't know why I am tagged here.

@ronniedroid it was probably a mistake.

ronniedroid commented 10 months ago

I think question being redirected to discussions is the best.

Let issues stay only for issues

I would recommend feature requests to also be redirected to discussions.

inson1 commented 10 months ago

@ronniedroid btw maybe try creating for one idea one post, I cant give you like if dont like all the ideas

I think question being redirected to discussions is the best.

It would be better

I would recommend feature requests to also be redirected to discussions.

I dont think every feature requests needs discussion, idk

But I HATE search between issues, PRs and discussions tbh

@naveensingh Or just block issues and let us only create discussions? if it is good then you may move it to issues

Aga-C commented 10 months ago

@naveensingh Can we already enforce people to fill the template? There are some raising issues without it. These issues are copied from SMT, but I think a template should be kept for everything.

naveensingh commented 10 months ago

@Aga-C unless it's a very specific case that won't fit with current templates, let's enforce it for all issues. SMT or not, organised issues with required information will save time.

Allow questions for now, I'll add the discussion option for that.

Aga-C commented 10 months ago

@naveensingh Would we like to split feature requests raised by users into enhancements and feature requests? Currently, all are labeled as enhancements, but we can utilize the feature request label for entirely new things.

naveensingh commented 10 months ago

@Aga-C yes, will update the labels list and setup issue management soon, it's on my TODO list.

naveensingh commented 10 months ago

@Aga-C I have updated the labels and added the question issue template that will redirect to the discussions tab in each repository. I haven't setup autoclose and I haven't backed up SMT issues yet.

Aga-C commented 10 months ago

@naveensingh Thanks! Can you also add a label "template missing"?

naveensingh commented 10 months ago

Yeah, I forgot. Added now.

Aga-C commented 10 months ago

@naveensingh In templates - are missing before checklist items, so they aren't formatted properly.

naveensingh commented 9 months ago

@Aga-C I'll check that, thanks

Cwpute commented 9 months ago

I'd suggest you take a look at what is being done on another project: Snappymail.

Snappymail was born from Rainloop, a webmail client which got progressively abandonned by its developers and thus spawned a better maintained opensource fork.

They have a huge legacy of issues, feature requests and bugs, and i have seen them do is mostly leave the new repo alone, don't copy anything, let new users come in and report new stuff… But as maintainers, they primary goal is to fix the most glaring issues from the old repo, so they started pushing commits referencing issues in the old repo, and everytime someone would post an issue on their own, they would search on that old repo and link any previous issue that might be relevant and contain interesting information. This method asks more from the maintainers who have to cross-reference issues, but allows for previously available information to be leveraged and previously involved users to be pinged and possibly get them interested anl invested again the new fork.

All in all, i think importing all old issues would be way overkill and distract everyone from what needs to be done in the instant. But what they contain mustn't be ignored well: it's several years worth of reports and ideas! Maybe we can just ask people in new issue templates? ask them to search in old issues from the SMT repo and link any related ones in their own. Or some kind of triage like @Aga-C suggested in their 2nd point could also be done by volunteers looking through old issues.

naveensingh commented 9 months ago

Issue forms are another (better?) solution to get properly formatted issues: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository#creating-issue-forms

Unfortunately, they are still in beta and subject to change.

naveensingh commented 9 months ago

Updated the organization readme.

Do you guys think we should have an issue template for general issues? I think not, we should probably allow anything there because many people aren't aware of the discussions feature.

Aga-C commented 9 months ago

@naveensingh Looks good 👍

Cwpute commented 9 months ago

No, you're right, no need for issue templates for that now. If the need for any comes, then we'll see but for now that's not important.