-
-
Notifications
You must be signed in to change notification settings - Fork 657
Description
GitHub has many features that are superior to the ones trac provides. For example, pull request reviews, code view and navigation, issue management with projects and labels, GitHub actions for automatic code checks and other automation. Also, backlinks from any of the conversation branches are shown automatically. Moreover,
- it is by far the most popular site for hosting of open source projects, so potential new Sage developers are likely to be familiar with GitHub
- there are big network-effect benefits to being where everyone else is
- Moving to GitHub would be a motivating factor for people to contribute to sagemath as it gives a pathway to work in industry. github shows contributions made by a user to various projects. The GitHub contributions page has become the quintessential reference for job applications in the tech industry.
- it improves visibility of the project for potential sponsors/donors
Discussion:
- https://groups.google.com/g/sage-devel/c/ayOL8_bzOfk/m/8ljxgU--BgAJ (sage-devel 2016-01, 2020-12, 2021-01, 2021-03, 2022-09)
- https://groups.google.com/g/sage-devel/c/hX6ojxlNwOU (2022-09, 2022-10)
Pro/con overview: https://github.com/sagemath/trac-to-github/blob/master/docs/Github-vs-Gitlab-vs-trac.md
Vote: https://groups.google.com/g/sage-devel/c/7h5JoRgHpxY
The following needs to be done in this process (see also https://github.com/sagemath/trac-to-github/milestones?direction=asc&sort=due_date&state=open)
- Meta-ticket: Migration from patchbot to GitHub Actions #33457 Meta-ticket: migrate from patchbot to GitHub Actions (completed in Sage 9.6)
- Documentation
- Migration guide: https://github.com/sagemath/trac-to-github/blob/master/docs/Migration-Trac-to-Github.md (beta-testing)
- Add dummy package github_cli #34523 Add dummy package
github_cli
- Developer's guide: warn the transition to GitHub and add links to the transition guide #34648 Update developer guide
- Collect trac-to-github user name mapping in https://github.com/sagemath/website/blob/master/conf/contributors.xml
- 100 top contributors added in conf/contributors.xml: Add github accounts website#266
- (done) sage-devel post: Provide GitHub account cross-reference, deadline Oct 5
- (done) Merge info from https://github.com/sagemath/sage-changelogs/blob/master/merger/contributors/9.7 into https://github.com/sagemath/website/blob/master/conf/contributors.xml (use contributors-from-sage-changelogs.py from contributors-trac-to-github.py, contributors-from-sage-changelogs: New trac-to-github#10); add comma-separated
altnames
attribute - (done) Merge info from https://trac.sagemath.org/#AccountNamesMappedtoRealNames into https://github.com/sagemath/website/blob/master/conf/contributors.xml; Trac 1.2 displays real names anyway
- Your GitHub account name is needed by Oct 29 for our Trac->GitHub migration #34664 Your GitHub account name is needed by Oct 29 for our Trac->GitHub migration
- Migrate wiki.sagemath.org contents to more suitable places #33725 Migrate wiki.sagemath.org and trac.sagemath.org wiki contents to more suitable places:
- Backup Issues/PRs for projects hosted in https://github.com/sagemath/ #34624 Backup Issues/PRs for projects hosted in https://github.com/sagemath/
- Set up Issue and PR templates
- GH Actions workflow for ticket dependencies
- Convert Trac to GitHub Issues and set Trac to read-only, using https://github.com/sagemath/trac-to-github
- Dev training
- PR practice 1: sage-devel post: Provide GitHub account cross-reference
- PR practice 2: Edit https://www.sagemath.org/development-ack.html
- PR practice 3: Update https://github.com/sagemath/publications (fix open issues at https://github.com/sagemath/publications/issues, first interaction with a GH Actions check)
- Update the https://github.com/sagemath/sage-changelogs script
- Update the release manager scripts
- Take Trac/cgit offline, keep links from external websites to trac.sagemath.org working
The proposed full migration to GitHub Issues in one shot makes the following tasks unnecessary:
- Allow pull requests from Github #30406: Make it possible to contribute to Trac via GitHub Pull Requests
- Ticket badges show "failing" when actually in progress #33818 Ticket badges on Trac show "failing" when actually in progress
- Pip package git_trac_command #34524 Pip package
git_trac_command
- Document developer workflow with GitLab Merge Requests #33687 Document developer workflow with GitLab Merge Requests
- Developer manual: Document setting up the trac remote within VS Code (instead of command line) #33683 Developer manual: Document setting up the trac remote within VS Code (instead of command line)
- Automatic image build is broken on GitLab #33406/GitLab CI for Windows & OSX #25980 other tasks regarding the broken/abandoned GitLab CI
See also:
- Meta-ticket: Adopt mainstream Python testing/linting infrastructure: tox, pytest, ..., describe in Developer's Guide #28936 Meta-ticket: Adopt mainstream Python testing/linting infrastructure: tox, pytest, ..., describe in Developer's Guide
- Meta-ticket: Add downstream (external user) packages as optional/experimental packages #31164 Meta-ticket: Add external user packages as optional/experimental packages
- Broaden the developer's guide to more than just sagelib development #34526 Move "mathematical software landscape" from Trac wiki to manual
CC: @slel @dimpase @roed314 @williamstein @kwankyu @seblabbe @videlec
Component: misc
Issue created by migration from https://trac.sagemath.org/ticket/30363