GitHub Introduces Sub-Issues

3 min read Original article ↗

Proposal:

GitHub Introduces Sub-Issues: A New Way to Organize and Track Work

GitHub has just rolled out a highly anticipated feature: sub-issues. This new functionality allows users to create and manage hierarchical relationships between issues, making it easier to break down complex tasks and track progress more effectively. Here’s what you need to know about this exciting update.

What Are Sub-Issues?

Image

Sub-issues enable you to create smaller, more manageable tasks directly within an existing issue. You can either create a new sub-issue from scratch or link an existing issue as a sub-issue. This is particularly useful for breaking down large projects into smaller, actionable steps or for organizing related tasks under a single parent issue.

Technically, a sub-issue is just a normal issue that has been assigned a parent issue. This means it retains all the functionality of a regular issue but is now part of a hierarchical structure, making it easier to manage dependencies and track progress.

Key Features

  1. Create Sub-Issues Directly in an Issue: You can now create a sub-issue right within the parent issue, streamlining the process of organizing tasks.
  2. Link Existing Issues: If you already have an issue that should be a sub-task of another, you can easily link it as a sub-issue.
  3. Single Parent Limitation: A sub-issue can only have one parent at a time. When you assign an issue as a sub-issue to a new parent, it automatically gets unlinked from its previous parent, ensuring clear and unambiguous hierarchies.
  4. Completion Status in the Issues List: The issues list now displays the completion status of sub-issues, giving you a quick overview of progress. This replaces the previous use of checkboxes for tracking task completion.
    Image
  5. Sub-issue circular dependency: A parent may not be a sub-issue of itself.
    Image
  6. View Sub-Issues as a Tree: GitHub now allows you to visualize sub-issues in a tree structure, making it easier to understand the relationships and hierarchy between tasks. This provides a clear and intuitive way to navigate complex projects.
    Image

What’s Changed?

If you previously relied on checkboxes, e.g.

Image

within issue descriptions to track subtasks in the issues list, be aware that this method is no longer supported. GitHub now encourages users to switch to sub-issues for better organization and tracking. Not sure how practical it is.

Looking Ahead

The introduction of sub-issues marks a significant step forward in GitHub’s project management capabilities. It provides teams with a clearer way to visualize dependencies, track progress, and manage complex workflows.

While there may not be an immediate workaround for those who relied on checkboxes, the benefits of sub-issues are likely to outweigh the initial adjustment period. Happy coding!

Checklist:

To be completed by the assignee. Check off tasks that have been completed or are not applicable.

Details
  • Implementation completed
  • Tests developed
  • Documentation updated
  • Documentation reviewed
  • Changelog updated
  • OpenAPI YAML updated and issue created to rebuild clients