Commit graph

3031 commits

Author SHA1 Message Date
Paul Gauthier
b579c9e4d4 updated numpy & scipy versions #300 2023-10-30 19:01:02 -07:00
Paul Gauthier
2bfc212f31 added aider-square.jpg 2023-10-30 16:04:36 -07:00
Paul Gauthier
e93a154e88 install using python 3.9-3.11 2023-10-30 11:20:55 -07:00
Paul Gauthier
3eaa9671be Just test building the docker image 2023-10-30 09:15:16 -07:00
Paul Gauthier
0beba57a98 aider: Added a new workflow that builds the Docker image and runs tests inside it.
# Aider chat conversation:

USER: add a new workflow that will build the docker image and make sure the tests succeed inside it

ASSISTANT: To add a new workflow that builds the Docker image and runs tests inside it, we need to create a new GitHub Actions workflow file. Let's call it `docker-build-and-test.yml` and place it in the `.github/workflows/` directory.

Here is the *SEARCH/REPLACE block* for the new file:

```yaml
.github/workflows/docker-build-and-test.yml
<<<<<<< SEARCH

=======
name: Docker Build and Test

on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
    - name: Check out repository
      uses: actions/checkout@v3

    - name: Build Docker image
      run: |
        docker build -t myapp:latest .

    - name: Run tests in Docker container
      run: |
        docker run myapp:latest python -m unittest discover -s tests
>>>>>>> REPLACE
```

This workflow will trigger on every push and pull request to the `main` branch. It will build a Docker image from the Dockerfile in the root directory of the repository and then run the tests inside a container from that image.
2023-10-30 09:08:40 -07:00
Paul Gauthier
7aa59c1331 added build-essential to dockerfile 2023-10-30 09:05:22 -07:00
Paul Gauthier
4f5818c9a7 added pypi classifiers 2023-10-30 09:01:00 -07:00
paul-gauthier
423ba83a85
Merge pull request #298 from jackhallam/licence
Add license classifier to setup.py
2023-10-30 08:57:48 -07:00
Paul Gauthier
64e8b3d3a7 aider: Updated python_requires field to limit the package to Python versions 3.9-3.11.
# Aider chat conversation:

USER: how can i limit this package to python python versions 3.9-3.11 ?

ASSISTANT: To limit the package to Python versions 3.9 to 3.11, you need to modify the `python_requires` field in the `setup` function in the `setup.py` file.

Here is the *SEARCH/REPLACE block* for the change:

```python
setup.py
<<<<<<< SEARCH
    python_requires=">=3.9",
=======
    python_requires=">=3.9,<=3.11",
>>>>>>> REPLACE
```

This change will ensure that the package can only be installed on Python versions from 3.9 up to and including 3.11.
2023-10-30 08:52:25 -07:00
Jack Hallam
3e310ffc99 Add license classifier to setup.py 2023-10-30 11:12:21 +00:00
Paul Gauthier
3c1023b798 updated install instructions 2023-10-29 13:29:28 -07:00
Paul Gauthier
f4b59c923d set version to 0.16.1-dev 2023-10-29 13:24:51 -07:00
Paul Gauthier
92ea4c09a3 version bump to 0.16.0 2023-10-29 13:24:22 -07:00
Paul Gauthier
77e4f0dd3c Merge remote-tracking branch 'origin/main' 2023-10-29 13:10:57 -07:00
Paul Gauthier
0030615578 removed universal-ctags from docker image 2023-10-29 13:10:31 -07:00
Paul Gauthier
58d5c1e59b Updated HISTORY 2023-10-29 13:10:06 -07:00
paul-gauthier
41435228a3
Update test_commands.py 2023-10-25 16:00:20 -07:00
Paul Gauthier
b6142af12b make sure **.txt does not crash chat #293 2023-10-25 15:52:26 -07:00
Paul Gauthier
95f2b4546e fixed tests 2023-10-25 15:31:23 -07:00
Paul Gauthier
277a92b3c6 fixed tests 2023-10-25 15:30:33 -07:00
Paul Gauthier
15d3a5d581 Switch from "edit block" to "search/replace block"
Succeeded in tricky task in the grep-ast codebase:
- checkout ed714ffe58734 / tricky-search-and-replace-state
- "read and parse .gitignore once, not each time we recurse `enumerate_files`"
- was having a lot of trouble creating a head/updated block that matched the actual source code
- new search/replace block does much better

Benchmark had *best* try 1 result and *lowest* num_error_outputs ever seen on gpt-4-0613.
Low num_error_outputs means it's less likely to elide/... code in the before block (original/search).

──────────── tmp.benchmarks/2023-10-25-22-03-19--search-and-replace-and-think ─────────────
test-cases: 133
model: gpt-4
edit_format: diff
commit_hash: c9c2ddb
num_error_outputs: 6
num_user_asks: 0
num_exhausted_context_windows 0
test_timeouts: 2

50.4% correct after try 0
66.2% correct after try 1
2023-10-25 15:24:03 -07:00
Paul Gauthier
aa18d0f946 copy 2023-10-23 15:58:50 -07:00
Paul Gauthier
a12fdbcba7 grep-ast==0.2.0 2023-10-23 15:52:48 -07:00
Paul Gauthier
19f3136bfa copy 2023-10-23 08:45:27 -07:00
Paul Gauthier
c17ec92d9a copy 2023-10-22 15:09:34 -07:00
Paul Gauthier
5edf20915f updated sample map 2023-10-22 15:06:35 -07:00
Paul Gauthier
d953742696 Merge remote-tracking branch 'origin/main' 2023-10-22 11:57:43 -07:00
Paul Gauthier
b0c6e4c114 Updated HISTORY 2023-10-22 11:56:23 -07:00
Paul Gauthier
3299d90317 Handle successive editblocks from same file w/o filename #267 2023-10-22 11:28:22 -07:00
Paul Gauthier
ebbb5bd442 simplify 2023-10-22 11:26:37 -07:00
Paul Gauthier
33cf55e5ae aider: Add build-essential package to Dockerfile.
# Aider chat conversation:

ASSISTANT: To install the core tools needed to build Python wheels, we need to modify the Dockerfile. We will add a new line to install the build-essential package, which includes gcc and other necessary tools.

Here is the edit block for the Dockerfile:

```Dockerfile
benchmark/Dockerfile
<<<<<<< HEAD
FROM python:3.10-slim
RUN apt-get update && apt-get install -y less git
COPY requirements.txt /aider/requirements.txt
RUN pip install --upgrade pip
RUN pip install lox typer pandas matplotlib imgcat aider-chat
RUN pip install -r /aider/requirements.txt
RUN git config --global --add safe.directory /aider
WORKDIR /aider
=======
FROM python:3.10-slim
RUN apt-get update && apt-get install -y less git build-essential
COPY requirements.txt /aider/requirements.txt
RUN pip install --upgrade pip
RUN pip install lox typer pandas matplotlib imgcat aider-chat
RUN pip install -r /aider/requirements.txt
RUN git config --global --add safe.directory /aider
WORKDIR /aider
>>>>>>> updated
```

This change will install the build-essential package after updating the package lists for upgrades and new packages.
2023-10-22 11:22:18 -07:00
Paul Gauthier
98a6d383ab Updated Dockerfile to upgrade pip before installing dependencies. 2023-10-22 11:22:17 -07:00
Paul Gauthier
7871186e0f Stronger prompt to include file path 2023-10-22 11:18:41 -07:00
paul-gauthier
5b1e360223
Update repomap.md 2023-10-20 19:58:23 -07:00
paul-gauthier
1a690c731e
Update repomap.md 2023-10-20 19:55:58 -07:00
paul-gauthier
c005e6692d
Update repomap.md 2023-10-20 19:50:14 -07:00
paul-gauthier
b28c415473
Update repomap.md 2023-10-20 19:44:54 -07:00
paul-gauthier
0e4555203d
Update repomap.md 2023-10-20 19:35:53 -07:00
paul-gauthier
d038c150ad
Update repomap.md 2023-10-20 18:38:24 -07:00
Paul Gauthier
e75d9f2fc4 new thumbnail 2023-10-20 14:09:41 -07:00
Paul Gauthier
a5bdf2b7ad copy 2023-10-20 13:47:02 -07:00
Paul Gauthier
06e6bf95e0 copy 2023-10-20 13:45:08 -07:00
Paul Gauthier
51c8bf0614 copy 2023-10-20 11:45:48 -07:00
Paul Gauthier
fed7e9b408 copy 2023-10-20 10:15:35 -07:00
Paul Gauthier
458f1fb872 aider: Turned all the links in the credits list into actual links.
# Aider chat conversation:

