alis packages¶
Install, upgrade and add a service's language packages (Go, Node, Python, Dart, .NET, Swift, Rust), share a defined package with other products, and run Swift tooling with refreshed registry credentials.
Synopsis¶
alis packages add [<package-id>] [flags]
alis packages install [<package-id>] [flags]
alis packages share [<package-id>] --with <org.product> [flags]
alis packages sharing [<package-id>] [flags]
alis packages swift [<package-id>] -- <tool arguments> [flags]
alis packages unshare [<package-id>] --with <org.product> [flags]
alis packages upgrade [<package-id>] [flags]
alis packages xcode-check [<package-id>] [flags]
alis packages xcodebuild [<package-id>] -- <tool arguments> [flags]
Aliases: packages, package, pkg.
Description¶
The package ID selects the service whose manifests are changed; it is never a dependency to add. It may be omitted inside the service's directory. Registry credentials are refreshed automatically before package managers run (written to ~/.npmrc, ~/.netrc and the dart pub tokens). A project-level .npmrc that carries its own _authToken for an Alis registry host overrides ~/.npmrc; it is refreshed for the run and put back afterwards. Remove such lines from project .npmrc files and keep them out of git.
Use these commands for private Alis packages instead of running go get, go mod tidy, pnpm, pip, uv or dart directly. Python installs use uv when it is on the PATH.
A service's defined package reaches another product's registries only once it is shared.
Subcommands¶
alis packages add¶
Add the selected service's own generated definition package to its manifests.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--language <lang> |
string | Only run for one language: go, node, python, dart, dotnet, swift or rust. |
|
--python-tool <tool> |
string | uv when installed, else pip |
Installer for Python manifests: pip or uv. |
alis packages install¶
Refresh private registry credentials and run the package managers with the service's registry configuration: go mod tidy, pnpm install, pip/uv install, dart pub get. Then pull the latest version of the service's own generated definition package (a targeted fetch, not a full dependency upgrade). Use this first when local builds cannot download private Alis packages; a fresh clone always needs it once. Installation can update manifests and lockfiles.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--language <lang> |
string | Only run for one language: go, node, python, dart, dotnet, swift or rust. |
|
--python-tool <tool> |
string | uv when installed, else pip |
Installer for Python manifests. |
--version <version> |
string | latest | Install this exact definition version (Go, Node, Python, .NET, Swift and Rust). |
alis packages share¶
Share the selected service's defined package with one or more destination products. Each destination receives the current latest version straight away and every version defined after that. Only admins of the source product can share. Sharing is per service.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--with <org.product> |
strings | Destination product (repeatable). |
alis packages sharing¶
List the products that receive the selected service's defined package.
Aliases: sharing, shares. No flags beyond the global flags.
alis packages swift¶
Refresh the service's Swift registry credentials and run swift in the current directory. Pass tool arguments after --. SwiftPM commands use temporary configuration and credential stores; temporary token files are removed on completion. With --json, tool output goes to stderr and stdout contains only the final result.
No flags beyond the global flags.
alis packages unshare¶
Stop sharing the selected service's defined package with the given destination products. Versions already copied stay there; no further versions are delivered.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--with <org.product> |
strings | Destination product (repeatable). |
alis packages upgrade¶
Upgrade the existing alis.build dependencies in the selected service's manifests. --only limits the upgrade to specific dependencies and --to pins one at an exact version; --path limits the update to a nested module or manifest. Failed locations are rolled back to their pre-run manifests.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--all |
bool | false | Upgrade all packages, not just the alis.build ones. |
--language <lang> |
string | Only run for one language. | |
--only <dep> |
strings | Only upgrade these dependencies: dotted package IDs or exact module/package names (repeatable). | |
--path <folder-or-manifest> |
strings | Only run for this package folder or manifest, relative to the service (repeatable). | |
--python-tool <tool> |
string | uv when installed, else pip |
Installer for Python manifests. |
--to <version> |
string | Pin this exact version: of the service's own defined package, or of the one --only dependency. |
alis packages xcode-check¶
Check saved Xcode package state without changing it. --resolve runs native Xcode package resolution through Alis authentication, then checks again; it requires an explicit project or workspace and scheme and never overwrites lockfiles or closes Xcode. A non-zero exit means refresh is required or readiness could not be verified.
| Flag | Type | Default | Meaning |
|---|---|---|---|
--cloned-source-packages-path <path> |
string | Custom SourcePackages directory used by Xcode. | |
--derived-data-path <path> |
string | DerivedData used by the failing build or open Xcode workspace. | |
--project <path> |
string | Xcode project path. | |
--resolve |
bool | false | Resolve the selected workspace with native Xcode, then verify. |
--scheme <name> |
string | Scheme to resolve. | |
--workspace <path> |
string | Xcode workspace path. |
alis packages xcodebuild¶
Refresh the service's Swift registry credentials and run xcodebuild in the current directory. Pass tool arguments after --. Requires macOS: registry mappings are merged into the user's SwiftPM configuration and credentials are refreshed in the macOS Keychain.
No flags beyond the global flags.
Examples¶
alis packages install acme.shop.orders.v1 --json
alis packages install --language go --json
alis packages upgrade acme.shop.orders.v1 --json
alis packages upgrade --only acme.shop.users.v1 --to 1.8.0 --language go --json
alis packages upgrade acme.shop.orders.v1 --path web --language node --json
alis packages share acme.shop.users.v1 --with acme.billing --json
alis packages sharing acme.shop.users.v1 --json
alis packages swift acme.shop.app.v1 -- build --package-path app
alis packages xcode-check acme.shop.app.v1 --project app/App.xcodeproj --scheme App --json
JSON output¶
upgrade --json lists upgraded, unchanged and skipped per dependency. xcode-check --json includes per-package expected and actual versions, paths and recovery argv.
Notes¶
- "no published definition yet" on install means the service has never been defined: run
alis define <pkg>first. installandupgradeare mutating-class commands under the automation tiers.