From 74568495602c809a1ef086d8d24d4665f5cf74a8 Mon Sep 17 00:00:00 2001 From: Artak <34246760+mkArtakMSFT@users.noreply.github.com> Date: Fri, 4 Nov 2022 16:41:00 -0700 Subject: Create repro.md (#44883) * Create repro.md * Update bug report template to reference the repro description * Update 10_bug_report.yml * Update docs/repro.md Co-authored-by: William Godbe * Update docs/repro.md Co-authored-by: Doug Bunting <6431421+dougbu@users.noreply.github.com> * Update docs/repro.md Co-authored-by: Doug Bunting <6431421+dougbu@users.noreply.github.com> * Update docs/repro.md Co-authored-by: Doug Bunting <6431421+dougbu@users.noreply.github.com> * Update docs/repro.md Co-authored-by: Tanay Parikh * Update .github/ISSUE_TEMPLATE/10_bug_report.yml Co-authored-by: Tanay Parikh * Update docs/repro.md Co-authored-by: Tanay Parikh * Update docs/repro.md Co-authored-by: Tanay Parikh * Update docs/repro.md Co-authored-by: Tanay Parikh * Update docs/repro.md Co-authored-by: Tanay Parikh * Added reasoning why this is important * Added a note recommending a `REPL` option * Update docs/repro.md Co-authored-by: Tanay Parikh Co-authored-by: William Godbe Co-authored-by: Doug Bunting <6431421+dougbu@users.noreply.github.com> Co-authored-by: Tanay Parikh --- .github/ISSUE_TEMPLATE/10_bug_report.yml | 5 +---- docs/repro.md | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 4 deletions(-) create mode 100644 docs/repro.md diff --git a/.github/ISSUE_TEMPLATE/10_bug_report.yml b/.github/ISSUE_TEMPLATE/10_bug_report.yml index d6852c96af..ad85dbc18e 100644 --- a/.github/ISSUE_TEMPLATE/10_bug_report.yml +++ b/.github/ISSUE_TEMPLATE/10_bug_report.yml @@ -33,11 +33,8 @@ body: attributes: label: Steps To Reproduce description: | - Steps to reproduce the behavior. + We ❤ code! Point us to a [minimalistic project which reproduces this issue (repro)](https://github.com/dotnet/aspnetcore/blob/main/docs/repro.md) hosted in a public GitHub repo. - We ❤ code! Point us to a minimalistic repro project hosted in a public GitHub repo. - For a repro project, create a new ASP.NET Core project using the template of your choice, apply the minimum required code to result in the issue you're observing. - We will close this issue if: - The repro project you share with us is complex. We can't investigate custom projects, so don't point us to such, please. - If we will not be able to repro the behavior you're reporting. diff --git a/docs/repro.md b/docs/repro.md new file mode 100644 index 0000000000..c7b586d076 --- /dev/null +++ b/docs/repro.md @@ -0,0 +1,26 @@ +# Bug Report Reproduction Guide + +When customers plan to report an issue with ASP.NET Core, we will most likely ask them to provide a so called `minimal reproduction project (repro)`. +This serves two purposes: +- It helps issue reporters validate their assumptions by trying to recreate the behavior in a new project. +- It helps eliminate ambiguity and speeds up investigations. We may also be able to provide workarounds in certain scenarios. + +This document describes what a minimal repro project is, and why it's important to us. + +## What is a minimal repro project? +A repro (or a reproduction) is a project, which can be used to reproduce the reported behavior with minimal effort from a product team, which has the minimum code required to demonstrate the concerning behavior. + +There are two ways you can provide a minimal repro project. The first and simpler option is to use some type of public web-hosted REPL-based environment which supports ASP.NET Core. The other option is to provide a project hosted in GitHub as described below: +- Create a new project, based on one of the ASP.NET Core project templates. + - **Please use the `Empty*` project templates** if they're available for that project type. +- Add the minimum amount of code necessary to reproduce the behavior you are reporting on this newly created project. +- Make sure you **do not** add any dependencies that are irrelevant to the behavior. +- Host the project as a **public** repository on GitHub. +- Make sure you haven't included any binaries in your project (this is usually about the `bin` and `obj` folders in your project) + Note: that this step is important and we won't be able to open zip attachments in your issues. + Zip files are potential attack vectors that we try to avoid at all cost. + + ## Important consideratoins + - **Never** include any sensitive information in your reproduction project. + - **Never** include any code that is not intended to be public in a repro. + - **Do not** reference any external services or data sources. -- cgit v1.2.3