...
Associated JBoss community project(s): Quarkus, vscode extensions, JBoss Tools
Quarkus - API validation and tracking for Quarkus and Quarkiverse
Summary of idea:
Quarkus does timeboxed releases every 4 to 6 weeks which includes Quarkus core and 180+ extensions. We aim for not breaking users and extensions writers but we also don’t want to stand still and not be able to innovate. Today we manually maintain a migration wiki page on what needs migrating if anything between releases. Project idea is to utilize the already existing revapi.org setup and expand it to properly detect and generate documentation for api breakages in a way that help users and extension writers.
When this is done it will be a key central element in Quarkus releases and used heavily across all extensions. If done right it will have a massive impact on enabling Quarkus to continue to innovate.
Expected Technologies to be used: revapi.org, java, quarkus, asciidoctor
Internship Tasks
- Learn to use revapi
- Enhance the current revapi reporting to be useful
- Automate revapi usage in Quarkus CI build
- Document and script for daily usage of revapi
Stretch goals:
- Implement additonal revapi checks for i.e. property, library and configuraton changes
Intern Benefits
You will get to work with one of the fastest growing Java frameworks in newer times.
You will work with a 100% remote and distributed team.
You will learn about how to write frameworks, how to keep API stable and how to evolve them.
When successful this revapi integration will have many year impact on ensuring Quarkus development team and users will be able to upgrade and migrate for years to come. It will be used daily by development team and on each monthly release of Quarkus the whole ecosystem will benefit from this work.
Project Contribution Information
As part of the application process, all applicants must make at least one contribution to be accepted as an intern for this project. Only applicants who make a contribution will be eligible to be accepted as interns. This community requires applicants to complete a tutorial before they can make their contributions.
Please follow https://quarkus.io/get-started/ and https://quarkus.io/guides/rest-json to learn the basics of Quarkus.
You can read https://github.com/quarkusio/quarkus/blob/master/CONTRIBUTING.md to get an idea on how things works but not a first time requirement.
Applicants can contribute to this project through the project repository or contribution page. The project uses an issue tracker to keep information about bugs to fix, project features to implement, documentation to write, and more. Applicants can look for newcomer-friendly issues to use for their first contributions by looking for the following issue tags in the project issue tracker: good first issue
Work with your mentor on identifying and/or create github issues with description on what you plan to do.
You can see https://quarkus.io/community/ for community resources.
Especially https://groups.google.com/g/quarkus-dev is the mailing list and https://quarkusio.zulipchat.com/login/
Contact "maxandersen" on Zulip to get started.
Skill level: Beginner/Intermediate
Contact(s) / potential mentors(s): Max Rydahl Andersen (manderse@redhat.com)
Associated JBoss community project(s): Quarkus, revapi