fix(aria-cli): npm shim missing, wrong NuGet PackageId, no packaging CI - #40
Conversation
…, fix install docs Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
|
@copilot please fix the failing checks |
…block gitignore Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
Fixed in 09f2e6e. Two root causes:
|
Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR restores end-to-end installability of aria-cli across both npm and NuGet by adding the missing npm executable shim, correcting NuGet install documentation (PackageId vs command name), and introducing CI that validates packaging and installation workflows.
Changes:
- Added an npm
bin/aria.jsshim that runsdotnet dist/aria/aria.dllwith pass-through args and a clear missing-runtime error. - Strengthened npm packaging validation (
check:dist) and introduced a CI workflow that builds/packs/installs/tests both NuGet and npm distributions. - Updated docs (
README.md,RELEASING.md) with correct NuGet PackageId usage and GitHub Packages authentication setup.
Reviewed changes
Copilot reviewed 4 out of 6 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| src/aria-cli/RELEASING.md | Updates required permissions and adds consumer auth instructions for GitHub Packages. |
| src/aria-cli/README.md | Fixes dotnet tool install usage and documents GitHub Packages auth + npm install path. |
| src/aria-cli/npm/package.json | Extends check:dist to validate the presence of the npm shim and published DLL. |
| src/aria-cli/npm/bin/aria.js | Adds the Node.js entrypoint shim that invokes the packaged .NET CLI. |
| .gitignore | Ensures the npm shim directory remains tracked despite bin/ ignores. |
| .github/workflows/aria-cli-ci.yml | Adds CI jobs validating tests and end-to-end NuGet/npm package install + execution. |
| paths: | ||
| - 'src/aria-cli/**' | ||
| - 'src/aria-auth-core/**' | ||
| - '.github/workflows/aria-cli-*.yml' |
| paths: | ||
| - 'src/aria-cli/**' | ||
| - 'src/aria-auth-core/**' | ||
| - '.github/workflows/aria-cli-*.yml' |
Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
The npm package was fully broken post-install (
bin/aria.jsnever existed), the NuGet README install command used the command name instead of the PackageId, and no CI validated that either package could actually be installed and run.Changes
npm/bin/aria.js(new) — Node.js shim that invokesdotnet dist/aria/aria.dllwith pass-through args and a clear error if the .NET runtime is missing. This is the missing bridge betweennpm install -g @aria-fx/aria-cliand the publish payload.npm/package.json— Extendedcheck:distto also assertbin/aria.jsexists, so the publish workflow validation gate catches both missing pieces..github/workflows/aria-cli-ci.yml(new) — Three-job CI proving packages work end-to-end:test— existing xunit suitepackage-nuget—dotnet pack→ assertDotnetToolSettings.xmlhasCommandName="aria"→dotnet tool install -g Aria.Cli→aria --helppackage-npm—dotnet publish→make aria-npm-pack-dry-run→ assert tarball containsbin/aria.js+aria.dll→npm install -g→aria --helpREADME.md— Fixeddotnet tool installto useAria.Cli(PackageId) notaria(command name); added GitHub Packages auth instructions for both NuGet and npm (a PAT withread:packagesis always required — GitHub Packages does not support unauthenticated access for any visibility level).RELEASING.md— Correctedcontents: read→contents: write(the workflow commits metadata back to the branch); added consumer auth setup for both ecosystems.