freeCodeCamp
freeCodeCamp copied to clipboard
Missing CSV Files in released branch of Relational Database Courses
Describe the Issue
I've had a user report that they can't find the .csv
files when cloning the GitHub projects for the Relational Database Courses.
Looking at the World Cup Database: https://github.com/freeCodeCamp/learn-world-cup-database/tree/main
There is no .csv file present.
However, in the v2.0.0 branch the games.csv
file is there:
https://github.com/freeCodeCamp/learn-world-cup-database/tree/v2.0.0
This also appears to be true for the Student Database: https://github.com/freeCodeCamp/learn-sql-by-building-a-student-database-part-1
The courses.csv and students.csv are found only in v3.0.0: https://github.com/freeCodeCamp/learn-sql-by-building-a-student-database-part-1/tree/v3.0.0/.freeCodeCamp/reset_files
Affected Page
https://www.freecodecamp.org/learn/relational-database/build-a-world-cup-database-project/build-a-world-cup-database
Your code
N/A
Expected behavior
The CSV file should be present in the most recent/released version of the repo.
Screenshots
No response
System
N/A
Additional context
No response
@moT01
Can I be assigned this issue as a first time contributor?
Those files should be in the workspace if the user opened the course correctly (hopefully) - e.g. by using the "start the course/project" button on the learn page to open it in gitpod. The way those are set up is that it copies specified files from those branches (v2.0.0 or v3.0.0) into the workspace when the course is started - so the files should be there, but if the camper tried to open the course in some other way, they may not be there I suppose. Did you see a forum report of this or how did you hear about it @SaintPeter? You could suggest opening the course with that "start the course/project" button to the user to see if it works for them. If they didn't do it like that, perhaps there's some confusion with the instructions and some clarification could be added - otherwise, perhaps something else is going wrong. If that's the case, some steps to reproduce would be nice - I have opened those courses using gitpod and I see those files.
I had a user comment on Discord, twice. In both cases I tracked down the files in the revision history.
That were not using Gitpod, they were self hosting. They cloned the most recent version of the repo and the files are not in the most recent version of the repo.
Bottom line: it's not clear why the csv files are not available in the main
branches of these repos. It feels like they should be?
And/or why does the head of the main
branch not match the current release of the course?
@lukecp5 Once we're done discussing, assuming we come up with a fix, you're welcome to do the PR. We don't assign people to tasks, we just accept the first PR that resolves the issue.
There's some more info on how the CodeRoad courses work here
Basically, CodeRoad loads files from the version branch, not the main branch. So any files needed for the course, are not on the main branch.
the head of the main branch not match the current release of the course?
When a new version branch is created (changes need to be made to the version branch), a commit is made to main that changes the course to use that new version branch (e.g. the change to use v1.0.4 here). If changes then need to be made to something that is on main (the instructions), a new commit is made to main to just change that - a new version branch is not needed for those types of changes. So that's why the latest commit on main isn't always a change to use a new version branch.
They cloned the most recent version of the repo...
Cloning the repo is not how you want to run the course. If users want to run the course on Gitpod, they should start the course using the button on the course page - or, there's instructions here for how to run the course locally.
I'm assuming the user just opened course wrong - so I'm not sure there's anything that needs to be fixed here. Perhaps we could add a readme to each repo that says how to run the course.
Perhaps we could add a readme to each repo that says how to run the course.
This seems like a reasonable approach. Have a link to the instructions above, as well as specific instructions on how to clone the appropriate branch.
This seems like a nice "Help Wanted" issue.
This seems like a reasonable approach. Have a link to the instructions above, as well as specific instructions on how to clone the appropriate branch.
Let's go ahead and move forward with this.
Hi,
I have made a PR that adds a README with instructions for running the world cup project using either Gitpod or Docker, as suggested above.
However, I am not quite sure how the project can be run by 'cloning the appropriate branch'. I understand that the version branch specified in coderoad.yaml
stores the relevant csv
files, but I am unclear about how the project can be run from cloning that branch specifically. Although, if the goal is just to access the relevant files, providing instructions on how to find them in the specific branch would be helpful for users.