ui5_version_diff
Compares two UI5 releases to list new features, fixes, and deprecations, aiding upgrade planning and workaround cleanup.
Instructions
UI5 VERSION DIFF: ui5_version_diff(library="SAPUI5", from_version="1.108.0", to_version="1.130.0")
FUNCTION NAME: ui5_version_diff
List the new features, fixes, deprecations, and SAPUI5 What's New entries that landed between two UI5 releases, or inspect one exact release. Use this when planning or executing an upgrade so you know which workarounds can be dropped, which APIs are now deprecated, and which fixes might replace local patches.
DATA SOURCE: local all-changes bundle at UI5_LIB_DIFF_BUNDLE_PATH (default: dist/data/ui5-lib-diff/all-changes.json). The runtime tool is local-only and does not fetch hosted URLs. Refresh the bundle during setup with npm run download:ui5-lib-diff. If a requested release is newer than the local bundle, the response includes meta.notes and meta.generatedAt so the caller can tell setup data is stale.
RANGE SEMANTICS: returns changes that landed AFTER from_version up to and including to_version (i.e. what you gain by upgrading from from_version to to_version). If a requested patch version is unavailable, the tool uses the nearest lower available version with the same major.minor, matching the web app. For one release, pass version instead of a range.
PARAMETERS: • library (optional, default "SAPUI5"): "SAPUI5" or "OpenUI5". • version (optional): exact release to inspect, e.g. "1.130.0". Can also be supplied as the only from_version or only to_version. • from_version + to_version (optional range pair): version you are upgrading FROM/TO, e.g. "1.108.0" -> "1.130.0". • types (optional): subset of ["FEATURE", "FIX", "DEPRECATED"]. Defaults to all three. • ui5_library (optional): case-insensitive substring filter on the UI5 library, e.g. "sap.m", "sap.ui.core", "sap.fe". • query (optional): case-insensitive substring filter on change text and What's New title/description, e.g. "Table", "ObjectStatus", "ManagedObject".
RETURNS JSON with: • mode, library, from_version, to_version, version? • versionsInRange: versions covered by the range (newest first) • counts: { FEATURE, FIX, DEPRECATED } totals across the full range • totalEntries: sum of counts • entries: [{ version, date, library, type, text, commit_url? }] • whatsNewEntries, whatsNewTotalEntries: SAPUI5 What's New entries for the same version/range • meta: { availableVersions, minVersion, maxVersion, generatedAt, sourceDataPath, cacheSource, requested, resolved, notes? } — "notes" is a list of soft signals (version resolution, stale-bundle hints, out-of-range hints, coercion warnings) • sourceUrl: browser URL for human inspection of the same range
USE CASES: • Upgrade planning: "What deprecations should I clean up before moving 1.108 -> 1.130?" • Workaround cleanup: filter by query="" to find the fix that replaces a local patch • Library-scoped review: ui5_library="sap.m" to focus on a single library • Combine with @ui5/mcp-server tools (run_ui5_linter, run_manifest_validation, get_api_reference) for code-level follow-up
EXAMPLES: ui5_version_diff(from_version="1.108.0", to_version="1.130.0", types=["DEPRECATED"]) ui5_version_diff(version="1.130.0", ui5_library="sap.m") ui5_version_diff(library="OpenUI5", from_version="1.120.0", to_version="1.130.0", ui5_library="sap.m") ui5_version_diff(from_version="1.96.0", to_version="1.120.0", query="ObjectStatus")
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| library | No | Which UI5 flavour to diff. Defaults to SAPUI5. | SAPUI5 |
| version | No | Single UI5 release to inspect, e.g. "1.130.0". If unavailable, resolves to the nearest lower available patch with the same major.minor. | |
| from_version | No | Version you are upgrading from (exclusive bound), e.g. "1.108.0". If unavailable, resolves to the nearest lower available patch with the same major.minor. | |
| to_version | No | Version you are upgrading to (inclusive bound), e.g. "1.130.0". If unavailable, resolves to the nearest lower available patch with the same major.minor. | |
| types | No | Filter to a subset of change types. Defaults to all three. | |
| ui5_library | No | Case-insensitive substring filter on UI5 library name (e.g. "sap.m", "sap.ui.core"). | |
| query | No | Case-insensitive substring filter on change text and What's New title/description. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | Yes | ||
| library | Yes | ||
| from_version | Yes | ||
| to_version | Yes | ||
| version | No | ||
| versionsInRange | Yes | ||
| counts | Yes | ||
| totalEntries | Yes | ||
| entries | Yes | ||
| whatsNewEntries | Yes | ||
| whatsNewTotalEntries | Yes | ||
| meta | No | ||
| sourceUrl | Yes |