import Publish from "/snippets/cli/publish.mdx";
bun publish va automatiquement empaqueter votre package dans un tarball, supprimer les protocoles catalog et workspace du package.json (en résolvant les versions si nécessaire), et publier sur le registre spécifié dans vos fichiers de configuration. Les fichiers bunfig.toml et .npmrc sont pris en charge.
## Publier le package depuis le répertoire de travail actuel
bun publishbun publish v1.3.3 (ca7428e9)
packed 203B package.json
packed 224B README.md
packed 30B index.ts
packed 0.64KB tsconfig.json
Total files : 4
Shasum : 79e2b4377b63f4de38dc7ea6e5e9dbee08311a69
Integrity : sha512-6QSNlDdSwyG/+[...]X6wXHriDWr6fA==
Taille décompressée : 1.1KB
Taille compressée : 0.76KB
Tag : latest
Accès : default
Registre : http://localhost:4873/
+ publish-1@1.0.0Alternativement, vous pouvez empaqueter et publier votre package séparément en utilisant bun pm pack suivi de bun publish avec le chemin vers le tarball de sortie.
bun pm pack
...
bun publish ./package.tgzNOTE
`bun publish` n'exécutera pas les scripts de cycle de vie (`prepublishOnly/prepack/prepare/postpack/publish/postpublish`) si un chemin de tarball est fourni. Les scripts ne seront exécutés que si le package est empaqueté par `bun publish`.--access
Le drapeau --access peut être utilisé pour définir le niveau d'accès du package publié. Le niveau d'accès peut être public ou restricted. Les packages sans scope sont toujours publics, et tenter de publier un package sans scope avec --access restricted entraînera une erreur.
bun publish --access public--access peut également être défini dans le champ publishConfig de votre package.json.
{
"publishConfig": {
"access": "restricted"
}
}--tag
Définir le tag de la version du package publié. Par défaut, le tag est latest. La version initiale d'un package reçoit toujours le tag latest en plus du tag spécifié.
bun publish --tag alpha--tag peut également être défini dans le champ publishConfig de votre package.json.
{
"publishConfig": {
"tag": "next"
}
}--dry-run
Le drapeau --dry-run peut être utilisé pour simuler le processus de publication sans réellement publier le package. Ceci est utile pour vérifier le contenu du package publié sans réellement le publier.
bun publish --dry-run--tolerate-republish
Quitter avec le code 0 au lieu de 1 si la version du package existe déjà. Utile en CI/CD où les jobs peuvent être réexécutés.
bun publish --tolerate-republish--gzip-level
Spécifier le niveau de compression gzip à utiliser lors de l'empaquetage du package. S'applique uniquement à bun publish sans argument de chemin de tarball. Les valeurs vont de 0 à 9 (la valeur par défaut est 9).
--auth-type
Si vous avez activé l'authentification à deux facteurs pour votre compte npm, bun publish vous demandera un mot de passe à usage unique. Cela peut se faire via un navigateur ou le CLI. Le drapeau --auth-type peut être utilisé pour indiquer au registre npm quelle méthode vous préférez. Les valeurs possibles sont web et legacy, web étant la valeur par défaut.
bun publish --auth-type legacy
...
Cette opération nécessite un mot de passe à usage unique.
Entrez OTP : 123456
...--otp
Fournir un mot de passe à usage unique directement au CLI. Si le mot de passe est valide, cela ignorera l'invite supplémentaire pour un mot de passe à usage unique avant la publication. Exemple d'utilisation :
bun publish --otp 123456NOTE
`bun publish` respecte la variable d'environnement `NPM_CONFIG_TOKEN` qui peut être utilisée lors de la publication dans GitHub Actions ou des flux de travail automatisés.