This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
gsoc:2024-gsoc-kworkflow [2024/01/26 21:09] davidbtadokoro [How to prepare your project proposal] |
gsoc:2024-gsoc-kworkflow [2024/02/26 18:37] (current) davidbtadokoro [2024 GSoC - Kworkflow] |
||
---|---|---|---|
Line 10: | Line 10: | ||
Code License: GPLv2 | Code License: GPLv2 | ||
- | Mentor: David Tadokoro | + | Mentors: David Tadokoro <davidbtadokoro at gmail dot com> |
- | =====Brief about kworkflow===== | + | ======Brief about kworkflow====== |
Kworkflow, or just kw, is a tool that intends to simplify the kernel workflow by automating tasks such as: | Kworkflow, or just kw, is a tool that intends to simplify the kernel workflow by automating tasks such as: | ||
Line 25: | Line 25: | ||
* https://blog.kworkflow.org/ | * https://blog.kworkflow.org/ | ||
- | =====Pre-requisites (warm-up)===== | + | ======Pre-requisites (warm-up)====== |
** ( ( This section is mandatory for everybody ) ) ** | ** ( ( This section is mandatory for everybody ) ) ** | ||
Line 34: | Line 34: | ||
https://github.com/kworkflow/kworkflow/discussions/476 | https://github.com/kworkflow/kworkflow/discussions/476 | ||
- | =====Project Idea===== | + | ======Project Ideas====== |
- | **To be updated** | ||
- | We are open for discussing the final project proposal. As guidance, follow some of the areas that we want to improve on kw: | + | We are open to discussing the final project proposal and encourage you to think about varied ways kw can be improved. Nevertheless, here is a list of project ideas that represent points of interest for the kw project: |
- | - Bug fixes, add more tests, and enlarge documentation; | + | =====Implement a Documentation Generator from Source==== |
- | - Cleanup output and add verbose mode; | + | |
- | - Expand the set of OS supported by kw; | + | |
- | kw has many open tickets on the Github web page; feel free to propose some specific projects based on the available tickets. | + | * **Size**: 1 contributor medium (175 hours), Level of difficulty: Intermediate |
- | It is critical to interact with kw as a tool and as a free software project. This means it's nice to use kw to understand its purposes and functionalities while also reporting bugs and suggesting enhancements (take a look at kw [[https://github.com/kworkflow/kworkflow/issues|reported issues]]). Don't be afraid to open pull requests addressing them! | + | * **Desired knowledge**: Bash, mechanisms like kernel-doc/javadoc |
- | =====How to prepare your project proposal===== | + | |
+ | * **Description**: Although inconsistent throughout the project, we have a pattern for writing function documentation. In this sense, adding a system to generate documentation using source code similar to the kernel-doc and javadoc mechanisms seems viable. We have wanted to implement this for a long time, roughly since [[https://github.com/kworkflow/kworkflow/issues/289|this issue]]. | ||
+ | |||
+ | =====Deploy In-House Continuous Integration (CI) Pipeline===== | ||
+ | |||
+ | * **Size**: 2 contributors full-size (350 hours), Level of difficulty: Hard | ||
+ | |||
+ | * **Desired knowledge**: DevOps, CI | ||
+ | |||
+ | * **Description**: Currently, kw uses GitHub actions for its CI pipeline. We plan to implement an in-house CI pipeline. For this task, there is much work to be done in terms of planning and deploying this infrastructure. | ||
+ | |||
+ | =====Expand and Refine ''kw patch-hub''===== | ||
+ | |||
+ | * **Size**: 1-2 contributors full-size (350 hours), Level of difficulty: Hard | ||
+ | |||
+ | * **Desired knowledge**: Bash, mail-based free-software projects | ||
+ | |||
+ | * **Description**: The [[https://kworkflow.org/man/features/kw-patch-hub.html|kw patch-hub]] is a significant point of interest in the project and is currently under heavy development. We now have a 'Minimum Viable Product' with performance issues, bugs, and a lack of core features. On this basis, there is much space for improvements and refinements. | ||
+ | |||
+ | ====Don't forget to interact to with the kw Community==== | ||
+ | |||
+ | Interacting with kw as a tool and as a free software project is critical to grasp which of the above projects best suits you or to bring other ideas to the table. This means it's nice to use kw to understand its purposes and functionalities while also reporting bugs and suggesting enhancements (take a look at kw [[https://github.com/kworkflow/kworkflow/issues|reported issues]]). Don't be afraid to open pull requests addressing them! We really encourage you to do it! | ||
+ | ======Making your Project Proposal====== | ||
The pre-requisites section is mandatory for everyone; for this reason, your final project proposal should have one section per assignment with two or three paragraphs that describe your experience with each task. Additionally, in your application, you must add print screens that follow the below instructions: | The pre-requisites section is mandatory for everyone; for this reason, your final project proposal should have one section per assignment with two or three paragraphs that describe your experience with each task. Additionally, in your application, you must add print screens that follow the below instructions: |