Skip to content

style: require type-only imports #733

style: require type-only imports

style: require type-only imports #733

Workflow file for this run

name: CI
on: push
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node:
- "18"
- "20"
package:
- base
- core
- cube
- csvw
- formats
- ftp
- graph-store
- http
- rdf
- s3
- sparql
- shacl
- validation
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node }}
- run: npm ci
- run: npx c8 --all --src packages/${{ matrix.package }} -x "packages/!(${{ matrix.package }})" --reporter lcovonly --reporter text wsrun --no-prefix -p barnard59-${{ matrix.package }} -c test
- name: Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: barnard59-${{ matrix.package }}
type-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: 20
- run: npm ci
- run: npx wsrun -mc build
test-cli:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node:
- "18"
- "20"
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node }}
- run: npm ci
- name: Compile TypeScript packages
run: npx wsrun -mc build --sourceMap
- run: npx c8 --all --src packages/cli -x "packages/!(cli)" --reporter lcovonly --reporter text wsrun --no-prefix -p barnard59 -c test
- name: Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: barnard59
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
- run: npm ci
- run: npm run lint
smoke-test-cli:
strategy:
fail-fast: false
matrix:
env:
- os: ubuntu-latest
node: 20
- os: macos-latest
node: 20
- os: windows-latest
node: 20.12.1 # Pinned, because of https://github.com/approvals/Approvals.NodeJS/issues/176
runs-on: ${{ matrix.env.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.env.node }}
cache: npm
- run: npm ci
- run: npx barnard59 run test/e2e/definitions/file-loader.ttl
- run: npx barnard59 run test/e2e/definitions/foreach/with-handler.ttl
- run: npx barnard59 run test/e2e/definitions/foreach/with-variable.ttl --variable pattern="test/e2e/definitions/foreach/*"
- run: npx barnard59 run test/e2e/definitions/foreach/csv-duplicate.ttl --variable filename=test/e2e/data/test.csv
- run: npx barnard59 run test/e2e/definitions/world-clock/async.ttl
- run: npx barnard59 run test/e2e/definitions/world-clock/file.ttl
- run: npx barnard59 run test/e2e/definitions/world-clock/node.ttl
- run: npx barnard59 run test/e2e/definitions/code-imports/main.ttl
global-installation:
strategy:
fail-fast: false
matrix:
env:
- os: ubuntu-latest
node: 20
- os: macos-latest
node: 20
- os: windows-latest
node: 20.12.1 # Pinned, because of https://github.com/approvals/Approvals.NodeJS/issues/176
runs-on: ${{ matrix.env.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.env.node }}
cache: npm
- run: npm ci
- name: pack all
run: npm pack -ws
- run: npm install -g barnard59-*.tgz
if: matrix.env.os == 'ubuntu-latest' || matrix.env.os == 'macos-latest'
- run: cmd /c npm install -g (Get-ChildItem -Filter barnard59-*.tgz).FullName
if: matrix.env.os == 'windows-latest'
- run: which barnard59
- run: barnard59 --help
- run: barnard59 shacl validate --shapes test/support/pipeline-shapes.ttl < test/e2e/definitions/file-loader.ttl
if: matrix.env.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
- run: barnard59 shacl validate --shapes test/support/pipeline-shapes.ttl < test/e2e/definitions/file-loader.ttl
if: matrix.env.os == 'windows-latest'
shell: cmd