diff --git a/CHANGELOG.md b/CHANGELOG.md index 835a5539e5a0..51bc1e09d923 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,21 @@ # Docs changelog +<<<<<<< changelog-update-1772664132 +**4 March 2026** + +We've published a new article to coincide with the public preview of the Copilot coding agent for Jira integration. + +See [Integrating Copilot coding agent with Jira](https://docs.github.com/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-jira). +======= +**5 March 2026** + +We've updated our documentation to include a series of articles about the GitHub integration in Teams (previously, docs for the integration lived in a public repository). + +See [GitHub integration in Teams](https://docs.github.com/integrations/how-tos/teams). +>>>>>>> main + +
+ **3 March 2026** We've added a new reference article, [Copilot customization cheat sheet](https://docs.github.com/copilot/reference/customization-cheat-sheet), to help you choose the right Copilot customization approach for your workflow. diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md index 454be9ef791e..7632a5a37837 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository.md @@ -38,7 +38,9 @@ shortTitle: Configure {% data reusables.community.issue-forms-beta %} -With issue forms, you can create issue templates that have customizable web form fields. You can encourage contributors to include specific, structured information by using issue forms in your repository. Issue forms are written in YAML using the {% data variables.product.prodname_dotcom %} form schema. For more information, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema). {% data reusables.actions.learn-more-about-yaml %} +With issue forms, you can create issue templates that have customizable web form fields. You can encourage contributors to include specific, structured information by using issue forms in your repository. + +{% ifversion issue-form-upload %}Issue forms support several field types, including text inputs, dropdowns, checkboxes, and file uploads.{% endif %} Issue forms are written in YAML using the {% data variables.product.prodname_dotcom %} form schema. For more information, see [AUTOTITLE](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema). {% data reusables.actions.learn-more-about-yaml %} To use an issue form in your repository, you must create a new file and add it to the `.github/ISSUE_TEMPLATE` folder in your repository. diff --git a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md index 0048ce4a2c55..490e0fafcf83 100644 --- a/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md +++ b/content/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-githubs-form-schema.md @@ -59,7 +59,7 @@ For each form element, you can set the following keys. | Key | Description | Required | Type | Default | Valid values | | --- | ----------- | -------- | ---- | ------- | ------- | -| `type` | The type of element that you want to define. | {% octicon "check" aria-label="Required" %} | String | {% octicon "dash" aria-label="Not applicable" %} | | +| `type` | The type of element that you want to define. | {% octicon "check" aria-label="Required" %} | String | {% octicon "dash" aria-label="Not applicable" %} | | | `id` | The identifier for the element, except when `type` is set to `markdown`. {% data reusables.form-schema.id-must-be-unique %} If provided, the `id` is the canonical identifier for the field in URL query parameter prefills. | {% octicon "x" aria-label="Optional" %} | String | {% octicon "dash" aria-label="Not applicable" %} | {% octicon "dash" aria-label="Not applicable" %} | | `attributes` | A set of key-value pairs that define the properties of the element. | {% octicon "check" aria-label="Required" %} | Map | {% octicon "dash" aria-label="Not applicable" %} | {% octicon "dash" aria-label="Not applicable" %} | | `validations` | A set of key-value pairs that set constraints on the element. | {% octicon "x" aria-label="Optional" %} | Map | {% octicon "dash" aria-label="Not applicable" %} | {% octicon "dash" aria-label="Not applicable" %} | @@ -73,6 +73,9 @@ You can choose from the following types of form elements. Each type has unique a | [`input`](#input) | A single-line text field. | | [`dropdown`](#dropdown) | A dropdown menu. | | [`checkboxes`](#checkboxes) | A set of checkboxes. | +| {% ifversion issue-form-upload %} | +| [`upload`](#upload) | A file upload field. | +| {% endif %} | ### `markdown` @@ -266,6 +269,58 @@ body: - label: Linux ``` +{% ifversion issue-form-upload %} + +### `upload` + +You can use an `upload` element to add a file upload field to your form. Contributors can drag and drop files or click to browse and select files directly within the form. + +#### Supported file types and size limits + +The following file types are accepted, subject to the size limits below: + +| Category | Extensions | Size limit | +|-----------| ---------- | -------- | +| Archives | `.zip`, `.gz`, `.tar.gz` | 25 MB | +| Documents | `.pdf`, `.docx`, `.xlsx`, `.pptx` | 25 MB | +| Images | `.png`, `.jpg`, `.jpeg`, `.gif`, `.svg`, `.webp` | 10 MB | +| Videos | `.mp4`, `.mov`, `.webm` | 100 MB | +| Text | `.json`, `.py`, `.js`, `.ts`, `.log`, `.txt`, `.csv` | 25 MB | + +#### Attributes for `upload` + +{% data reusables.form-schema.attributes-intro %} + +| Key | Description | Required | Type | Default | Valid values | +| --- | ----------- | -------- | ---- | ------- | ------- | +| `label` | A brief description of the expected file upload, which is displayed in the form. | {% octicon "check" aria-label="Required" %} | String | {% octicon "dash" aria-label="Not applicable" %} | {% octicon "dash" aria-label="Not applicable" %} | +| `description` | A description of the file upload field to provide context or guidance, which is displayed in the form. | {% octicon "x" aria-label="Optional" %} | String | Empty String | {% octicon "dash" aria-label="Not applicable" %} | + +#### Validations for `upload` + +{% data reusables.form-schema.validations-intro %} + +| Key | Description | Required | Type | Default | Valid values | +| --- | ----------- | -------- | ---- | ------- | ------- | +{% data reusables.form-schema.required-key %} +| `accept` | A comma-separated list of file extensions that are accepted. If omitted, all supported file types are accepted. | {% octicon "x" aria-label="Optional" %} | String | {% octicon "dash" aria-label="Not applicable" %} | {% octicon "dash" aria-label="Not applicable" %} | + +#### Example of `upload` + +```yaml copy +body: +- type: upload + id: screenshots + attributes: + label: Upload relevant files + description: "Drag and drop any relevant screenshots or log files." + validations: + required: false + accept: ".png,.jpg,.gif,.log,.txt,.zip" +``` + +{% endif %} + ## Further reading * [YAML](https://yaml.org) diff --git a/content/copilot/concepts/tools/about-copilot-integrations.md b/content/copilot/concepts/tools/about-copilot-integrations.md index 339c451a8144..5975dfc10542 100644 --- a/content/copilot/concepts/tools/about-copilot-integrations.md +++ b/content/copilot/concepts/tools/about-copilot-integrations.md @@ -25,6 +25,7 @@ Currently, {% data variables.copilot.copilot_coding_agent %} supports integratio * **Slack**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-slack) - Learn how to set up the Slack integration to trigger {% data variables.copilot.copilot_coding_agent %} directly from your Slack workspace. * **Linear**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-linear) - Learn how to set up the Linear integration to trigger {% data variables.copilot.copilot_coding_agent %} directly from your Linear issues. * **Azure Boards**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-azure-boards) - Learn how to set up the Azure Boards integration to trigger {% data variables.copilot.copilot_coding_agent %} directly from your Azure Boards work items. +* **Jira**: [AUTOTITLE](/copilot/how-tos/use-copilot-agents/coding-agent/integrate-coding-agent-with-jira) - Learn how to set up the Jira integration to trigger {% data variables.copilot.copilot_coding_agent %} directly from your Jira workspace. ## Benefits of integrations diff --git a/content/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs.md b/content/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs.md index 59e515b74a96..0ed547ae2790 100644 --- a/content/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs.md +++ b/content/copilot/how-tos/use-copilot-agents/coding-agent/review-copilot-prs.md @@ -24,9 +24,7 @@ category: After {% data variables.product.prodname_copilot_short %} has finished working on a coding task, and has requested a pull request review from you, you should review {% data variables.product.prodname_copilot_short %}'s work thoroughly before merging the pull request. > [!IMPORTANT] -> If you have branch protection rules that require pull request approvals, and you initiate a pull request by assigning an issue to {% data variables.product.prodname_copilot_short %}, you can approve the pull request, but **your approval won't count** toward the required number of approvals. Someone else must approve the pull request for it to be merged. -> -> Additionally, if the "Require approval of the most recent reviewable push" setting is enabled, the final push to the pull request will require **n + 1 approvals**, where _n_ is the number of required approvals. The person who initiated the original {% data variables.product.prodname_copilot_short %} pull request can't be counted among the required reviewers for that final push—but if someone else requested the latest {% data variables.product.prodname_copilot_short %}-generated change, their approval **can** count. +> If you have rules or branch protections that require pull request approvals, and you ask {% data variables.product.prodname_copilot_short %} to create a pull request, you can approve the pull request, but **your approval won't count** toward the required number of approvals. Someone else must approve the pull request for it to be merged. You can ask {% data variables.product.prodname_copilot_short %} to make changes by mentioning `@copilot` in pull request comments, or you can check out {% data variables.product.prodname_copilot_short %}'s branch and make changes yourself. diff --git a/content/issues/planning-and-tracking-with-projects/understanding-fields/about-iteration-fields.md b/content/issues/planning-and-tracking-with-projects/understanding-fields/about-iteration-fields.md index b917f5e1fecc..46c02e5d0cad 100644 --- a/content/issues/planning-and-tracking-with-projects/understanding-fields/about-iteration-fields.md +++ b/content/issues/planning-and-tracking-with-projects/understanding-fields/about-iteration-fields.md @@ -62,3 +62,14 @@ You can insert breaks into your iterations to communicate when you are taking ti ![Screenshot of the list of iterations for a project. On the line dividing two iterations, a button, labeled "Insert break," is outlined in orange.](/assets/images/help/issues/iteration-insert-break.png) 1. Optionally, to change the duration of the break, click on the date to open the calendar. Click on the start day, then click the end day, and then click **Apply**. 1. Click **Save changes**. + +## Moving items between iterations + +When a project view is grouped by an iteration field, you can bulk-move all items from one iteration to another. This is useful for rolling over unfinished work to the next sprint, rescheduling items during reprioritization, or clearing a backlog iteration. + +1. Navigate to your project. +1. In your project, group a view by an iteration field. For more information, see [AUTOTITLE](/issues/planning-and-tracking-with-projects/customizing-views-in-your-project/customizing-the-table-layout#grouping-by-field-values). +1. Click {% octicon "kebab-horizontal" aria-label="iteration options" %} in the group header for the iteration you want to move items from. +1. Click **Move items to...**. +1. Select the target iteration you want to move the items to. +1. Confirm the move. All items in the group are updated to the target iteration. diff --git a/data/features/issue-form-upload.yml b/data/features/issue-form-upload.yml new file mode 100644 index 000000000000..afbe837ef778 --- /dev/null +++ b/data/features/issue-form-upload.yml @@ -0,0 +1,6 @@ +# Reference: https://github.com/github/releases/issues/7534 +# File upload field in issue forms +versions: + fpt: '*' + ghec: '*' + ghes: '>= 3.21' diff --git a/data/reusables/community/issue-forms-sample.md b/data/reusables/community/issue-forms-sample.md index 52e9bb8a2f3b..84fc18b3eb5d 100644 --- a/data/reusables/community/issue-forms-sample.md +++ b/data/reusables/community/issue-forms-sample.md @@ -63,5 +63,12 @@ body: description: By submitting this issue, you agree to follow our [Code of Conduct](https://example.com). options: - label: I agree to follow this project's Code of Conduct - required: true + required: true{% ifversion issue-form-upload %} + - type: upload + id: screenshots + attributes: + label: Upload screenshots + description: If applicable, add screenshots to help explain your problem. + validations: + required: false{% endif %} ``` diff --git a/data/reusables/projects/open-view-menu.md b/data/reusables/projects/open-view-menu.md index 4a2ccaa2066e..653f8b32635b 100644 --- a/data/reusables/projects/open-view-menu.md +++ b/data/reusables/projects/open-view-menu.md @@ -1,3 +1,2 @@ -1. Click {% octicon "triangle-down" aria-label="View options" %} next to the name of the currently open view. +1. Click **{% octicon "gear" aria-label="View options" %} View** next to the search bar of the currently open view. - ![Screenshot showing the tabs at the top of a project. The view menu icon is highlighted with an orange outline.](/assets/images/help/projects-v2/view-menu-icon.png)