GitHub announced today at its developer conference the arrival of some long-awaited project-management features to its source-code-management platform. Among these new features are granular repository access via APIs, first-class project-management tools, and a beta-form redesigned API.
Connor Sears, senior director of product design at GitHub, said in a keynote at the GitHub Universe conference that many of the changes to the platform, from a developer perspective, focus on better project management and control. This includes changes to the commenting systems, both in GitHub and around the code itself. Now, project managers will be able to better control those comments, and can group them, categorize them and keep them better organized.
Code review is also now a part of the life cycle, said Sears. He added, “First-class code review is being brought to pull requests. That will allow you to batch up comments as one review. This means you don’t get an e-mail notification every time someone leaves a comment now. You can also attach a status to that review: thumbs up that it’s good to go, or specify work-specific changes that should happen before a person checks code in.”
Project management is also now a first-class feature, said Sears. He said that project managers can now better handle large numbers of issue reports and pull requests. This is another feature the community has been asking for, specifically those that manage large open-source projects.
Also, said Sears, developers can block the merging of code until it’s gotten a proper review. He went on to detail some features that will arrive in GitHub over the coming weeks, including the ability to manage multiple projects as an organization.
At the top on the “soon to come” list was the ability to attach a specific person to a specific code review. He said that the team at GitHub is already using this internally and has prepared for its potential misuse—for example, as everyone would perhaps tag Linus Torvalds in their two-line Linux patch.
He added that the 2.8 release of GitHub Enterprise would include these features as well, but would be released sometime in the next few months.
For users building integrations with GitHub, Sears said that the company is introducing Integrations 2 at the Universe conference. He said Integrations 2 is “a brand new system from the ground up. It makes it way easier for integrations to be given the levels of access to a repository’s given integration needs. Integrations 2 offers more granular access levels attached to a repository.”
In addition, GitHub also introduced an overhauled API for integrations at Universe. Developers were invited to access a beta version of this API, which Sears said will remain in trial form through 2017 as the company works to make it easier to build on top of their platform.
Key to this rebuild is the use of Facebook’s GraphQL as the basis of this new API. “We’re really the first (non-Facebook) company to build endpoints for GraphQL,” said Sears. “Our engineers are going to be building for GitHub on an API that is the exact same as our integrators.’ ”
The old API will be around for quite a while, however, said Sears. “This is a process. We’re announcing the first sort of goal of overhauling our API with the goal over the next year at the end of 2017 to publicly take that out of beta,” he said.
On the cosmetic front, GitHub profiles are getting new frontages. Instead of recent activity showing up there, Sears said that a new timeline and a user-selected six-project summary of a given developer’s work will be the most prominent aspects. That timeline will show the work done by any given developer over their entire GitHub accounts’ existence. Sears said this should help developers who use GitHub as a résumé. These profile changes are live now.
Finally, GitHub has added the ability for project managers to limit access to a project based on the use of two-factor authentication. This enables teams to be ensured they’re all whom they say they are.