aboutsummaryrefslogtreecommitdiffstats
path: root/src/ratatui/.github
diff options
context:
space:
mode:
Diffstat (limited to 'src/ratatui/.github')
-rw-r--r--src/ratatui/.github/ISSUE_TEMPLATE/bug_report.md60
-rw-r--r--src/ratatui/.github/ISSUE_TEMPLATE/config.yml1
-rw-r--r--src/ratatui/.github/ISSUE_TEMPLATE/feature_request.md32
-rw-r--r--src/ratatui/.github/workflows/cd.yml19
-rw-r--r--src/ratatui/.github/workflows/ci.yml76
5 files changed, 188 insertions, 0 deletions
diff --git a/src/ratatui/.github/ISSUE_TEMPLATE/bug_report.md b/src/ratatui/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644
index 00000000..0a0f4bc6
--- /dev/null
+++ b/src/ratatui/.github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,60 @@
+---
+name: Bug report
+about: Create an issue about a bug you encountered
+title: ''
+labels: bug
+assignees: ''
+---
+
+<!--
+Hi there, sorry `ratatui` is not working as expected.
+Please fill this bug report conscientiously.
+A detailed and complete issue is more likely to be processed quickly.
+-->
+
+## Description
+<!--
+A clear and concise description of what the bug is.
+-->
+
+
+## To Reproduce
+<!--
+Try to reduce the issue to a simple code sample exhibiting the problem.
+Ideally, fork the project and add a test or an example.
+-->
+
+
+## Expected behavior
+<!--
+A clear and concise description of what you expected to happen.
+-->
+
+
+## Screenshots
+<!--
+If applicable, add screenshots, gifs or videos to help explain your problem.
+-->
+
+
+## Environment
+<!--
+Add a description of the systems where you are observing the issue. For example:
+- OS: Linux
+- Terminal Emulator: xterm
+- Font: Inconsolata (Patched)
+- Crate version: 0.7
+- Backend: termion
+-->
+
+- OS:
+- Terminal Emulator:
+- Font:
+- Crate version:
+- Backend:
+
+## Additional context
+<!--
+Add any other context about the problem here.
+If you already looked into the issue, include all the leads you have explored.
+-->
diff --git a/src/ratatui/.github/ISSUE_TEMPLATE/config.yml b/src/ratatui/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 00000000..3ba13e0c
--- /dev/null
+++ b/src/ratatui/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1 @@
+blank_issues_enabled: false
diff --git a/src/ratatui/.github/ISSUE_TEMPLATE/feature_request.md b/src/ratatui/.github/ISSUE_TEMPLATE/feature_request.md
new file mode 100644
index 00000000..ae095edb
--- /dev/null
+++ b/src/ratatui/.github/ISSUE_TEMPLATE/feature_request.md
@@ -0,0 +1,32 @@
+---
+name: Feature request
+about: Suggest an idea for this project
+title: ''
+labels: enhancement
+assignees: ''
+
+---
+
+## Problem
+<!--
+A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
+-->
+
+## Solution
+<!--
+A clear and concise description of what you want to happen.
+Things to consider:
+- backward compatibility
+- ease of use of the API (https://rust-lang.github.io/api-guidelines/)
+- consistency with the rest of the crate
+-->
+
+## Alternatives
+<!--
+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.
+-->
diff --git a/src/ratatui/.github/workflows/cd.yml b/src/ratatui/.github/workflows/cd.yml
new file mode 100644
index 00000000..f61e3603
--- /dev/null
+++ b/src/ratatui/.github/workflows/cd.yml
@@ -0,0 +1,19 @@
+name: Continuous Deployment
+
+on:
+ push:
+ tags:
+ - "v*.*.*"
+
+jobs:
+ publish:
+ name: Publish on crates.io
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout the repository
+ uses: actions/checkout@v3
+ - name: Publish
+ uses: actions-rs/cargo@v1
+ with:
+ command: publish
+ args: --token ${{ secrets.CARGO_TOKEN }}
diff --git a/src/ratatui/.github/workflows/ci.yml b/src/ratatui/.github/workflows/ci.yml
new file mode 100644
index 00000000..bfa363e9
--- /dev/null
+++ b/src/ratatui/.github/workflows/ci.yml
@@ -0,0 +1,76 @@
+on:
+ push:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+
+name: CI
+
+env:
+ CI_CARGO_MAKE_VERSION: 0.35.16
+
+jobs:
+ test:
+ strategy:
+ matrix:
+ os: [ubuntu-latest, windows-latest, macos-latest]
+ rust: ["1.59.0", "stable"]
+ include:
+ - os: ubuntu-latest
+ triple: x86_64-unknown-linux-musl
+ - os: windows-latest
+ triple: x86_64-pc-windows-msvc
+ - os: macos-latest
+ triple: x86_64-apple-darwin
+ runs-on: ${{ matrix.os }}
+ steps:
+ - uses: hecrj/setup-rust-action@50a120e4d34903c2c1383dec0e9b1d349a9cc2b1
+ with:
+ rust-version: ${{ matrix.rust }}
+ components: rustfmt,clippy
+ - uses: actions/checkout@v3
+ - name: Install cargo-make on Linux or macOS
+ if: ${{ runner.os != 'windows' }}
+ shell: bash
+ run: |
+ curl -LO 'https://github.com/sagiegurari/cargo-make/releases/download/${{ env.CI_CARGO_MAKE_VERSION }}/cargo-make-v${{ env.CI_CARGO_MAKE_VERSION }}-${{ matrix.triple }}.zip'
+ unzip 'cargo-make-v${{ env.CI_CARGO_MAKE_VERSION }}-${{ matrix.triple }}.zip'
+ cp 'cargo-make-v${{ env.CI_CARGO_MAKE_VERSION }}-${{ matrix.triple }}/cargo-make' ~/.cargo/bin/
+ cargo make --version
+ - name: Install cargo-make on Windows
+ if: ${{ runner.os == 'windows' }}
+ shell: bash
+ run: |
+ # `cargo-make-v0.35.16-{target}/` directory is created on Linux and macOS, but it is not creatd on Windows.
+ mkdir cargo-make-temporary
+ cd cargo-make-temporary
+ curl -LO 'https://github.com/sagiegurari/cargo-make/releases/download/${{ env.CI_CARGO_MAKE_VERSION }}/cargo-make-v${{ env.CI_CARGO_MAKE_VERSION }}-${{ matrix.triple }}.zip'
+ unzip 'cargo-make-v${{ env.CI_CARGO_MAKE_VERSION }}-${{ matrix.triple }}.zip'
+ cp cargo-make.exe ~/.cargo/bin/
+ cd ..
+ cargo make --version
+ - name: "Format / Build / Test"
+ run: cargo make ci
+ env:
+ RUST_BACKTRACE: full
+
+ lint:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout
+ if: github.event_name != 'pull_request'
+ uses: actions/checkout@v3
+ - name: Checkout
+ if: github.event_name == 'pull_request'
+ uses: actions/checkout@v3
+ with:
+ ref: ${{ github.event.pull_request.head.sha }}
+ - name: "Check conventional commits"
+ uses: crate-ci/committed@master
+ with:
+ args: "-vv"
+ commits: "HEAD"
+ - name: "Check typos"
+ uses: crate-ci/typos@master