summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
Diffstat (limited to '.github')
-rw-r--r--.github/ISSUE_TEMPLATE/00_bug.yaml (renamed from .github/ISSUE_TEMPLATE/bug.yaml)6
-rw-r--r--.github/ISSUE_TEMPLATE/01_feature.yaml38
-rw-r--r--.github/ISSUE_TEMPLATE/config.yml8
-rw-r--r--.github/actions/pre-test/action.yml31
-rw-r--r--.github/workflows/languages.yaml82
5 files changed, 134 insertions, 31 deletions
diff --git a/.github/ISSUE_TEMPLATE/bug.yaml b/.github/ISSUE_TEMPLATE/00_bug.yaml
index 96cd6c7..980f7af 100644
--- a/.github/ISSUE_TEMPLATE/bug.yaml
+++ b/.github/ISSUE_TEMPLATE/00_bug.yaml
@@ -16,6 +16,12 @@ body:
placeholder: ...
validations:
required: true
+ - type: markdown
+ attributes:
+ value: |
+ 95% of issues created are duplicates.
+ please try extra hard to find them first.
+ it's very unlikely your problem is unique.
- type: textarea
id: freeform
attributes:
diff --git a/.github/ISSUE_TEMPLATE/01_feature.yaml b/.github/ISSUE_TEMPLATE/01_feature.yaml
new file mode 100644
index 0000000..c7ddc84
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/01_feature.yaml
@@ -0,0 +1,38 @@
+name: feature request
+description: something new
+body:
+ - type: markdown
+ attributes:
+ value: |
+ this is for issues for `pre-commit` (the framework).
+ if you are reporting an issue for [pre-commit.ci] please report it at [pre-commit-ci/issues]
+
+ [pre-commit.ci]: https://pre-commit.ci
+ [pre-commit-ci/issues]: https://github.com/pre-commit-ci/issues
+ - type: input
+ id: search
+ attributes:
+ label: search you tried in the issue tracker
+ placeholder: ...
+ validations:
+ required: true
+ - type: markdown
+ attributes:
+ value: |
+ 95% of issues created are duplicates.
+ please try extra hard to find them first.
+ it's very unlikely your feature idea is a new one.
+ - type: textarea
+ id: freeform
+ attributes:
+ label: describe your actual problem
+ placeholder: 'I want to do ... I tried ... It does not work because ...'
+ validations:
+ required: true
+ - type: input
+ id: version
+ attributes:
+ label: pre-commit --version
+ placeholder: pre-commit x.x.x
+ validations:
+ required: true
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 0000000..4179f47
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1,8 @@
+blank_issues_enabled: false
+contact_links:
+- name: documentation
+ url: https://pre-commit.com
+ about: please check the docs first
+- name: pre-commit.ci issues
+ url: https://github.com/pre-commit-ci/issues
+ about: please report issues about pre-commit.ci here
diff --git a/.github/actions/pre-test/action.yml b/.github/actions/pre-test/action.yml
index 42bbf00..9d1eb2d 100644
--- a/.github/actions/pre-test/action.yml
+++ b/.github/actions/pre-test/action.yml
@@ -5,36 +5,5 @@ inputs:
runs:
using: composite
steps:
- - name: setup (windows)
- shell: bash
- if: runner.os == 'Windows'
- run: |
- set -x
-
- echo 'TEMP=C:\TEMP' >> "$GITHUB_ENV"
-
- echo "$CONDA\Scripts" >> "$GITHUB_PATH"
-
- echo 'C:\Strawberry\perl\bin' >> "$GITHUB_PATH"
- echo 'C:\Strawberry\perl\site\bin' >> "$GITHUB_PATH"
- echo 'C:\Strawberry\c\bin' >> "$GITHUB_PATH"
-
- testing/get-coursier.sh
- testing/get-dart.sh
- - name: setup (linux)
- shell: bash
- if: runner.os == 'Linux'
- run: |
- set -x
-
- sudo apt-get update
- sudo apt-get install -y --no-install-recommends \
- lua5.3 \
- liblua5.3-dev \
- luarocks
-
- testing/get-coursier.sh
- testing/get-dart.sh
- testing/get-swift.sh
- uses: asottile/workflows/.github/actions/latest-git@v1.4.0
if: inputs.env == 'py38' && runner.os == 'Linux'
diff --git a/.github/workflows/languages.yaml b/.github/workflows/languages.yaml
new file mode 100644
index 0000000..8bc8e71
--- /dev/null
+++ b/.github/workflows/languages.yaml
@@ -0,0 +1,82 @@
+name: languages
+
+on:
+ push:
+ branches: [main, test-me-*]
+ tags:
+ pull_request:
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
+ cancel-in-progress: true
+
+jobs:
+ vars:
+ runs-on: ubuntu-latest
+ outputs:
+ languages: ${{ steps.vars.outputs.languages }}
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ fetch-depth: 0
+ - uses: actions/setup-python@v4
+ with:
+ python-version: 3.8
+ - name: install deps
+ run: python -mpip install -e . -r requirements-dev.txt
+ - name: vars
+ run: testing/languages ${{ github.event_name == 'push' && '--all' || '' }}
+ id: vars
+ language:
+ needs: [vars]
+ runs-on: ${{ matrix.os }}
+ if: needs.vars.outputs.languages != '[]'
+ strategy:
+ fail-fast: false
+ matrix:
+ include: ${{ fromJSON(needs.vars.outputs.languages) }}
+ steps:
+ - uses: asottile/workflows/.github/actions/fast-checkout@v1.4.0
+ - uses: actions/setup-python@v4
+ with:
+ python-version: 3.8
+
+ - run: echo "$CONDA\Scripts" >> "$GITHUB_PATH"
+ shell: bash
+ if: matrix.os == 'windows-latest' && matrix.language == 'conda'
+ - run: testing/get-coursier.sh
+ shell: bash
+ if: matrix.language == 'coursier'
+ - run: testing/get-dart.sh
+ shell: bash
+ if: matrix.language == 'dart'
+ - run: |
+ sudo apt-get update
+ sudo apt-get install -y --no-install-recommends \
+ lua5.3 \
+ liblua5.3-dev \
+ luarocks
+ if: matrix.os == 'ubuntu-latest' && matrix.language == 'lua'
+ - run: |
+ echo 'C:\Strawberry\perl\bin' >> "$GITHUB_PATH"
+ echo 'C:\Strawberry\perl\site\bin' >> "$GITHUB_PATH"
+ echo 'C:\Strawberry\c\bin' >> "$GITHUB_PATH"
+ shell: bash
+ if: matrix.os == 'windows-latest' && matrix.language == 'perl'
+ - run: testing/get-swift.sh
+ if: matrix.os == 'ubuntu-latest' && matrix.language == 'swift'
+
+ - name: install deps
+ run: python -mpip install -e . -r requirements-dev.txt
+ - name: run tests
+ run: coverage run -m pytest tests/languages/${{ matrix.language }}_test.py
+ - name: check coverage
+ run: coverage report --include pre_commit/languages/${{ matrix.language }}.py,tests/languages/${{ matrix.language }}_test.py
+ collector:
+ needs: [language]
+ if: always()
+ runs-on: ubuntu-latest
+ steps:
+ - name: check for failures
+ if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled')
+ run: echo job failed && exit 1