Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

Find Feature Children Action: enables Find Usage for children features#119

Open
Lycheers wants to merge 14 commits intoisselab:mainfrom
Lycheers:main
Open

Find Feature Children Action: enables Find Usage for children features#119
Lycheers wants to merge 14 commits intoisselab:mainfrom
Lycheers:main

Conversation

@Lycheers
Copy link

@Lycheers Lycheers commented Jan 30, 2025

Description

We implemented a FindChildrenAction that

  1. builds a hierarchical structure of a selected feature and all its child features
  2. collects usage references for each feature in the hierarchy
  3. displays usages grouped by feature
  4. supports recursive child discovery and usage aggregation

Related Issue

#50

Motivation and Context

When features have multiple nested child features, manually inspecting each one to find code references becomes time-consuming. This action simplifies code navigation by a right click on the selected feature and automatically gathers all usages of a selected parent feature and its entire hierarchy of child features in one view. Developers can now instantly see how a feature family is used across the project. This centralized overview helps maintain better mental models of feature relationships while reducing context-switching during code analysis.

How Has This Been Tested?

  • Tests are created and passing
  • Manual testing
    We executed the "Find Feature Children" action manually in the feature-model-feature.file in the Snake project.
    We did two kinds of tests:
  1. feature with children features
  2. feature without child
    In the first case, it displayed usages of the selected feature and its children features in the window.
    In the second case, we ensured that no children from other features were shown, only the usage of the feature itself is displayed.

Demo:

Demo_FindFeatureChildren.mp4

Types of changes

  • Pipeline changes
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
    • I have updated the documentation accordingly.
  • I have updated the CONTRIBUTORS file.
  • I have updated the CHANGELOG.

@Lycheers Lycheers closed this Feb 27, 2025
@Lycheers Lycheers reopened this Feb 27, 2025
@Lycheers Lycheers changed the title Feature - Find Feature Children Find Feature Children Action: enables Find Usage for children features Feb 27, 2025
Copy link
Member

@johmara johmara left a comment

Choose a reason for hiding this comment

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

Does it work through the feature model view?
Does it work in code annotation context? in Fileaannotation context? and folder annotation context?

Don't forget to annotate your code

@Lycheers
Copy link
Author

Does it work through the feature model view? Does it work in code annotation context? in Fileaannotation context? and folder annotation context?

Don't forget to annotate your code

Our current Implementation works as we discussed in a previous meeting only in feature model files.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants