• 
      

    Fix a JavaScript-side import issue when packaging extensions.

    Review Request #14956 — Created March 24, 2026 and submitted

    Information

    Review Board
    release-7.x

    Reviewers

    We use rollup-extensions.mjs to define common settings for packaging
    up extensions. This builds upon common settings used for packaging
    assets for Review Board, so it does an import to a sibling module for
    handling that.

    This import, though, was an absolute import. To resolve it, node had to
    walk up the tree looking for a node_modules that provided a
    @beanbag/reviewboard. This was finding reviewboard/node_modules,
    since that's where package.json lived. There were versioned
    dependencies that differed from other packages, so npm install placed
    them there where it thought most appropriate. That meant that
    node_modules there only contained a handful of packages, and none of
    them were @beanbag/reviewboard.

    Much of this has been cleaned up for the 8.x branch, and is a large
    effort of its own. However, for this specific situation, fixing the
    import to be relative instead of absolute ensures that the right module
    is picked up when setting up rollup.js.

    Successfully built rbintegrations and Power Pack packages.

    Summary ID
    Fix a JavaScript-side import issue when packaging extensions.
    We use `rollup-extensions.mjs` to define common settings for packaging up extensions. This builds upon common settings used for packaging assets for Review Board, so it does an import to a sibling module for handling that. This import, though, was an absolute import. To resolve it, node had to walk up the tree looking for a `node_modules` that provided a `@beanbag/reviewboard`. This was finding `reviewboard/node_modules`, since that's where `package.json` lived. There were versioned dependencies that differed from other packages, so `npm install` placed them there where it thought most appropriate. That meant that `node_modules` there only contained a handful of packages, and none of them were `@beanbag/reviewboard`. Much of this has been cleaned up for the 8.x branch, and is a large effort of its own. However, for this specific situation, fixing the import to be relative instead of absolute ensures that the right module is picked up when setting up `rollup.js`.
    47e19f1d085489af4f42826bfb13d31bf9c14d5e
    david
    1. Ship It!
    2. 
        
    maubin
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-7.1.x (58bc9c5)