Skip to content

Commit b99402e

Browse files
committed
fix: update dependencies
BREAKING CHANGE: updates the min Node.js version
1 parent 02be5b0 commit b99402e

16 files changed

Lines changed: 3276 additions & 6312 deletions

.github/workflows/test-and-release.yaml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222

2323
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
2424
with:
25-
node-version: "22.x"
25+
node-version: ">=24.19.0 <25"
2626
cache: "npm"
2727
- name: Install NPM version specified in package.json
2828
uses: ./.github/actions/install-npm
@@ -44,14 +44,16 @@ jobs:
4444

4545
- name: Test
4646
run: |
47-
npx tsx features/run-features.ts > e2e-test-result.json
48-
cat e2e-test-result.json | npx tsx features/console-reporter.ts
49-
cat e2e-test-result.json | npx tsx features/markdown-reporter.ts >> $GITHUB_STEP_SUMMARY
50-
cat e2e-test-result.json | npx tsx features/traceToMermaid.ts >> $GITHUB_STEP_SUMMARY
47+
node --experimental-transform-types --no-warnings features/run-features.ts > e2e-test-result.json
48+
cat e2e-test-result.json | node --experimental-transform-types --no-warnings features/console-reporter.ts
49+
cat e2e-test-result.json | node --experimental-transform-types --no-warnings features/markdown-reporter.ts >> $GITHUB_STEP_SUMMARY
50+
cat e2e-test-result.json | node --experimental-transform-types --no-warnings features/traceToMermaid.ts >> $GITHUB_STEP_SUMMARY
5151
5252
- name: Print failed End-to-End tests
5353
if: failure()
54-
run: cat e2e-test-result.json | npx tsx features/console-reporter.ts
54+
run:
55+
cat e2e-test-result.json | node --experimental-transform-types
56+
--no-warnings features/console-reporter.ts
5557

5658
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
5759
if: failure()

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
BSD 3-Clause License
22

3-
Copyright (c) 2019-2025, Nordic Semiconductor ASA | nordicsemi.no
3+
Copyright (c) 2019-2026, Nordic Semiconductor ASA | nordicsemi.no
44
All rights reserved.
55

66
Redistribution and use in source and binary forms, with or without

README.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,18 +40,24 @@ manual step done through the AWS CLI:
4040

4141
Then set up the continuous deployment:
4242

43-
npx tsx cdk/cloudformation-cd.ts deploy
43+
node --experimental-transform-types --no-warnings cdk/cloudformation-cd.ts deploy
4444

4545
## Architecture decision records (ADRs)
4646

4747
see [./adr](./adr).
4848

4949
## Node & NPM
5050

51-
This project requires Node.js `>=22` and npm `>=12.0.2 <13` (enforced via
52-
`check-node-version` on `npm install` and `npm ci`).
51+
This project requires Node.js `>=24.19.0 <25` and npm `>=12.0.2 <13` (enforced
52+
via `check-node-version` on `npm install` and `npm ci`).
5353

