freeCodeCamp icon indicating copy to clipboard operation
freeCodeCamp copied to clipboard

Missing CSV Files in released branch of Relational Database Courses

Open SaintPeter opened this issue 11 months ago • 9 comments

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

SaintPeter avatar Feb 28 '24 23:02 SaintPeter

@moT01

jdwilkin4 avatar Feb 28 '24 23:02 jdwilkin4

Can I be assigned this issue as a first time contributor?

lukecp5 avatar Mar 04 '24 00:03 lukecp5

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.

moT01 avatar Mar 04 '24 03:03 moT01

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.

SaintPeter avatar Mar 04 '24 03:03 SaintPeter

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.

SaintPeter avatar Mar 04 '24 15:03 SaintPeter

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.

moT01 avatar Mar 04 '24 18:03 moT01

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.

SaintPeter avatar Mar 05 '24 15:03 SaintPeter

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.

naomi-lgbt avatar Apr 22 '24 21:04 naomi-lgbt

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.

flindyly avatar May 23 '24 10:05 flindyly