GSoC 2019: Week 6 updates

This week was devoted to design and development of the new package manager, another flagship feature for the Launcher’s upcoming release.

New Package Manager API

After a lot of discussion on the launcher’s slack, we’ve made a fairly concrete roadmap for the Package Manager’s design. Here is a list of notable features it’ll have by the end:

  • Functionality for downloading, installing and removing game packages
  • A locally cached list of all game versions available online
  • Support for all four types of game builds: Stable, Unstable, Omega stable and Omega unstable
  • Support for different types of package providers, including ourĀ Jenkins server, GitHub Package Registry or any custom provider
  • Easy support for 3rd-party package sources, on simply adding them by pasting their URL into the launcher

At the time of writing this post, only syncing and caching of game versions has been implemented for all four types of game jobs present on our old Jenkins. The online tasks make use of Jenkin’s REST API, along with GSON for parsing the results. Have a look at this PR for the code.

Be sure to check out this post on my weekly GSoC forum thread.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a free website or blog at WordPress.com.

Up ↑

Create your website at WordPress.com
Get started
%d bloggers like this: