Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Closed
inson1 opened this issue Dec 3, 2023 · 41 comments
Closed

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

inson1 opened this issue Dec 3, 2023 · 41 comments

Comments

@inson1
Copy link

inson1 commented Dec 3, 2023

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

@naveensingh
Copy link
Member

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
Copy link
Member

Aga-C commented Dec 3, 2023

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
Copy link
Author

inson1 commented Dec 3, 2023

@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
Copy link
Member

@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
Copy link
Author

inson1 commented Dec 3, 2023

@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
Copy link
Member

Aga-C commented Dec 3, 2023

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:

  • As @naveensingh pointed, many open issues aren't valuable because either reporters are inactive or descriptions are too vague.
  • Some bugs could be not valid now, when they were raised few years ago.
  • With closed issues we would have problems because some were closed because they were done, some were randomly closed by Tibor (mostly "not on a roadmap"), some were duplicates.
  • Some open issues were done by Tibor with descriptions like "raised by x via e-mail" without any more explanation.
  • It's a great moment to add an issue template and enforce people to keep reports tidy like in other open-source projects, e.g. NewPipe.

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
Copy link

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
Copy link
Member

@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
Copy link

Thanks for he quick reply.

So the changes I have are

  • Added a way to filter the list of languages one uses (only chose the ones you use)
  • Added a voice button to the toolbar (I use it with FUTO voice IME)
  • Added a numbers layout for use anywhere not just in number fields (useful for typing numbers in notes apps for example)
  • Added Arabic keyboard layout.

Should I open the PRs now or wait for later?

@naveensingh
Copy link
Member

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
Copy link
Member

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

@ronniedroid
Copy link

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
Copy link
Member

Aga-C commented Dec 4, 2023

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

@Aga-C
Copy link
Member

Aga-C commented Dec 4, 2023

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

@naveensingh
Copy link
Member

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

@RustoMCSpit
Copy link

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
Copy link
Member

@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
Copy link
Member

Aga-C commented Dec 5, 2023

@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
Copy link
Author

inson1 commented Dec 5, 2023

@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
Copy link
Member

Aga-C commented Dec 5, 2023

@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
Copy link
Author

inson1 commented Dec 5, 2023

@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
Copy link
Member

Aga-C commented Dec 5, 2023

@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
Copy link

@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
Copy link
Member

Aga-C commented Dec 5, 2023

@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
Copy link
Member

naveensingh commented Dec 5, 2023

@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
Copy link

ronniedroid commented Dec 5, 2023

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
Copy link
Author

inson1 commented Dec 5, 2023

@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

@naveensingh naveensingh changed the title What about lost issues? Issue management and what will happen to lost SMT issues? Dec 7, 2023
@Aga-C
Copy link
Member

Aga-C commented Dec 7, 2023

@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
Copy link
Member

@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
Copy link
Member

Aga-C commented Dec 7, 2023

@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
Copy link
Member

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

@naveensingh
Copy link
Member

naveensingh commented Dec 8, 2023

@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
Copy link
Member

Aga-C commented Dec 8, 2023

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

@naveensingh
Copy link
Member

Yeah, I forgot. Added now.

@Aga-C
Copy link
Member

Aga-C commented Dec 10, 2023

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

@naveensingh
Copy link
Member

@Aga-C I'll check that, thanks

@Cwpute
Copy link

Cwpute commented Dec 14, 2023

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
Copy link
Member

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
Copy link
Member

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
Copy link
Member

Aga-C commented Dec 24, 2023

@naveensingh Looks good 👍

@Cwpute
Copy link

Cwpute commented Dec 26, 2023

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants