-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ref(trace) split trace node class #78306
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
github-actions
bot
added
the
Scope: Frontend
Automatically applied to PRs that change frontend components
label
Sep 28, 2024
scttcper
approved these changes
Sep 30, 2024
Splits helpers away from the trace tree model and move the logic so that it is logically grouped. I've removed some helpers that didnt make sense and I'll simplify the trace generating logic with better snapshotting as I dont like how convoluted it's become over time
It was super annoying to have to deal with both spanChildren and children from the pov of the tree model. This has bothered me as it made a lot of things annoying wrt how the tree was actually constructed. The second part was that the children getter was causing a lot of errors and made it annoying to track what children we are actually rendering. From the pov of testing, the new tree model is serializable, which means we can just use snapshot testing to assert the tree is the shape that we expect it to be. The diff is partially large as I renamed the old test file which had 3k loc tests. I plan on porting over those tests to simpler snapshot tests gradually in the coming weeks.
Stacked a few PRs into this, but the tests are now split and I managed to get rid of the technical debt around the tree representation that made this uber annoying to work with. Should have just done that from the start instead of being smart. Going to wait for codecov report and check if there are some critical lines I should cover too, but ~70% test coverage is pretty good for now |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fall cleaning time has come. The previous trace node class contained all of the trace definitions, which at ~2k loc started to get annoying to work in. This change breaks up that class into separate files as well as does some minor renaming of type -> shape so that the naming is consistent across usage.
The PR got large as that class had grown big, however 99% of the changes are just moving code to its new location