-
Notifications
You must be signed in to change notification settings - Fork 8
Add local exercise repo fetching for testing local changes #40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Add local exercise repo fetching for testing local changes #40
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request adds support for using local exercise repositories for testing, enabling developers to test exercise changes locally before pushing to remote. The implementation maintains backwards compatibility by defaulting to "remote" type when the type field is absent.
Changes:
- Extended
ExercisesSourcedataclass to support both "remote" and "local" repository types with appropriate fields for each - Added
from_rawclass method for flexible deserialization with backwards compatibility - Implemented local repository copying logic using
shutil.copytreefor isolation
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| app/configs/gitmastery_config.py | Extended ExercisesSource to support local/remote types, added from_raw factory method for backwards-compatible deserialization |
| app/utils/gitmastery.py | Added local repo handling branch in enter method with path validation and directory copying logic |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Typecheck `path` beofre use - Remove symlink copying - Clarify legacy fallthrough
|
@VikramGoyal23 Is this ready for review? Would also be good to resolve copilot comments if they have been addressed as well to reduce cognitive load on reviewer |
|
@jovnc Yes, this is ready for another review |
Allows developers to set the exercise source as a local path, enabling fully local exercise testing. Backwards compatible and assumes lack of
typefield asremote.