Skip to content

feat: Add html linter output #627

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

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

marianfoo
Copy link
Contributor

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:
image

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

@marianfoo
Copy link
Contributor Author

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

@flovogt
Copy link
Member

flovogt commented Apr 15, 2025

Thanks a lot for your contribution @marianfoo. We will take a closer look to your implementation. Updates will follow here :-)

@flovogt flovogt requested a review from a team April 15, 2025 07:00
@flovogt flovogt self-assigned this Apr 15, 2025
@flovogt
Copy link
Member

flovogt commented Apr 16, 2025

That's an amazing contribution @marianfoo! We will take care of this PR in backlog item CPOUI5FOUNDATION-1061.

@flovogt flovogt added the export An issue related to export capabilities label Apr 16, 2025
@matz3 matz3 changed the title feat: Add hmtl linter output feat: Add html linter output Apr 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
export An issue related to export capabilities
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants