Skip to content

Commit d1b9b12

Browse files
committed
Merge branch 'main' into herbie20-crash
2 parents 573ee01 + 621c69a commit d1b9b12

23 files changed

+208
-221
lines changed

.github/workflows/distribute.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
include:
1616
- os: macos-latest
1717
arch: aarch64
18-
- os: macos-13
18+
- os: macos-15-intel
1919
arch: x64
2020
- os: ubuntu-latest
2121
arch: x64
@@ -26,9 +26,9 @@ jobs:
2626

2727
steps:
2828
- name: "Install Racket"
29-
uses: Bogdanp/setup-racket@v1.11
29+
uses: Bogdanp/setup-racket@v1.14
3030
with:
31-
version: "8.14"
31+
version: "8.18"
3232
architecture: ${{ matrix.arch }}
3333
# WARN: need to be careful with cargo paths
3434
- name: Cache Racket dependencies
@@ -49,7 +49,7 @@ jobs:
4949
with:
5050
toolchain: stable
5151
components: rustfmt, clippy
52-
- uses: actions/checkout@master
52+
- uses: actions/checkout@v5
5353
- name: "Install dependencies"
5454
run: make install
5555
# Build executable and remove Herbie launcher

.github/workflows/plugins.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@ jobs:
1313
- name: "Install Packages"
1414
run: sudo apt-get install -y libmpfr6 libmpfr-dev
1515
- name: "Install Racket"
16-
uses: Bogdanp/setup-racket@v1.11
16+
uses: Bogdanp/setup-racket@v1.14
1717
with:
18-
version: "8.14"
18+
version: "8.18"
1919
- name: Install Rust compiler
2020
uses: dtolnay/rust-toolchain@stable
2121
with:
2222
toolchain: stable
2323
components: rustfmt, clippy
24-
- uses: actions/checkout@master
24+
- uses: actions/checkout@v5
2525
- name: "Install dependencies"
2626
run: make install
2727
- name: "Install SoftPosit support"

.github/workflows/release.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,19 +20,19 @@ jobs:
2020
- os: macos-latest
2121
os-name: macOS-m1
2222
arch: arm64
23-
- os: macos-13
23+
- os: macos-15-intel
2424
os-name: macOS
2525
arch: x64
2626

2727
runs-on: ${{ matrix.os }}
2828

2929
steps:
30-
- uses: actions/checkout@v4
30+
- uses: actions/checkout@v5
3131

3232
- name: Install Racket
33-
uses: Bogdanp/setup-racket@v1.11
33+
uses: Bogdanp/setup-racket@v1.14
3434
with:
35-
version: 8.11
35+
version: 8.18
3636
architecture: ${{ matrix.arch }}
3737

3838
- name: Install Rust compiler
@@ -79,7 +79,7 @@ jobs:
7979
merge-multiple: true
8080

8181
- name: Create Release
82-
uses: ncipollo/release-action@v1
82+
uses: ncipollo/release-action@v1.20.0
8383
with:
8484
tag: ${{ github.ref }}
8585
name: ${{ github.ref }}

.github/workflows/resyntax-autofixer.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@ jobs:
1717
- name: "Install Packages"
1818
run: sudo apt-get install -y libmpfr6 libmpfr-dev
1919
- name: "Install Racket"
20-
uses: Bogdanp/setup-racket@v1.11
20+
uses: Bogdanp/setup-racket@v1.14
2121
with:
2222
version: current
2323
- name: Install Rust compiler
2424
uses: dtolnay/rust-toolchain@stable
2525
with:
2626
toolchain: stable
2727
components: rustfmt, clippy
28-
- uses: actions/checkout@master
28+
- uses: actions/checkout@v5
2929
- name: "Install dependencies"
3030
run: make install
3131
- name: Create a Resyntax pull request

