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

Feature request: Discrepancies in behavior of graph builder and engine compiler #941

Closed
7 of 9 tasks
akphi opened this issue Mar 13, 2022 · 0 comments · Fixed by #1540
Closed
7 of 9 tasks

Feature request: Discrepancies in behavior of graph builder and engine compiler #941

akphi opened this issue Mar 13, 2022 · 0 comments · Fixed by #1540
Assignees
Labels
Component: Graph Manager Issues related to graph processing and management (including interaction with engine server) logic Studio Core Team Opened by a member of the Studio core team Type: Feature Request Type: Mega-thread Tracker for multiple related issues
Milestone

Comments

@akphi
Copy link
Contributor

akphi commented Mar 13, 2022

Similar requests

  • I have searched and found no existing similar requests

How are you using Studio?

No response

What problems are you trying to solve?

We build the graph of meta-models, so does engine, but since we support edition, sometimes, we are stricter or less strict about several checks. This is a mega-thread to keep track of these cases:

It's not wrong per se for our graph builder to fail, however, for users who migrated from Pure IDE to Legend Studio this could be a blocker since they don't have an environment to fix these errors productively.

Note that we think these strict checks should still be present in Studio, we should eventually make these hard fails in even engine rather than softening them because these are not something users should or should not do, not must not do, as such, we will keep this thread open till we completely pass migration phase and start to tighten graph builder checks again.

Describe the solution you would like to see implemented

The strategy we agreed upon is to relax our graph-builder and not to hard-fail on these errors, but only issue warnings, see #883. Engine will now detect these issues and return them as warnings and we will block users from saving should we detect these kinds of problems in users' model

  • Change engine to return this as a warning as part of the compilation result - @pierredebelen
  • Disable saving when there are warnings - @MauricioUyaguari and I think this is too disruptive at the moment and so we won't do it in the first go.
  • Show a tab for problems in auxiliary panel for warnings found. We can also show somewhere in the UI that we have warnings, for this to work, we need to show it in the status bar somewhere (see vscode) and consider doing something similar to what we have in Feature request: Support change detection in query builder #1368 - e.g. every time we hit F9, store a hashcode
  • Unlike form mode where there's no good way to reveal these warnings, in text mode we can support showing these warnings in yellow squiggle underlines (i.e. markers), and allow clicking from the auxiliary panel to go to error based on source information
  • We should have an application flag/config to enable throwing these errors in graph-builder: these errors are the ones mentioned above, this way, we could test these validations better. In production environment, we could turn this flag off so we don't throw error, otherwise, we will just print warning about this - i.e. strict-mode

Describe alternatives you have considered

No response

Documentation, Design, Adoption, Migration Strategy

No response

Contribution

  • I would like to work on this feature
@akphi akphi added Type: Feature Request Component: Graph Manager Issues related to graph processing and management (including interaction with engine server) logic Type: Mega-thread Tracker for multiple related issues Priority: PURE Migration labels Mar 13, 2022
@github-actions github-actions bot added the Studio Core Team Opened by a member of the Studio core team label Mar 13, 2022
@akphi akphi pinned this issue Mar 13, 2022
@akphi akphi added this to the 5.0.0 milestone Mar 13, 2022
@akphi akphi self-assigned this Mar 13, 2022
@akphi akphi modified the milestones: 5.0.0, 6.0.0 Apr 14, 2022
@beekemarie beekemarie modified the milestones: 6.0.0, On Deck May 3, 2022
@akphi akphi removed their assignment May 9, 2022
@akphi akphi modified the milestones: On Deck, Marathon May 9, 2022
@akphi akphi modified the milestones: Marathon, 8.0.0, 9.0.0 Sep 30, 2022
@xannem xannem assigned xannem and unassigned gayathrir11 Oct 4, 2022
@akphi akphi unpinned this issue Oct 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Graph Manager Issues related to graph processing and management (including interaction with engine server) logic Studio Core Team Opened by a member of the Studio core team Type: Feature Request Type: Mega-thread Tracker for multiple related issues
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants