Skip to content

[BUG] "npm ci" does not build a binary extension #2169

@uhop

Description

@uhop

Current Behavior:

NPM 7: npm ci installs dependencies and DOES NOT build a binary extension automatically (binding.gyp is in the root).

There is no attempt to build an extension.

Expected Behavior:

Like NPM 6: npm ci installs dependencies and builds a binary extension automatically (binding.gyp is in the root).

Steps To Reproduce:

My repository: https://github.com/uhop/node-re2

Repro:

  1. Clone the repo (above).
  2. Run npm ci in the root.
  3. It doesn't build the extension.
    • npm i works.
    • npm ci of NPM 6 works.

Environment:

  • Ubunty 20.10
  • Node v15.2.0
  • NPM 7.0.8

Details

NPM 6 — "npm ci" (click to expand)
$ npm ci
npm WARN prepare removing existing node_modules/ before installation

> [email protected] install /media/raid/Work/node-re2
> install-from-cache --artifact build/Release/re2.node --host-var RE2_DOWNLOAD_MIRROR || npm run rebuild

Development flag was detected.
Building locally ...

> [email protected] rebuild /media/raid/Work/node-re2
> node-gyp rebuild

make: Entering directory '/media/raid/Work/node-re2/build'
  CXX(target) Release/obj.target/re2/lib/addon.o
  CXX(target) Release/obj.target/re2/lib/new.o
  CXX(target) Release/obj.target/re2/lib/exec.o
  CXX(target) Release/obj.target/re2/lib/test.o
  CXX(target) Release/obj.target/re2/lib/match.o
  CXX(target) Release/obj.target/re2/lib/replace.o
  CXX(target) Release/obj.target/re2/lib/search.o
  CXX(target) Release/obj.target/re2/lib/split.o
  CXX(target) Release/obj.target/re2/lib/to_string.o
  CXX(target) Release/obj.target/re2/lib/accessors.o
  CXX(target) Release/obj.target/re2/lib/util.o
  CXX(target) Release/obj.target/re2/vendor/re2/bitstate.o
  CXX(target) Release/obj.target/re2/vendor/re2/compile.o
  CXX(target) Release/obj.target/re2/vendor/re2/dfa.o
  CXX(target) Release/obj.target/re2/vendor/re2/filtered_re2.o
  CXX(target) Release/obj.target/re2/vendor/re2/mimics_pcre.o
  CXX(target) Release/obj.target/re2/vendor/re2/nfa.o
  CXX(target) Release/obj.target/re2/vendor/re2/onepass.o
  CXX(target) Release/obj.target/re2/vendor/re2/parse.o
  CXX(target) Release/obj.target/re2/vendor/re2/perl_groups.o
  CXX(target) Release/obj.target/re2/vendor/re2/prefilter.o
  CXX(target) Release/obj.target/re2/vendor/re2/prefilter_tree.o
  CXX(target) Release/obj.target/re2/vendor/re2/prog.o
  CXX(target) Release/obj.target/re2/vendor/re2/re2.o
  CXX(target) Release/obj.target/re2/vendor/re2/regexp.o
  CXX(target) Release/obj.target/re2/vendor/re2/set.o
  CXX(target) Release/obj.target/re2/vendor/re2/simplify.o
  CXX(target) Release/obj.target/re2/vendor/re2/stringpiece.o
  CXX(target) Release/obj.target/re2/vendor/re2/tostring.o
  CXX(target) Release/obj.target/re2/vendor/re2/unicode_casefold.o
  CXX(target) Release/obj.target/re2/vendor/re2/unicode_groups.o
  CXX(target) Release/obj.target/re2/vendor/util/pcre.o
  CXX(target) Release/obj.target/re2/vendor/util/rune.o
  CXX(target) Release/obj.target/re2/vendor/util/strutil.o
  SOLINK_MODULE(target) Release/obj.target/re2.node
  COPY Release/re2.node
make: Leaving directory '/media/raid/Work/node-re2/build'
added 101 packages in 103.094s
NPM 7 — "npm ci" (click to expand)
$ npm ci

added 101 packages, and audited 101 packages in 50s

found 0 vulnerabilities

Metadata

Metadata

Assignees

No one assigned

    Labels

    Bugthing that needs fixingRelease 7.xwork is associated with a specific npm 7 release

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions