Skip to content

Commit f0c9229

Browse files
authored
Try codeflash (#404)
1 parent 6044d99 commit f0c9229

File tree

3 files changed

+63
-3
lines changed

3 files changed

+63
-3
lines changed
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Codeflash
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- renovate/**
8+
pull_request:
9+
workflow_dispatch:
10+
11+
jobs:
12+
optimize:
13+
name: Optimize new code in this PR
14+
runs-on: ubuntu-latest
15+
env:
16+
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
17+
CODEFLASH_PR_NUMBER: ${{ github.event.number }}
18+
steps:
19+
- name: Check if PR is from Codeflash bot
20+
id: bot_check
21+
run: |-
22+
echo "Checking if this PR is created by Codeflash bot..."
23+
if [ "${{ github.event.pull_request.user.login }}" == "codeflash-ai[bot]" ]; then
24+
echo "PR created by Codeflash bot. Skipping optimization."
25+
echo "skip_remaining_steps=yes" >> $GITHUB_OUTPUT
26+
else
27+
echo "skip_remaining_steps=no" >> $GITHUB_OUTPUT
28+
echo "It's not. Proceeding with the optimization."
29+
fi
30+
31+
- uses: actions/checkout@v4
32+
if: steps.bot_check.outputs.skip_remaining_steps == 'no'
33+
with:
34+
fetch-depth: 0
35+
token: ${{ secrets.GITHUB_TOKEN }}
36+
37+
- name: Set up Python
38+
if: steps.bot_check.outputs.skip_remaining_steps == 'no'
39+
uses: actions/setup-python@v5
40+
with:
41+
cache-dependency-path: pyproject.toml
42+
cache: pip
43+
python-version: 3.12
44+
45+
- name: Install Project Dependencies
46+
if: steps.bot_check.outputs.skip_remaining_steps == 'no'
47+
run: >-
48+
python -m pip install -e .; python -m pip install codeflash
49+
50+
- name: Run Codeflash to optimize code
51+
if: steps.bot_check.outputs.skip_remaining_steps == 'no'
52+
id: optimize_code
53+
run: codeflash

paper/paper.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,9 @@ wavelets are built upon the eigenfunctions of the Slepian concentration problem
4848
of the manifold [@Slepian1961; @Landau1961; @Landau1962]: a set of bandlimited
4949
functions that are maximally concentrated within a given region. Wavelets are
5050
constructed through a tiling of the Slepian harmonic line by leveraging the
51-
existing scale-discretised framework [@Wiaux2008; @Leistedt2013]. Whilst these wavelets
52-
were inspired by spherical datasets, like in cosmology, the wavelet construction
53-
may be utilised for manifold or graph data.
51+
existing scale-discretised framework [@Wiaux2008; @Leistedt2013]. Whilst these
52+
wavelets were inspired by spherical datasets, like in cosmology, the wavelet
53+
construction may be utilised for manifold or graph data.
5454

5555
To the author's knowledge, there is no public software that allows one to
5656
compute Slepian wavelets (or a similar approach) on the sphere or general

pyproject.toml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,13 @@ ignore = [
9898
"src/sleplet/_version.py",
9999
]
100100

101+
[tool.codeflash]
102+
ignore-paths = []
103+
# All paths are relative to this pyproject.toml's directory.
104+
module-root = "src"
105+
test-framework = "pytest"
106+
tests-root = "tests"
107+
101108
[tool.coverage]
102109
report = {skip_covered = true, sort = "cover"}
103110
run = {branch = true, parallel = true, source = [

0 commit comments

Comments
 (0)