-
Notifications
You must be signed in to change notification settings - Fork 112
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
Extending stateful URLS with node filters and Expanding/collapsing modular pipelines flag #1799
Conversation
Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com>
* refactor router to accept new deployer inputs Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * refactor cli for shareableviz deploy Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * merge router change Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * PR comments fix Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> --------- Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com>
* CLI command kedro viz build added * Lint fix * lint fix * Lint fix * add mypy ignore * Missing build file added * Lint error fix * BaseDeployer class added * Unused code removed * Fix lint issue * azure deploy initial draft Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * added base_deployer * add deployer factory * partial working draft Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * Test and comments of deployers updated * test draft Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix lint Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * remove circular dependency Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix lint Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * revert back consent Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * minor updates Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * update pytests Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * add pytest for azure shareableviz Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * refactor and add timeout Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * refactor cli Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * update pytest Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * add release note Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix flaky test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix PR comments and flaky test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * testing flaky c y test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * remove flaky test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * resolve conflicts Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix PR comments Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * add back cypress flaky test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * remove cypress flaky test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * remove duplicate pytest parameter Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * remove fsspec upper bound Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> --------- Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> Co-authored-by: Jitendra Gundaniya <jitendra_gundaniya@mckinsey.com> Co-authored-by: rashidakanchwala <rashida_kanchwala@mckinsey.com>
* CLI command kedro viz build added * Lint fix * lint fix * Lint fix * add mypy ignore * Missing build file added * Lint error fix * BaseDeployer class added * Unused code removed * Fix lint issue * azure deploy initial draft Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * added base_deployer * add deployer factory * partial working draft Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * Test and comments of deployers updated * test draft Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix lint Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * remove circular dependency Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix lint Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * revert back consent Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * initial draft Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * minor updates Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * update pytests Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * add pytest for azure shareableviz Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * refactor and add timeout Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * refactor cli Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * update pytest Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * add release note Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix flaky test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix PR comments and flaky test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * testing flaky c y test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * remove flaky test Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * add pytest for gcp Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix gcp pytest coverage Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * fix lint Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * update pytest Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> * revert file permission change --------- Signed-off-by: ravi-kumar-pilla <ravi_kumar_pilla@mckinsey.com> Co-authored-by: Jitendra Gundaniya <jitendra_gundaniya@mckinsey.com> Co-authored-by: rashidakanchwala <rashida_kanchwala@mckinsey.com>
# Conflicts: # package/kedro_viz/api/rest/responses.py # package/requirements.txt # src/components/metadata/metadata.js
# Conflicts: # src/components/shareable-url-modal/shareable-url-modal.js # src/components/shareable-url-modal/shareable-url-modal.scss # src/components/shareable-url-modal/shareable-url-modal.test.js # src/config.js
…d_name and pipeline_id
# Conflicts: # RELEASE.md
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.
Hi LGTM thank @jitu5 ..awesome work :D
Hi @jitu5 , Nice work. I am trying out the scenario below - Thank you |
@ravi-kumar-pilla |
okay got it. I think it is a bit of design question as well. Should we make allSelected nodeTypes == noneSelected nodeTypes ? That is how the UI behaves at the moment. What do you think ? @stephkaiser @jitu5 @rashidakanchwala |
Hi @jitu5 , Appreciate your patience 💯 I am testing the below scenario -
Please let me know if you need more information. Thank you |
@rashidakanchwala
this is expected behaviour. |
Thanks Ravi, do you mind rephrasing or explaining in a less-technical way? Im struggling to follow :) are we discussing if the way all/none node types are displayed in the URL is intuitive to users? I also had a question regarding the types - what are the task and data types? From the UI i see we have Nodes, Datasets, or Parameters so i'm a bit confused. Another question - shouldn't all pipelines be expanded by default? |
it does seem a bit strange that users wont be able to tweak the URL themselves. What happens if the user clicks on the Companies tag to remove it from the UI, will the URL update? |
okay I understand that if there is any data in local storage, we try to get that and there is no way to check if the user removed all tags. For nodeTypes we do have some default but for tags we do not have such thing and that makes this test case confusing. Basically if there is local storage, the user can only disable a tag via UI and not via URL. May be we need to think about this approach. It is a bit confusing if I want to change the URL and it keeps appending tags. |
Historically, parameters in the flowchart are hidden by default based on user research indicating that most users do not need to see them. This approach has not drawn complaints, suggesting it is generally acceptable. However if we see a lot of users complaining, maybe we can consider revising our approach. |
@stephkaiser |
@jitu5 - I faced an issue related to tags that I got in the beginning but couldn't do it again whilst testing that case Ravi mentioned above.
I think it should revert it back to no tags. Team, I propose we meet tomorrow after the standup to discuss our approach to tags. Given our current way of saving, reading to local storage and reading from the URL, some of design decisions have been made that were thought most optimal while Steph was away. Let's see what we can release soon and identify areas for future improvement. |
task = node, |
I think a meeting to discuss this work would be great, i wasn't involved in this so would be great to get a walkthrough and discuss tags and the default view. Also agree we should always keep language consistent, I would even suggest type = datasets,nodes,parameters. |
Please sign me up to the meeting! |
@rashidakanchwala I was able to reproduce this issue with group tag filter, yesterday I fix for this and now you can test it again. |
@stephkaiser, Now types in URL matches with UI labels |
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.
Great work @jitu5 !! Looks good to me
Description
Resolves #1736
In this PR the stateful URLs to include additional functionalities such as
type=task,data
)tags=companies,evaluate
)expandAllPipelines=true
)Below are four scenarios where the possible values for new query parameters could be:
reset-button.mov
Development notes
pipeline_id
,expandAllPipelines
andtypes
will always be part of url.URLSearchParams
used instead ofmatchPath
.'focused_id' to fid
'selected_id' to sid
'selected_name' to sn
'pipeline_id' to pid
QA notes
Checklist
RELEASE.md
file