Skip to content

Report broken after upgrading to v3.4.0 — Cannot read properties of undefined (reading 'payload') #571

@denysgaievskyi

Description

@denysgaievskyi

Description

After upgrading from Allure CLI 3.3.1 to 3.4.0 (via npm install -g allure@latest), generated reports fail to render with JavaScript errors. The report page loads but crashes immediately.

Environment

  • Allure CLI: 3.4.0 (installed via npm install -g allure@latest)
  • Plugin: awesome (default)
  • Hosting: GitHub Pages (static)
  • Previous working version: 3.3.1
  • Test framework: JUnit 5 with allure-junit5 2.33.0

Config (allurerc.mjs)

import {env} from "node:process";

export default {
    name: "OOH Platform API Tests",
    output: "./build/allure-report",
    historyPath: "./build/allure-results/allure-history.jsonl",
    appendHistory: true,
    variables: {
        "Branch": env.GITHUB_HEAD_REF || env.GITHUB_REF_NAME || "unknown",
        "Triggered By": env.GITHUB_ACTOR || "unknown",
    },
    plugins: {
        awesome: {
            options: {
                reportLanguage: "en-iso",
                singleFile: false,
                groupBy: ["parentSuite", "suite", "subSuite"],
            },
        }
    },
};

Console errors

Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'payload')
    at core.js:297:66041
    at async Tx (core.js:297:65982)

GET widgets/allure_environment.json?v=... 404

Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'message')
    at bo.jre [as constructor] (app-648d4a8e7d5405e104a1.js:2:1252751)
    ...

Uncaught TypeError: Cannot read properties of null (reading 'contextElement')
    at Ku (app-648d4a8e7d5405e104a1.js:2:273233)
    ...

Suspected cause

PR #536 ("Add id to envs") changed widgets/environments.json from a string[] to EnvironmentIdentity[] (objects with id and name properties). The new frontend bundles expect this object format, but something in the store initialization chain fails when processing the data, causing the payload error in core.js.

Additionally, PR #561 changed error handling in fetchReportJsonData to throw ReportFetchError(404) more explicitly for missing widget files like allure_environment.json, which was previously silently ignored.

Steps to reproduce

  1. Have a working Allure 3 report setup with allurerc.mjs config (as shown above)
  2. Upgrade from allure@3.3.1 to allure@3.4.0
  3. Generate report: allure generate build/allure-results
  4. Open build/allure-report/index.html — report crashes with errors above

Workaround

Pin to 3.3.1:

npm install -g allure@3.3.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions