目录
Dylan Conway

cmake: use buildkite-agent for artifact discovery (#27807)

What

Replace HTTP scraping of buildkite.com/.../builds/<N> JSON with buildkite-agent artifact search.

Why

All CI link steps are currently failing with:

CMake Error at cmake/tools/SetupBuildkite.cmake:78 (message):
  No jobs found: https://buildkite.com/bun/bun/builds/...

Buildkite stopped inlining the jobs array in the public build JSON — the response now has jobs: [] while statistics.jobs_count: 276. This applies retroactively (old build URLs show the same). The endpoint was undocumented and unversioned.

How

Step keys follow a fixed ${targetKey}-build-{cpp,zig,bun} pattern (see .buildkite/ci.mjs). The link step is -build-bun, so derive the two sibling step keys from $BUILDKITE_STEP_KEY and ask the agent directly:

buildkite-agent artifact search "*.a" --step <target>-build-cpp --format "%p\n" --allow-empty-results

This drops the JSON escape-sequence repair, the string(JSON) walk over 276 jobs, and the second per-job artifacts fetch. The download/gunzip add_custom_command blocks are unchanged.

Also drops the if(NOT BUILDKITE) local-download branch — it scraped the same dead endpoint.

1个月前14716次提交

Logo

Bun

stars Bun speed

Documentation   •   Discord   •   Issues   •   Roadmap

Read the docs →

What is Bun?

Bun is an all-in-one toolkit for JavaScript and TypeScript apps. It ships as a single executable called bun.

At its core is the Bun runtime, a fast JavaScript runtime designed as a drop-in replacement for Node.js. It’s written in Zig and powered by JavaScriptCore under the hood, dramatically reducing startup times and memory usage.

bun run index.tsx             # TS and JSX supported out-of-the-box

The bun command-line tool also implements a test runner, script runner, and Node.js-compatible package manager. Instead of 1,000 node_modules for development, you only need bun. Bun’s built-in tools are significantly faster than existing options and usable in existing Node.js projects with little to no changes.

bun test                      # run tests
bun run start                 # run the `start` script in `package.json`
bun install <pkg>             # install a package
bunx cowsay 'Hello, world!'   # execute a package

Install

Bun supports Linux (x64 & arm64), macOS (x64 & Apple Silicon) and Windows (x64 & arm64).

Linux users — Kernel version 5.6 or higher is strongly recommended, but the minimum is 5.1.

x64 users — if you see “illegal instruction” or similar errors, check our CPU requirements

# with install script (recommended)
curl -fsSL https://bun.com/install | bash

# on windows
powershell -c "irm bun.sh/install.ps1 | iex"

# with npm
npm install -g bun

# with Homebrew
brew tap oven-sh/bun
brew install bun

# with Docker
docker pull oven/bun
docker run --rm --init --ulimit memlock=-1:-1 oven/bun

Upgrade

To upgrade to the latest version of Bun, run:

bun upgrade

Bun automatically releases a canary build on every commit to main. To upgrade to the latest canary build, run:

bun upgrade --canary

View canary build

Guides

Contributing

Refer to the Project > Contributing guide to start contributing to Bun.

License

Refer to the Project > License page for information about Bun’s licensing.

邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802032778号