Skip to content
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

[Canvas] Call out element using deprecated functions #134840

Closed
Tracked by #134841
crob611 opened this issue Jun 21, 2022 · 14 comments
Closed
Tracked by #134841

[Canvas] Call out element using deprecated functions #134840

crob611 opened this issue Jun 21, 2022 · 14 comments
Labels
Feature:Canvas loe:x-large Extra Large Level of Effort needs design Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas UX: UI/UX Designs Requires design mocks before development and UX lead approval on PR before merge.

Comments

@crob611
Copy link
Contributor

crob611 commented Jun 21, 2022

Visually call out that an element that is rendered is using functions that are deprecated, and perhaps offer suggestions for how they can migrate away from those functions.

We will probably need to get design involved on this issue.

@crob611 crob611 added Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas loe:x-large Extra Large Level of Effort Feature:Canvas labels Jun 21, 2022
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-presentation (Team:Presentation)

@Kuznietsov Kuznietsov added needs design UX: UI/UX Designs Requires design mocks before development and UX lead approval on PR before merge. labels Jun 28, 2022
@Kuznietsov
Copy link
Contributor

@elastic/kibana-design, could you, please, have a look at this issue and provide some suggestions about the design of this functionality. Thanks a lot 😃

@ryankeairns
Copy link
Contributor

We don't have anybody free at the moment to work on Canvas designs, so this is just a quick take.

First, it seems we'd want to draw attention to the Expression editor portion of the UI and avoid any obtrusive messaging on the element itself. (See badge option below)

Screen Shot 2022-06-29 at 9 50 30 AM

Second, highlighting the deprecated function in the editor UI would clarify the exact line(s) in question. In a brief scan of the Monaco demo / docs, we could do something like this: (see blue bar below)

Screen Shot 2022-06-29 at 9 49 29 AM

@teresaalvarezsoler
Copy link

I'm wondering what's the impact on users when there are viz build using deprecated functions @Kunzetsov do the viz still work even if they are based on deprecated functions? It would be great to see a screenshot of the consequences for users for this problem

@Kuznietsov
Copy link
Contributor

@teresaalvarezsoler, the main goal of adding this functionality to Canvas is to inform users about the deprecation of the functions, their workpads contain. Also, it was planned to add some docs with migration guidelines (possibly, by displaying those notes in the sidebar of Canvas). In some major versions (I guess, don't have the real plan), those functions will be completely removed and replaced by the unified renderers, described in the current issue. So, this issue is describing the way of informing and guiding users about what to do with their current workpads, if automatic migration is impossible. Does it make sense to you?

@Kuznietsov
Copy link
Contributor

@teresaalvarezsoler, some discussions you can see here: #134838

@teresaalvarezsoler
Copy link

I'm not sure having a label in the deprecated functions is the best way to communicate this... many users may miss it because they have automatic reporting processes going on or because they never manually edit their Canvas. I think we should first know what will happen with the deprecated functions before investing any effort on this. It would be a way better user experience if we can keep compatibility with previous versions or automatically replace them as you mentioned. If that cannot happen then let's think what's the best way to communicate this to users.

@teresaalvarezsoler
Copy link

Also, is there a way to know which users are using these functions? It would help us to decide the level of effort we put on this. Canvas has pretty low usage... if we can identify the users, it may even worth to contact them directly.

@Kuznietsov
Copy link
Contributor

Kuznietsov commented Jun 30, 2022

@teresaalvarezsoler, as for real, I don't know how we can identify the users. This question is more for the developers from Elastic. @jb1b84 or @ThomThomson, could you, please, provide support in this question.

Deprecated functions were planned to be removed in favor of elastic/charts, as described in the issue: #101377. But these new expressions have a completely different way of configuring. And, possibly, missing some features from the previous ones.

So, we should:

  1. Decide, how to alert users about the functions deprecation and removal.
  2. Write some docs about possible migrations and provide those docs to the end-users. In some form (possibly, in the sidebar). Create the UI for the deprecation functionality for the expressions, which can't be migrated.
  3. In some versions, remove the functions which are using flot.

@teresaalvarezsoler, WDYT about it? Does it make any sense?

@teresaalvarezsoler
Copy link

I think we should first know what's the impact of having deprecated functions. We should push for automatic replacement or full compatibility instead of relaying on users to do so.

@Kuznietsov
Copy link
Contributor

@teresaalvarezsoler, could you, please, suggest somebody to help with figuring out these questions. I have no idea, what is the impact of having deprecated functions, who is using them, and who will be affected, if we'll remove it at the current/next version. I know only one thing, it is impossible to have full compatibility, because those charts have a different purpose and the new charts have more reach functionality. They have different libraries, API's, ways of selecting data, etc.
And while working on this issue, we knew about these problems, and that's why we wished to add the deprecation functionality and docs. Now, it's time to decide, what to do with all these plans 😃 .

@teresaalvarezsoler
Copy link

@Kunzetsov I thought this request came from you, this is the first time I hear about deprecated functions and them being an issue. Who asked you to do this? We should talk to that person and better understand why we need to do this, we cannot design or implement anything without the full context.

@Kuznietsov
Copy link
Contributor

@teresaalvarezsoler, the first time I heard about deprecation was a year ago while talking to @crob611 and @clintandrewhall while discussing the issue #101377. The last time we were talking about this part of the project with @crob611 and @jb1b84, was two weeks ago while discussing this issue: #134841, I guess. So, anybody of them will be a good point of contact.

@teresaalvarezsoler
Copy link

Thank you for the context. Corey left last week, I will talk with @jb1b84.

@cqliu1 cqliu1 closed this as completed Feb 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature:Canvas loe:x-large Extra Large Level of Effort needs design Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas UX: UI/UX Designs Requires design mocks before development and UX lead approval on PR before merge.
Projects
None yet
Development

No branches or pull requests

6 participants