FrontTailor 1.0.0 (10 November 2026): inspector, OData, performance, UI5 2.0, AI and operations for SAP Fiori® and UI5 apps – in one panel. What’s inside → +43 664 1964199Contact →

UI5 2.0

UI5 2.x drops every deprecated API: sap.ui.getCore(), jQuery.sap.*, synchronous loading, old themes and libraries. The readiness check shows which of it affects your app – from the running app, with file and line, severity and the replacement from the SAP documentation. Check and findings are free; the migration report comes with Pro.

Edition
Community
Tab
“UI5 2.0”
Migration report
Pro
Surfaces
DevTools panel and side panel
On PROD
allowed, the check changes nothing in the app

How the check works

Open the FrontTailor panel in DevTools (F12) or the side panel and choose the UI5 2.0 tab. Nothing runs in the page before you start. After a click on Start check, FrontTailor reads the runtime, the manifest, the bootstrap and the live controls, then watches deprecated API calls while you use the app. Afterwards every hook is removed.

SAP’s static @ui5/linter sees the source code. The readiness check adds what only shows at runtime: dynamically built calls, code from customer libraries, properties on live controls, bootstrap attributes of the delivered page and synchronously loaded modules.

Start a check

  1. Open the app and the UI5 2.0 tab in the panel.
  2. Under Watch for, choose the duration: 30 seconds, 1 minute, 3 minutes or 10 minutes.
  3. Click Start check. Findings from the manifest, bootstrap, libraries and controls appear right away.
  4. Use the app as usual: open dialogs, navigate, save. Deprecated calls appear as soon as the app makes them.
  5. Click Finish now or wait until the time runs out. The button then reads Check again.
Running check with the note Watching the app, seconds left, score and categories and the button Finish now
While watching, the note counts down the seconds.
  1. “Watching the app – use it as usual …” with the time left.
  2. Finish now stops watching early.

The command palette can start the check, too. Code that does not run while watching stays unseen – only the static @ui5/linter finds it.

Score and categories

Result of the check: score 94 of 100, summary No blockers, 3 things to fix before UI5 2.x, six categories with a partial score and the Watch for selection
The freestyle demo app has no blocker, but three things to fix.
  1. The score from 0 to 100.
  2. The summary, below it the time, UI5 version and number of deprecated calls seen.
  3. A partial score per category with the number of findings per severity. A click filters the findings to that category.
  4. Watch for: duration of the next run.
  5. Check again.

Per category: 100 minus 30 per blocker, 10 per Should fix and 2 per Hint. The overall score is the average of the categories and is at most 49 while a blocker is open. Distinct findings count, not calls – a frequently called spot does not distort the rating.

CategoryWhat is checked
Synchronous loadingmodules loaded by synchronous XHR, component without IAsyncContentCreation, manifest not "json", resource model without async
Deprecated APIsobserved calls of sap.ui.getCore() and core methods, sap.ui.requireSync, jQuery.sap.*, synchronous factories and global namespaces – from app code only
Controlsdeprecated controls and deprecated properties, aggregations and events set on live controls
Libraries & themesdeprecated libraries such as sap.ui.commons and themes such as sap_belize → sap_horizon
Manifest_version below 2, minUI5Version below 1.120, renamed routing entries, removed entries
Bootstrapmissing data-sap-ui-async, deprecated options, inline init, compatVersion

The app is checked, not the framework: Fiori elements templates and the launchpad shell produce no findings.

Read and filter findings

Filter row with search field, severity buttons and category selection, below it the finding Modules loaded synchronously with severity Should fix, replacement, fix, locations, the SAP documentation link and Copy as Markdown
The finding “Modules loaded synchronously”: the demo app runs under ui5 serve without preload bundles.
  1. Filter findings: free-text search.
  2. Severity: All, Blocker, Should fix, Hint.
  3. Category.
  4. Severity and number of occurrences.
  5. Where: up to eight examples, for calls as the caller’s file:line:column.
  6. SAP documentation opens the matching page, for example “Best Practices for Loading Modules”.
  7. Copy as Markdown takes the finding with you – for a ticket, say.
SeverityMeaning
Blockerremoved in UI5 2.x – the app breaks
Should fixworks, but blocks the migration or costs load time
Hintshould be adjusted, but breaks nothing

Every finding names Category, Replacement and Found (when the check started or while watching the app), with the Fix below. For library findings, Analyze libraries leads to the Libraries tab. With from Pro, Fix with AI proposes a change – with your own key and only after a preview, see AI assistant.

Migration report

With from Pro you export the whole run below the findings:

Last finding of the list and below it the buttons All occurrences (.csv) and Report (.md)
Both exports sit at the end of the findings list.
  1. All occurrences (.csv): every occurrence as a row, for example to split the work in the team.
  2. Report (.md): the migration report with summary, effort per category and the comparison with the previous run of the same app.
  • The effort is an estimate in hours per rule times locations and is marked as a guide value in the report.
  • The comparison names what is new, resolved or changed since the last run. On an app’s first run it says “First run of this app – the next report compares with this one.”
  • Without Pro the buttons show a lock; a click explains what the report contains. The check, the findings and Copy as Markdown stay free.

What is stored

Everything stays in this browser. Locations are file and line only, without origin, query or hash. For the comparison FrontTailor keeps the last ten runs per app as counts – rule, category, severity and number, no examples, no file paths, no app data. Email addresses and IBANs are masked in the exports.

Typical problems

What you seeCause and fix
“No connected UI5 app in this tab.”The page has not loaded UI5 (yet), or the host is not granted – see grant the domain.
Deprecated APIs stays at 100 although the linter reports findingsOnly calls that run while watching count. Use the affected functions of the app or choose a longer duration.
Many synchronously loaded modulesTypical for ui5 serve without preload bundles. Check the built app (ui5 build) with data-sap-ui-async="true".
“Very large app: the control scan stopped at its limit.”The scan reads at most 5000 elements or 400 ms. Check the app’s areas one after another.
The tab is missingYour administrator switched the module off by policy.

See also

Sources on this page

The superscript numbers in the text point here. Tap one to see the source right where it is used; all sources of this website are listed on one page.

  1. 1

    UI5 2.0 readiness check ↑Product · FrontTailor product documentation, ADR-027 “UI5 2.0 readiness” · checked on 2026-11-09

Frequently asked

Short answers.

How do I check whether my UI5 app is ready for UI5 2.0?
Open the UI5 2.0 tab in the FrontTailor panel, click Start check and use the app for a while. The check shows a score from 0 to 100 and every finding with severity, location, replacement and a link to the SAP documentation.
Does the readiness check replace the @ui5/linter?
No, it complements it. The linter sees the source code, the readiness check the running app: dynamic calls, customer libraries, properties on controls and synchronously loaded modules. Code that does not run during the check is only found by the linter.
What does the UI5 2.0 check cost?
The check, score, findings list and Copy as Markdown are free (Community). The migration report as Markdown or CSV with effort per category and comparison with the previous run comes with Pro.
May I run the check on a production system?
Yes. It only reads and watches calls for the chosen duration; afterwards it restores every function. Only counts per rule are stored, no app data.

Your question isn’t here? Talk to me: +43 664 1964199 office@clouddna.at Get in touch

Contact

Ten tabs too many? Talk to us.

You buy Pro and Team right here. For Enterprise, sideloading, policies, a workshop or a stubborn bug in your Fiori landscape: write to me. I reply within one working day, personally.

Martin KochManaging Director, CloudDNAI read every request myself and reply personally.