The commit message guidelines provide clear instructions for software engineers on how to structure and format commit messages that follow the Conventional Commits specification. This will help maintain a consistent and meaningful commit history for the project.
The provided changes ensure that the YAML keys are sorted alphabetically when dumping the results and the individual result in the `scripts/blame.py` file. This will provide a deterministic order for the output, making it more consistent across different runs of the script.
The commit adds a message to the output when the `--all-since` option is not used, which prints the percentage of code written by Aider in the current release.
The above changes add instructions for installing the full version of the Aider application using Docker, which includes additional features like interactive help, the browser GUI, and Playwright support for web scraping.
The changes in this commit add some permission kludges to the Docker image to support running the container with the `--user` flag. Specifically, it:
- Adds permissions to the virtual environment directory and subdirectories to allow read/write/execute access for all users.
- Creates the `.aider` and `.cache` directories and grants read/write/execute access to all users.
This ensures that the container can be run with a non-root user without encountering permission issues.
The changes in this commit create a virtual environment for the aider application in the Docker image. The key changes are:
1. Removes the permission-related commands that were modifying system directories.
2. Creates a virtual environment at `/venv` and adds it to the PATH.
3. Installs aider and its dependencies into the virtual environment.
4. Updates the ENTRYPOINT to use the aider executable from the virtual environment.
5. Copies the aider source to a temporary directory (`/tmp/aider`) for installation, then removes it after installation.
These changes should address the concerns about modifying system permissions while still allowing the container to function properly for different users.