Skip to content

Do not automate addition of engines field to all modules #1276

Closed
@achingbrain

Description

@achingbrain

When the engines field is specified and the current node version doesn't meet it, npm shows a warning but yarn errors.

It's kept in sync with the aegir check-project command so gets updated occasionally.

In CI we only test on npm because we cannot support every permutation of every module installer. The intention behind the engines field is to be helpful to the user but when they use yarn it can end up breaking them unnecessarily.

Not all modules actually require the version set by check-project but it's too much work to go around and audit each individual module to work out which one requires what so I propose dropping the field from our semi-automated config updates.

If an individual module requires a certain minor release of node lts, it can add an engines field to it's package.json but we don't to need enforce that every module requires node 18+.

Refs: multiformats/js-mafmt#154 (comment)
Refs: multiformats/js-mafmt#152 (comment)

cc @SgtPooki @whizzzkid

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