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

Support Multiple SAPUI5 versions #245

Closed
9 tasks
bd82 opened this issue Jul 20, 2020 · 6 comments
Closed
9 tasks

Support Multiple SAPUI5 versions #245

bd82 opened this issue Jul 20, 2020 · 6 comments
Labels
enhancement New feature or request Tech Debt

Comments

@bd82
Copy link
Member

bd82 commented Jul 20, 2020

Downloading the UI5 metadata

Configurability

  • By default configure UI5 metadata version based on ui5.yaml.
  • Optional override: Configure UI5 metadata version via a VSCode Settings.
  • Fallback to some hard-coded recently released version.

Test Flows

  • Decide to set of versions to be tested.
  • For a set of supported UI5 versions, transform the metadata to UI5SemanticModel.
  • Run all language-server E2E tests using a set of supported versions.
    - Question: How to achieve high code reuse while also allowing different assertions (per version) for some test cases?

Open Questions

  • Are different typeNameFixes needed for different libraries or could a superset of all be used?
    • function getTypeNameFix(): TypeNameFix {
      const fixes: TypeNameFix = {
      Control: "sap.ui.core.Control",
      Element: "sap.ui.core.Element",
      array: "object[]",
      Array: "object[]",
      bloolean: "boolean",
      "sap.m.PlanningCalendarHeader": undefined,
      "sap.m.TimePickerSlider": undefined,
      "sap.ui.layout.ResponsiveSplitterPage": undefined,
      "sap.gantt.misc.AxisTime": "sap.gantt.misc.AxisTimes",
      "sap.gantt.control.Toolbar": undefined,
      "sap.gantt.DragOrientation": undefined,
      "sap.gantt.simple.GanttHeader": undefined,
      "sap.gantt.simple.InnerGanttChart": undefined,
      "sap.rules.ui.RuleBase": undefined,
      "sap.ui.generic.app.transaction.BaseController": undefined,
      "sap.ui.vk.BillboardTextEncoding": undefined,
      "sap.ui.vk.BillboardStyle": undefined,
      "sap.ui.vk.BillboardBorderLineStyle": undefined,
      "sap.ui.vk.BillboardHorizontalAlignment": undefined,
      "sap.ui.vk.BillboardCoordinateSpace": undefined,
      "sap.ui.vk.DetailViewType": undefined,
      "sap.ui.vk.DetailViewShape": undefined,
      "sap.ui.vk.tools.HitTestIdMode": undefined,
      "sap.ui.vk.tools.CoordinateSystem": undefined,
      "sap.ui.vk.AnimationTimeSlider": undefined,
      "sap.ui.vk.SelectionMode": undefined,
      "sap.ui.vk.RenderMode": undefined,
      "sap.viz.ui5.controls.VizRangeSlider": undefined,
      };
      return fixes;
      }
  • Does the current implementation of the metadata caching in the language-server support versioning?
@bd82 bd82 added the enhancement New feature or request label Jul 20, 2020
@bd82
Copy link
Member Author

bd82 commented Jul 20, 2020

This is important not only from a product/feature perspective but also as the potential gap increases overtime.
It is possible that there would be multiple SDK -> Model transformation issues at some point in the future if we don't incrementally ensure we still work with the latest UI5 version.

@bd82
Copy link
Member Author

bd82 commented Jul 22, 2020

I consider this also a kind of tech debt, as the usage of older and older hard-coded version
will potentially result in widening gap of what UI5 JSON SDK we can safely and successfully convert to a UI5 Semantic Model.

@piejanssens
Copy link

IMO this is really critical to support multiple UI5 version and determine it based on minUI5Version with a fallback to the official latest release (1.90).

@bd82
Copy link
Member Author

bd82 commented May 31, 2021

IMO this is really critical to support multiple UI5 version and determine it based on minUI5Version with a fallback to the official latest release (1.90).

Hello @piejanssens

I completely agree.
Unfortunately there are no short term plans at this time to resolve this issue... 😢

@bd82
Copy link
Member Author

bd82 commented Aug 16, 2021

Another URL to obtain version information of libraries:

@piejanssens
Copy link

#469

@bd82 bd82 closed this as completed Aug 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Tech Debt
Projects
None yet
Development

No branches or pull requests

2 participants