Skip to content
Merged
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
35 changes: 27 additions & 8 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,11 @@ In addition to the rules enforced by `.editorconfig`, you SHOULD:
- [5.1. How To: Identify Affected Libraries](#51-how-to-identify-affected-libraries)
- [5.2. How To: Build and Test Specific Library](#52-how-to-build-and-test-specific-library)
- [6. WebAssembly (WASM) Libraries Workflow](#6-webassembly-wasm-libraries-workflow)
- [7. Additional Notes](#7-additional-notes)
- [7.1. Troubleshooting](#71-troubleshooting)
- [7.2. Windows Command Equivalents](#72-windows-command-equivalents)
- [7.3. References](#73-references)
- [7. Host Workflow](#7-host-workflow)
- [8. Additional Notes](#8-additional-notes)
- [8.1. Troubleshooting](#81-troubleshooting)
- [8.2. Windows Command Equivalents](#82-windows-command-equivalents)
- [8.3. References](#83-references)

## 1. Prerequisites

Expand All @@ -54,6 +55,7 @@ Identify which components will be impacted by the changes. If in doubt, analyze
- **Mono Runtime:** Changes in `src/mono/`
- **Libraries:** Changes in `src/libraries/`
- **WASM/WASI Libraries:** Changes in `src/libraries/` *and* the affected library targets WASM or WASI *and* the changes are included for the target (see below for details).
- **Host:** Changes in `src/native/corehost/`, `src/installer/managed/`, or `src/installer/tests/`
- If none above apply, it is most possibly an infra-only or a docs-only change. Skip build and test steps.

**WASM/WASI Library Change Detection**
Expand All @@ -76,6 +78,7 @@ Before applying any changes, ensure you have a full successful build of the need
- **Mono Runtime:** `./build.sh mono+libs`
- **Libraries:** `./build.sh clr+libs -rc release`
- **WASM/WASI Libraries:** `./build.sh mono+libs -os browser`
- **Host:** `./build.sh clr+libs+host -rc release -lc release`

3. Verify the build completed without error.
- _If the baseline build failed, report the failure and don't proceed with the changes._
Expand Down Expand Up @@ -239,9 +242,24 @@ From the repository root:

---

## 7. Additional Notes
## 7. Host Workflow

### 7.1. Troubleshooting
From the repository root:

- Build:
`./build.sh host -rc release -lc release`

- Run all tests:
`./build.sh host.tests -rc release -lc release -test`

- More info can be found in the dedicated workflow docs:
- [Building and running host tests](/docs/workflow/testing/host/testing.md)

---

## 8. Additional Notes

### 8.1. Troubleshooting

- **Shared Framework Missing**

Expand Down Expand Up @@ -273,15 +291,15 @@ From the repository root:

---

### 7.2. Windows Command Equivalents
### 8.2. Windows Command Equivalents

- Use `build.cmd` instead of `build.sh` on Windows.
- Set PATH: `set PATH=%CD%\.dotnet;%PATH%`
- All other commands are similar unless otherwise noted.

---

### 7.3. References
### 8.3. References

- [`.editorconfig`](/.editorconfig)
- [Building CoreCLR Guide](/docs/workflow/building/coreclr/README.md)
Expand All @@ -292,3 +310,4 @@ From the repository root:
- [Testing Libraries](/docs/workflow/testing/libraries/testing.md)
- [Build libraries for WebAssembly](/docs/workflow/building/libraries/webassembly-instructions.md)
- [Testing Libraries on WebAssembly](/docs/workflow/testing/libraries/testing-wasm.md)
- [Building and running host tests](/docs/workflow/testing/host/testing.md)