docs: Update .github/copilot-instructions.md system dependencies and development setup
Updates the Copilot instructions to follow proper development practices and current repository conventions based on maintainer feedback.
Key Changes:
System Dependencies:
- Simplified to only install build essentials:
python3-dev,python3-pip,python3-venv,build-essential - Removed Python packages (numpy, sympy, psutil, flake8) as they're handled through Devito's own installation
Development Setup:
- Updated to use proper Python virtual environment workflow instead of system-wide installation
- Removed
--break-system-packagesflag since it's not needed in a venv - Added proper venv creation and activation steps
Documentation Standards:
- Added link to official commit message guidelines wiki
- Added capitalization rules for commit titles (e.g.,
misc: Patchnotmisc: patch) - Updated label system to include "API" and remove unused "python" label
- Corrected references to use "python venv" instead of "conda environment" in tips
These changes ensure agents follow the repository's established development practices and avoid installation issues that could occur with the previous system-wide approach.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.
@copilot - I have just upgraded your LLM model so carefully review the code repository again and refresh .github/copilot-instructions.md In addition to reviewing the code also review https://github.com/devitocodes/devito/wiki/Tags-for-commit-messages-and-PR-titles and review a selection of PR review comments to get a sense what's required in a PR.
@copilot - I have just upgraded your LLM model so carefully review the code repository again and refresh .github/copilot-instructions.md In addition to reviewing the code also review https://github....
I've completed a comprehensive review of the repository and refreshed the .github/copilot-instructions.md file. Key updates include:
Repository Review Findings:
- Updated Python support (3.10-3.13, not 3.12.3)
- Documented all 13 CI/CD workflows including ASV benchmarks, Docker builds, and release automation
- Added PR title/commit conventions based on recent patterns (compiler:, misc:, docs:, install:, mpi:, etc.)
- Included comprehensive label system from recent PRs
- Enhanced directory structure with all components (checkpointing/, mpatches/, operations/, etc.)
Enhanced Guidance:
- Detailed flake8 configuration with explanations for ignored warnings
- Complete dependency information including setuptools-scm versioning
- Performance benchmarking and release process coverage
- Time-saving development tips based on actual repository patterns
The instructions now provide agents with accurate, current guidance reflecting the repository's production-stable status and mature development practices.
Commit: ca1e196