Skip to content

chore: support new-test PRs in the pull request template - #1105

Open
Dor-bl wants to merge 3 commits into
appium:mainfrom
Dor-bl:claude/pr-template-new-features-sxw5dj
Open

chore: support new-test PRs in the pull request template#1105
Dor-bl wants to merge 3 commits into
appium:mainfrom
Dor-bl:claude/pr-template-new-features-sxw5dj

Conversation

@Dor-bl

@Dor-bl Dor-bl commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

List of changes

This pull request updates the .github/PULL_REQUEST_TEMPLATE.md file to improve clarity and guidance for contributors when submitting pull requests. The changes focus on better structuring the template, clarifying PR title conventions, and improving the way tests and documentation updates are tracked.

Template improvements:

  • Added a section at the top explaining how to format PR titles, including prefixes for type and instructions for indicating breaking changes.
  • Updated the checklist to distinguish between "New test coverage" and "Test fix," making it clearer when contributors are adding tests versus fixing existing ones.
  • Introduced a dedicated "Tests" section with checkboxes for unit tests, integration tests, or explanations when no automated tests are included. This helps ensure test coverage is considered for all changes.

Documentation and maintenance:

  • Clarified the documentation update checklist, including an option for cases where no user-facing changes are made.
  • Removed the redundant "Integration tests" checklist item in favor of the new, more comprehensive "Tests" section.

Types of changes

What types of changes are you proposing/introducing to the .NET client?
Put an x in the boxes that apply.

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change that adds functionality or value)
  • Breaking change (fix or feature that would cause existing functionality not to work as expected)
  • Test fix (non-breaking change that improves test stability or correctness)
  • Chore/Maintenance (updates to build scripts, dependencies, or GitHub Actions)

Documentation

  • Have you proposed a file change/PR with Appium to update documentation?

This can be done by navigating to the documentation section on http://appium.io, selecting the appropriate command/endpoint and clicking the 'Edit this doc' link to update the C# example.

Integration tests

  • Have you provided integration tests for your changes? (required for bug fix, new feature, or test fix)

Details

Please provide more details about changes if necessary. You can provide code samples showing how they work and possible use cases if there are new features. Also, you can create gists with pasted C# code samples or put them here using markdown.
About markdown, please read. Mastering markdown and writing on GitHub

Copilot AI lite review requested due to automatic review settings August 19, 2026 20:50

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the repository’s pull request template to better guide contributors on PR title conventions, change categorization, and test/documentation expectations.

Changes:

  • Adds a PR title guidance section (prefixes + breaking-change indicator).
  • Refines the “Types of changes” checklist (splitting new test coverage vs test fixes).
  • Introduces a dedicated “Tests” section and improves documentation tracking options.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +3 to +5
Labels and the draft release notes are generated from the PR title, so please prefix it with the matching type:
`feat:` (new feature) · `fix:` (bugfix) · `test:` · `docs:` · `build:` · `ci:` · `chore:`
Breaking changes must additionally carry `!` or `BREAKING CHANGE:` in the title.
Comment on lines 40 to 42
- [ ] Have you proposed a file change/ PR with Appium to update documentation?
- [ ] Not applicable (no user facing behaviour change, e.g. tests, CI or maintenance only)
#### This can be done by navigating to the documentation section on http://appium.io selecting the appropriate command/endpoint and clicking the 'Edit this doc' link to update the C# example
@Dor-bl Dor-bl changed the title Claude/pr template new features sxw5dj chore: support new-test PRs in the pull request template Aug 19, 2026
Dor-bl and others added 3 commits August 19, 2026 20:53
The template only offered "Test fix" for anything test related, so PRs
that add coverage for previously untested functionality (e.g. appium#1104) had
to be filed under a box describing stability fixes, and it asked whether
integration tests were provided for changes that *are* the tests.

- add a "New test coverage" type next to "Test fix"
- replace the "Integration tests" question with a "Tests" section that
  distinguishes unit from integration tests, asks how they run, and
  allows an explained "no automated tests"
- add "not applicable" to the documentation checklist
- document the conventional-commit title prefixes that labeler.yml and
  release-drafter derive labels, release notes and semver from
- add a "Related issue" line

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Co16HzbYRDPDjUh6zg1r1D
Out of scope for this change, which is about PRs adding test coverage.
The title, related-issue, test and documentation sections stay.

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Co16HzbYRDPDjUh6zg1r1D
The title patterns were anchored as "^chore:.*", so a scoped title such
as "chore(ci): migrate release-drafter config to v7" (appium#1087) matched no
rule and the PR went unlabelled -- which also drops it from every
release-drafter category and from the semver resolver.

Each type pattern now accepts an optional scope and an optional "!", so
"feat(ios)!: ..." picks up both Enhancement and BreakingChange, and the
version resolver takes the major bump. The patterns are single quoted
because "\(" is not a valid escape inside a double quoted YAML scalar.

Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Co16HzbYRDPDjUh6zg1r1D
Copilot AI review requested due to automatic review settings August 19, 2026 20:54
@Dor-bl
Dor-bl force-pushed the claude/pr-template-new-features-sxw5dj branch from ed79930 to eaabc27 Compare August 19, 2026 20:54
@github-actions github-actions Bot added the Chore label Aug 19, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.

Suppressed comments (3)

.github/PULL_REQUEST_TEMPLATE.md:5

  • The title prefix guidance is missing the github: prefix (supported by .github/labeler.yml) and the breaking-change ! guidance is ambiguous; it’s safer to specify the conventional placement (type!: / type(scope)!:) to avoid accidental BreakingChange labeling from stray exclamation marks.
Labels and the draft release notes are generated from the PR title, so please prefix it with the matching type:
`feat:` (new feature) · `fix:` (bugfix) · `test:` · `docs:` · `build:` · `ci:` · `chore:`
Breaking changes must additionally carry `!` or `BREAKING CHANGE:` in the title.

.github/PULL_REQUEST_TEMPLATE.md:41

  • Minor wording/grammar: “user-facing” is typically hyphenated, and “behavior” matches the spelling used elsewhere in this repo.
- [ ] Not applicable (no user facing behaviour change, e.g. tests, CI or maintenance only)

.github/PULL_REQUEST_TEMPLATE.md:37

  • Spelling is inconsistent with the rest of the repo (e.g. README uses “behavior”); consider using American English here as well.

This issue also appears on line 41 of the same file.

Bugfixes, new features and new test coverage are expected to ship with tests. If the behaviour cannot be covered automatically (real device or cloud only, hardware dependent, inherently flaky), please say so here instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants