Name: [FIX][17.0] web_responsive: fix test eslint

State: Failed finished in 20m

PR State: merged

PR Author: Nguyễn Duy Quyền

PR Author Email:

PR: #594

Committer: quyen

Committer Email: duyquyencnt55@gmail.com

Commit: eda6f1caaf0cfc25da648b2b1822aa93fe54e2bf

Description:

                                            [FIX] web_responsive: fix test eslint
                                            

Branch: 17.0

Instance ID: 0

Age:

Up-time:

Subbuilds Name State Detail
Build 340116 Check the quality with Pylint: from test_lint to test_pylint 19m Failed Log
Build 340117 At install tests: from account to website_twitter Killed Log
Build 340118 Post install tests: step install all modules 34m Succeed Log
Build 340119 Post install tests: from account to hr_work_entry Killed Log
Build 340120 Post install tests: from hr_work_entry_contract to pos_hr_restaurant Killed Log
Build 340121 Post install tests: from pos_loyalty to sale_stock_margin Killed Log
Build 340122 Post install tests: from sale_timesheet to to_multi_warehouse_access_control_sms Killed Log
Build 340123 Post install tests: from to_odoo_module to viin_sign_sim_viettel Killed Log
Build 340124 Post install tests: from viin_social to website_twitter Killed Log
Build 340125 Test install all modules without demo data: from account to website_twitter 29m Succeed Log
Create Date Level Message
09/08/2025 10:09:09 INFO
Updated repository Viindoo-odoo
09/08/2025 10:09:09 INFO
Updated repository Viindoo-tvtmaaddons
09/08/2025 10:09:09 INFO
Updated repository Viindoo-erponline-enterprise
09/08/2025 10:09:09 INFO
Cloned repository Viindoo-branding
12/11/2023 08:55:00
Using Docker Image Odoo 17 Ubuntu 22.04 Python 3.10:

FROM ubuntu:jammy

ENV LANG C.UTF-8

USER root

SHELL ["/bin/bash", "-c"]

# Install debian packages
RUN set -x ; \
apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends apt-transport-https build-essential ca-certificates curl ffmpeg file fonts-freefont-ttf fonts-noto-cjk gawk gnupg gsfonts libldap2-dev libjpeg9-dev libsasl2-dev libxslt1-dev lsb-release node-less ocrmypdf sed sudo unzip xfonts-75dpi zip zlib1g-dev git build-essential cython3 libffi-dev libev-dev \
&& rm -rf /var/lib/apt/lists/*

# Install Python3 packages
RUN set -x ; \
apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends python3 python3-dbfread python3-dev python3-pip python3-setuptools python3-wheel python3-markdown python3-mock python3-phonenumbers python3-websocket python3-cffi libpq-dev \
&& rm -rf /var/lib/apt/lists/*

# Install wkhtml
RUN curl -sSL https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb -o /tmp/wkhtmltox_0.12.6-1.focal_amd64.deb \
&& curl -sSL http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb -o /tmp/libssl1.1_1.1.0g-2ubuntu4_amd64.deb \
&& apt-get update \
&& dpkg -i /tmp/libssl1.1_1.1.0g-2ubuntu4_amd64.deb \
&& apt install -y -f --no-install-recommends /tmp/wkhtmltox_0.12.6-1.focal_amd64.deb \
&& rm /tmp/libssl1.1_1.1.0g-2ubuntu4_amd64.deb /tmp/wkhtmltox_0.12.6-1.focal_amd64.deb

# Install Odoo:Depends
ADD https://raw.githubusercontent.com/brendangregg/FlameGraph/master/flamegraph.pl /usr/local/bin/flamegraph.pl
RUN chmod +rx /usr/local/bin/flamegraph.pl
ADD https://raw.githubusercontent.com/Viindoo/odoo/17.0/debian/control /tmp/control.txt
RUN apt-get update \
&& sed -n '/^Depends:/,/^[A-Z]/p' /tmp/control.txt \
| awk '/^ [a-z]/ { gsub(/,/,"") ; print $1 }' | sort -u \
| egrep -v 'postgresql-client' \
| sed 's/python-imaging/python-pil/'| sed 's/python-pypdf/python-pypdf2/' | sed 's/python3-lxml-html-clean/python3-lxml/' \
| DEBIAN_FRONTEND=noninteractive xargs apt-get install -y -qq \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*

RUN python3 -m pip install --no-cache-dir setuptools wheel && \
python3 -m pip install coverage==7.4.4 flamegraph

RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y postgresql-client-14 \
&& rm -rf /var/lib/apt/lists/*

# Install Google Chrome
#RUN curl -sSL https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb -o /tmp/chrome.deb \
# && apt-get update \
# && apt-get -y install --no-install-recommends /tmp/chrome.deb \
# && rm /tmp/chrome.deb

# Install phantomjs
RUN curl -sSL https://nightly.odoo.com/resources/phantomjs.tar.bz2 -o /tmp/phantomjs.tar.bz2 \
&& tar xvfO /tmp/phantomjs.tar.bz2 phantomjs-2.1.1-linux-x86_64/bin/phantomjs > /usr/local/bin/phantomjs \
&& chmod +x /usr/local/bin/phantomjs \
&& rm -f /tmp/phantomjs.tar.bz2

ADD https://raw.githubusercontent.com/Viindoo/odoo/17.0/requirements.txt /root/requirements.txt
RUN python3 -m pip install --no-cache-dir wheel setuptools && \
python3 -m pip install --upgrade --no-cache-dir -r /root/requirements.txt && \
python3 -m pip install --no-cache-dir ebaysdk==2.1.5 pdf417gen==0.7.1

RUN python3 -m pip install --no-cache-dir requests pyOpenSSL

# Install debian packages
RUN set -x ; \
apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends openssl iputils-ping openssh-client chromium-browser \
&& rm -rf /var/lib/apt/lists/*

RUN python3 -m pip install --no-cache-dir --upgrade websocket-client==1.2.3 flake8==4.0.1
RUN python3 -m pip uninstall pylint pylint-odoo isort Pygments -y
RUN python3 -m pip install --no-cache-dir --upgrade pylint-odoo==9.0.5
RUN python3 -m pip install --no-cache-dir --upgrade Pygments==2.14.0 --no-deps
RUN python3 -m pip install --no-cache-dir --upgrade odoo_test_helper

# Install nodejs
RUN curl -fsSLO --compressed "https://nodejs.org/dist/v18.20.0/node-v18.20.0-linux-x64.tar.xz" \
&& tar -xJf "node-v18.20.0-linux-x64.tar.xz" -C /usr/local --strip-components=1 --no-same-owner \
&& rm "node-v18.20.0-linux-x64.tar.xz" \
&& ln -s /usr/local/bin/node /usr/local/bin/nodejs
#RUN npm install -g rtlcss es-check eslint@8
RUN python3 -m pip install --no-cache-dir --upgrade setuptools==61 # để tương thích với python-pkcs11-0.7.0

# Install cloc package
RUN set -x ; \
apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends cloc \
&& rm -rf /var/lib/apt/lists/*

RUN npm install -g rtlcss@3.4.0 es-check@6.0.0 eslint@8.57.1 prettier@2.7.1 eslint-config-prettier@8.5.0 eslint-plugin-prettier@4.2.1 --save-dev
09/08/2025 10:29:34 ERROR
Subbuild # 340116: odoo.addons.test_pylint.tests.test_eslint: FAIL: TestESLint.test_eslint Traceback (most recent call last): File "/data/build/Viindoo-tvtmaaddons-17.0/test_pylint/tests/test_eslint.py", line 67, in test_eslint self.assertEqual(process.returncode, 0, msg=f""" AssertionError: 1 != 0 : stdout: /data/build/Viindoo-erponline-enterprise-17.0/to_account_reports/static/src/components/account_report_filter/account_report_filter.js 163:9 error Expected to return a value in getter 'customStartDate' getter-return 172:9 error Expected to return a value in getter 'customEndDate' getter-return 184:9 error Expected to return a value in getter 'comparisonStartDate' getter-return 193:9 error Expected to return a value in getter 'comparisonEndDate' getter-return /data/build/Viindoo-erponline-enterprise-17.0/viin_customizer/static/src/js/components/customizer_report/customizer_report_editor.js 540:31 error Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins /data/build/Viindoo-erponline-enterprise-17.0/viin_customizer/static/src/js/components/xml_editor/xml_editor.js 85:5 error Expected getter 'selectMenuProps' to always return a value getter-return /data/build/Viindoo-erponline-enterprise-17.0/viin_customizer/static/src/js/utils.js 352:21 error Do not access Object.prototype method 'hasOwnProperty' from target object no-prototype-builtins /data/build/Viindoo-erponline-enterprise-17.0/viin_customizer/static/tests/helpers/data_test.js 149:33 error Unnecessary escape character: \" no-useless-escape 149:48 error Unnecessary escape character: \" no-useless-escape 149:68 error Unnecessary escape character: \" no-useless-escape 149:87 error Unnecessary escape character: \" no-useless-escape 149:103 error Unnecessary escape character: \" no-useless-escape 149:126 error Unnecessary escape character: \" no-useless-escape 150:36 error Unnecessary escape character: \" no-useless-escape 150:59 error Unnecessary escape character: \" no-useless-escape 150:79 error Unnecessary escape character: \" no-useless-escape 150:98 error Unnecessary escape character: \" no-useless-escape 151:37 error Unnecessary escape character: \" no-useless-escape 151:44 error Unnecessary escape character: \" no-useless-escape 151:57 error Unnecessary escape character: \" no-useless-escape 151:88 error Unnecessary escape character: \" no-useless-escape 151:108 error Unnecessary escape character: \" no-useless-escape 151:127 error Unnecessary escape character: \" no-useless-escape 152:34 error Unnecessary escape character: \" no-useless-escape 152:44 error Unnecessary escape character: \" no-useless-escape 152:55 error Unnecessary escape character: \" no-useless-escape 152:72 error Unnecessary escape character: \" no-useless-escape 152:85 error Unnecessary escape character: \" no-useless-escape 152:116 error Unnecessary escape character: \" no-useless-escape 152:136 error Unnecessary escape character: \" no-useless-escape 152:155 error Unnecessary escape character: \" no-useless-escape 153:40 error Unnecessary escape character: \" no-useless-escape 153:72 error Unnecessary escape character: \" no-useless-escape 153:92 error Unnecessary escape character: \" no-useless-escape 153:111 error Unnecessary escape character: \" no-useless-escape 154:34 error Unnecessary escape character: \" no-useless-escape 154:44 error Unnecessary escape character: \" no-useless-escape 154:51 error Unnecessary escape character: \" no-useless-escape 154:63 error Unnecessary escape character: \" no-useless-escape 154:71 error Unnecessary escape character: \" no-useless-escape 154:119 error Unnecessary escape character: \" no-useless-escape 154:140 error Unnecessary escape character: \" no-useless-escape 154:166 error Unnecessary escape character: \" no-useless-escape 154:188 error Unnecessary escape character: \" no-useless-escape 154:197 error Unnecessary escape character: \" no-useless-escape 155:36 error Unnecessary escape character: \" no-useless-escape 155:53 error Unnecessary escape character: \" no-useless-escape 155:66 error Unnecessary escape character: \" no-useless-escape 155:99 error Unnecessary escape character: \" no-useless-escape 155:119 error Unnecessary escape character: \" no-useless-escape 155:138 error Unnecessary escape character: \" no-useless-escape 155:229 error Unnecessary escape character: \" no-useless-escape 155:246 error Unnecessary escape character: \" no-useless-escape 155:253 error Unnecessary escape character: \" no-useless-escape 155:293 error Unnecessary escape character: \" no-useless-escape 155:314 error Unnecessary escape character: \" no-useless-escape 155:333 error Unnecessary escape character: \" no-useless-escape 155:355 error Unnecessary escape character: \" no-useless-escape 155:364 error Unnecessary escape character: \" no-useless-escape 155:389 error Unnecessary escape character: \" no-useless-escape 155:406 error Unnecessary escape character: \" no-useless-escape 155:413 error Unnecessary escape character: \" no-useless-escape 155:460 error Unnecessary escape character: \" no-useless-escape 155:481 error Unnecessary escape character: \" no-useless-escape 155:507 error Unnecessary escape character: \" no-useless-escape 155:529 error Unnecessary escape character: \" no-useless-escape 155:538 error Unnecessary escape character: \" no-useless-escape 157:36 error Unnecessary escape character: \" no-useless-escape 157:59 error Unnecessary escape character: \" no-useless-escape 157:79 error Unnecessary escape character: \" no-useless-escape 157:98 error Unnecessary escape character: \" no-useless-escape 157:107 error Unnecessary escape character: \" no-useless-escape 157:118 error Unnecessary escape character: \" no-useless-escape 158:31 error Unnecessary escape character: \" no-useless-escape 158:41 error Unnecessary escape character: \" no-useless-escape 158:54 error Unnecessary escape character: \" no-useless-escape 158:84 error Unnecessary escape character: \" no-useless-escape 158:104 error Unnecessary escape character: \" no-useless-escape 158:123 error Unnecessary escape character: \" no-useless-escape 159:42 error Unnecessary escape character: \" no-useless-escape 159:80 error Unnecessary escape character: \" no-useless-escape 159:100 error Unnecessary escape character: \" no-useless-escape 159:119 error Unnecessary escape character: \" no-useless-escape 160:40 error Unnecessary escape character: \" no-useless-escape 160:46 error Unnecessary escape character: \" no-useless-escape 160:59 error Unnecessary escape character: \" no-useless-escape 160:73 error Unnecessary escape character: \" no-useless-escape 160:93 error Unnecessary escape character: \" no-useless-escape 160:111 error Unnecessary escape character: \" no-useless-escape 161:46 error Unnecessary escape character: \" no-useless-escape 161:66 error Unnecessary escape character: \" no-useless-escape 161:86 error Unnecessary escape character: \" no-useless-escape 161:104 error Unnecessary escape character: \" no-useless-escape 161:123 error Unnecessary escape character: \" no-useless-escape 161:151 error Unnecessary escape character: \" no-useless-escape 161:171 error Unnecessary escape character: \" no-useless-escape 161:189 error Unnecessary escape character: \" no-useless-escape 162:45 error Unnecessary escape character: \" no-useless-escape 162:74 error Unnecessary escape character: \" no-useless-escape 162:82 error Unnecessary escape character: \" no-useless-escape 162:102 error Unnecessary escape character: \" no-useless-escape 162:115 error Unnecessary escape character: \" no-useless-escape 162:138 error Unnecessary escape character: \" no-useless-escape 162:158 error Unnecessary escape character: \" no-useless-escape 162:176 error Unnecessary escape character: \" no-useless-escape 163:52 error Unnecessary escape character: \" no-useless-escape 163:84 error Unnecessary escape character: \" no-useless-escape 163:104 error Unnecessary escape character: \" no-useless-escape 163:122 error Unnecessary escape character: \" no-useless-escape 164:52 error Unnecessary escape character: \" no-useless-escape 164:90 error Unnecessary escape character: \" no-useless-escape 164:110 error Unnecessary escape character: \" no-useless-escape 164:128 error Unnecessary escape character: \" no-useless-escape 165:50 error Unnecessary escape character: \" no-useless-escape 165:66 error Unnecessary escape character: \" no-useless-escape 165:75 error Unnecessary escape character: \" no-useless-escape 165:86 error Unnecessary escape character: \" no-useless-escape 165:99 error Unnecessary escape character: \" no-useless-escape 165:143 error Unnecessary escape character: \" no-useless-escape 165:163 error Unnecessary escape character: \" no-useless-escape 165:181 error Unnecessary escape character: \" no-useless-escape 165:200 error Unnecessary escape character: \" no-useless-escape 165:252 error Unnecessary escape character: \" no-useless-escape 165:272 error Unnecessary escape character: \" no-useless-escape 165:290 error Unnecessary escape character: \" no-useless-escape 166:50 error Unnecessary escape character: \" no-useless-escape 166:61 error Unnecessary escape character: \" no-useless-escape 166:70 error Unnecessary escape character: \" no-useless-escape 166:81 error Unnecessary escape character: \" no-useless-escape 166:94 error Unnecessary escape character: \" no-useless-escape 166:138 error Unnecessary escape character: \" no-useless-escape 166:158 error Unnecessary escape character: \" no-useless-escape 166:176 error Unnecessary escape character: \" no-useless-escape 166:195 error Unnecessary escape character: \" no-useless-escape 166:247 error Unnecessary escape character: \" no-useless-escape 166:267 error Unnecessary escape character: \" no-useless-escape 166:285 error Unnecessary escape character: \" no-useless-escape 169:48 error Unnecessary escape character: \" no-useless-escape 169:60 error Unnecessary escape character: \" no-useless-escape 169:73 error Unnecessary escape character: \" no-useless-escape 169:105 error Unnecessary escape character: \" no-useless-escape 169:125 error Unnecessary escape character: \" no-useless-escape 169:143 error Unnecessary escape character: \" no-useless-escape 170:52 error Unnecessary escape character: \" no-useless-escape 170:95 error Unnecessary escape character: \" no-useless-escape 170:115 error Unnecessary escape character: \" no-useless-escape 170:133 error Unnecessary escape character: \" no-useless-escape 170:150 error Unnecessary escape character: \" no-useless-escape 170:199 error Unnecessary escape character: \" no-useless-escape 170:219 error Unnecessary escape character: \" no-useless-escape 170:237 error Unnecessary escape character: \" no-useless-escape 170:248 error Unnecessary escape character: \" no-useless-escape 170:367 error Unnecessary escape character: \" no-useless-escape 170:397 error Unnecessary escape character: \" no-useless-escape 170:446 error Unnecessary escape character: \" no-useless-escape 170:466 error Unnecessary escape character: \" no-useless-escape 170:484 error Unnecessary escape character: \" no-useless-escape 170:495 error Unnecessary escape character: \" no-useless-escape 170:614 error Unnecessary escape character: \" no-useless-escape 171:52 error Unnecessary escape character: \" no-useless-escape 171:95 error Unnecessary escape character: \" no-useless-escape 171:115 error Unnecessary escape character: \" no-useless-escape 171:133 error Unnecessary escape character: \" no-useless-escape 171:150 error Unnecessary escape character: \" no-useless-escape 171:199 error Unnecessary escape character: \" no-useless-escape 171:219 error Unnecessary escape character: \" no-useless-escape 171:237 error Unnecessary escape character: \" no-useless-escape 171:248 error Unnecessary escape character: \" no-useless-escape 171:367 error Unnecessary escape character: \" no-useless-escape 171:396 error Unnecessary escape character: \" no-useless-escape 171:445 error Unnecessary escape character: \" no-useless-escape 171:465 error Unnecessary escape character: \" no-useless-escape 171:483 error Unnecessary escape character: \" no-useless-escape 171:494 error Unnecessary escape character: \" no-useless-escape 171:613 error Unnecessary escape character: \" no-useless-escape /data/build/Viindoo-erponline-enterprise-17.0/viin_customizer/static/tests/helpers/test_utils.js 121:5 error 'baseConfig' is never reassigned. Use 'const' instead prefer-const /data/build/Viindoo-erponline-enterprise-17.0/viin_customizer_web_responsive/static/src/js/component/customizer_nav_bar/customizer_navbar_web_responsive.js 79:21 error Unnecessary try/catch wrapper no-useless-catch /data/build/Viindoo-erponline-enterprise-17.0/viin_document/static/src/js/document_kanban_controller.js 66:5 error Expected to return a value in getter 'addLinkDocument' getter-return 78:5 error Expected to return a value in getter 'addRequestDocument' getter-return /data/build/Viindoo-erponline-enterprise-17.0/viin_document/static/src/js/document_list_controller.js 41:5 error Expected to return a value in getter 'addLinkDocument' getter-return 53:5 error Expected to return a value in getter 'addRequestDocument' getter-return /data/build/Viindoo-erponline-enterprise-17.0/viin_mrp_account/static/src/components/production_cost_report/production_cost_report.js 55:9 error Expected to return a value in getter 'comparisonStartDate' getter-return 64:9 error Expected to return a value in getter 'comparisonEndDate' getter-return /data/build/Viindoo-erponline-enterprise-17.0/viin_sem/static/src/client_action/sem_dashboard/sem_dashboard.js 41:21 error 'style' is already defined no-redeclare /data/build/Viindoo-erponline-enterprise-17.0/viin_sem_heatmap/static/src/js/heatmap_tracker.js 91:9 error 'parent' is never reassigned. Use 'const' instead prefer-const /data/build/Viindoo-erponline-enterprise-17.0/viin_sign/static/src/dialog/digital_signature_dialog.js 183:17 error Unexpected lexical declaration in case block no-case-declarations 210:17 error Unexpected lexical declaration in case block no-case-declarations 296:21 error Unexpected lexical declaration in case block no-case-declarations /data/build/Viindoo-erponline-enterprise-17.0/viin_sign/static/src/document_sign/document_sign_widget.js 201:17 error Unexpected lexical declaration in case block no-case-declarations 213:17 error Unexpected lexical declaration in case block no-case-declarations 624:17 error Unexpected lexical declaration in case block no-case-declarations 625:17 error Unexpected lexical declaration in case block no-case-declarations 631:17 error Unexpected lexical declaration in case block no-case-declarations /data/build/Viindoo-erponline-enterprise-17.0/viin_web_gantt/static/src/js/viin_gantt_arch_parser.js 41:21 error Unexpected lexical declaration in case block no-case-declarations 63:21 error Unexpected lexical declaration in case block no-case-declarations 69:21 error Unexpected lexical declaration in case block no-case-declarations /data/build/Viindoo-erponline-enterprise-17.0/viin_web_gantt/static/src/js/viin_gantt_model.js 95:17 error Unexpected lexical declaration in case block no-case-declarations 96:17 error Unexpected lexical declaration in case block no-case-declarations /data/build/Viindoo-erponline-enterprise-17.0/viin_web_gantt/static/src/js/viin_gantt_pdf.js 481:22 error 'i' is already defined no-redeclare 482:21 error 'link' is already defined no-redeclare /data/build/Viindoo-erponline-enterprise-17.0/viin_web_gantt/static/src/js/viin_gantt_renderer.js 974:17 error Unexpected lexical declaration in case block no-case-declarations 975:17 error Unexpected lexical declaration in case block no-case-declarations 1567:17 error 'ganttData' is already defined no-redeclare 1658:21 error 'dataFieldVal' is already defined no-redeclare 1685:25 error 'status_obj' is already defined no-redeclare 1697:17 error 'status_obj' is already defined no-redeclare 1840:22 error 'i' is already defined no-redeclare 1983:21 error 'taskRow' is already defined no-redeclare 2000:21 error 'elem' is already defined no-redeclare 2006:26 error 'i' is already defined no-redeclare 2230:21 error 'distanceTime' is already defined no-redeclare 2231:21 error 'start' is already defined no-redeclare 2232:21 error 'end' is already defined no-redeclare 2233:21 error 'start_datetime' is already defined no-redeclare 2236:21 error 'end_datetime' is already defined no-redeclare 2239:21 error 'val_to_update' is already defined no-redeclare 2341:21 error 'res_id' is already defined no-redeclare 2343:25 error 'time_interval' is already defined no-redeclare 2573:25 error 'val' is already defined no-redeclare 2641:18 error 'i' is already defined no-redeclare 2685:21 error 'fieldStatus' is already defined no-redeclare 2700:21 error 'key' is already defined no-redeclare 2730:18 error 'i' is already defined no-redeclare 2803:18 error 'i' is already defined no-redeclare 2813:18 error 'i' is already defined no-redeclare 2814:17 error 'dep' is already defined no-redeclare /data/build/Viindoo-erponline-enterprise-17.0/viin_web_gantt/static/tests/viin_gantt_tests.js 318:17 error 'currentScrollVal' is already defined no-redeclare 321:17 error 'currentScrollVal' is already defined no-redeclare 322:17 error 'deltaScroll' is already defined no-redeclare 323:17 error 'currentScrollVal' is already defined no-redeclare /data/build/Viindoo-erponline-enterprise-17.0/viin_website_sale_subscription/static/src/js/main.js 8:1 error Delete `⏎` prettier/prettier 11:9 error Replace `'change·.js_sale_period':·'_onChangeSalePeriod'` with `"change·.js_sale_period":·"_onChangeSalePeriod",` prettier/prettier 27:13 error 'params' is never reassigned. Use 'const' instead prefer-const 28:13 error Replace `'sale_period_id'` with `sale_period_id` prettier/prettier 29:10 error Insert `;` prettier/prettier 30:13 error 'tokenObj' is never reassigned. Use 'const' instead prefer-const 30:55 error Replace `'website_recaptcha'` with `"website_recaptcha"` prettier/prettier 34:36 error Replace `'/shop/cart/update_subscription'` with `"/shop/cart/update_subscription"` prettier/prettier 35:18 error Replace `'status'` with `"status"` prettier/prettier 36:39 error Replace `'message'` with `"message"` prettier/prettier 41:13 error 'el' is never reassigned. Use 'const' instead prefer-const 41:35 error Replace `'.oe_website_sale').find('.oe_cart·.js_quantity'` with `".oe_website_sale").find(".oe_cart·.js_quantity"` prettier/prettier 42:23 error Replace `'change'` with `"change"` prettier/prettier 50:13 error '$el' is never reassigned. Use 'const' instead prefer-const 50:21 error Replace `'.o_period_card'` with `".o_period_card"` prettier/prettier 51:20 error Replace `'is_subscription']·&&·!!data['website_sale.cart_subscription'` with `"is_subscription"]·&&·!!data["website_sale.cart_subscription"` prettier/prettier 53:34 error Replace `'website_sale.cart_subscription'` with `"website_sale.cart_subscription"` prettier/prettier 57:6 error Insert `,` prettier/prettier ✖ 248 problems (248 errors, 0 warnings) 18 errors and 0 warnings potentially fixable with the `--fix` option. Perhaps you might benefit from installing the tooling found at: https://github.com/odoo/odoo/wiki/Javascript-coding-guidelines#use-a-linter stderr:
09/08/2025 10:29:34 ERROR
Subbuild # 340116: odoo.modules.loading: Module test_pylint: 1 failures, 0 errors of 8 tests
09/08/2025 10:29:34 ERROR
Subbuild # 340116: odoo.modules.loading: At least one test failed when loading the modules.
09/08/2025 10:29:34 ERROR
Subbuild # 340116: odoo.tests.result: 1 failed, 0 error(s) of 25 tests when loading database 'rb-eda6f1c-217205-340116'