.github/workflows/tests.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,21 @@ jobs:
1111
runs-on: ubuntu-latest
1212
strategy:
1313
matrix:
14-
racket-version: [ '8.7', '8.14' ]
14+
racket-version: [ '8.7', '8.18' ]
1515
precision: [ 'binary32', 'binary64' ]
1616
steps:
1717
- name: "Install Packages"
1818
run: sudo apt-get install -y libmpfr6 libmpfr-dev
1919
- name: "Install Racket"
20-
uses: Bogdanp/setup-racket@v1.11
20+
uses: Bogdanp/setup-racket@v1.14
2121
with:
2222
version: ${{ matrix.racket-version }}
2323
- name: Install Rust compiler
2424
uses: dtolnay/rust-toolchain@stable
2525
with:
2626
toolchain: stable
2727
components: rustfmt, clippy
28-
- uses: actions/checkout@master
28+
- uses: actions/checkout@v5
2929
- name: "Install dependencies"
3030
run: make install
3131
- run: racket -y infra/ci.rkt --precision ${{ matrix.precision }} --seed 0 bench/hamming/

.github/workflows/unit-test.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@ jobs:
1313
- name: "Install Packages"
1414
run: sudo apt-get install -y libmpfr6 libmpfr-dev
1515
- name: "Install Racket"
16-
uses: Bogdanp/setup-racket@v1.11
16+
uses: Bogdanp/setup-racket@v1.14
1717
with:
18-
version: "8.14"
18+
version: "8.18"
1919
- name: Install Rust compiler
2020
uses: dtolnay/rust-toolchain@stable
2121
with:
2222
toolchain: stable
2323
components: rustfmt, clippy
24-
- uses: actions/checkout@master
24+
- uses: actions/checkout@v5
2525
- name: "Install dependencies"
2626
run: make install
2727
# SoftPosit is required to test the softposit platform we use for testing
@@ -68,7 +68,7 @@ jobs:
6868
- run: cd egg-herbie && raco test ./
6969

7070
# Test the API
71-
- uses: actions/setup-node@v4
71+
- uses: actions/setup-node@v6
7272
with:
7373
node-version: 20
7474
- name: "Test the endpoint"

AGENTS.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@
88
- Run `racket src/main.rkt report bench/tutorial.fpcore tmp` to test
99
that your changes work; this should take about 5-10 seconds and all
1010
of the tests should pass, getting basically perfect accuracy.
11+
- After running tests, you should be able to look into `tmp`, and see
12+
one directory per benchmark. Each directory has a `graph.html` with
13+
more detail on what happened, including tracebacks for crashes.
14+
- Herbie prints a seed every time it runs; you can pass --seed N after
15+
the "report" argument to fix a seed. That should be perfectly
16+
reproducible.
1117
- You can also run the unit tests with `raco test <file>`, when unit
1218
tests exist. Often they don't.
1319

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ FROM rust:1.88.0 AS egg-herbie-builder
88
WORKDIR /herbie
99
COPY egg-herbie egg-herbie
1010
RUN cargo build --release --manifest-path=egg-herbie/Cargo.toml
11-
RUN cargo install --locked --git https://github.com/egraphs-good/egglog.git --rev 052a330de22d40e9eded19e7f0891c921f7f458c
11+
RUN cargo install egglog --version 1.0.0
1212

1313
# Production image
1414
FROM racket/racket:8.17-full AS production

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ egg-herbie:
2929
raco pkg install ./egg-herbie
3030

3131
egglog-herbie:
32-
cargo install --locked --git https://github.com/egraphs-good/egglog.git --rev 052a330de22d40e9eded19e7f0891c921f7f458c
32+
cargo install egglog --version 1.0.0
3333

3434

3535
distribution: minimal-distribution
@@ -45,7 +45,7 @@ minimal-distribution:
4545
[ ! -f herbie.app ] || (raco distribute herbie-compiled herbie.app && rm herbie.app)
4646
[ ! -f herbie ] || (raco distribute herbie-compiled herbie && rm herbie)
4747

48-
nightly: install
48+
nightly:
4949
bash infra/nightly.sh bench/ reports/ --threads 4
5050

5151
upgrade:

infra/nightly.sh

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@
44
set -e -x
55

66
# Ensure egglog is in the path
7-
export PATH="$PATH:$HOME/.cargo/bin/"
7+
export PATH="$HOME/.cargo/bin/:$PATH"
8+
rustup update
9+
10+
make install
811

912
# Seed is fixed for the whole day; this way two branches run the same seed
1013
SEED=$(date "+%Y%j")

0 commit comments

Comments
 (0)