Skip to content

[CommunityToolkit.Aspire.Hosting.Bun] Doesn't work with Workspaces #579

@kieronlanning

Description

@kieronlanning

Describe the bug

When using workspaces (bun), there is no bun.lock/ bun.lockb file in the bun project folder as they're managed from the root.

This results in Unhandled exception. System.InvalidOperationException: No bun.lock or bun.lockb file found .

An example project structure would look like this:

(root)
|- package.json
|- src
   |- web
      |- package.json

The package.json in the src/web folder would reference the 'workspace' like so:

{
    "name": "root-project",
    "type": "module",
    "private": true,
    "devDependencies": {
        "@commitlint/config-conventional": "^19.8.0",
        "@types/bun": "latest",
        "commit-and-tag-version": "^12.5.0",
        "commitlint": "^19.8.0",
        "editorconfig-checker": "^6.0.1",
        "husky": "^9.1.7"
    },
    "peerDependencies": {
        "typescript": "^5.8.2"
    },
    "scripts": {
        "release": "commit-and-tag-version"
    },
    "commitlint": {
        "extends": [
            "@commitlint/config-conventional"
        ]
    },
    "workspaces": [
        "src/web"
    ],
    "trustedDependencies": [
        "@parcel/watcher"
    ]
}

Regression

No response

Steps to reproduce

1. Create a package.json in a root folder
2. Create another in a 'workspace'
3. Reference the workspace from the root
4. Create an Aspire project, and reference the bun project in the workspace.

Expected behavior

Runs the project, regardless of the existence of the bun lock file.

Screenshots

No response

IDE and version

Other

IDE version

No response

Nuget packages


Additional context

No response

Help us help you

No, just wanted to report this

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions