Commit graph

130 commits

Author SHA1 Message Date
Paul Gauthier
103452aa21 fix: Remove unnecessary file caching and simplify subtree-only check 2024-08-01 16:37:38 -03:00
Paul Gauthier (aider)
24aa48198b fix: Use os.path.commonpath() to check if fname_path is below cwd_path 2024-08-01 16:28:10 -03:00
Paul Gauthier
f26862d92c fix: Add caching and logging for ignored file checks 2024-08-01 16:28:09 -03:00
Paul Gauthier (aider)
1c6cdb97ae refactor: Split ignored_file into ignored_file and ignored_file_raw 2024-08-01 16:25:41 -03:00
Paul Gauthier
17e2c02a47 fix: Improve handling of ignored files in GitRepo class 2024-08-01 16:25:40 -03:00
Paul Gauthier
f458fa86ac feat: implement caching for ignored files in GitRepo class 2024-08-01 16:02:53 -03:00
Paul Gauthier (aider)
b8dfb18aa9 feat: Add subtree_only attribute to GitRepo class 2024-08-01 15:57:43 -03:00
Paul Gauthier (aider)
d05f1e6446 feat: Add subtree_only functionality to GitRepo class 2024-08-01 15:56:45 -03:00
Paul Gauthier (aider)
1275171b90 feat: add support for the new commit_prompt arg to override prompts.commit_system
The GitRepo class in the aider/repo.py file has been updated to support a new `commit_prompt` argument. This allows overriding the default `prompts.commit_system` when generating commit messages.

The changes include:

1. Adding the `commit_prompt` parameter to the `__init__` method of the `GitRepo` class.
2. Storing the `commit_prompt` value in the `self.commit_prompt` attribute.
3. Modifying the `get_commit_message` method to use the `self.commit_prompt` value if it's provided, otherwise falling back to the default `prompts.commit_system`.

This change provides more flexibility in customizing the commit message generation process, allowing users to provide their own custom prompts if needed.
2024-07-31 09:47:49 -03:00
Paul Gauthier
16856bb4ca Give the commit message model the chat context #748 2024-06-30 13:02:23 -07:00
Paul Gauthier
9c214e0faf Implemented option to attribute commit messages in GitRepo class. 2024-06-27 10:21:04 -07:00
Paul Gauthier
34e83f9580 Implemented commit message attribution for Aider-generated edits. 2024-06-27 10:19:42 -07:00
Paul Gauthier
c207c7839a Added --attribute-author/committer options #698 2024-06-21 17:14:21 -07:00
Paul Gauthier
9e228670a2 append (aider) to author if aider wrote the code 2024-06-18 11:18:52 -07:00
Paul Gauthier
5a3627de6e finish removing aider: prefix 2024-06-18 08:37:13 -07:00
Paul Gauthier
0cc00f2a1e Removed setting and restoring GIT_COMMITTER_NAME in GitRepo class. 2024-06-18 08:15:02 -07:00
Paul Gauthier
40c28ff7d8 aider: Set committer name to include "aider" and restore original committer name after commit. 2024-06-18 08:11:54 -07:00
Paul Gauthier
01242b256c Set committer name to include "aider" and restore original committer name after commit. 2024-06-18 08:11:53 -07:00
Paul Gauthier
6216a273fe drop context at the caller 2024-06-11 13:33:46 -07:00
Paul Gauthier
20f730a673 stop including chat conversation in commits 2024-06-11 13:19:02 -07:00
Paul Gauthier
7b8e603249 aider: Shortened the docstring in aider/repo.py to comply with the 100 characters line length limit.
# Aider chat conversation:

USER: I ran this command:

 pre-commit run --files aider/repo.py

And got this output:

isort....................................................................Passed
black....................................................................Passed
flake8...................................................................Failed
- hook id: flake8
- exit code: 1

aider/repo.py:247:101: E501 line too long (111 > 100 characters)
        """
        Returns a list of all files which are dirty (not committed), either staged or in the working directory.
        """

                                                                                        ^

ASSISTANT: Please add the file `aider/repo.py` to the chat so I can make the necessary changes.

USER: I added these files to the chat: aider/repo.py

ASSISTANT: To fix the flake8 error, we need to shorten the docstring to comply with the line length limit of 100 characters.

Here is the *SEARCH/REPLACE* block:

aider/repo.py
```python
<<<<<<< SEARCH
        """
        Returns a list of all files which are dirty (not committed), either staged or in the working directory.
        """
=======
        """
        Returns a list of all files which are dirty (not committed), either staged or in the working
        directory.
        """
>>>>>>> REPLACE
```
2024-05-18 18:30:51 -07:00
Paul Gauthier
abbe5416a1 Refactored GitRepo class to use consistent quotation marks for git commands. 2024-05-18 18:30:50 -07:00
Paul Gauthier
5d8ed278aa aider: Add get_dirty_files() method to return all dirty files staged or in the working directory.
# Aider chat conversation:

