Skip to content

Bug: Ordering inconsistent when using multiple inputs in rollup #461

@kylemellander

Description

@kylemellander

Summary

There is code to order css that is imported in a deterministic order based on the order that it is imported into files. This works great when there is only 1 input file, but when multiple input files are used in rollup, then the output ends up putting all css from the non-first inputs at the top in resolve order (as long as it is not as well imported into the first input). This creates inconsistent outputs that can cause overrides to work incorrectly.

Replication

https://stackblitz.com/edit/vitejs-vite-bgp6mc?file=rollup.config.js&view=editor

  1. run npm run build

Expected Results

The resulting dist/index.css should not put the css from the second input before the shared css.

Actual Results

The second inputs non-shared css is placed first, and then everything is ordered as intended.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions