At this year's Universe Conference, GitHub made a number of announcements aimed at improving developer experience in the daily use of the platform, including a mobile client app and notification, as well as promoting workflow automation tools such as GitHub Actions and GitHub Packages to general availability.
With its mobile client app, which will be available both for Android and iOS, GitHub continues to improve its offerings of collaboration tools. GitHub for mobile is likely not the most suitable tool to develop new code, but still it may be useful to participate in discussions or to do some limited amount of code review and even merging code. The app is still in beta, and is exclusively for iOS at the moment; it is not available through the official public channel in the App Store, but you can submit your request to be part of the beta.
GitHub for mobile is not the only existing option for using GitHub through a native app. In particular, the very popular Working Copy app for iOS, which has collected more than 1,000 reviews on the App Store with an average rating of 4.9, allows you to use many Git-based source code management services such as GitHub, GitLab, and BitBucket. For Android, you can use PocketHub instead.
The announcement of GitHub for mobile sparked several reactions of developers complaining about the scarce usability of the GitHub current mobile Web UI, and wishing GitHub had invested in that. Others confirmed the usefulness of having a mobile client app to increase productivity.
It is not clear yet which approach GitHub will use to implement versions for iOS and Android of its mobile client, whether they will be two separate native apps or some cross-platform solution such as Xamarin or React will be used.
Another new feature is GitHub Notifications, which aims to do away with the clutter in your mail inbox caused by mail messages GitHub sends for many developer actions. Notifications are now integrated in GitHub Web UI and provide a way to filter notifications to identify what requires action on your part and hide the noise.
(Image from GitHub blog)
GitHub Notifications is only available in beta to a limited audience, although all users admitted to GitHub for mobile beta will also receive access to GitHub Notifications, says GitHub.
For all developers who use GitHub as a tool to navigate through and inspect code, GitHub now offers Code navigation and Code search. The former enables jumping from a symbol to its definition and finding all references of a symbol. This feature is based on GitHub semantics and is available for all repos written in Ruby, Python, or Go. Code search is meant as a search tool for code, thus taking into account case, special characters, tokenization, etc. It is available only in closed beta.
If your team relies heavily on code review, code review assignment is a new feature that allows you to specify how many reviewers you require for a pull request and can additionally automatically choose reviewers for you. Currently, two assignment criteria are available: round robin and load balance. This feature is also considered beta and available to all members of an organization.
In regards to workflow automation, Universe 2019 marks the general availability of two features introduced in beta during the last year. GitHub Actions, recently integrated with GitHub's own CI/CD service, allow developers to build sophisticated workflows by connecting basic steps that are packaged in Docker containers and run on GitHub’s servers or using your own self-hosted runners, which include ARM-based devices like the Raspberry Pi. GitHub Package Registry aims to simplify publishing public or private packages under the same user interface as your source code, with integrated permissions management. During the beta period, GitHub added support for an NPM proxy, GitHub Actions, and more.
As Universe 2019 is about to enter its second day, GitHub is expected to announce more new features. InfoQ will continue reporting as details becomes available.