ASSISTANT: To turn all the links in the credits list into actual links, we need to modify the `docs/repomap.md` file.

Here's the step-by-step process:

1. Identify the lines that contain the URLs.
2. Add Markdown syntax to turn the URLs into clickable links.

Here are the changes:

<source>markdown
docs/repomap.md
<<<<<<< HEAD
* https://github.com/tree-sitter/tree-sitter-c — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-c-sharp — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-cpp — licensed under the MIT License.
* https://github.com/Wilfred/tree-sitter-elisp — licensed under the MIT License.
* https://github.com/elixir-lang/tree-sitter-elixir — licensed under the Apache License, Version 2.0.
* https://github.com/elm-tooling/tree-sitter-elm — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-go — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-java — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-javascript — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-ocaml — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-php — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-python — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-ql — licensed under the MIT License.
* https://github.com/r-lib/tree-sitter-r — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-ruby — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-rust — licensed under the MIT License.
* https://github.com/tree-sitter/tree-sitter-typescript — licensed under the MIT License.
=======
* [https://github.com/tree-sitter/tree-sitter-c](https://github.com/tree-sitter/tree-sitter-c) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-c-sharp](https://github.com/tree-sitter/tree-sitter-c-sharp) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-cpp](https://github.com/tree-sitter/tree-sitter-cpp) — licensed under the MIT License.
* [https://github.com/Wilfred/tree-sitter-elisp](https://github.com/Wilfred/tree-sitter-elisp) — licensed under the MIT License.
* [https://github.com/elixir-lang/tree-sitter-elixir](https://github.com/elixir-lang/tree-sitter-elixir) — licensed under the Apache License, Version 2.0.
* [https://github.com/elm-tooling/tree-sitter-elm](https://github.com/elm-tooling/tree-sitter-elm) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-go](https://github.com/tree-sitter/tree-sitter-go) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-java](https://github.com/tree-sitter/tree-sitter-java) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-javascript](https://github.com/tree-sitter/tree-sitter-javascript) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-ocaml](https://github.com/tree-sitter/tree-sitter-ocaml) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-php](https://github.com/tree-sitter/tree-sitter-php) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-python](https://github.com/tree-sitter/tree-sitter-python) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-ql](https://github.com/tree-sitter/tree-sitter-ql) — licensed under the MIT License.
* [https://github.com/r-lib/tree-sitter-r](https://github.com/r-lib/tree-sitter-r) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-ruby](https://github.com/tree-sitter/tree-sitter-ruby) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-rust](https://github.com/tree-sitter/tree-sitter-rust) — licensed under the MIT License.
* [https://github.com/tree-sitter/tree-sitter-typescript](https://github.com/tree-sitter/tree-sitter-typescript) — licensed under the MIT License.
>>>>>>> updated
</source>
2023-10-20 10:13:24 -07:00
Paul Gauthier
3a8e9a0ce5 Build the repository map automatically using tree-sitter to extract symbol definitions from source files. 2023-10-20 10:13:23 -07:00
Paul Gauthier
561f433733 copy 2023-10-20 10:09:26 -07:00
Paul Gauthier
815fdaabc3 Merge branch 'sitter-map' 2023-10-20 09:57:45 -07:00
Paul Gauthier
4fcf005481 set version to 0.15.1-dev 2023-10-20 09:55:47 -07:00
Paul Gauthier
3b7f2ad1e6 version bump to 0.15.0 2023-10-20 09:55:13 -07:00