Skip to main content
Jump to: navigation, search

Google Summer of Code 2021 Ideas

Eclipse Collections

Eclipse Collections is a collections framework for Java with optimized data structures and a rich, functional and fluent API

Relevant Issues: "Good first issues" to contribute

Skills required: Java

Possible Mentor: TBD

Eclipse KUKSA.val

KUKSA.val is a in-vehicle datserver that provides data about an Vehicle to applications running in a vehicle. I implements standards jointly developed by Genivi and W3C.

KUKSA.val can be deployed by a manufacturer inside a vehicle computer as well as used external (e.g. on a PI) connected to a vehicle's OBD Port or CAN busses.

Relevant Issues: "Help Wanted" issues

Demo video: KUKSA.val DBC feeder

Skills required: CPP

Mentors: Sebastian Schildt, Wenwen Chen

Topic: Support for the VISS2 messaging protocol.

The kuksa.val tree of in-vehicle data is provided via the W3C VISS (Vehicle Information Service Specification) protocol based on websockets. Currently version 1 of this protocol is supported [1]. We should upgrade the code support the upcoming VISS2 websocket standard that can be found here [2]

This task includes updating the code and add missing features to support (a significant chunk) of the VISS2 messaging protocol. It does not necessarily include the more generic architecture suggestions around security deployment also given in the VISS spec

Skills required: CPP

Possible Mentor: Sebastian Schildt, Wenwen Chen

Eclipse Lemminx

Eclipse Lemminx is an XML Language Server.

Relevant Issues: "Good first issues" to contribute

Skills required: Java, XML

Possible Mentor: TBD

Eclipse SWTChart

SWTChart is a powerful library to create charts and display data using SWT. It can be easily used in Java desktop applications. Only a few lines of code are necessary to create interactive and feature rich charts:

public class MyChart extends MassSpectrumChart {
	public MyChart(Composite parent) {
		super(parent, SWT.NONE);
	private void initialize() {
		IChartSettings chartSettings = getChartSettings();
		List<IBarSeriesData> barSeriesDataList = new ArrayList<IBarSeriesData>();
		IBarSeriesData barSeriesData = new BarSeriesData(SeriesConverter.getSeriesXY(SeriesConverter.BAR_SERIES_1));

The source code is located here and can easily be cloned:
If you are interested in one of the topics you have to apply on the mailing list.

Topic: Support for Radar- and Spider Charts

SWTChart currently supports line-, scatter- and bar charts. Single and multiLevel pie charts have been added as a Google Summer of Code project in 2020. A nice enhancement would be to support also radar as well as spider charts:

Skills required: Java, SWT

Possible Mentor: Philip Wenig

Eclipse Theia

Eclipse Theia is a cloud & desktop IDE framework implemented in TypeScript.

Relevant Issues: "Good first issues" to contribute

Skills required: Node.js

Possible Mentor: TBD

Eclipse Dash License Tool

The Eclipse Dash License Tool identifies the licenses of content.

Each individual bit of content is identified by its ClearlyDefined id. This id uniquely defines, for example, a particular version of a JAR file, or a particular version of an NPM module. This tool knows how to read and convert Maven coordinates and NPM ids into ClearlyDefined ids.

Project idea: Language and Tool support

This is very much a research topic. We need to extend the tool to support other languages and build technologies, including Python. Specifically, we need a means of extracting dependency information from a Python build, converting into an acceptable form, so that we can feed it to the command line tool.

Skills required: Entry level Python. Intermediate Java. Experience with BASH.

Possible mentor: Wayne Beaton

Project idea: License Tool server

The license tool has a feature by which is creates review requests for content that is identified as requiring further investigation by the Eclipse Foundation's intellectual property management team. These requests are filed as issues against our GitLab instance.

The tool includes information with these requests, possibly including the license of the corresponding content and a pointer to the source. We need a process that pulls these open review requests using the GitLab APIs, and--in the case where a request includes a pointer to source--grabs that source, runs it through [Scancode Toolkit], and posts the results on the issue, and in cases where the licenses discovered by scancode match our approved list, resolve the issue.

Our strong preference is that the process be authored in Java, but other options are possible.

Skills required: Proficiency with Java, experience with GitLab or similar (e.g. GitHub).

Possible mentor: Wayne Beaton

Help Wanted

Eclipse Bugzilla

Any issue listed as helpwanted is a potential GSoC project idea.

  • 439299 [Import/Export] Expanded Export Wizard with sub-categories auto-collapses
  • 571070 "Generate equals/hashCode" dialog should default to use Objects.equals/hashCode
  • 570785 Extract method refactoring provide better default names
  • 570697 Projects imported from ZIP archive do not automatically add included JARs to classpath
  • 552710 Add External JARs selection ignored when creating a new project

A complete list is available here.

Eclipse CBI

The Eclipse Common Build Infrastructure (CBI) is an initiative combining infrastructure, services, technologies and best practices for building, testing and delivering software at the Eclipse Foundation.

Back to the top