ui5-linter
ui5-linter copied to clipboard
feat: Add html linter output
This feature add the html output.
You are welcome to finish the PR again with a colleague of yours.
example output with details from com.ui5.troublesome.app project:
HTML Code:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>UI5 Linter Report</title>
<style>
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
line-height: 1.5;
max-width: 1200px;
margin: 0 auto;
padding: 20px;
color: #333;
}
h1, h2 {
border-bottom: 1px solid #eaecef;
padding-bottom: 0.3em;
color: #24292e;
}
h3 {
padding: 10px;
margin: 0;
background-color: #f6f8fa;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border: 1px solid #eaecef;
border-bottom: none;
}
table {
width: 100%;
border-collapse: collapse;
margin-bottom: 20px;
border: 1px solid #eaecef;
border-radius: 4px;
}
th, td {
text-align: left;
padding: 8px 12px;
border-bottom: 1px solid #eaecef;
}
th {
background-color: #f6f8fa;
font-weight: 600;
}
tr.error {
background-color: #fff5f5;
}
tr.error td:first-child {
color: #d73a49;
font-weight: 600;
}
tr.warning {
background-color: #fffbea;
}
tr.warning td:first-child {
color: #e36209;
font-weight: 600;
}
tr.fatal-error {
background-color: #ffdce0;
}
tr.fatal-error td:first-child {
color: #b31d28;
font-weight: 600;
}
code {
background-color: #f6f8fa;
padding: 0.2em 0.4em;
border-radius: 3px;
font-family: SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace;
}
.summary {
margin-bottom: 30px;
}
.file {
margin-bottom: 30px;
}
.note {
margin-top: 20px;
padding: 10px;
background-color: #f6f8fa;
border-radius: 4px;
font-size: 14px;
}
a {
color: #0366d6;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
@media (max-width: 768px) {
body {
padding: 10px;
}
table {
display: block;
overflow-x: auto;
}
}
</style>
</head>
<body>
<h1>UI5 Linter Report</h1>
<p>Generated on 4/14/2025, 10:10:29 PM with UI5 Linter v1.12.0</p>
<div class="summary">
<h2>Summary</h2>
<p>
84 problems
(56 errors, 28 warnings)
</p>
<p>Run <code>ui5lint --fix</code> to resolve all auto-fixable problems</p>
</div>
<h2>Findings</h2><div class="file">
<h3>webapp/bundles/thirdparty-bundle.js</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>1:20</code></td><td>Access of global variable 'sap' (sap.m.Button)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>2:19</code></td><td>Access of global variable 'sap' (sap.m.Input)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/controller/App.controller.js</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-pseudo-modules" target="_blank">no-pseudo-modules</a></td><td><code>1:36</code></td><td>Deprecated access of enum pseudo module 'sap/m/BackgroundDesign'</td><td>Migrating Access to Pseudo Modules (<a href="https://ui5.sap.com/#/topic/00737d6c1b864dc3ab72ef56611491c4" target="_blank">https://ui5.sap.com/#/topic/00737d6c1b864dc3ab72ef56611491c4</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>10:24</code></td><td>Call to deprecated function 'attachTap' of class 'Button'</td><td>(since 1.20) - replaced by `press` event</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>14:4</code></td><td>Usage of deprecated value 'HTML' for parameter 'type' in 'sap/ui/core/mvc/Controller#loadFragment'</td><td>Controller#loadFragment (<a href="https://ui5.sap.com/1.120/#/api/sap.ui.core.mvc.Controller%23methods/loadFragment" target="_blank">https://ui5.sap.com/1.120/#/api/sap.ui.core.mvc.Controller%23methods/loadFragment</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>22:35</code></td><td>Use of deprecated property 'VariantSetAdapter' (sap.ushell.services.Personalization.VariantSetAdapter)</td><td>(since 1.120) - Please use sap.ushell.services.PersonalizationV2.VariantSetAdapter (<a href="https://ui5.sap.com/1.120/#/api/sap.ushell.services.PersonalizationV2" target="_blank">https://ui5.sap.com/1.120/#/api/sap.ushell.services.PersonalizationV2</a>)instead</td></tr></tbody></table></div><div class="file">
<h3>webapp/controller/BaseController.js</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>9:5</code></td><td>Use of deprecated property 'blocked' of class 'Button'</td><td>(since 1.69) - The blocked property is deprecated. There is no accessibility support for this property. Blocked controls should not be used inside Controls, which rely on keyboard navigation, e.g. List controls.</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>11:8</code></td><td>Call to deprecated function 'attachTap' of class 'Button'</td><td>(since 1.20) - replaced by `press` event</td></tr></tbody></table></div><div class="file">
<h3>webapp/controller/Main.controller.js</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>11:17</code></td><td>Access of global variable 'sap' (sap.ui.getCore)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>11:24</code></td><td>Call to deprecated function 'getCore' (sap.ui.getCore)</td><td>(since 1.118) - Please require 'sap/ui/core/Core' instead and use the module export directly without using 'new'.</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>11:34</code></td><td>Call to deprecated function 'byId' of class 'Core'</td><td>(since 1.119) - Please use Element.getElementById (<a href="https://ui5.sap.com/1.120/#/api/sap.ui.core.Element" target="_blank">https://ui5.sap.com/1.120/#/api/sap.ui.core.Element</a>)instead.</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>12:23</code></td><td>Access of global variable 'sap' (sap.m.Button)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>15:24</code></td><td>Access of global variable 'sap' (window.sap.m.Button)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>18:29</code></td><td>Access of global variable 'sap' (sap.ui.unified.FileUploader)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>19:17</code></td><td>Access of global variable 'sap' (sap.ui.core.ValueState.Success)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>21:17</code></td><td>Access of global variable 'sap' (sap.ui.core)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>22:30</code></td><td>Access of global variable 'sap' (sap.ui.unified.FileUploader)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>25:4</code></td><td>Access of global variable 'sap' (sap.ui.view)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>25:11</code></td><td>Call to deprecated function 'view' (sap.ui.view)</td><td>(since 1.56) - Use View.extend (<a href="https://ui5.sap.com/1.120/#/api/sap.ui.core.mvc.View%23methods/sap.ui.core.mvc.View.extend" target="_blank">https://ui5.sap.com/1.120/#/api/sap.ui.core.mvc.View%23methods/sap.ui.core.mvc.View.extend</a>) to define the view class and View.create (<a href="https://ui5.sap.com/1.120/#/api/sap.ui.core.mvc.View" target="_blank">https://ui5.sap.com/1.120/#/api/sap.ui.core.mvc.View</a>) to create view instances</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>26:4</code></td><td>Access of global variable 'sap' (sap.m.URLHelper.triggerSms)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>31:29</code></td><td>Call to deprecated function 'attachTap' of class 'Button'</td><td>(since 1.20) - replaced by `press` event</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>34:39</code></td><td>Call to deprecated function 'attachTap' of class 'Button'</td><td>(since 1.20) - replaced by `press` event</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>42:15</code></td><td>Call to deprecated function 'getBlocked' (testButton.getBlocked)</td><td>(since 1.69) - The blocked property is deprecated. There is no accessibility support for this property. Blocked controls should not be used inside Controls, which rely on keyboard navigation, e.g. List controls.</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>45:16</code></td><td>Call to deprecated function 'attachTap' of class 'Button'</td><td>(since 1.20) - replaced by `press` event</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>51:25</code></td><td>Call to deprecated function 'prop' of class 'UI5Element'</td><td>(since 1.28.0) - The contract of this method is not fully defined and its write capabilities overlap with applySettings</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>52:35</code></td><td>Call to deprecated function 'prop' of class 'UI5Element'</td><td>(since 1.28.0) - The contract of this method is not fully defined and its write capabilities overlap with applySettings</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>61:28</code></td><td>Call to deprecated function 'attachTap' of class 'Button'</td><td>(since 1.20) - replaced by `press` event</td></tr></tbody></table></div><div class="file">
<h3>webapp/index-cdn.html</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>15:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-resourceroots'; should be written as 'data-sap-ui-resource-roots'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>19:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-oninit'; should be written as 'data-sap-ui-on-init'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>21:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-compatVersion'; should be written as 'data-sap-ui-compat-version'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>22:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-frameOptions'; should be written as 'data-sap-ui-frame-options'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>25:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-logLevel'; should be written as 'data-sap-ui-log-level'</td><td></td></tr></tbody></table></div><div class="file">
<h3>webapp/index.html</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>14:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-resourceroots'; should be written as 'data-sap-ui-resource-roots'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>18:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-oninit'; should be written as 'data-sap-ui-on-init'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>20:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-compatVersion'; should be written as 'data-sap-ui-compat-version'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>21:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-frameOptions'; should be written as 'data-sap-ui-frame-options'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>24:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-logLevel'; should be written as 'data-sap-ui-log-level'</td><td></td></tr></tbody></table></div><div class="file">
<h3>webapp/manifest.json</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-library" target="_blank">no-deprecated-library</a></td><td><code>47:17</code></td><td>Use of deprecated library 'sap.ui.commons'</td><td></td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>60:13</code></td><td>Use of deprecated property 'sap.ui5/resources/js'</td><td>As of version 1.94, the usage of js resources is deprecated. Please use regular dependencies instead.</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>73:21</code></td><td>Usage of deprecated parameter 'synchronizationMode' of constructor 'sap/ui/model/odata/v4/ODataModel' (model: 'odata-v4')</td><td>As of version 1.110.0, the 'synchronizationMode' parameter is obsolete and must be omitted. See the API reference (<a href="https://ui5.sap.com/1.120/#/api/sap/ui/model/odata/v4/ODataModel#constructor" target="_blank">https://ui5.sap.com/1.120/#/api/sap/ui/model/odata/v4/ODataModel#constructor</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>79:21</code></td><td>Usage of deprecated parameter 'synchronizationMode' of constructor 'sap/ui/model/odata/v4/ODataModel' (model: 'odata-v4-via-dataSource')</td><td>As of version 1.110.0, the 'synchronizationMode' parameter is obsolete and must be omitted. See the API reference (<a href="https://ui5.sap.com/1.120/#/api/sap/ui/model/odata/v4/ODataModel#constructor" target="_blank">https://ui5.sap.com/1.120/#/api/sap/ui/model/odata/v4/ODataModel#constructor</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>83:17</code></td><td>Use of deprecated class 'sap.ui.model.odata.ODataModel'</td><td>sap.ui.model.odata.ODataModel (<a href="https://ui5.sap.com/1.120/#/api/sap.ui.model.odata.ODataModel" target="_blank">https://ui5.sap.com/1.120/#/api/sap.ui.model.odata.ODataModel</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/test/integration/opaTests.qunit.html</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>17:4</code></td><td>Bootstrap parameter 'data-sap-ui-animation' should be replaced with 'data-sap-ui-animation-mode'</td><td>Migrate to 'data-sap-ui-animation-mode' attribute AnimationMode (<a href="https://ui5.sap.com/1.120/#/api/module:sap/ui/core/AnimationMode" target="_blank">https://ui5.sap.com/1.120/#/api/module:sap/ui/core/AnimationMode</a>)</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#prefer-test-starter" target="_blank">prefer-test-starter</a></td><td><code>0:0</code></td><td>To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept</td><td>Test Starter (<a href="https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb" target="_blank">https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb</a>)</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>13:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-resourceroots'; should be written as 'data-sap-ui-resource-roots'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>18:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-compatVersion'; should be written as 'data-sap-ui-compat-version'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>20:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-oninit'; should be written as 'data-sap-ui-on-init'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>21:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-logLevel'; should be written as 'data-sap-ui-log-level'</td><td></td></tr></tbody></table></div><div class="file">
<h3>webapp/test/integration/opaTests.qunit.js</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>4:1</code></td><td>Access of global variable 'sap' (sap.ui.getCore)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>4:8</code></td><td>Call to deprecated function 'getCore' (sap.ui.getCore)</td><td>(since 1.118) - Please require 'sap/ui/core/Core' instead and use the module export directly without using 'new'.</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>4:18</code></td><td>Call to deprecated function 'attachInit' of class 'Core'</td><td>(since 1.118) - Please use Core.ready (<a href="https://ui5.sap.com/1.120/#/api/sap.ui.core.Core" target="_blank">https://ui5.sap.com/1.120/#/api/sap.ui.core.Core</a>) instead.</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#prefer-test-starter" target="_blank">prefer-test-starter</a></td><td><code>4:18</code></td><td>To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept</td><td>Test Starter (<a href="https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb" target="_blank">https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/test/testsuite.qunit.html</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#prefer-test-starter" target="_blank">prefer-test-starter</a></td><td><code>0:0</code></td><td>To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept</td><td>Test Starter (<a href="https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb" target="_blank">https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb</a>)</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#csp-unsafe-inline-script" target="_blank">csp-unsafe-inline-script</a></td><td><code>12:3</code></td><td>Use of unsafe inline script</td><td>Content Security Policy (<a href="https://ui5.sap.com/#/topic/fe1a6dba940e479fb7c3bc753f92b28c" target="_blank">https://ui5.sap.com/#/topic/fe1a6dba940e479fb7c3bc753f92b28c</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/test/testsuite.qunit.js</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#prefer-test-starter" target="_blank">prefer-test-starter</a></td><td><code>3:14</code></td><td>To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept</td><td>Test Starter (<a href="https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb" target="_blank">https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/test/unit/controller/Empty.qunit.js</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#prefer-test-starter" target="_blank">prefer-test-starter</a></td><td><code>1:40</code></td><td>To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept</td><td>Test Starter (<a href="https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb" target="_blank">https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/test/unit/unitTests.qunit.html</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>9:3</code></td><td>Missing bootstrap parameter 'data-sap-ui-compat-version'</td><td>Compatibility Version Information (deprecated) (<a href="https://ui5.sap.com/#/topic/9feb96da02c2429bb1afcf6534d77c79" target="_blank">https://ui5.sap.com/#/topic/9feb96da02c2429bb1afcf6534d77c79</a>)</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#prefer-test-starter" target="_blank">prefer-test-starter</a></td><td><code>0:0</code></td><td>To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept</td><td>Test Starter (<a href="https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb" target="_blank">https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb</a>)</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>12:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-resourceroots'; should be written as 'data-sap-ui-resource-roots'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>17:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-oninit'; should be written as 'data-sap-ui-on-init'</td><td></td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>18:4</code></td><td>Outdated spelling of bootstrap parameter: 'data-sap-ui-logLevel'; should be written as 'data-sap-ui-log-level'</td><td></td></tr></tbody></table></div><div class="file">
<h3>webapp/test/unit/unitTests.qunit.js</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>6:1</code></td><td>Access of global variable 'sap' (sap.ui.getCore)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>6:8</code></td><td>Call to deprecated function 'getCore' (sap.ui.getCore)</td><td>(since 1.118) - Please require 'sap/ui/core/Core' instead and use the module export directly without using 'new'.</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>6:18</code></td><td>Call to deprecated function 'attachInit' of class 'Core'</td><td>(since 1.118) - Please use Core.ready (<a href="https://ui5.sap.com/1.120/#/api/sap.ui.core.Core" target="_blank">https://ui5.sap.com/1.120/#/api/sap.ui.core.Core</a>) instead.</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#prefer-test-starter" target="_blank">prefer-test-starter</a></td><td><code>6:18</code></td><td>To save boilerplate code and ensure compliance with UI5 2.x best practices, please migrate to the Test Starter concept</td><td>Test Starter (<a href="https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb" target="_blank">https://ui5.sap.com/#/topic/032be2cb2e1d4115af20862673bedcdb</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/view/DesktopMain.view.xml</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>15:2</code></td><td>Import of deprecated module 'sap/ui/commons/Button'</td><td>(since 1.38) - replaced by sap.m.Button (<a href="https://ui5.sap.com/1.120/#/api/sap.m.Button" target="_blank">https://ui5.sap.com/1.120/#/api/sap.m.Button</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/view/Main.view.xml</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>11:2</code></td><td>Import of deprecated module 'sap/m/MessagePage'</td><td>(since 1.112) - Use the sap.m.IllustratedMessage (<a href="https://ui5.sap.com/1.120/#/api/sap.m.IllustratedMessage" target="_blank">https://ui5.sap.com/1.120/#/api/sap.m.IllustratedMessage</a>) instead.</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-deprecated-api" target="_blank">no-deprecated-api</a></td><td><code>22:5</code></td><td>Use of deprecated property 'blocked' of class 'Button'</td><td>(since 1.69) - The blocked property is deprecated. There is no accessibility support for this property. Blocked controls should not be used inside Controls, which rely on keyboard navigation, e.g. List controls.</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-ambiguous-event-handler" target="_blank">no-ambiguous-event-handler</a></td><td><code>21:5</code></td><td>Event handler 'sayHello' must be prefixed by a dot '.' or refer to a local name</td><td>If the handler is defined on the controller, use the leading dot notation. Otherwise import the module via core:require and use the handler via the local name. See Handling Events in XML Views (<a href="https://ui5.sap.com/#/topic/b0fb4de7364f4bcbb053a99aa645affe" target="_blank">https://ui5.sap.com/#/topic/b0fb4de7364f4bcbb053a99aa645affe</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/view/TemplatingMain.view.xml</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>9:39</code></td><td>Access of global variable 'com' (com.ui5.troublesome.app.helpers.Helper.formatParts)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>10:30</code></td><td>Access of global variable 'com' (com.ui5.troublesome.app.helpers.Helper.id)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>12:42</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.gotoEntityType)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-ambiguous-event-handler" target="_blank">no-ambiguous-event-handler</a></td><td><code>15:7</code></td><td>Event handler 'onSelectionChange' must be prefixed by a dot '.' or refer to a local name</td><td>If the handler is defined on the controller, use the leading dot notation. Otherwise import the module via core:require and use the handler via the local name. See Handling Events in XML Views (<a href="https://ui5.sap.com/#/topic/b0fb4de7364f4bcbb053a99aa645affe" target="_blank">https://ui5.sap.com/#/topic/b0fb4de7364f4bcbb053a99aa645affe</a>)</td></tr></tbody></table></div><div class="file">
<h3>webapp/view/TemplatingTable.fragment.xml</h3>
<table>
<thead>
<tr>
<th>Severity</th>
<th>Rule</th>
<th>Location</th>
<th>Message</th>
<th>Details</th>
</tr>
</thead>
<tbody><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>9:12</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.format)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>14:12</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.format)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>24:42</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.resolvePath)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>25:14</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.format)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>28:20</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.getNavigationPath)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>29:13</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.format)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>37:13</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.format)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>42:40</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.gotoFunctionImport)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>45:16</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.format)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="error"><td>Error</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-globals" target="_blank">no-globals</a></td><td><code>49:16</code></td><td>Access of global variable 'sap' (sap.ui.model.odata.AnnotationHelper.format)</td><td>Do not use global variables to access UI5 modules or APIs. See Best Practices for Developers (<a href="https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712" target="_blank">https://ui5.sap.com/#/topic/28fcd55b04654977b63dacbee0552712</a>)</td></tr><tr class="warning"><td>Warning</td><td><a href="https://github.com/SAP/ui5-linter/blob/v1.12.0/docs/Rules.md#no-ambiguous-event-handler" target="_blank">no-ambiguous-event-handler</a></td><td><code>25:100</code></td><td>Event handler 'onDetailsPressed' must be prefixed by a dot '.' or refer to a local name</td><td>If the handler is defined on the controller, use the leading dot notation. Otherwise import the module via core:require and use the handler via the local name. See Handling Events in XML Views (<a href="https://ui5.sap.com/#/topic/b0fb4de7364f4bcbb053a99aa645affe" target="_blank">https://ui5.sap.com/#/topic/b0fb4de7364f4bcbb053a99aa645affe</a>)</td></tr></tbody></table></div>
</body>
</html>
Thank you for your contribution! 🙌
To get it merged faster, kindly review the checklist below:
Pull Request Checklist
- [ ] Reviewed the Contributing Guidelines
- Especially the How to Contribute section
- [ ] No merge commits
- [ ] Correct commit message style
You may need to help me with the tests, locally they are fine.
Should you able to push the snapshots or not? It fails with and without them in the gh actions pipeline
Thanks a lot for your contribution @marianfoo. We will take a closer look to your implementation. Updates will follow here :-)
That's an amazing contribution @marianfoo! We will take care of this PR in backlog item CPOUI5FOUNDATION-1061.
coverage: 86.529% (+0.06%) from 86.471% when pulling 0e58def46d67562b84ebc0987f96214760ada8ca on marianfoo:feat/html-output into 49332cad962a40c341b5ce8c5ad5a8a92171779a on UI5:main.
made a rebase and updated the quiet option for the html output too
You may need to help me with the tests, locally they are fine. Should you able to push the snapshots or not? It fails with and without them in the gh actions pipeline
updated the test and snapshots, tests work now
Due to the removal of formatLocation(), the test using it fails (s. test output: https://github.com/UI5/linter/actions/runs/16143288390/job/45555597239?pr=627#step:9:669). You can just remove this part of the test and verify with npm run test.
Sorry for not mentioning this in my earlier comment :)
was about to ask, so rerunning the test might help :) EDIT: it did help
Thank you too for accepting my PR! Happy to contribute with friendly team ♥️