Skip to content

fix(package.json): add 'bun' package.json 'exports' condition#5754

Merged
jasonsaayman merged 2 commits intoaxios:v1.xfrom
Jarred-Sumner:jarred/add-bun-export-condition
Nov 11, 2025
Merged

fix(package.json): add 'bun' package.json 'exports' condition#5754
jasonsaayman merged 2 commits intoaxios:v1.xfrom
Jarred-Sumner:jarred/add-bun-export-condition

Conversation

@Jarred-Sumner
Copy link
Contributor

This adds a "bun" package.json exports condition which loads the same build of axios as in Node. Bun currently loads both the "browser" condition and the "default" condition, which means that in this case, the "browser" condition is chosen first. That causes issues in packages which expect the "http" adapter, such as resend.

We've had a few issues where axios would load the browser version in Bun and we will fix that in the module resolver on Bun's end to only choose "browser" when no other matches are found, but it's separately a little bit more direct to explicitly add a "bun" export condition here.

Fixes oven-sh/bun#3371

If you'd like, I can go ahead and add Bun to the CI to make sure it works, but that's a larger change than what this PR does so I'll avoid doing that unless asked.

…he Node.js build in Bun instead of the browser build
@huntie
Copy link

huntie commented Jun 26, 2023

Hey Jarred, we're just following up this case for React Native (facebook/react-native#38025) — which doesn't resolve "node" but also doesn't resolve "browser" unless targeting web.

I reckon a good solution to this problem is for Axios to invert its conditional export setup to match "node", and ship the browser-compatible export as "default". This matches as wide a set of environments as possible:

  • "node" means all JS environments with the additional APIs provided by Node.js (e.g. Bun).
  • "default" means other, generally browser-like, JS environments (e.g. React Native/Hermes) where utils need to be included as there's no Node standard library.
  "exports": {
    ".": {
      "types": {
        "require": "./index.d.cts",
        "default": "./index.d.ts"
      },
      "node": {
        "require": "./dist/node/axios.cjs",
        "default": "./index.js"
      },
      "default": {
        "require": "./dist/browser/axios.cjs",
        "default": "./index.js"
      }
    },
    ...
  },

Bun also resolves the "node" condition — at higher priority than "browser", so this would be mutually beneficial, and simpler overall.

image

https://bun.sh/docs/runtime/modules#resolution

@kachar
Copy link

kachar commented Oct 8, 2023

Bump on this. Looks like axios still cannot be used with bun because of the following error:

Adapter http is not available in the build

oven-sh/bun#3371

