Users of yt-dlp who rely on Bun as an ejs-compatible JavaScript runtime face an upcoming change: yt-dlp is limiting and deprecating its support for Bun. This move, officially announced via GitHub issue #16766, means only Bun versions 1.2.11 through 1.3.14 will be supported in the near future, with full deprecation expected to follow.

This decision impacts anyone using yt-dlp with Bun outside this specific version range, especially those on newer Bun releases.

What Happened

On May 21, 2026, the yt-dlp project officially announced a significant shift in its support for the Bun JavaScript runtime. The project stated that due to “foreseeable compatibility and security issues,” Bun support as an ejs-compatible runtime would be both limited and deprecated.

Specifically, as of the “next yt-dlp and/or ejs release,” support will be restricted to Bun versions 1.2.11 through 1.3.14. This creates a narrow, temporary window of compatibility before complete deprecation.

Reasons for Deprecation

The yt-dlp team cited “foreseeable compatibility and security issues” as the core reasons for this decision. While the official announcement on GitHub did not elaborate on specific technical details, the rationale points to concerns about the long-term stability and safety of integrating Bun into yt-dlp’s ejs-compatible layer.

Community discussions on platforms like Hacker News and Reddit suggest that these concerns might stem from the rapid development pace of Bun, its underlying implementation details, or potential challenges in maintaining consistent behavior across various Bun versions for yt-dlp’s specific use cases. The project’s focus is on ensuring a reliable and secure experience for its users.

Affected Bun Versions

The deprecation primarily affects users running Bun versions outside the 1.2.11 to 1.3.14 range. While this specific range initially retains limited support, the overarching plan is for complete deprecation across all Bun versions. Therefore, any Bun version, whether older than 1.2.11, newer than 1.3.14, or even within the temporarily supported window, will eventually cease to be supported as an ejs-compatible runtime by yt-dlp.

Impact on Users

For yt-dlp users who currently rely on Bun as their ejs-compatible JavaScript runtime, this change requires immediate attention.

  • Current Bun users: If your Bun version falls outside the 1.2.11 to 1.3.14 range, yt-dlp’s functionality that depends on ejs might break or become unstable after the next yt-dlp update.
  • Future compatibility: Even users within the 1.2.11-1.3.14 range should plan to migrate, as Bun support is being deprecated entirely. This range is a temporary measure.
  • Recommended alternatives: yt-dlp has historically recommended other JavaScript runtimes like Deno or QuickJS for ejs compatibility. Users should consider switching to these alternatives to avoid future disruptions.

This move underscores the importance of monitoring dependencies, especially for projects integrating rapidly evolving runtimes.

What To Watch Next

  • Official yt-dlp and ejs releases: Keep a close eye on the yt-dlp GitHub repository and release notes for the specific update that implements these Bun limitations and initiates the deprecation process. This release will provide crucial details on the exact timing and any immediate breaking changes.
  • Migration to alternative runtimes: Begin exploring and transitioning to recommended ejs-compatible runtimes such as Deno or QuickJS. Familiarize yourself with their integration methods within yt-dlp. Look for official migration guides from yt-dlp or community-contributed best practices to ensure a smooth transition.
  • Test your setup: Before updating yt-dlp, especially if you rely on Bun, test your yt-dlp functionality with alternative runtimes in a development environment. This proactive step will help identify and resolve potential issues early.
  • Stay informed: Follow yt-dlp’s official communication channels (GitHub, social media) for any further announcements regarding Bun support or new recommended alternatives.

By taking these proactive steps, users can ensure continued seamless operation of yt-dlp and mitigate any disruptions caused by the evolving Bun support policy.

References