processing / processing

Source code for the Processing Core and Development Environment (PDE)
http://processing.org
Other
6.47k stars 1.5k forks source link

Migrate Issues from Google Code #16

Closed ybakos closed 11 years ago

ybakos commented 11 years ago

This is a case for tracking the discussion of migrating issues from Google Code to GitHub.

ybakos commented 11 years ago

I've run a script that can migrate the issues fairly gracefully. See the results here.

I recommend running the script using the credentials for GitHub user processing. That way you don't have to put up with my silly avatar all over the place.

ybakos commented 11 years ago

Note that we have to run the script twice to get around the GitHub API throttling. This shouldn't be a problem, as its a feature of the script I'm using. (But I'm verifying this now at that test repo.)

ybakos commented 11 years ago

We do need to throttle the API calls to github so as to not exceed the per-hour call limit.

craftoid commented 11 years ago

It would be amazing if you could coordinate several user accounts to create a bot-net approach to reenact what happened over at the google code issues tracker.

The idea is to have a couple of anonymous user accounts, a couple of project member accounts, and maybe even make use of a few real github accounts to recreate the discussions in a historically accurate way.

Maybe its a little bit of an overkill, but I really like the idea of digital reenactments using bots. And of course this would also work around the per-hour-call limit ;-)

Here is a screenshot of what i have in mind:

p5-issues

ybakos commented 11 years ago

That would "be amazing," but I myself don't have time to make that happen. The executor of the script would also need to know all the "real" project member account passwords, since issues posted via the API are all scoped to the currently authenticated user for the http session (http://developer.github.com/v3/issues/).

The tradeoff between running a "good enough" migration now vs. adding fancies...

craftoid commented 11 years ago

I don't have the time either. But if we could masquerade it as an art project and get funding, I would volunteer. ;)

From a practical point of view I think you could use an account with a white user icon and create identicons from the email addresses which are then placed inside the comments.

Something like this: p5-issues-2

Comments by project members should be clearly distinguishable, for example by a red outline for their identicon. This would make it a lot easier to skip through the dialogue.

I got some code for crafty identicons inspired by hungarian cross-stitch. Let me know if you need it.

shiffman commented 11 years ago

What is the script you are using? I've been working on this migration myself using: https://github.com/arthur-debert/google-code-issues-migrator. I ran into a couple problems with the script however and would certainly appreciate any tips. We're planning on just having a "processing-bugs" user assigned to all of the imported issues.

ybakos commented 11 years ago

I tried all of these: https://github.com/ybakos/processing-issue-migration-test/blob/master/README.md And the first is the only one that works out of the box (https://github.com/arthur-debert/google-code-issues-migrator, the same as what you're using).

I'll push my working version in the morning.

ybakos commented 11 years ago

Take a look at https://github.com/ybakos/processing-issue-migration-test/tree/master/python_migrate and just run:

migrate_issues.py processing processing-bugs processing/processing

Note: I strongly recommend you test this on a temporary repo first, and also to add a little time.sleep(1) in there to throttle the API requests to github so as to not exceed the 5000 request/hr limit.

While the script attempts to see what issues have been migrated already to github, it does not work, and will result in creating duplicate migrated issues if you re-run the script.

ybakos commented 11 years ago

Here are the results of running the script: https://github.com/ybakos/p5-issue-migration02/issues 207 open, 1373 closed, 1580 total.

benfry commented 11 years ago

I'm getting the following error, not sure what it is. Is it necessary to first add all the labels manually?

Traceback (most recent call last): File "./migrate_issues.py", line 365, in <module> process_gcode_issues(existing_issues) File "./migrate_issues.py", line 281, in process_gcode_issues else: github_issue = add_issue_to_github(issue) File "./migrate_issues.py", line 173, in add_issue_to_github github_labels = [ github_label(label) for label in labels ] File "./migrate_issues.py", line 71, in github_label return label_cache.setdefault(name, github_repo.create_label(name, color)) File "/Library/Python/2.7/site-packages/github/Repository.py", line 405, in create_label post_parameters File "/Library/Python/2.7/site-packages/github/Requester.py", line 79, in requestJsonAndCheck return self.__check(*self.requestJson(verb, url, parameters, input)) File "/Library/Python/2.7/site-packages/github/Requester.py", line 87, in __check raise GithubException.GithubException(status, output) github.GithubException.GithubException: 404 {u'message': u'Not Found'}

benfry commented 11 years ago

Actually I think I just needed to make the processing-bugs user an admin so that labels could be created.

ybakos commented 11 years ago

The script adds the labels, per gcode, so no manual. Yes -- run the script authenticating as a user w/ full perm's on the repo.

benfry commented 11 years ago

Finished, thanks for the help.

craftoid commented 11 years ago

That was quick... So no identicons?

monkey

Anyways, I love your monkey!

github-actions[bot] commented 3 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.