@jasonsaayman jasonsaayman self-assigned this Dec 21, 2024
@jasonsaayman jasonsaayman self-requested a review December 21, 2024 15:55
@jasonsaayman jasonsaayman added this to the v1.8.0 milestone Dec 21, 2024
@jasonsaayman jasonsaayman removed their assignment Dec 21, 2024
@jasonsaayman jasonsaayman modified the milestones: v1.8.0, v1.9.0 Feb 21, 2025
@jasonsaayman jasonsaayman removed this from the v1.9.0 milestone Apr 25, 2025
This was referenced Feb 9, 2026
sgmakgg added a commit to boringstudio-org/mcp-gitea that referenced this pull request Mar 13, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [axios](https://axios-http.com) ([source](https://github.com/axios/axios)) | dependencies | patch | [`1.13.2` → `1.13.4`](https://renovatebot.com/diffs/npm/axios/1.13.2/1.13.4) |

---

### Release Notes

<details>
<summary>axios/axios (axios)</summary>

### [`v1.13.4`](https://github.com/axios/axios/releases/tag/v1.13.4)

[Compare Source](axios/axios@v1.13.3...v1.13.4)

#### Overview

The release addresses issues discovered in v1.13.3 and includes significant CI/CD improvements.

**Full Changelog**: [v1.13.3...v1.13.4](axios/axios@v1.13.3...v1.13.4)

#### What's New in v1.13.4

##### Bug Fixes

- **fix: issues with version 1.13.3** ([#&#8203;7352](axios/axios#7352)) ([ee90dfc](axios/axios@ee90dfc))
  - Fixed issues discovered in v1.13.3 release
  - Cleaned up interceptor test files
  - Improved workflow configurations

##### Infrastructure & CI/CD

- **refactor: ci and build** ([#&#8203;7340](axios/axios#7340)) ([8ff6c19](axios/axios@8ff6c19))
  - Major refactoring of CI/CD workflows
  - Consolidated workflow files for better maintainability
  - Added mise configuration for the development environment
  - Improved sponsor block update automation
  - Enhanced issue and PR templates
  - Added automatic release notes generation
  - Implemented workflow cancellation for concurrent runs

- **chore: codegen and some updates to workflows** ([76cf77b](axios/axios@76cf77b))
  - Code generation improvements
  - Workflow optimisations

#### Migration Notes

##### Breaking Changes

None in this release.

##### Deprecations

None in this release.

#### Contributors

Thank you to all contributors who made this release possible! Special thanks to:

- [jasonsaayman](https://github.com/jasonsaayman) - Release management and CI/CD improvements

### [`v1.13.3`](https://github.com/axios/axios/blob/HEAD/CHANGELOG.md#1133-2026-01-20)

[Compare Source](axios/axios@v1.13.2...v1.13.3)

##### Bug Fixes

- **http2:** Use port 443 for HTTPS connections by default. ([#&#8203;7256](axios/axios#7256)) ([d7e6065](axios/axios@d7e6065))
- **interceptor:** handle the error in the same interceptor ([#&#8203;6269](axios/axios#6269)) ([5945e40](axios/axios@5945e40))
- main field in package.json should correspond to cjs artifacts ([#&#8203;5756](axios/axios#5756)) ([7373fbf](axios/axios@7373fbf))
- **package.json:** add 'bun' package.json 'exports' condition. Load the Node.js build in Bun instead of the browser build ([#&#8203;5754](axios/axios#5754)) ([b89217e](axios/axios@b89217e))
- silentJSONParsing=false should throw on invalid JSON ([#&#8203;7253](axios/axios#7253)) ([#&#8203;7257](axios/axios#7257)) ([7d19335](axios/axios@7d19335))
- turn AxiosError into a native error ([#&#8203;5394](axios/axios#5394)) ([#&#8203;5558](axios/axios#5558)) ([1c6a86d](axios/axios@1c6a86d))
- **types:** add handlers to AxiosInterceptorManager interface ([#&#8203;5551](axios/axios#5551)) ([8d1271b](axios/axios@8d1271b))
- **types:** restore AxiosError.cause type from unknown to Error ([#&#8203;7327](axios/axios#7327)) ([d8233d9](axios/axios@d8233d9))
- unclear error message is thrown when specifying an empty proxy authorization ([#&#8203;6314](axios/axios#6314)) ([6ef867e](axios/axios@6ef867e))

##### Features

- add `undefined` as a value in AxiosRequestConfig ([#&#8203;5560](axios/axios#5560)) ([095033c](axios/axios@095033c))
- add automatic minor and patch upgrades to dependabot ([#&#8203;6053](axios/axios#6053)) ([65a7584](axios/axios@65a7584))
- add Node.js coverage script using c8 (closes [#&#8203;7289](axios/axios#7289)) ([#&#8203;7294](axios/axios#7294)) ([ec9d94e](axios/axios@ec9d94e))
- added copilot instructions ([3f83143](axios/axios@3f83143))
- compatibility with frozen prototypes ([#&#8203;6265](axios/axios#6265)) ([860e033](axios/axios@860e033))
- enhance pipeFileToResponse with error handling ([#&#8203;7169](axios/axios#7169)) ([88d7884](axios/axios@88d7884))
- **types:** Intellisense for string literals in a widened union ([#&#8203;6134](axios/axios#6134)) ([f73474d](axios/axios@f73474d)), closes [/github.com/microsoft/TypeScript/issues/33471#issuecomment-1376364329](https://github.com//github.com/microsoft/TypeScript/issues/33471/issues/issuecomment-1376364329)

##### Reverts

- Revert "fix: silentJSONParsing=false should throw on invalid JSON ([#&#8203;7253](axios/axios#7253)) ([#&#8203;7](https://github.com/axios/axios/issues/7)…" ([#&#8203;7298](axios/axios#7298)) ([a4230f5](axios/axios@a4230f5)), closes [#&#8203;7253](axios/axios#7253) [#&#8203;7](axios/axios#7) [#&#8203;7298](axios/axios#7298)
- **deps:** bump peter-evans/create-pull-request from 7 to 8 in the github-actions group ([#&#8203;7334](axios/axios#7334)) ([2d6ad5e](axios/axios@2d6ad5e))

##### Contributors to this release

- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/175160345?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Ashvin Tiwari](https://github.com/ashvin2005 "+1752/-4 (#&#8203;7218 #&#8203;7218 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/71729144?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Nikunj Mochi](https://github.com/mochinikunj "+940/-12 (#&#8203;7294 #&#8203;7294 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/128113546?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Anchal Singh](https://github.com/imanchalsingh "+544/-102 (#&#8203;7169 #&#8203;7185 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/4814473?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [jasonsaayman](https://github.com/jasonsaayman "+317/-73 (#&#8203;7334 #&#8203;7298 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/377911?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Julian Dax](https://github.com/brodo "+99/-120 (#&#8203;5558 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/184285082?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Akash Dhar Dubey](https://github.com/AKASHDHARDUBEY "+167/-0 (#&#8203;7287 #&#8203;7288 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/145687605?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Madhumita](https://github.com/madhumitaaa "+20/-68 (#&#8203;7198 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/24915252?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Tackoil](https://github.com/Tackoil "+80/-2 (#&#8203;6269 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/145078271?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Justin Dhillon](https://github.com/justindhillon "+41/-41 (#&#8203;6324 #&#8203;6315 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/184138832?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Rudransh](https://github.com/Rudrxxx "+71/-2 (#&#8203;7257 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/146366930?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [WuMingDao](https://github.com/WuMingDao "+36/-36 (#&#8203;7215 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/46827243?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [codenomnom](https://github.com/codenomnom "+70/-0 (#&#8203;7201 #&#8203;7201 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/189698992?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Nandan Acharya](https://github.com/Nandann018-ux "+60/-10 (#&#8203;7272 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/7225168?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Eric Dubé](https://github.com/KernelDeimos "+22/-40 (#&#8203;7042 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/915045?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Tibor Pilz](https://github.com/tiborpilz "+40/-4 (#&#8203;5551 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/23138717?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Gabriel Quaresma](https://github.com/joaoGabriel55 "+31/-4 (#&#8203;6314 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/21505?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Turadg Aleahmad](https://github.com/turadg "+23/-6 (#&#8203;6265 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/4273631?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [JohnTitor](https://github.com/kiritosan "+14/-14 (#&#8203;6155 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/39668736?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [rohit miryala](https://github.com/rohitmiryala "+22/-0 (#&#8203;7250 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/30316250?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Wilson Mun](https://github.com/wmundev "+20/-0 (#&#8203;6053 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/184506226?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [techcodie](https://github.com/techcodie "+7/-7 (#&#8203;7236 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/187598667?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Ved Vadnere](https://github.com/Archis009 "+5/-6 (#&#8203;7283 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/115612815?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [svihpinc](https://github.com/svihpinc "+5/-3 (#&#8203;6134 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/123884782?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [SANDESH LENDVE](https://github.com/mrsandy1965 "+3/-3 (#&#8203;7246 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/12529395?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Lubos](https://github.com/mrlubos "+5/-1 (#&#8203;7312 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/709451?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Jarred Sumner](https://github.com/Jarred-Sumner "+5/-1 (#&#8203;5754 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/17907922?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Adam Hines](https://github.com/thebanjomatic "+2/-1 (#&#8203;5756 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/177472603?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Subhan Kumar Rai](https://github.com/Subhan030 "+2/-1 (#&#8203;7256 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/6473925?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Joseph Frazier](https://github.com/josephfrazier "+1/-1 (#&#8203;7311 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/184906930?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [KT0803](https://github.com/KT0803 "+0/-2 (#&#8203;7229 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/6703955?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Albie](https://github.com/AlbertoSadoc "+1/-1 (#&#8203;5560 )")
- <img src="proxy.php?url=https://avatars.githubusercontent.com/u/9452325?v&#x3D;4&amp;s&#x3D;18" alt="avatar" width="18"/> [Jake Hayes](https://github.com/thejayhaykid "+1/-0 (#&#8203;5999 )")

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NC4zIiwidXBkYXRlZEluVmVyIjoiNDIuOTQuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Co-authored-by: Renovate Bot <[email protected]>
Co-authored-by: ChubbChubbs <[email protected]>
Reviewed-on: https://git.boringstudio.by/BoringStudio/mcp-gitea/pulls/18
Co-authored-by: boring-bot <[email protected]>
Co-committed-by: boring-bot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

priority::medium A medium priority

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Module resolution issue: axios fails with "Adapter 'http' is not available in the build"

4 participants