Skip to content
Extraits de code Groupes Projets
Valider 3348a396 rédigé par Lionel Dricot's avatar Lionel Dricot
Parcourir les fichiers

Merge branch 'MatheusMorsRamos-master-patch-93898' into 'master'

Report for Matheus Ramos' project

See merge request ldricot/lingi2401!400
parents 0de63aa5 fef609e5
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion!400Report for Matheus Ramos' project
# **LINFO2401 project report - Contributing to an Open Source project : AssDeb **
| **Author** | Moras Ramos Matheus |
| ----------------------- | -----------------------------------------------------------------------------------------------|
| **Date** | 21/01/2025 |
| **NOMA** | 06592200 |
| **Academic Year** | 2024-2025 |
| **Open Source Project** | [AssDeb](https://github.com/TheTarados/AssDeb/tree/master) |
| **Pull request made** | [Save File and Save File as](https://github.com/TheTarados/AssDeb/pull/4) |
| **License** | [MIT License](https://github.com/TheTarados/AssDeb/tree/master?tab=MIT-1-ov-file#readme)
## Project Description
As many students in computer science, finding an open source project to contribute seemed very frightning, specially if you've never done it before. After weeks I couldn't come up with something to do or the projects that I found didn't inspire me to contribute for.
While doing some work for another course this semester, specifically LELEC2531 - Design and architecture of digital electronic systems, we were given the task to use a tool to emulate and test Assembly code before programming into a microcontroler. This project caught my attention specially because I used it so much that I could find some issues that bothered me.
The changes that I made came from a personal itch and I bet many other students also had the same issues as me. And since the tool is used every year by the course, I hope it will benefit many other students in my course.
I initially explored their GitHub repository to see how long ago this tool was made and if it had active members in the platform. It was still active with some activity every 5 months or so. I checked also the creators of the code and at least one of them is a UCLouvain PhD student, which made the contact way easier.
---
## Personal Itch
The functionality of the tool is basic, it's almost like an IDE, with a text area where you can edit your file, multiple tool bars to control the file and run your code. In the "File" toolbar, there was, among other functions, "Save File". When clicked, it opened a window to save a file with the content of the text area in the IDE, where you could name it whatever you want and place it wherever you want.
My main issue with this is that while I'm editing and working on a file I like to save it every few changes, and usually the file editors just save the file by replacing the old content of the file opened, and not opening options to replace/rename the file. This functionality is most of the times called "Save as...". Another problem that I found is that whenever I opened another file, it simply discarded the content in the text area, without recording the changes of the file I was editing before. This led me to lose a lot of progress by accident when I forgot to save the file before opening another one.
---
## Changes made
I changed the name of the function "Save File" to "Save File as" and added another function called "Save File" that simply updated the content of the file opened with what was showing in the text area, like any text/code editor does. I also added a feature that opened a dialog box asking the user if they wanted to save the content of the file before opening another. But, of course, it only asks this after the first file has been opened, otherwise it would ask to save an empty file when the user opened the first file with the text area empty.
I also updated the README.md file to include these changes.
## Contribution Process
- Initially I forked the repository and started making changes and tests in my local repository. I worked on the issues I wanted to resolve and commited with a long description to what I was changing and opened a pull-request.
- After a few days without any news on my request, I decided to contact the creators of the project. I couldn't find easily a way to contact them, so I had to do a little stalk. To my surprise one of them is a UCLouvain student, so I sent him an email on his UCLouvain address.
- He told me he was not very active in the project anymore, but he forwared me to someone who was, so he analysed my pull-request and made some comments about what needed to be changed.
- I changed what he requested and made another commit and a pull-request.
- I sent him another email telling him I had made the changes and he asked me to squash the two commits into only one.
- I had to search how to do that and after ammending one of the commits and squashing into the first one, I sent the last one telling him it was done.
- He saw my work and was satistfied about it, accepting my pull-request into the project.
---
## Conclusion
This experience allowed me to have a very good start in the open source world and into making a change for personal issues that very probably are pertinent to other users like me as well, but maybe don't have the courage or incentive to make the change. I also had to search for the contributors, cuz they were maybe not checking their project's comunity very often, but it was super well received and they understood and accepted in good will my changes.
---
## Book
The book is La Tresse by Leatitia Colombani
---
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter