Fix starting files copying to preserve filenames without special prefixes #138
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When creating a new submission, starting files were being copied incorrectly. The code was using
substr(1)to remove the first character from all starting file names, assuming they all had special prefixes like^. However, some starting files are meant to be regular files without prefixes.This caused issues where regular files like
helper_functions.pywould be corrupted toelper_functions.pyin the student workspace.Changes Made
src/blockpy.jsto import the existingchompSpecialFilefunction fromfiles.jsfile.filename().substr(1)withchompSpecialFile(file.filename())in the file reset logicchompSpecialFilefunction correctly handles both cases:!^?&$*#) have their prefix removedBefore and After
Before (broken):
After (fixed):
The fix ensures that starting files are properly copied to the student workspace with correct filenames, resolving the issue where files prepended with
^appeared verbatim in the student space when they should have been processed appropriately.Fixes #105.
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.