Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

auri

Package Overview
Dependencies
Maintainers
0
Versions
56
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

auri

Organize package changes and releases

  • 3.1.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
1K
increased by540.13%
Maintainers
0
Weekly downloads
 
Created
Source

Auri

Organize package changes and releases in monolith repositories.

npm i -D auri
yarn add -D auri
pnpm add -D auri

Run commands:

npx auri
pnpm auri
yarn auri

Prerequisites

Auri does not work on certain repository setups:

  • Your repository is hosted on GitHub.
  • Single monolith repository (no monorepos).
  • The package can be built and published with: npm run build && npm publish.
  • The package's package.json is in the repository root.
  • Pull requests are squashed and merge.

In addition, it's built with a few opinions in mind:

  • Only supports version formats like 2.0.0 for normal releases and formats like 2.0.0-next.1 for prereleases (it must be next).
  • Prereleases are tagged as 'next' on NPM.
  • Non-latest, non-next releases (e.g. 1.8.0 when latest is 2.3.0) will be tagged as 'legacy' on NPM.

Setup

Install Auri via NPM and update your repository.

1. Generate access tokens

Create an NPM automation access token (classic).

2. Create GitHub workflow

Create a GitHub workflow that runs on every push. The NPM token should be named NODE_AUTH_TOKEN and the GitHub token as AURI_NPM_TOKEN.

It is crucial that you setup actions/checkout@v3 with github.ref. Auri expects the current branch to be the target branch.

# .github/workflows/publish.yaml
name: "Publish package"
on: [push]

env:
  AURI_GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
  AURI_NPM_TOKEN: ${{secrets.AURI_NPM_TOKEN}}

jobs:
  publish-package:
    name: Publish package and release with Auri
    runs-on: ubuntu-latest
    # TODO: Update repository name.
    if: github.repository == 'pilcrowonpaper/auri' && github.ref == 'refs/heads/main'
    permissions:
      contents: write
      id-token: write
    steps:
      - name: Setup actions
        uses: actions/checkout@v3
        with:
          ref: ${{ github.ref }}
      - name: Setup Node
        uses: actions/setup-node@v3
        with:
          node-version: 20
          registry-url: "https://registry.npmjs.org/"
          cache: "npm"
      - name: Install dependencies
        run: npm install
      - name: Build package
        run: npm run build
      - name: Publish package and release
        run: npm run auri publish

3. Configure permissions

Go to your repository's settings, and go to "Code and automation" > "Actions" > "General." Go to "Workflow permissions" and enable:

  • "Read and write permissions"
  • "Allow GitHub Actions to create and approve pull requests"

If your GitHub workflow have permissions defined, make sure content is set to write:

permissions:
  contents: write

Instructions

When you're ready to publish your package, run auri generate on your local machine. This will create a .COMMITS file with a list of commits since the last release (the version in package.json). Commits starting with docs:, style:, or test: will be ignored. This will also create a .RELEASE.md. Using .COMMITS as a reference, write your changelog in .RELEASE.md. Update the version field in your package.json and commit the change.

With the GitHub action, Auri will build and publish your package to NPM and use the .RELEASE.md to publish a new GitHub release.

Keywords

FAQs

Package last updated on 27 Dec 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc