Skip to content

Switch from Bun to Deno #386

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft
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
86 changes: 53 additions & 33 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,22 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- run: bun install
- run: bun run lint
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- run: deno run lint
end_to_end_tests_macos:
name: Run end to end tests (GitHub.com to GitHub.com on macOS)
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- run: bun install
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- name: Generate binary for macOS
run: bun run package:darwin-arm64
run: deno run package:darwin-arm64
- name: Create `output` directory
run: mkdir output
- name: Make macOS binary executable
Expand Down Expand Up @@ -56,10 +60,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- run: bun install
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- name: Generate binary for Linux
run: bun run package:linux-amd64
run: deno run package:linux-amd64
- name: Create `output` directory
run: mkdir output
- name: Make Linux binary executable
Expand Down Expand Up @@ -92,10 +98,12 @@ jobs:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- run: bun install
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- name: Generate binary for Windows
run: bun run package:windows-amd64
run: deno run package:windows-amd64
- name: Create `output` directory
run: mkdir output
- name: Export a project from GitHub.com
Expand Down Expand Up @@ -126,10 +134,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- run: bun install
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- name: Generate binary for Linux
run: bun run package:linux-amd64
run: deno run package:linux-amd64
- name: Create `output` directory
run: mkdir output
- name: Make Linux binary executable
Expand Down Expand Up @@ -162,10 +172,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- run: bun install
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- name: Generate binary for Linux
run: bun run package:linux-amd64
run: deno run package:linux-amd64
- name: Create `output` directory
run: mkdir output
- name: Make Linux binary executable
Expand Down Expand Up @@ -198,10 +210,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- run: bun install
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- name: Generate binary for Linux
run: bun run package:linux-amd64
run: deno run package:linux-amd64
- name: Create `output` directory
run: mkdir output
- name: Make Linux binary executable
Expand Down Expand Up @@ -234,10 +248,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- run: bun install
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- name: Generate binary for Linux
run: bun run package:linux-amd64
run: deno run package:linux-amd64
- name: Create `output` directory
run: mkdir output
- name: Make Linux binary executable
Expand Down Expand Up @@ -273,12 +289,14 @@ jobs:
uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: oven-sh/setup-bun@v2
- run: bun install
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- name: Generate binary for macOS ARM64
run: bun run package:darwin-arm64
run: deno run package:darwin-arm64
- name: Generate binary for macOS AMD64
run: bun run package:darwin-amd64
run: deno run package:darwin-amd64
- name: Upload macOS ARM64 binary as artifact
uses: actions/upload-artifact@v4
with:
Expand All @@ -297,14 +315,16 @@ jobs:
uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: oven-sh/setup-bun@v2
- run: bun install
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
- run: deno install
- name: Generate binary for Linux AMD64
run: bun run package:linux-amd64
run: deno run package:linux-amd64
- name: Generate binary for Linux ARM64
run: bun run package:linux-arm64
run: deno run package:linux-arm64
- name: Generate binary for Windows AMD64
run: bun run package:windows-amd64
run: deno run package:windows-amd64
- name: Upload Linux AMD64 binary as artifact
uses: actions/upload-artifact@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion .tool-versions
Original file line number Diff line number Diff line change
@@ -1 +1 @@
bun 1.2.0
deno 2.1.7
5 changes: 5 additions & 0 deletions deno.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"imports": {
"@std/semver": "jsr:@std/semver@^1.0.3"
}
}
Loading
Loading