Feat: Introduce @inquirer/core/ansi export in replacement of ansi-escapes #1798
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: ['main'] | |
pull_request: | |
types: [opened, synchronize] | |
env: | |
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }} | |
TURBO_TEAM: ${{ vars.TURBO_TEAM }} | |
jobs: | |
Compile: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Cache turbo build setup | |
uses: actions/cache@v4 | |
with: | |
path: .turbo | |
key: ${{ runner.os }}-turbo-${{ github.sha }} | |
restore-keys: ${{ runner.os }}-turbo- | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- name: Typescript - packages | |
run: yarn tsc | |
- name: Typescript - test files | |
run: yarn tsc:test | |
Linting: | |
runs-on: ubuntu-latest | |
needs: Compile | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Cache turbo build setup | |
uses: actions/cache@v4 | |
with: | |
path: .turbo | |
key: ${{ runner.os }}-turbo-${{ github.sha }} | |
restore-keys: ${{ runner.os }}-turbo- | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- run: yarn tsc | |
- run: yarn eslint . | |
- name: Validate package setup | |
run: | | |
yarn setup | |
yarn prettier --write . | |
git diff --exit-code -- . :^.yarn | |
Unit: | |
name: Unit Tests | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
node-version: | |
- 20 | |
- 18 | |
steps: | |
- uses: actions/checkout@v4 | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- run: yarn vitest --run --coverage | |
- uses: codecov/codecov-action@v4 | |
Integration: | |
name: Integration Tests | |
runs-on: ubuntu-latest | |
needs: Compile | |
strategy: | |
fail-fast: false | |
matrix: | |
node-version: | |
- 20 | |
- 18 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Cache turbo build setup | |
uses: actions/cache@v4 | |
with: | |
path: .turbo | |
key: ${{ runner.os }}-turbo-${{ github.sha }} | |
restore-keys: ${{ runner.os }}-turbo- | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- run: yarn tsc | |
- name: Integration tests | |
run: yarn node --test integration/ | |
e2e: | |
name: End to End build tests | |
runs-on: ubuntu-latest | |
needs: Compile | |
env: | |
YARN_ENABLE_IMMUTABLE_INSTALLS: false | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Cache turbo build setup | |
uses: actions/cache@v4 | |
with: | |
path: .turbo | |
key: ${{ runner.os }}-turbo-${{ github.sha }} | |
restore-keys: ${{ runner.os }}-turbo- | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- run: yarn tsc | |
- run: yarn workspaces focus --all --production | |
- name: Pack the monorepo modules | |
run: | | |
mkdir -p /tmp/artifacts | |
yarn workspace @inquirer/core pack --out /tmp/artifacts/inquirer-core.tgz | |
yarn workspace @inquirer/prompts pack --out /tmp/artifacts/inquirer-prompts.tgz | |
yarn workspace @inquirer/figures pack --out /tmp/artifacts/inquirer-figures.tgz | |
yarn workspace @inquirer/type pack --out /tmp/artifacts/inquirer-type.tgz | |
yarn workspace @repo/tsconfig pack --out /tmp/artifacts/tsconfig.tgz | |
- name: Extract @inquirer/demo to an isolated project & build | |
run: | | |
cur_dir=$(pwd) | |
temp_dir=$(mktemp -d) | |
cp -r packages/demo $temp_dir | |
cp .yarnrc.yml $temp_dir/demo | |
cd $temp_dir/demo | |
yarn set version stable | |
yarn add --dev @repo/tsconfig@file:/tmp/artifacts/tsconfig.tgz | |
yarn add @inquirer/core@file:/tmp/artifacts/inquirer-core.tgz | |
yarn add @inquirer/prompts@file:/tmp/artifacts/inquirer-prompts.tgz | |
yarn add @inquirer/figures@file:/tmp/artifacts/inquirer-figures.tgz | |
yarn set resolution @inquirer/type@npm:* file:/tmp/artifacts/inquirer-type.tgz | |
yarn install | |
yarn tsc | |
Package: | |
name: Are the types wrong? | |
runs-on: ubuntu-latest | |
needs: Compile | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Cache turbo build setup | |
uses: actions/cache@v4 | |
with: | |
path: .turbo | |
key: ${{ runner.os }}-turbo-${{ github.sha }} | |
restore-keys: ${{ runner.os }}-turbo- | |
- run: corepack enable | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'yarn' | |
- run: yarn install --immutable --immutable-cache | |
- run: yarn turbo attw |