-
-
Notifications
You must be signed in to change notification settings - Fork 92
Open
Labels
Description
Checklist
- I have searched the existing issues and discussions for a similar question or problem.
- I have read the documentation and tried to find an answer there.
- I am using the latest version of Optiland (if not, please update and retry).
- I have tried to reproduce or debug the issue myself before opening this.
- I have included all necessary context, such as version info, error messages, or minimal reproducible examples.
Thanks for taking the time to go through this — it really helps us help you!
Bug Report
Describe the bug
The development environment setup has several inconsistencies that prevent contributors from following the instructions in CONTRIBUTING.md:
- CONTRIBUTING.md instructs running
pytest --cov=optiland --cov-report=xml, butpytest-covis not in the dev dependency group - CI workflow manually installs dependencies with
uv add --dev ...instead of using declared dependency groups - Contributors are required to run coverage manually, despite it being automated in CI
- Project uses legacy
[project.optional-dependencies]instead of modern PEP 735[dependency-groups]
To Reproduce
Steps to reproduce the behavior:
- Clone the repository
- Run
uv sync --devto install development dependencies - Follow CONTRIBUTING.md and run
pytest --cov=optiland --cov-report=xml - See error:
pytest: error: unrecognized arguments: --cov=optiland --cov-report=xml
Expected behavior
- Development dependencies should include all tools mentioned in CONTRIBUTING.md
- CI workflow should use
uv sync --devto ensure reproducibility - CONTRIBUTING.md should align with actual CI requirements (coverage is automated)
- Modern PEP 735 dependency groups should be used for better tooling support
Environment
- Optiland Version:
0.5.7 - Python Version:
3.10+ - OS:
All - Additional Info: Using
uvfor dependency management
Additional context
This affects all contributors trying to set up a development environment. The fix involves:
- Migrating to PEP 735
[dependency-groups] - Adding
pytest-covto dev dependencies - Updating CI to use
uv sync --dev - Updating CONTRIBUTING.md to remove redundant coverage instructions