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

What information/data do we want about issues? #5

Closed
5 tasks done
Cleop opened this issue Feb 14, 2018 · 9 comments
Closed
5 tasks done

What information/data do we want about issues? #5

Cleop opened this issue Feb 14, 2018 · 9 comments

Comments

@Cleop
Copy link
Member

Cleop commented Feb 14, 2018

From #1:

I need a backup of GitHub issues
so that I can work "offline".

Thought it might be good to start creating a list of fields that we want about the issues. I know that some work has already been done using the github API and issues in https://github.com/dwyl/tudo so maybe thinking about the fields will help us see if what's been done there is of any use.

So far we've discussed the importance of recording:
History of:

  • Comment text
  • Comment author
  • Comment time/date
  • Issue title
  • Issue description - not sure if this is a different field to comments or if they're considered the same

Are these sufficient for now as an MVP starting point?

Or do we need to record info like commits on an issue, labels, assignment or associated milestones? Or even more github detail?

@nelsonic
Copy link
Member

@Cleop this is a great starting point. We can always add to it later. 👍

@Cleop
Copy link
Member Author

Cleop commented Feb 14, 2018

@nelsonic - for the first iteration do you think we should include/exclude comments/reviews on PRs?

@nelsonic
Copy link
Member

@Cleop yeah, for the first iteration we only want to capture the changes in issues comments.
That is more than enough to get started with the rest of the plan. 👍

@Cleop
Copy link
Member Author

Cleop commented Feb 21, 2018

My proposed schema

Users
ID
Github handle (called 'login' on the payload)
Organisations
ID
Organisation name
Repositories
ID
Repo name
Issues
ID
Github-description ID
Issue number (from github)
Author ID
Updated at (time/date)
S3 url for description
Repository ID
Comments
ID
Github-comment ID
Author ID
Updated at (time/date)
S3 url for text
Issue ID

The github-comment ID is the ID which will be unique to that comment but will be kept consistent throughout the different versions of that comment. Whereas the primary key will be unique for each version of the comment.

@nelsonic
Copy link
Member

@Cleop this looks good as a starting point. 👍

@SimonLab
Copy link
Member

SimonLab commented Feb 22, 2018

I think we need to save the s3 url of the file in the database for each edit of the issues and comments.
I was thinking a structure like the following:
image

I think having the "history" tables make it a be easier to track all the edits of the issues and comments. The tables issues/comments only save the main information

@nelsonic
Copy link
Member

@SimonLab agree that we need to have a "history" table.
But it's unclear (to me) what the distinction between issue_history and comment_history is.
Also, I think all comments should be in the comment_history table even if there are no edits to it.

@SimonLab
Copy link
Member

agree we can create only one "history" table where an entry of this table can refer either to the issue or to the comment table. As soon as a new issue or a new comment is created the history table will have a new entry wich will also contain the url of the s3 file.

@SimonLab SimonLab mentioned this issue Mar 1, 2018
3 tasks
@nelsonic nelsonic added this to the MVP milestone Mar 12, 2018
@Cleop
Copy link
Member Author

Cleop commented Mar 13, 2018

Closing this as we're now recording all of the data in the description of this issue.

@Cleop Cleop closed this as completed Mar 13, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants