Skip to content
Merged

Dev #17

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .auto-changelog
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"template": "changelog-template",
"unreleased": true,
"commitLimit": false
}
6 changes: 6 additions & 0 deletions .c8rc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"include": ["src/**/*.ts"],
"exclude": ["test/**"],
"reporter": ["text", "html", "lcov"],
"all": true
}
55 changes: 0 additions & 55 deletions .circleci/config.yml

This file was deleted.

1 change: 0 additions & 1 deletion .coveralls.yml

This file was deleted.

27 changes: 27 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
21 changes: 21 additions & 0 deletions .github/workflows/qc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Quality Check
on:
# Can be run manually
workflow_dispatch:

# on pull request
push:
branches-ignore:
- main
- dev

# Only one run per branch at a time
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
qc:
uses: panates/github-actions/.github/workflows/node-qc.yaml@v1
secrets:
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
70 changes: 70 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: Release
on:
# Can be run manually
workflow_dispatch:
inputs:
skip-tests:
description: Skip test
type: boolean
default: false

# on git push
push:
branches:
- main

# Only one run at a time
concurrency:
group: ${{ github.workflow }}
cancel-in-progress: false

jobs:
test:
if: >
!contains(github.event.head_commit.message, 'no-release') &&
(
(github.event_name == 'workflow_dispatch' && github.event.inputs.skip-tests != 'true') ||
(
github.event_name == 'push' &&
!(
contains(github.event.head_commit.message, 'no-test') ||
(
startsWith(github.event.head_commit.message, 'Merge pull request') &&
contains(github.event.head_commit.message, '/dev')
)
)
)
)
uses: ./.github/workflows/test.yml
secrets:
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}


release_after_test:
# Wait for "test" job
needs: test
uses: panates/github-actions/.github/workflows/node-release.yaml@v1
secrets:
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

release:
if: >
!contains(github.event.head_commit.message, 'no-release') &&
!(
(github.event_name == 'workflow_dispatch' && github.event.inputs.skip-tests != 'true') ||
(
github.event_name == 'push' &&
!(
contains(github.event.head_commit.message, 'no-test') ||
(
startsWith(github.event.head_commit.message, 'Merge pull request') &&
contains(github.event.head_commit.message, '/dev')
)
)
)
)
uses: panates/github-actions/.github/workflows/node-release.yaml@v1
secrets:
PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
63 changes: 63 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Test
on:
workflow_call:
secrets:
PERSONAL_ACCESS_TOKEN:

# Can be run manually
workflow_dispatch:

# on git push
push:
branches:
- dev

# Only one run per branch at a time
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
# ***********************************
# Job: Test
# ***********************************
test:
name: 'Tests'
if: >
github.event_name == 'workflow_dispatch' ||
(
github.event_name == 'push' &&
!(
contains(github.event.head_commit.message, 'no-test') ||
(
startsWith(github.event.head_commit.message, 'Merge pull request') &&
contains(github.event.head_commit.message, '/dev')
)
)
)
runs-on: ubuntu-latest
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
node: [ '18', '20', '22', '23' ]

steps:
- name: Setup Environment
uses: panates/gh-setup-node@v1
with:
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }}

- name: Apply tests
run: |
npm run qc
npm run citest
env:
NODE_OPTIONS: "--max_old_space_size=4096"

- name: Send coverage to Coveralls
uses: coverallsapp/github-action@v2
# Run only once
if: ${{ matrix.node == '22' }}
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
7 changes: 7 additions & 0 deletions .madgerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"detectiveOptions": {
"ts": {
"skipTypeImports": true
}
}
}
8 changes: 8 additions & 0 deletions .mocharc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
process.env.TS_NODE_PROJECT = __dirname + '/test/tsconfig.json';
/** @type {import('mocha').MochaOptions} */
module.exports = {
require: ['@swc-node/register/esm-register'],
extension: ['ts'],
spec: './test/**/*.spec.ts',
timeout: 30000,
};
19 changes: 0 additions & 19 deletions .travis.yml

This file was deleted.

Loading