5454
The check is skipped during `npm publish` and `npm pack`, because
5555
`semantic-release` bundles its own npm (`@semantic-release/npm` depends on
5656
`npm@^11.6.2`) and runs the publish with that version rather than the one
5757
installed in CI.
58+
59+
## TypeScript 6 and 7
60+
61+
This repo
62+
[runs TypeScript 6 and 7 side by side](https://devblogs.microsoft.com/typescript/announcing-typescript-7-0/#running-side-by-side-with-typescript-6.0),
63+
[so that eslint works](https://github.com/typescript-eslint/typescript-eslint/issues/10940#issuecomment-4922812181).

cdk.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
"app": "npx tsx cdk/cloudformation-test.ts"
2+
"app": "node --experimental-transform-types --no-warnings cdk/cloudformation-test.ts"
33
}

cdk/TestApp.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import * as CDK from 'aws-cdk-lib'
1+
import type { PackedLambda } from '@bifravst/aws-cdk-lambda-helpers'
22
import type { AppProps } from 'aws-cdk-lib'
3-
import type { PackedLambda } from './packLambda.js'
3+
import * as CDK from 'aws-cdk-lib'
44
import { WebhookReceiverStack } from './WebhookReceiverStack.js'
55

66
export class TestApp extends CDK.App {

cdk/WebhookReceiverStack.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import type { PackedLambda } from '@bifravst/aws-cdk-lambda-helpers'
12
import type { App } from 'aws-cdk-lib'
23
import {
34
CfnOutput,
@@ -9,7 +10,6 @@ import {
910
aws_sqs as SQS,
1011
Stack,
1112
} from 'aws-cdk-lib'
12-
import type { PackedLambda } from './packLambda.js'
1313

1414
/**
1515
* This is the CloudFormation stack which contains the webhook receiver resources.
@@ -36,7 +36,7 @@ export class WebhookReceiverStack extends Stack {
3636
// This lambda will publish all requests made to the API Gateway in the queue
3737
const lambda = new Lambda.Function(this, 'Lambda', {
3838
description: 'Publishes webhook requests into SQS',
39-
code: Lambda.Code.fromAsset(lambdaSource.lambdaZipFile),
39+
code: Lambda.Code.fromAsset(lambdaSource.zipFilePath),
4040
layers: [
4141
Lambda.LayerVersion.fromLayerVersionArn(
4242
this,

cdk/cloudformation-test.ts

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
1-
import path from 'path'
2-
import { packLambda } from './packLambda.js'
1+
import { packLambdaFromPath } from '@bifravst/aws-cdk-lambda-helpers'
32
import { stackBaseName } from './stackBaseName.js'
43
import { TestApp } from './TestApp.js'
54

6-
const baseDir = path.join(process.cwd(), 'lambda')
7-
85
new TestApp({
96
stackName: `${stackBaseName()}-test`,
10-
lambdaSource: await packLambda({
7+
lambdaSource: await packLambdaFromPath({
118
id: 'webhookReceiver',
12-
baseDir,
9+
sourceFilePath: `lambda/webhookReceiver.ts`,
1310
}),
1411
}).synth()

cdk/packLambda.ts

Lines changed: 0 additions & 98 deletions
This file was deleted.

features/console-reporter.spec.ts

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,18 @@
1+
import assert from 'node:assert/strict'
12
import { spawn } from 'node:child_process'
23
import { createReadStream } from 'node:fs'
34
import { join } from 'node:path'
45
import { describe, it } from 'node:test'
5-
import assert from 'node:assert/strict'
66

77
void describe('console-reporter', () => {
88
void it('should exit with code 0 if the previous process runs successfully', async () => {
99
const consoleReporter = spawn(
10-
'npx',
11-
['tsx', join('features', 'console-reporter.ts')],
10+
'node',
11+
[
12+
'--experimental-transform-types',
13+
'--no-warnings',
14+
join('features', 'console-reporter.ts'),
15+
],
1216
{
1317
cwd: process.cwd(),
1418
},
@@ -36,8 +40,12 @@ void describe('console-reporter', () => {
3640

3741
void it('should exit with code 1 if the previous process is failed', async () => {
3842
const consoleReporter = spawn(
39-
'npx',
40-
['tsx', join('features', 'console-reporter.ts')],
43+
'node',
44+
[
45+
'--experimental-transform-types',
46+
'--no-warnings',
47+
join('features', 'console-reporter.ts'),
48+
],
4149
{
4250
cwd: process.cwd(),
4351
},

features/steps/rest-steps.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import type { StepRunner } from '@bifravst/bdd-markdown'
22
import { codeBlockOrThrow, regExpMatchedStep } from '@bifravst/bdd-markdown'
3+
import { Type } from '@sinclair/typebox'
34
import assert from 'assert/strict'
45
import type { Response } from 'node-fetch'
56
import fetch from 'node-fetch'
67
import type { World } from '../run-features.js'
7-
import { Type } from '@sinclair/typebox'
88

99
export const steps = (): StepRunner<World>[] => {
1010
let baseUrl: URL | undefined = undefined

0 commit comments

Comments
 (0)