Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 6 additions & 8 deletions .github/workflows/coverall.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,15 @@ jobs:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6

- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20.x
- name: Set up Bun
uses: oven-sh/setup-bun@v2
- name: Install dependencies
run: npm ci
run: bun install --frozen-lockfile
- name: Build grammar
run: npm run grammar
run: bun run grammar
- name: run coverage
run: npm run coverage
run: bun run coverage
- name: Coveralls
uses: coverallsapp/github-action@v2
24 changes: 9 additions & 15 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,24 +12,18 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 5

strategy:
matrix:
node-version: [20.x]

steps:
- name: "Checkout current repository"
uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
uses: actions/checkout@v6
- name: Set up Bun
uses: oven-sh/setup-bun@v2
- name: Set up Biome
uses: biomejs/setup-biome@v2
- name: Install dependencies
run: npm ci
- name: Build grammar
run: npm run grammar
run: bun install --frozen-lockfile
- name: Ensure build ok
run: npm run build
run: bun run build
- name: Generate definitions
run: npm run definitions
run: bun run definitions
- name: Run all tests
run: npm test
run: bun run test
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,26 @@ const env1 = new Environment(proxy1, { lib });
const env2 = new Environment(proxy2, { lib });
```

## Development

Building and testing `lambdascript` requires a system installation of
[`bun`](https://bun.com). Bun is deliberately not included in the project's
dependencies.

```sh
bun install --frozen-lockfile
bun run grammar
bun run test
bun run build
bun run definitions
```

[`biome`](https://biomejs.dev) is also deliberately not included as a project
dependency. Install it as a system binary if you want to run `bun run format`
or `bun run check`. The standard `bun run build` script formats the source
before bundling, so it also expects `biome` to be available on `PATH`; direct
use of `bun build` does not require Biome.

# Design & Philosophy

We aim for ease of use, correction and security, so chasing down any bug is
Expand Down
11 changes: 6 additions & 5 deletions biome.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
{
"$schema": "https://biomejs.dev/schemas/1.8.3/schema.json",
"organizeImports": {
"enabled": true
"$schema": "https://biomejs.dev/schemas/2.5.3/schema.json",
"assist": { "actions": { "source": { "organizeImports": "on" } } },
"files": {
"includes": ["**", "!src/parser/λs.js", "!src/parser/λs.terms.js"]
},
"formatter": {
"indentStyle": "space",
Expand All @@ -15,7 +16,7 @@
"linter": {
"enabled": true,
"rules": {
"recommended": true
"preset": "recommended"
}
}
}
}
31 changes: 31 additions & 0 deletions bun.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading