Merge branch 'main' into mixpanel

This commit is contained in:
Paul Gauthier 2024-08-13 13:01:43 -07:00
commit d7a29c42b7
5 changed files with 521 additions and 149 deletions

View file

@ -1,7 +1,7 @@
# Release history # Release history
### main branch ### Aider v0.50.0
- Infinite output for DeepSeek Coder, Mistral models in addition to Anthropic's models. - Infinite output for DeepSeek Coder, Mistral models in addition to Anthropic's models.
- New `--deepseek` switch to use DeepSeek Coder. - New `--deepseek` switch to use DeepSeek Coder.
@ -14,7 +14,7 @@
- Switched from `setup.py` to `pyproject.toml`, by @branchvincent. - Switched from `setup.py` to `pyproject.toml`, by @branchvincent.
- Bug fix to persist files added during `/ask`. - Bug fix to persist files added during `/ask`.
- Bug fix for chat history size in `/tokens`. - Bug fix for chat history size in `/tokens`.
- Aider wrote 66% of the code in this release.
### Aider v0.49.1 ### Aider v0.49.1

View file

@ -1 +1 @@
__version__ = "0.49.2-dev" __version__ = "0.50.1-dev"

View file

@ -16,7 +16,7 @@ cog.out(text)
# Release history # Release history
### main branch ### Aider v0.50.0
- Infinite output for DeepSeek Coder, Mistral models in addition to Anthropic's models. - Infinite output for DeepSeek Coder, Mistral models in addition to Anthropic's models.
- New `--deepseek` switch to use DeepSeek Coder. - New `--deepseek` switch to use DeepSeek Coder.
@ -29,7 +29,7 @@ cog.out(text)
- Switched from `setup.py` to `pyproject.toml`, by @branchvincent. - Switched from `setup.py` to `pyproject.toml`, by @branchvincent.
- Bug fix to persist files added during `/ask`. - Bug fix to persist files added during `/ask`.
- Bug fix for chat history size in `/tokens`. - Bug fix for chat history size in `/tokens`.
- Aider wrote 66% of the code in this release.
### Aider v0.49.1 ### Aider v0.49.1

File diff suppressed because it is too large Load diff

View file

@ -2,6 +2,7 @@
import argparse import argparse
import subprocess import subprocess
import sys
from collections import defaultdict from collections import defaultdict
from datetime import datetime from datetime import datetime
from operator import itemgetter from operator import itemgetter
@ -17,10 +18,14 @@ def blame(start_tag, end_tag=None):
authors = get_commit_authors(commits) authors = get_commit_authors(commits)
pats = "*.py *.scm *.sh **Dockerfile **Gemfile .github/workflows/*.yml".split() revision = end_tag if end_tag else "HEAD"
files = [] files = run(["git", "ls-tree", "-r", "--name-only", revision]).strip().split("\n")
for pat in pats: files = [
files += run(["git", "ls-files", pat]).strip().split("\n") f
for f in files
if f.endswith((".py", ".scm", ".sh", "Dockerfile", "Gemfile"))
or (f.startswith(".github/workflows/") and f.endswith(".yml"))
]
all_file_counts = {} all_file_counts = {}
grand_total = defaultdict(int) grand_total = defaultdict(int)
@ -186,10 +191,14 @@ def get_counts_for_file(start_tag, end_tag, authors, fname):
line_counts[author] += 1 line_counts[author] += 1
return dict(line_counts) return dict(line_counts)
except subprocess.CalledProcessError: except subprocess.CalledProcessError as e:
# print(f"Warning: Unable to blame file {fname}. It may have been added after {start_tag} " if "no such path" in str(e).lower():
# f"or removed before {end_tag or 'HEAD'}.", file=sys.stderr) # File doesn't exist in this revision range, which is okay
return None return None
else:
# Some other error occurred
print(f"Warning: Unable to blame file {fname}. Error: {e}", file=sys.stderr)
return None
def get_all_tags_since(start_tag): def get_all_tags_since(start_tag):