-
Notifications
You must be signed in to change notification settings - Fork 59
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
feat: Remove intermediate NodeExecutionsTable row content #75
Conversation
Codecov Report
@@ Coverage Diff @@
## dynamic-task-updates #75 +/- ##
========================================================
+ Coverage 61.66% 62.06% +0.39%
========================================================
Files 364 359 -5
Lines 5713 5607 -106
Branches 851 830 -21
========================================================
- Hits 3523 3480 -43
+ Misses 2190 2127 -63
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall LGTM 👍, just a couple of stylistic nits
* refactor: removing specialized rows and rendering only nodes * refactor: moving contexts up to common folder * refactor: use a data cache for nested node mapping * refactor: update loading of workflow data * fix: update usage of NodeExecutions in graph tab * fix: update TaskExecutionDetails to use data cache * fix: getting tests and stories working again * chore: docs and cleanup * test: use a more robust element query * refactor: use filter instead of reduce * docs: adding some missing function docs
* refactor: removing specialized rows and rendering only nodes * refactor: moving contexts up to common folder * refactor: use a data cache for nested node mapping * refactor: update loading of workflow data * fix: update usage of NodeExecutions in graph tab * fix: update TaskExecutionDetails to use data cache * fix: getting tests and stories working again * chore: docs and cleanup * test: use a more robust element query * refactor: use filter instead of reduce * docs: adding some missing function docs
* feat: adds more identifying information for node executions (#70) * feat: show workflow node name beneath node execution ids * feat: updating DetailsPanel info for NodeExecutions * fix lint errors * adding tests for new formatter function * test: adding new test for NodeExecutionDetails * test: adding test for new code in NodeExecutionsTable * refactor: fetch child node executions for NodeExecution rows (#72) * refactor: fetch child node executions to determine expandability * fix: handling detection of children for sub-workflows as well * fix: poor performance with object-hash on some identifiers * docs: cleanup and docs for newly exposed functions * test: ensure request config is used for all levels * chore: remove unused import * feat: Remove intermediate NodeExecutionsTable row content (#75) * refactor: removing specialized rows and rendering only nodes * refactor: moving contexts up to common folder * refactor: use a data cache for nested node mapping * refactor: update loading of workflow data * fix: update usage of NodeExecutions in graph tab * fix: update TaskExecutionDetails to use data cache * fix: getting tests and stories working again * chore: docs and cleanup * test: use a more robust element query * refactor: use filter instead of reduce * docs: adding some missing function docs * fix: cleanup for dynamic tasks refactoring (#76) * test: creating dynamic task cases for NodeExecutionsTable stories * fix: styling for child group labels * fix: mock api context for NodeExecutionsTable stories * test: mock nodeExecutionData endpoint * chore: remove unused imports * fix: extract nodes from subworkflows as well * fix: adjust borders to make child groups more obvious * refactor: checkpoint for getting the nesting styles correct * refactor: adding logic for borders/spacing based on nesting/index * fix: correct workflow execution table row styles
# [0.7.0](http://github.com/lyft/flyteconsole/compare/v0.6.0...v0.7.0) (2020-06-30) ### Features * improve user experience for nested NodeExecutions ([#77](http://github.com/lyft/flyteconsole/issues/77)) ([58ed1a4](http://github.com/lyft/flyteconsole/commit/58ed1a4176afeb0c13c34cf0cced13efa91ea7b4)), closes [#70](http://github.com/lyft/flyteconsole/issues/70) [#72](http://github.com/lyft/flyteconsole/issues/72) [#75](http://github.com/lyft/flyteconsole/issues/75) [#76](http://github.com/lyft/flyteconsole/issues/76)
TODOs and additional cleanup will happen in a separate PR
ExecutionDataCache
, which is a shared data store used by components in theNodeExecutionsTable
. This facilitates looking up the various entities (Nodes, Tasks, Workflows, WorkflowExecutions) that are needed at each level of the NodeExecutionsTable. This cache is provided via a context which sits above all components in the tree.ExecutionDetails
andTaskExecutionDetails
pages to load their data using anExecutionDataCache
, so that all related entities are stored and available in nested components.NodeExecution
->DetailedNodeExecution
(useDetailedNodeExecution[s]
) to be pure functional transforms instead of working withFetchable
s. The fetching/waiting logic has been moved up to the consuming components/hooks.DetailedNodeExecution
down into theNodeExecutionsTable
, since components above that do not need the extra information.NodeExecutionChildren
to render "child groups" ofNodeExecution
s, instead of rendering eitherTaskExecution
children orWorkflowExecution
children. We still have differentiated behavior for the two cases, but both of them are now returning groups ofNodeExecution
s.NodeExecutions
by attempt of the parent.NodeExecution
s. This one is making use of that functionality to actually render the children.NodeExecutionsTable
into shared context. We don't need to be generating these definitions at every level of the table.Before:
After: