Repository navigation
Description
Student: Raj Manoj Patil
Task: R23-T038 · 8 of 10
Repository: https://github.com/S-AI-Projects/TheAlgorithms-Python
Assigned working branch: student/e26b07f0759
Goal
The repo's Ruff config already passes for this file. Go further: run all of Ruff's rules, decide which findings are worth fixing, and justify the rest. A numpy geometry file with 4 raises – check exception message style (Ruff EM/TRY rules) and naming.
Steps
- Run
uvx ruff check geometry/braik_mac_construction.py(repo config – should be clean) anduvx ruff check --select ALL geometry/braik_mac_construction.py. - Group the extra findings by rule code and look each up at docs.astral.sh/ruff/rules.
- Fix the findings that improve clarity or safety and match CONTRIBUTING.md; list the others with a reason in REVIEW.md.
- Run the doctests and the repo-config Ruff check again.
- Make the code change in the repository: geometry/braik_mac_construction.py: fixes for the strict Ruff findings you chose to apply (e.g. exception message style). Re-run the automated check and the repo's own tests afterwards.
- Prepare the PR: on branch R23-T038, commit the code change plus your work/R23-T038/ evidence, put your findings in the PR description and open the PR against the org fork. For a later upstream PR, create a second branch containing only the code change (no work/ folder).
Done when
☐ REVIEW.md lists the --select ALL codes for geometry/braik_mac_construction.py; exception messages are moved to variables if EM rules apply.
☐ At least 3 codes fixed; repo-config Ruff passes; the 4 raise paths and 7 doctests are unchanged in behaviour.
Additional task guidance
Additional curated task guidance
Item:
geometry/braik_mac_construction.py (160 lines; 7 doctests)
Task type:
Strict lint review
Code change (goes into the PR):
geometry/braik_mac_construction.py: fixes for the strict Ruff findings you chose to apply (e.g. exception message style).
Automated check:
uvx ruff check geometry/braik_mac_construction.py && uv run pytest geometry/braik_mac_construction.py
Prerequisites:
Linux/WSL2/Codespaces with uv (https://docs.astral.sh/uv/getting-started/installation/); run uv sync --group=test once – it installs the Python version CI uses (.python-version = 3.15t) and the test dependencies, about 1–2 GB
Upstream PR rules:
Follow CONTRIBUTING.md: type hints on every parameter/return, doctests for valid and erroneous input, snake_case file names, no duplicate of an existing implementation, no hand edits to DIRECTORY.md. CI (pytest with doctests, ruff) must pass – bots close PRs without tests or type hints. Keep work/ (benchmarks, notes, property tests) out of the upstream branch; put results in the PR description.
Source (pinned):
https://github.com/TheAlgorithms/Python/blob/574d100b7181956e9c8384552fd078165e4cc326/geometry/braik_mac_construction.py
Change:
No change recorded
PR destination:
Preserved pilot guidance
Submission checklist
- Complete this task and its checks.
- Add the required evidence and link your pull request here.
- Select this S-AI-Projects fork as the PR base repository.
- Request instructor review.
Keep this PR focused on this task. Do not submit assignment PRs to the upstream repository.
Activity