Skip to content

Commit 5d5eb2a

Browse files
authored
Merge pull request #452 from symflower/448-rust
Rust support
2 parents 2b9f0cd + 05c092e commit 5d5eb2a

File tree

53 files changed

+1824
-517
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+1824
-517
lines changed

.github/workflows/job-test.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,17 @@ jobs:
3939
with:
4040
ruby-version: "3.4.3"
4141

42+
43+
- name: Set up Rust
44+
uses: dtolnay/rust-toolchain@stable
45+
with:
46+
toolchain: "1.86.0"
47+
components: llvm-tools-preview
48+
49+
- name: Install Rust crates
50+
run: cargo install cargo-llvm-cov
51+
shell: bash
52+
4253
- name: Set up Git
4354
run: |
4455
git config --global user.name "GitHub Actions Bot"

Dockerfile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ RUN apt-get update && \
1414
apt-get install -y \
1515
--no-install-recommends \
1616
ca-certificates \
17+
curl \
1718
gcc \
1819
git \
1920
imagemagick \
@@ -97,6 +98,15 @@ ENV PATH="${PATH}:/app/.eval-dev-quality/go/bin"
9798
ENV GOROOT="/app/.eval-dev-quality/go"
9899
ENV PATH="${PATH}:/home/ubuntu/go/bin"
99100

101+
# Install Rust
102+
ENV RUSTUP_HOME="/app/.eval-dev-quality/rustup"
103+
ENV CARGO_HOME="/app/.eval-dev-quality/cargo"
104+
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --no-modify-path && \
105+
/app/.eval-dev-quality/cargo/bin/rustup install 1.86.0 && \
106+
/app/.eval-dev-quality/cargo/bin/rustup component add llvm-tools-preview && \
107+
/app/.eval-dev-quality/cargo/bin/cargo install cargo-llvm-cov
108+
ENV PATH="${PATH}:/app/.eval-dev-quality/cargo/bin"
109+
100110
# Setup NPM global store in User space and install NPM packages.
101111
ENV NPM_CONFIG_PREFIX=/home/ubuntu/.npm-global
102112
ENV PATH="${PATH}:/home/ubuntu/.npm-global/bin"

cmd/eval-dev-quality/cmd/evaluate.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import (
2727
_ "github.com/symflower/eval-dev-quality/language/golang" // Register language.
2828
_ "github.com/symflower/eval-dev-quality/language/java" // Register language.
2929
_ "github.com/symflower/eval-dev-quality/language/ruby" // Register language.
30+
_ "github.com/symflower/eval-dev-quality/language/rust" // Register language.
3031
"github.com/symflower/eval-dev-quality/log"
3132
"github.com/symflower/eval-dev-quality/model"
3233
"github.com/symflower/eval-dev-quality/model/llm"

cmd/eval-dev-quality/cmd/evaluate_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1314,13 +1314,15 @@ func TestEvaluateInitialize(t *testing.T) {
13141314
"golang",
13151315
"java",
13161316
"ruby",
1317+
"rust",
13171318
}, command.Languages)
13181319
},
13191320
ValidateContext: func(t *testing.T, context *evaluate.Context) {
13201321
assert.Equal(t, []language.Language{
13211322
language.Languages["golang"],
13221323
language.Languages["java"],
13231324
language.Languages["ruby"],
1325+
language.Languages["rust"],
13241326
}, context.Languages)
13251327
},
13261328
})

0 commit comments

Comments
 (0)