Skip to content

fix(aria-cli): npm shim missing, wrong NuGet PackageId, no packaging CI - #40

Merged
jgarverick merged 6 commits into
mainfrom
copilot/fix-nuget-npm-installations
Jul 18, 2026
Merged

fix(aria-cli): npm shim missing, wrong NuGet PackageId, no packaging CI#40
jgarverick merged 6 commits into
mainfrom
copilot/fix-nuget-npm-installations

Conversation

Copilot AI commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

The npm package was fully broken post-install (bin/aria.js never 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 invokes dotnet dist/aria/aria.dll with pass-through args and a clear error if the .NET runtime is missing. This is the missing bridge between npm install -g @aria-fx/aria-cli and the publish payload.

  • npm/package.json — Extended check:dist to also assert bin/aria.js exists, 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 suite
    • package-nugetdotnet pack → assert DotnetToolSettings.xml has CommandName="aria"dotnet tool install -g Aria.Cliaria --help
    • package-npmdotnet publishmake aria-npm-pack-dry-run → assert tarball contains bin/aria.js + aria.dllnpm install -garia --help
  • README.md — Fixed dotnet tool install to use Aria.Cli (PackageId) not aria (command name); added GitHub Packages auth instructions for both NuGet and npm (a PAT with read:packages is always required — GitHub Packages does not support unauthenticated access for any visibility level).

  • RELEASING.md — Corrected contents: readcontents: write (the workflow commits metadata back to the branch); added consumer auth setup for both ecosystems.

…, fix install docs

Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
Copilot AI changed the title fix(aria-cli): fix npm shim, NuGet install command, package validation, and packaging CI tests fix(aria-cli): npm shim missing, wrong NuGet PackageId, no packaging CI Jul 18, 2026
Copilot AI requested a review from jgarverick July 18, 2026 15:29
@jgarverick

Copy link
Copy Markdown
Collaborator

@copilot please fix the failing checks

…block gitignore

Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>

Copilot AI commented Jul 18, 2026

Copy link
Copy Markdown
Contributor Author

@copilot please fix the failing checks

Fixed in 09f2e6e. Two root causes:

  1. bin/aria.js was never in git — The repo-level .gitignore has a global bin/ rule, so src/aria-cli/npm/bin/aria.js was silently excluded from every commit. Added !src/aria-cli/npm/bin/ exception to .gitignore and committed the shim file.

  2. Wrong XML attribute in NuGet verify — The verification step grepped for CommandName="aria" but the DotnetToolSettings.xml schema uses Name="aria". Fixed the grep pattern.

Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.js shim that runs dotnet dist/aria/aria.dll with 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.

Comment thread src/aria-cli/README.md
Comment on lines +6 to +9
paths:
- 'src/aria-cli/**'
- 'src/aria-auth-core/**'
- '.github/workflows/aria-cli-*.yml'
Comment on lines +11 to +14
paths:
- 'src/aria-cli/**'
- 'src/aria-auth-core/**'
- '.github/workflows/aria-cli-*.yml'
Comment thread src/aria-cli/RELEASING.md
Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
Copilot AI and others added 2 commits July 18, 2026 16:03
Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
Co-authored-by: jgarverick <2940856+jgarverick@users.noreply.github.com>
@jgarverick
jgarverick merged commit f1bea1c into main Jul 18, 2026
12 checks passed
@jgarverick
jgarverick deleted the copilot/fix-nuget-npm-installations branch July 18, 2026 16:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants