The people maintaining popular open source projects, from jQuery to TypeScript to Ember.js, have vented their frustrations about GitHub -- on GitHub itself.
In the dear-github repository, more than 450 contributors to various open source projects have signed their names to an open letter identifying three key problems with GitHub.
The letter claims that despite repeated attempts to have GitHub address these issues over the years, the queries have been met with either "an empty response or even no response at all."
The letter lists the most frequent problems as the following:
- Custom fields for issues. "Issues are often filed missing crucial information like reproduction steps or version tested," says the letter. To address this, there should be a way to ensure that such information must be provided with each issue submission. Bug-tracking systems like JIRA have a mechanism like this.
- A proper voting system for issues. Many issues "often accumulate content-less '+1' comments which serve only to spam the maintainers and any others subscribed to the issue." It's good that maintainers know a great many people are experiencing an issue, says the letter, but there must be a more elegant way to find out.
- Issues and pull requests need a way to automatically include contribution guideline boilerplate text. "Issues and pull requests are often created without any adherence to the CONTRIBUTING.md contribution guidelines," says the latter, in big part because GitHub provides only a link to a project's guidelines, and it's too easily ignored. A better solution would be to include an actual inline notice at the top of the page whenever a user creates a new issue or pull request.
Dave Methvin, maintainer of jQuery and president of the jQuery Foundation Board of Directors, is among the undersigned. In an email, he described how most of the pain involving the bug tracker GitHub Issues comes from the amount of back-and-forth often required to figure out if the problem is a real bug or a trivial usage question.
This "can be a real morale killer for the team," Methvin said. "Sometimes the team's frustration with the process is taken out on the bug reporter, which isn't good either." While GitHub projects don't have to use the built-in issue tracker, "it's very convenient to do so because it's integrated with the system for pull requests and code commits."
According to Methvin, multiple people listed on the petition have been talking with GitHub for years, but have seen no results.
One rebuttal to the protest has already surfaced from Julian Dunn, a contributor to the Chef configuration management platform. Dunn agrees "it sucks that GitHub hasn't provided you with timely responses about your feedback, even if it's to tell you 'no'."
But he doesn't feel GitHub is obliged to provide those specific features, because "[those issues] don't impact paying [GitHub] customers very highly." Paying GitHub customers, he goes on to note, don't use their repositories in ways that match these use cases.
"[A]s a company whose developers have to eat," Dunn writes, "GitHub is probably going to prioritize those customers first. Sorry!"
One other possible avenue is for the disgruntled GitHub users to decamp and move to a competitor -- preferably one that's open source. Though it's a launchpad and one-stop shop for a massive number of open source projects, GitHub itself is proprietary.
"If GitHub were open source itself," concludes the petition, "we would be implementing these things ourselves as a community -- we're very good at that!"
The biggest alternative is GitLab, which has positioned itself as a competitor to GitHub and an open source project amenable to changes. In a recent blog post, the company boasted it already has templates for issues and merge requests, and it automatically transforms "+1" comments into issue upvotes. More pointedly, GitLab said it's interested in exploring the other proposals mentioned in the letter.
When asked if the jQuery Foundation might change hosts, Methvin responded, "The jQuery Foundation represents a lot of projects now that we've merged with the Dojo Foundation. Each one of those projects can make an independent decision about whether GitHub is serving their needs or not. I think it may be time for open source projects to consider other alternatives like GitLab."
GitHub has made no mention of the letter. Its last post was dated January 4 and deals with the release of Git 2.7.0.