Skip to content

Use issue templates for python/cpython #437

Closed
@ezio-melotti

Description

@ezio-melotti

After the migration, we could use issue templates on the python/cpython repo.

When the user clicks on the green "New Issue" button, we could present a few options (like this repo does):

  • Propose a new feature or enhancement
  • Report a bug
  • Report a crash
  • Report a security issue
  • Visit the documentation

The first four provide a first level of triaging, by determining the type of issue. The last two can be links to the security policy page (or something equivalent) and a Devguide section about reporting bugs. Each of them should have a description to clarify when to use them. An additional link to python-ideas could be added too.

It is also possible to create templates that use forms, with dropdowns and textareas that can be filled by the user.

If we do this, we could have a few dropdowns for

  • The affected area: library/tests/documentation/interpreter-core/extension-modules/not-sure
  • Python version: 3.7/3.8/3.9/3.10/3.11, possibly also options for branches in security/bug fixes/features mode
  • Operating system: all/Linux/MacOS/Windows/others

A few other considerations:

  • We could have a single template, with the "issue type" selection being another dropdown
  • We could disable free-form issues and enforce the use of templates
  • We should make clear that the version/os refer to the ones where the behavior has been observed by the user, and not necessarily all the affected targets
  • We should be able to automatically set some labels depending on the selections made by the user
  • We could also make the form simpler (or avoid using it altogether) and skip the dropdowns, making reporting easier and triaging more difficult (but possibly more accurate)

I still have to play around more with issue templates to better understand the extent of their capabilities, and I'm open to more ideas and feedback, especially from people that have related experience on other repos.

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions