A convinent tool to check and submit your codes to "CS50".
Project description
pass50
pass50 is a convenient command-line tool designed to streamline the process of checking and submitting code assignments for Harvard's CS50 courses. It automates interactions with CS50's check50 and submit50 tools, making it easier to manage coursework directly from the terminal.
Features
- Auto-check: Automatically run
check50on specified assignments. - Auto-submit: Automatically run
submit50for submissions. - Custom Path: Specify a relative or absolute path to the directory containing your project.
- Identifier Selection: Choose whether to identify assignments by directory or file names.
- Course Selection: Specify which CS50 course you are submitting for (e.g.,
xfor CS50x). - Logging: Option to print detailed logs for debugging and verification purposes.
- Environment Initialization: Prepare your environment for using
pass50.
Installation
To install pass50, you can use pip
pip install pass50
, or pipx
pipx install pass50
Usage
usage: pass50 [-h] [-c] [-s] [-p PATH] [-i {d,f}] [-C {x,p}] [-l] [-upl] [-d] [-I]
options:
-h, --help show this help message and exit
-c, --check Only auto check50.
-s, --submit Only auto submit50.
-p PATH, --path PATH the path (Rel or Abs) of the dir you want to work with.
-i {d,f}, --identifier {d,f}
choose the identifier (dir's name or files' name) to generate slug.
-C {x,p}, --course {x,p}
choose the course from cs50 you're taking.
-l, --logs print the logs of check50 & submit50.
-upl, --unpassedLogs print all logs of unpassed works at the bottom.
-d, --dev run in developing mode, printing all logs.
-I, --init Init the env for the app.
Example Commands
- Initialize the environment:
pass50 --init - Check and Submit the current work directory:
pass50 --course x
- Only Submit assignment in the
pset1/:pass50 --submit --path ./pset1/ --identifier f --course x
Contributing
Contributions to pass50 are welcome! Please feel free to fork the repository, make changes, and submit pull requests. You can also open issues if you encounter bugs or have suggestions for improvements.
License
pass50 is released under the GPLv3 License. See the LICENSE file in the repository for more details.
Contact
For more information, please visit the GitHub repository or contact the maintainers directly through GitHub issues.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pass50-0.0.1.tar.gz.
File metadata
- Download URL: pass50-0.0.1.tar.gz
- Upload date:
- Size: 20.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5ca256c66bd749dab6f093d26477c0f186c317d9e7f153a66126ac8266fb2deb
|
|
| MD5 |
ad3b3f8b5c3e459207052b68e63aa3f5
|
|
| BLAKE2b-256 |
9348e5888ee2b056986b00516f89752a58fb6c8e47e06ea3b6000f8f3f9a8593
|
File details
Details for the file pass50-0.0.1-py3-none-any.whl.
File metadata
- Download URL: pass50-0.0.1-py3-none-any.whl
- Upload date:
- Size: 20.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
507bff372f2f30c7ce1a19d3971a7cc79cc686bed7840c8d44d08e30a529af5c
|
|
| MD5 |
1c9488abc26294adee3ab0f483cec5d3
|
|
| BLAKE2b-256 |
1ecff1ed22e28d27594c6a763709d882010179d68fa01c34b5300616fc87726c
|