diff --git a/.github/ISSUE_TEMPLATE/bug.md b/.github/ISSUE_TEMPLATE/bug.md deleted file mode 100644 index 9c49fd22..00000000 --- a/.github/ISSUE_TEMPLATE/bug.md +++ /dev/null @@ -1,72 +0,0 @@ ---- -name: Bug -about: Report a bug -title: '' -labels: '' -assignees: '' - ---- - - - -## Which version are you using? - -v0.0.0 - -## Which operating system are you using? - - - -- [ ] Linux amd64 standard -- [ ] Linux amd64 Docker -- [ ] Linux arm64 standard -- [ ] Linux arm64 Docker -- [ ] Linux arm7 standard -- [ ] Linux arm7 Docker -- [ ] Linux arm6 standard -- [ ] Linux arm6 Docker -- [ ] Windows amd64 standard -- [ ] Windows amd64 Docker (WSL backend) -- [ ] macOS amd64 standard -- [ ] macOS amd64 Docker -- [ ] Other (please describe) - -## Describe the issue - -Description - -## Describe how to replicate the issue - - - -1. start the server -2. publish with ... -3. read with ... - -## Did you attach the server logs? - - - -yes / no - -## Did you attach a network dump? - - - -yes / no diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml new file mode 100644 index 00000000..fb703c21 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -0,0 +1,76 @@ +name: Bug report +description: Report a bug + +body: + - type: markdown + attributes: + value: | + To increase the chance of your bug getting fixed, open an issue FOR EACH bug. Do not report multiple problems in a single issue, otherwise they'll probably never get all fixed. + + - type: input + id: version + attributes: + label: Which version are you using? + description: MediaMTX version or commit + validations: + required: true + + - type: dropdown + id: os + attributes: + label: Which operating system are you using? + multiple: true + options: + - Linux amd64 standard + - Linux amd64 Docker + - Linux arm64 standard + - Linux arm64 Docker + - Linux arm7 standard + - Linux arm7 Docker + - Linux arm6 standard + - Linux arm6 Docker + - Windows amd64 standard + - Windows amd64 Docker (WSL backend) + - macOS amd64 standard + - macOS amd64 Docker + - Other (please describe) + validations: + required: true + + - type: textarea + id: description + attributes: + label: Describe how to replicate the issue + description: | + The maintainers must be able to REPLICATE your issue to solve it - therefore, describe in a very detailed way how to replicate it. + value: | + 1. start the server + 2. publish with ... + 3. read with ... + validations: + required: true + + - type: textarea + id: logs + attributes: + label: Server logs + description: | + Server logs are sometimes useful to identify the issue. If you think this is the case, set the parameter 'logLevel' to 'debug' and attach the server logs. + placeholder: Paste or drag the log file here + # render: shell + + - type: textarea + id: network + attributes: + label: Network dump + description: | + If the bug arises when using MediaMTX with external hardware or software, the most helpful content you can provide is a dump of the data exchanged between the server and the target (network dump). + + That can be generated in this way: + 1. Download wireshark (https://www.wireshark.org/) + 2. Start capturing on the interface used for exchanging packets + * If the server and the external hardware or software are both installed on your pc, the interface is probably "loopback", otherwise it's the one of your network card. + 3. Start the server and replicate the issue + 4. Stop capturing, save the result in .pcap format + 5. Attach + placeholder: Attach the pcap file by dragging it here diff --git a/.github/ISSUE_TEMPLATE/feature.md b/.github/ISSUE_TEMPLATE/feature.md deleted file mode 100644 index 46ce83b0..00000000 --- a/.github/ISSUE_TEMPLATE/feature.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -name: Feature Request -about: Share ideas for new features -title: '' -labels: '' -assignees: '' - ---- - - - -## Describe the feature - -Description diff --git a/.github/ISSUE_TEMPLATE/feature.yml b/.github/ISSUE_TEMPLATE/feature.yml new file mode 100644 index 00000000..3d891c94 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature.yml @@ -0,0 +1,15 @@ +name: Feature request +description: Share ideas for new features + +body: + - type: markdown + attributes: + value: | + Please create a request FOR EACH feature. Do not report multiple features in a single request, otherwise they'll probably never get all implemented. + + - type: textarea + id: description + attributes: + label: Describe the feature + validations: + required: true diff --git a/.github/workflows/issue_lint.yml b/.github/workflows/issue_lint.yml deleted file mode 100644 index e4becd26..00000000 --- a/.github/workflows/issue_lint.yml +++ /dev/null @@ -1,52 +0,0 @@ -name: issue_lint - -on: - issues: - types: [opened] - -jobs: - issue_lint: - runs-on: ubuntu-22.04 - - steps: - - uses: actions/checkout@v4 - - - uses: actions/github-script@v6 - with: - github-token: ${{ secrets.GITHUB_TOKEN }} - script: | - const fs = require('fs').promises; - - const getTitles = (str) => ( - [...str.matchAll(/^## (.*)/gm)].map((m) => m[0]) - ); - - const titles = getTitles(context.payload.issue.body); - - for (let file of await fs.readdir('.github/ISSUE_TEMPLATE')) { - if (!file.endsWith('.md')) { - continue; - } - - const template = await fs.readFile(`.github/ISSUE_TEMPLATE/${file}`, 'utf-8'); - const templateTitles = getTitles(template); - - if (templateTitles.every((title) => titles.includes(title))) { - process.exit(0); - } - } - - await github.rest.issues.createComment({ - owner: context.issue.owner, - repo: context.issue.repo, - issue_number: context.issue.number, - body: 'This issue is being automatically closed because it does not follow the issue template.\n' - + 'Please reopen the issue and make sure to include all sections of the template.', - }); - - await github.rest.issues.update({ - owner: context.issue.owner, - repo: context.issue.repo, - issue_number: context.issue.number, - state: 'closed', - });