USER: add a get_dirty_files() method which returns all the files which are dirty (not committed) either staged or in the working dir.

ASSISTANT: To add the `get_dirty_files()` method, we need to:

1. Define the new method in the `GitRepo` class.
2. Implement the logic to return all dirty files, both staged and in the working directory.

Here is the *SEARCH/REPLACE* block:

aider/repo.py
```python
<<<<<<< SEARCH
    def is_dirty(self, path=None):
=======
    def get_dirty_files(self):
        """
        Returns a list of all files which are dirty (not committed), either staged or in the working directory.
        """
        dirty_files = set()

        # Get staged files
        staged_files = self.repo.git.diff('--name-only', '--cached').splitlines()
        dirty_files.update(staged_files)

        # Get unstaged files
        unstaged_files = self.repo.git.diff('--name-only').splitlines()
        dirty_files.update(unstaged_files)

        return list(dirty_files)

>>>>>>> REPLACE
```

aider/repo.py
```python
<<<<<<< SEARCH
        return self.repo.is_dirty(path=path)
=======
        return self.repo.is_dirty(path=path)
>>>>>>> REPLACE
```
2024-05-18 18:13:08 -07:00
Paul Gauthier
b882d5db4c Do not require gpt-3.5 in GitRepo 2024-04-20 09:47:43 -07:00
Paul Gauthier
4e50f0d095 Support weak_model=False 2024-04-19 14:05:58 -07:00
Paul Gauthier
f81b62dfea Added --require-model-info 2024-04-19 14:01:02 -07:00
Paul Gauthier
f0f0c330d7 cleanup 2024-04-19 12:14:58 -07:00
Paul Gauthier
733c09d30f fixed test_repo 2024-04-18 14:55:56 -07:00
Paul Gauthier
c770fc4380 cleaned up client refs 2024-04-17 15:47:07 -07:00
Paul Gauthier
f1a31d3944 pass in commit models to gitrepo 2024-04-17 15:41:30 -07:00
Paul Gauthier
a84b4f8144 Add the ability to add images that are located outside the git repo #519 2024-04-12 08:26:49 -07:00
Paul Gauthier
c2b8b2355d Handle diffs on a detached head #520 2024-04-12 08:26:49 -07:00
Paul Gauthier
6dd5ae69e3 Normalize paths before checking aiderignore #479 2024-02-25 15:54:57 -08:00
Paul Gauthier
a9fe4532c7 Aider should fully ignore files in aiderignore #479 2024-02-24 09:39:33 -08:00
Christopher Toth
ba87510db1 Fix issue with path normalization that was causing files to be marked dirty on Windows when they were not 2023-12-29 13:04:46 -05:00
Paul Gauthier
57ab2cc9da Revert "implement deployment id"
This reverts commit b107db98fa.
2023-12-06 09:20:53 -08:00
Paul Gauthier
b107db98fa implement deployment id 2023-12-05 11:31:17 -08:00
Paul Gauthier
2ed0c8fb66 fixed test_repo 2023-12-05 10:58:44 -08:00
Paul Gauthier
fb07b784f6 move to gpt-3.5-turbo-1106 2023-12-05 10:28:27 -08:00
Paul Gauthier
6ebc142377 roughed in openai 1.x 2023-12-05 07:37:05 -08:00
Paul Gauthier
5756812938 Adopt subprocess.run(shell=True) for /git 2023-10-18 12:37:39 -07:00
Paul Gauthier
1085549548 Give up testing aiderignore caching in github actions 2023-10-18 12:28:24 -07:00
Paul Gauthier
df27007c00 wtf 2023-10-18 12:22:01 -07:00
Paul Gauthier
1a2370f9ae sleep in the test 2023-10-18 12:15:11 -07:00
Paul Gauthier
b87c9f14fb put back caching, add debug output 2023-10-18 12:11:07 -07:00
Paul Gauthier
d1cd0f9860 do not cache aiderignore 2023-10-18 12:06:47 -07:00
Paul Gauthier
cf00037442 st_mtime_ns? 2023-10-18 12:04:09 -07:00
Paul Gauthier
a1cb6e4e7a More paranoid mtime check 2023-10-18 11:55:04 -07:00
Paul Gauthier
2e6c785c3b cache aiderignore 2023-10-18 10:39:07 -07:00
Paul Gauthier
583c3285ec added tests, fixed bug 2023-10-18 10:31:45 -07:00