Skip to content

feat(@angular/cli): add aube as supported package manager - #34058

Closed
santoshyadavdev wants to merge 1 commit into
angular:mainfrom
santoshyadavdev:santoshyadavdev-add-aube-package-manager-support
Closed

feat(@angular/cli): add aube as supported package manager#34058
santoshyadavdev wants to merge 1 commit into
angular:mainfrom
santoshyadavdev:santoshyadavdev-add-aube-package-manager-support

Conversation

@santoshyadavdev

@santoshyadavdev santoshyadavdev commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Add support for the aube package manager, a Rust-based Node.js package manager that is fully compatible with the npm ecosystem.

Aube is a drop-in replacement for npm/pnpm/yarn/bun that focuses on speed, automatic installs before script execution, and cross-project package deduplication via a content-addressable store.

Key characteristics:

  • Binary: aube
  • Lockfile: aube-lock.yaml
  • Commands: aube add, aube install, aube view --json, aube list --json
  • Config: .npmrc (shared with npm/pnpm)
  • JSON output: Mirrors npm/pnpm format, so existing parseNpmLike* parsers are reused

Changes:

  • Add aube descriptor to SUPPORTED_PACKAGE_MANAGERS in package-manager-descriptor.ts
  • Add aube to PACKAGE_MANAGER_PRECEDENCE
  • Update workspace schema JSON (workspace-schema.json) — both cliOptions and cliGlobalOptions
  • Update ng-new/schema.json and workspace/schema.json schematics
  • Update @angular/create to detect aube from npm_config_user_agent
  • Add aube lockfile discovery test
  • Add aube support to e2e test utilities

Testing:

  • All existing CLI unit tests pass (bazel test //packages/angular/cli:test — PASSED)
  • Added discovery spec test for aube-lock.yaml
  • Tested with a new workspace and the app works fine

Closes #34057

@angular-robot angular-robot Bot added detected: feature PR contains a feature commit area: @angular/cli labels Sep 9, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code Review

This pull request introduces support for a new package manager named 'aube' across the Angular CLI, including schema updates, lockfile discovery, package manager descriptors, and e2e test utilities. The feedback suggests adjusting the package manager precedence to place 'bun' above 'aube' since 'bun' is more widely established.

Comment on lines 372 to 378
export const PACKAGE_MANAGER_PRECEDENCE: readonly PackageManagerName[] = [
'pnpm',
'yarn',
'aube',
'bun',
'npm',
];

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

Since bun is a significantly more established and widely used package manager in the community compared to aube, it is safer to place bun higher in the precedence list. If a project contains both bun.lockb and aube-lock.yaml, bun is much more likely to be the intended primary package manager.

Suggested change
export const PACKAGE_MANAGER_PRECEDENCE: readonly PackageManagerName[] = [
'pnpm',
'yarn',
'aube',
'bun',
'npm',
];
export const PACKAGE_MANAGER_PRECEDENCE: readonly PackageManagerName[] = [
'pnpm',
'yarn',
'bun',
'aube',
'npm',
];

@alan-agius4

Copy link
Copy Markdown
Collaborator

Thanks for raising this!

Whlist aube certainly looks interesting, we think it’s a bit early to look into Angular support. We'll keep an eye out for stronger interest from the Angular community before taking next steps.

@alan-agius4 alan-agius4 closed this Sep 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: @angular/cli detected: feature PR contains a feature commit

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support aube as package manager

2 participants