Skip to content

Commit cc10ac3

Browse files
Fix Node build break on typescript-eslint (#771)
typescript-eslint v8.14.0 and earlier were broken by an implementation change in ESLint v9.15.0. This change makes use of package-lock.json files to allow resolved dependency versions to be moved forwards in a more controlled manner, and minimise the chances of unexpected breakages like this in future. - Include package-lock.json files to stabilize the Node dependency versions resolved across builds. - Change Makefile targets to use `npm ci` instead of `npm install` so that package-lock.json files are honored when resolving dependencies. Signed-off-by: Mark S. Lewis <[email protected]>
1 parent e452fcd commit cc10ac3

File tree

7 files changed

+12926
-14
lines changed

7 files changed

+12926
-14
lines changed

Makefile

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ build: build-node build-java
3535
.PHONY: build-node
3636
build-node:
3737
cd '$(node_dir)' && \
38-
npm install && \
38+
npm ci && \
3939
npm run build && \
4040
rm -f fabric-gateway-dev.tgz && \
4141
mv $$(npm pack) fabric-gateway-dev.tgz
@@ -117,15 +117,15 @@ scan-node: scan-node-npm-audit scan-node-osv-scanner
117117
.PHONY: scan-node-npm-audit
118118
scan-node-npm-audit:
119119
cd '$(node_dir)' && \
120-
npm install --package-lock-only && \
120+
npm install --omit=dev --package-lock-only --no-audit && \
121121
npm audit --omit=dev
122122

123123
.PHONY: scan-node-osv-scanner
124124
scan-node-osv-scanner:
125125
go install github.com/google/osv-scanner/cmd/osv-scanner@latest
126126
cd '$(node_dir)' && \
127-
npm install --package-lock-only && \
128-
npm sbom --omit dev --package-lock-only --sbom-format cyclonedx > sbom.json && \
127+
npm install --omit=dev --package-lock-only --no-audit && \
128+
npm sbom --omit=dev --package-lock-only --sbom-format cyclonedx > sbom.json && \
129129
osv-scanner scan --sbom=sbom.json
130130

131131
.PHONY: scan-java
@@ -174,15 +174,15 @@ scenario-test-go-no-hsm: vendor-chaincode
174174
.PHONY: scenario-test-node
175175
scenario-test-node: vendor-chaincode build-node fabric-ca-client setup-softhsm
176176
cd '$(scenario_dir)/node' && \
177-
rm -rf package-lock.json node_modules && \
178-
npm install && \
177+
npm ci && \
178+
npm install @hyperledger/fabric-gateway@file:../../node/fabric-gateway-dev.tgz && \
179179
npm test
180180

181181
.PHONY: scenario-test-node-no-hsm
182182
scenario-test-node-no-hsm: vendor-chaincode build-node fabric-ca-client
183183
cd '$(scenario_dir)/node' && \
184-
rm -rf package-lock.json node_modules && \
185-
npm install && \
184+
npm ci && \
185+
npm install @hyperledger/fabric-gateway@file:../../node/fabric-gateway-dev.tgz && \
186186
npm run test:no-hsm
187187

188188
.PHONY: scenario-test-java
@@ -222,7 +222,7 @@ generate-docs:
222222
.PHONY: generate-docs-node
223223
generate-docs-node:
224224
cd '$(node_dir)' && \
225-
npm install && \
225+
npm ci && \
226226
npm run generate-apidoc
227227

228228
.PHONY: generate-docs-java
@@ -241,7 +241,7 @@ clean: clean-generated clean-node clean-java clean-docs
241241

242242
.PHONY: clean-node
243243
clean-node:
244-
cd '$(node_dir)' && rm -rf package-lock.json node_modules
244+
cd '$(node_dir)' && rm -rf node_modules
245245

246246
.PHONY: clean-java
247247
clean-java:

node/.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,4 @@ coverage/
44
*.tgz
55
src/protos/
66
apidocs/
7-
package-lock.json
87
sbom.json

0 commit comments

Comments
 (0)