GitHub Issues & Projects – Close issue as a duplicate, REST API for sub-issues, and more!

Following our “Evolving GitHub Issues” announcement we’ve continued to improve the experience based on your feedback, including closing an issue as a duplicate, a REST API for sub-issues, and expanding the limits for both sub-issues and issue types.

These new features are all available in public preview for you to try. To gain access for your organization, please sign up here.

🧹 Close an issue as a duplicate

You can now close an issue as a duplicate of another issue, making it easier to manage your issues and provide more clarity on why they were closed.

When closing an issue, select Close as duplicate from the dropdown to search for and select the duplicate issue. You’ll then see an event in the timeline and note at the top making it clear why it was closed.

REST API support for sub-issues

You can now use the REST API to view, add, remove, and reprioritize sub-issues, making it easier to automate your use of sub-issues. Check out the documentation to learn more.

Increased limits for sub-issues and issue types

You can now have up to 100 sub-issues per parent issue (up from 50), as well as up to 25 issue types in an organization (up from 10), making it easier to manage, classify, and break down work.

Issue type organization settings showing maximum limit of 25 issue types

📱 Issue types on GitHub Mobile

You can now view, add, and update issue types on GitHub Mobile.

Issue types on GitHub Mobile

🔍 Improved filtering for sub-issues and issue types

You can use the has: and no: filters to search for sub-issues and issue types both from a project and the repository issues page, making it easier to find the exact set of issues you’re looking for and make updates.

Issue filtering using has filter

Example filters include:
no:type to find all issues that do not yet have a type
no:parent-issue to find all issues without a parent issue
has:sub-issue to find all issues that have sub-issues

Additional improvements

On top of the many bug fixes we’ve shipped, we’ve also introduced the following improvements:
– If the sub-issue is from a different repository than the parent issue, you will now see the repository name in the sub-issues list.
– In GitHub markdown, pasting in a project link will now show the project name as well as more project details on hover.
– Projects insights charts now use Highcharts, which is an industry standard library for charts, improving our accessibility of projects insights.
– You can now use the UpdateProjectV2Field GraphQL API mutation to directly update all single select field options in one API.

Tell us what you think!

Join the discussion in the community discussion to share your feedback.

See how to use GitHub for project planning with GitHub Issues, check out what’s on the roadmap, and learn more in the documentation.

You can now create and manage code security settings at the enterprise level. This change reduces the need for repetitive setup at the organization level.

Key updates:
– Apply configurations across all repositories in an enterprise, only to repos without existing configurations, or to newly created repos.
– Enforce settings across your enterprise, ensuring security policies are applied consistently.
– Enterprise configurations will also appear on the organization-level page, giving you the flexibility to manage centrally but deploy locally. This also enables you to roll out configurations, organization by organization.

Learn more about enterprise-level code security configurations.

See more

A list of the GitHub Copilot updates in the November VS Code release.

In the latest Visual Studio Code release, you will find a suite of enhancements to GitHub Copilot, designed to make your coding and debugging experience in VS Code more productive and efficient. These features are now available for you to try out in the latest version of Visual Studio Code.

More relevant suggestions with extra options to add context

To give you suggestions and edits, Copilot collects information from your codebase. To give you even more specific and relevant responses, you can provide additional context to guide and focus Copilot. In this release, we’ve added more ways to add context for Copilot Chat and Copilot Edits.

You can now add symbols to the context to provide very detailed and specific context. Drag and drop a symbol from the Outline view or editor breadcrumb in the Chat view, or reference a symbol by typing #sym in the chat input field.

You can also add folders to the context to provide a broader context. Drag and drop a folder from the Explorer view into the Chat view to add all files in that folder to the context.

More efficient multi-file editing

With Copilot Edits (preview), you can get edit suggestions across multiple files in your project. We’ve made several enhancements to Copilot Edits to make the experience more efficient and easier to use.

  • Editor overlay controls: The overlay controls in the editor enable you to quickly navigate between suggested edits, review, and apply them. As Copilot Edits is generating edits, the overlay controls will show a progress indicator.

  • Move chat conversation to Copilot Edits: You might use Copilot Chat to explore ideas for making code changes. Instead of applying individual code blocks from chat, you can now move the chat session to Copilot Edits to apply all code suggestions from the session.

    Edit with Copilot showing for a chat exchange.

  • Working set: For large codebases, it can be hard to add the right files to the working set. VS Code can now suggest relevant files to add to the working set, so you get the most relevant edits across your project. And to make adding to the working even more efficient, drag files from the Explorer view or Search view to add them to the working set.

  • Restore edit sessions: Copilot Edits now saves and restores your edit session across VS Code restarts, so you can continue where you left off.

Kickstart debugging with copilot-debug

Setting up a debugging environment can be challenging, especially when you’re working with a new codebase or project. With the new copilot-debug terminal command, you can ask Copilot to generate a launch configuration for you based on your project’s setup. And if your project needs a compilation step before debugging, Copilot can generate a task for that too.

Customize commit-message generation

Setting: github.copilot.chat.commitMessageGeneration.instructions

Copilot can help you generate commit messages based on the changes you’ve made. In this release, we added support for custom instructions when generating a commit message. For example, if your commit messages need to follow a specific format, you can describe this in the custom instructions.

Use the github.copilot.chat.commitMessageGeneration.instructions setting to either specify the custom instructions directly, or to specify a file from your workspace that contains the custom instructions. These instructions are appended to the prompt that is used to generate the commit message. Get more information on how to use custom instructions.

See more