Skip to content

feat: publish --access=private alias for restricted#9416

Merged
reggi merged 1 commit into
release/v11from
backport/v11/9153
May 27, 2026
Merged

feat: publish --access=private alias for restricted#9416
reggi merged 1 commit into
release/v11from
backport/v11/9153

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

Backport of #9153 to release/v11.

## Summary

Adds `private` as a valid value for `--access` in `npm publish`, as an
alias for `restricted`.

## Motivation

The `--access` flag on `npm publish` currently accepts `restricted` and
`public`. However, in everyday usage, the npm community colloquially
refers to non-public packages as "private packages" — not "restricted
packages." The npm website, the npm registry, and `npm access` all use
the term "private" to describe these packages.

### `npm publish --access` vs `npm access`

These are two different commands that deal with package visibility in
different ways:

- **`npm publish --access=<public|restricted>`** sets the visibility of
a package **at publish time**. This is only relevant for scoped
packages, where the default for new packages is `public`.
- **`npm access set status=<public|private>`** changes the visibility of
an **already published** package. Notably, `npm access` already uses
`private` (not `restricted`) as its term for non-public packages.

This inconsistency means that a user who runs `npm access set
status=private` might naturally try `npm publish --access=private` and
get an error. Since everyone already calls them "private packages," the
CLI should accept that term too. This PR resolves that by accepting
`private` as a synonym for `restricted` during publish.

## Changes

- Added `private` to the valid values for the `access` config definition
- The `flatten` function maps `private` → `restricted` so the registry
always receives `restricted`
- Updated documentation to note that `private` is an alias for
`restricted`
- Added tests for the `--access=private` flow

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
(cherry picked from commit c9be2d1)
@reggi reggi closed this May 27, 2026
@reggi reggi reopened this May 27, 2026
@reggi reggi merged commit 4b67f6e into release/v11 May 27, 2026
52 checks passed
@reggi reggi deleted the backport/v11/9153 branch May 27, 2026 16:27
@github-actions github-actions Bot mentioned this pull request May 27, 2026
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.

1 participant