DEV Community

Hyunjin Shin (Jin)
Hyunjin Shin (Jin)

Posted on

OSD600 - Lab 04

Link

Link to Henrique Sagara's repo
Links to the issues that I opened in Sagara's Repo.
issue9, issue10, issue12, issue14, issue15

Links to the PR that I made to solve the issues
PR to solve issue 11, PR to solve issue 12

Description

In this lab, the students are required to add a new feature to other class mate's repo. The tool now should support reading a config file named .config-file-name.toml located in home dir of the user.

For this lab, I worked on Henrique Sagara's repo, and he worked on my repo.

Process of working on Sagara's repo.

  1. I first forked his repo, and then cloned it onto my local machine.
git clone https://github.com/gitdevjin/readme_genie.git
Enter fullscreen mode Exit fullscreen mode
  1. Then, I made a new branch to test and add new features. I started reading through his code and the file structures of the repo. I found somethings that I thought I could improve. First, his project didn't include the .gitignore file so when I cloned his repo, pycache folder was included. So I made antoher branch to solve this and made an issue for it, and then added .gitignore file, then committed, and opened a pull request. Second, he imported modules; however, there was no file that contains information about the imported modules, so I had to manually download the modules. I thought that this could be improved by making a file requirements.txt so that users can easily install dependencies. I made an issue for this, and I made another branch for this. I added requirements.txt file and comitted. For his convenience, I merged this branch with the previous branch(for .gitignore) for fast-forward merge and committed this branch. I made a pull request. Those two issues are now solved.

  2. After I installed all the dependencies, and then I tried to run the tool. However, there was some errors and I couldn't run it. I googled it and used ChatGPT to figure out what the problem was. The problem was that one of his dependencies was not compatible with Python 3.12.0 or newer version. I made another issue for this, and I contacted him in Slack asking to check the problem. He asked me to make an virtual envrionment, and run the tool with it. I tried it but it didn't work. As of now (Oct 03, Thursday), he is still trying to fix it and I am waiting for it to be fixed.

Process of reviewing Sagara's Pull Request.

  1. First, I added his original repo in the git remote
git remote add sagara https://github.com/HTSagara/readme_genie.git
Enter fullscreen mode Exit fullscreen mode
  1. I fetched all the branches of his repo.
git fetch sagara
Enter fullscreen mode Exit fullscreen mode
  1. Then, I made a branch on my local repo with his branch for the ongoing issue.
git checkout -b sagara sagara/issue12
Enter fullscreen mode Exit fullscreen mode
  1. I checked and tested the changed code using the following command.
git diff main
Enter fullscreen mode Exit fullscreen mode
  1. I first misunderstood the instruction of this lab, so I made the config file .code-mage-config.toml in my root directory of the project. I asked him to change the file path, but I let me realize that it should be home dir. So I just asked him to change the required config file name from .code-mage-config.toml to .codemage-config.toml since when there are too many dahses, it could be confusing. He thankfully and kindly changed the pull request(made a new commit).

  2. After he made a new commit to the branch that opened the pull request, I merged it

git fetch sagara
git checkout main
git merge sagara/issue-6
git push origin main
Enter fullscreen mode Exit fullscreen mode

Reflection

Top comments (0)