@mojaloop/bulk-api-adapter 17.2.4 → 17.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  version: 2.1
2
2
  setup: true
3
3
  orbs:
4
- build: mojaloop/build@1.1.10
4
+ build: mojaloop/build@1.1.16
5
5
  workflows:
6
6
  setup:
7
7
  jobs:
package/.grype.yaml CHANGED
@@ -1,6 +1,6 @@
1
1
  disabled: false
2
+ scan-type: source
2
3
  ignore:
3
- # --- Existing ignores ---
4
4
  - vulnerability: GHSA-5j98-mcp5-4vw2
5
5
  include-aliases: true
6
6
  reason: >-
@@ -9,31 +9,41 @@ ignore:
9
9
  - vulnerability: CVE-2025-60876
10
10
  include-aliases: true
11
11
  reason: "Alpine base image package (apk): busybox - no npm fix available as of 2026-02-06 (moderate severity)"
12
-
13
- # --- Base image npm packages (bundled in /usr/local/lib/node_modules/npm/) ---
14
12
  - vulnerability: GHSA-34x7-hfp2-rc4v
15
13
  include-aliases: true
16
- reason: "Base image npm package: tar 6.2.1/7.4.3 - bundled in Node.js base image npm, not fixable via application dependencies as of 2026-02-10"
14
+ reason: >-
15
+ Base image npm package: tar 6.2.1/7.4.3 - bundled in Node.js base image npm, not fixable via application
16
+ dependencies as of 2026-02-10
17
17
  - vulnerability: GHSA-8qq5-rm4j-mr97
18
18
  include-aliases: true
19
- reason: "Base image npm package: tar 6.2.1/7.4.3 - bundled in Node.js base image npm, not fixable via application dependencies as of 2026-02-10"
19
+ reason: >-
20
+ Base image npm package: tar 6.2.1/7.4.3 - bundled in Node.js base image npm, not fixable via application
21
+ dependencies as of 2026-02-10
20
22
  - vulnerability: GHSA-r6q2-hw4h-h46w
21
23
  include-aliases: true
22
- reason: "Base image npm package: tar 6.2.1/7.4.3 - bundled in Node.js base image npm, not fixable via application dependencies as of 2026-02-10"
24
+ reason: >-
25
+ Base image npm package: tar 6.2.1/7.4.3 - bundled in Node.js base image npm, not fixable via application
26
+ dependencies as of 2026-02-10
23
27
  - vulnerability: GHSA-73rr-hh4g-fpgx
24
28
  include-aliases: true
25
- reason: "Base image npm package: diff 5.2.0 - bundled in Node.js base image npm, not fixable via application dependencies as of 2026-02-10 (low severity)"
29
+ reason: >-
30
+ Base image npm package: diff 5.2.0 - bundled in Node.js base image npm, not fixable via application dependencies
31
+ as of 2026-02-10 (low severity)
26
32
  - vulnerability: GHSA-3966-f6p6-2qr9
27
33
  include-aliases: true
28
- reason: "Base image npm package: npm 10.9.4 - bundled in Node.js base image, not fixable via application dependencies as of 2026-02-10"
34
+ reason: >-
35
+ Base image npm package: npm 10.9.4 - bundled in Node.js base image, not fixable via application dependencies as of
36
+ 2026-02-10
29
37
  - vulnerability: GHSA-g9mf-h72j-4rw9
30
38
  include-aliases: true
31
- reason: "Base image npm package: undici - bundled in Node.js base image npm, not fixable via application dependencies as of 2026-02-10"
39
+ reason: >-
40
+ Base image npm package: undici - bundled in Node.js base image npm, not fixable via application dependencies as of
41
+ 2026-02-10
32
42
  - vulnerability: GHSA-xxjr-mmjv-4gpg
33
43
  include-aliases: true
34
- reason: "Base image npm package: lodash-es 4.17.21 - bundled in Node.js base image npm, not fixable via application dependencies as of 2026-02-10"
35
-
36
- # --- Alpine base image packages (apk) - libcrypto3/libssl3 ---
44
+ reason: >-
45
+ Base image npm package: lodash-es 4.17.21 - bundled in Node.js base image npm, not fixable via application
46
+ dependencies as of 2026-02-10
37
47
  - vulnerability: CVE-2025-15467
38
48
  include-aliases: true
39
49
  reason: "Alpine base image package (apk): libcrypto3/libssl3 - no npm fix available as of 2026-02-10 (critical severity)"
@@ -70,8 +80,6 @@ ignore:
70
80
  - vulnerability: CVE-2025-69418
71
81
  include-aliases: true
72
82
  reason: "Alpine base image package (apk): libcrypto3/libssl3 - no npm fix available as of 2026-02-10 (medium severity)"
73
-
74
- # --- Node.js binary vulnerabilities ---
75
83
  - vulnerability: CVE-2025-55130
76
84
  include-aliases: true
77
85
  reason: "Node.js binary vulnerability: node - requires Node.js runtime update as of 2026-02-10 (critical severity)"
@@ -90,7 +98,22 @@ ignore:
90
98
  - vulnerability: CVE-2025-55132
91
99
  include-aliases: true
92
100
  reason: "Node.js binary vulnerability: node - requires Node.js runtime update as of 2026-02-10 (medium severity)"
93
-
101
+ - vulnerability: GHSA-3ppc-4f35-3m26
102
+ include-aliases: true
103
+ reason: >-
104
+ Base image npm package: minimatch - bundled in Node.js base image, not fixable via application dependencies as of
105
+ 2026-02-23 (high severity)
106
+ - vulnerability: GHSA-83g3-92jg-28cx
107
+ include-aliases: true
108
+ reason: >-
109
+ Base image npm package: tar - bundled in Node.js base image, not fixable via application dependencies as of
110
+ 2026-02-23 (high severity)
111
+ - vulnerability: CVE-2026-27171
112
+ include-aliases: true
113
+ reason: "Alpine base image package (apk): zlib - no npm fix available as of 2026-02-23 (moderate severity)"
114
+ - vulnerability: GHSA-2g4f-4pwh-qvx6
115
+ include-aliases: true
116
+ reason: "Unfixable npm transitive vulnerability: ajv (moderate severity) as of 2026-02-23"
94
117
  output:
95
118
  - table
96
119
  - json
package/.nvmrc CHANGED
@@ -1 +1 @@
1
- 22.21.1
1
+ 22.22.0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,26 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [17.2.6](https://github.com/mojaloop/bulk-api-adapter/compare/v17.2.5...v17.2.6) (2026-02-26)
6
+
7
+
8
+ ### Chore
9
+
10
+ * maintenance updates ([#145](https://github.com/mojaloop/bulk-api-adapter/issues/145)) ([8813af4](https://github.com/mojaloop/bulk-api-adapter/commit/8813af4ccc5ed444df3624a85569ad3c8950946d))
11
+ * **sbom:** update sbom [skip ci] ([2f97d59](https://github.com/mojaloop/bulk-api-adapter/commit/2f97d5943c4b1243978da6156d3ea42e82bac826))
12
+
13
+ ### [17.2.5](https://github.com/mojaloop/bulk-api-adapter/compare/v17.2.4...v17.2.5) (2026-02-19)
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * remove deprecared mongodb option ([#144](https://github.com/mojaloop/bulk-api-adapter/issues/144)) ([5d336d5](https://github.com/mojaloop/bulk-api-adapter/commit/5d336d5259f4ead8719db9884fdfaafdbda826a0))
19
+
20
+
21
+ ### Chore
22
+
23
+ * **sbom:** update sbom [skip ci] ([f0a0d19](https://github.com/mojaloop/bulk-api-adapter/commit/f0a0d192490feecb99bb4e27a7c6836073545ad4))
24
+
5
25
  ### [17.2.4](https://github.com/mojaloop/bulk-api-adapter/compare/v17.2.3...v17.2.4) (2026-02-12)
6
26
 
7
27
 
package/Dockerfile CHANGED
@@ -34,10 +34,20 @@ RUN ln -sf /dev/stdout ./logs/combined.log
34
34
 
35
35
  # Create a non-root user: app-user
36
36
  RUN adduser -D app-user
37
- USER app-user
38
37
 
39
38
  COPY --chown=app-user --from=builder /opt/app/ .
40
39
  RUN npm prune --production
41
40
 
41
+ # Remove npm/npx from runtime image to eliminate npm's vulnerable tar - failing grype scan
42
+ USER root
43
+ RUN rm -rf /usr/local/lib/node_modules/npm \
44
+ /usr/local/bin/npm /usr/local/bin/npx
45
+ RUN rm -rf \
46
+ /opt/app/node_modules/@redocly/openapi-core/node_modules/minimatch \
47
+ /opt/app/node_modules/filelist/node_modules/minimatch
48
+ RUN node -e "require('./src/api/index.js'); console.log('startup ok')"
49
+
50
+ USER app-user
51
+
42
52
  EXPOSE 3000
43
53
  CMD ["node src/api/index.js"]
package/audit-ci.jsonc CHANGED
@@ -4,5 +4,6 @@
4
4
  // Only use one of ["low": true, "moderate": true, "high": true, "critical": true]
5
5
  "moderate": true,
6
6
  "allowlist": [ // NOTE: Please add as much information as possible to any items added to the allowList
7
+ "GHSA-2g4f-4pwh-qvx6"
7
8
  ]
8
9
  }
@@ -0,0 +1,50 @@
1
+ import js from "@eslint/js"
2
+ import globals from "globals"
3
+
4
+ export default [
5
+
6
+ // Base JS recommended rules
7
+ js.configs.recommended,
8
+
9
+ // Application code
10
+ {
11
+ files: ["**/*.js"],
12
+ ignores: [
13
+ "node_modules/**",
14
+ "coverage/**",
15
+ "dist/**"
16
+ ],
17
+ languageOptions: {
18
+ ecmaVersion: 2022,
19
+ sourceType: "commonjs",
20
+ globals: {
21
+ ...globals.node
22
+ }
23
+ },
24
+ rules: {
25
+ // Common good defaults
26
+ "no-unused-vars": ["warn", { argsIgnorePattern: "^_" }],
27
+ "no-console": "off",
28
+ "no-undef": "error",
29
+ "no-var": "error",
30
+ "prefer-const": "warn"
31
+ }
32
+ },
33
+
34
+ // Jest test files
35
+ {
36
+ files: ["**/*.test.js", "**/test/**/*.js"],
37
+ plugins: {
38
+ // jest: jestPlugin
39
+ },
40
+ languageOptions: {
41
+ globals: {
42
+ ...globals.node,
43
+ ...globals.jest
44
+ }
45
+ },
46
+ rules: {
47
+ // ...jestPlugin.configs.recommended.rules
48
+ }
49
+ }
50
+ ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mojaloop/bulk-api-adapter",
3
- "version": "17.2.4",
3
+ "version": "17.2.6",
4
4
  "description": "Mojaloop Bulk API Adapter",
5
5
  "license": "Apache-2.0",
6
6
  "author": "ModusBox",
@@ -36,10 +36,8 @@
36
36
  "start:api": "node src/api/index.js",
37
37
  "watch:api": "npx nodemon src/api/index.js",
38
38
  "regenerate": "yo swaggerize:test --framework hapi --apiPath './src/interface/swagger.yaml'",
39
- "standard": "npx standard",
40
- "standard:fix": "npx standard --fix",
41
- "lint": "npm run standard",
42
- "lint:fix": "npm run standard:fix",
39
+ "lint": "eslint .",
40
+ "lint:fix": "eslint . --fix",
43
41
  "test": "npm run test:unit",
44
42
  "test:all": "npm run test",
45
43
  "test:unit": "tape 'test/unit/**/*.test.js' | tap-spec",
@@ -67,18 +65,18 @@
67
65
  "@hapi/catbox": "12.1.1",
68
66
  "@hapi/catbox-memory": "6.0.2",
69
67
  "@hapi/good": "9.0.1",
70
- "@hapi/hapi": "21.4.4",
68
+ "@hapi/hapi": "21.4.6",
71
69
  "@hapi/inert": "7.1.0",
72
70
  "@hapi/vision": "7.0.3",
73
- "@mojaloop/central-services-error-handling": "13.1.5",
74
- "@mojaloop/central-services-health": "15.2.1",
75
- "@mojaloop/central-services-logger": "11.10.3",
76
- "@mojaloop/central-services-metrics": "12.8.3",
71
+ "@mojaloop/central-services-error-handling": "13.1.6",
72
+ "@mojaloop/central-services-health": "15.2.2",
73
+ "@mojaloop/central-services-logger": "11.10.4",
74
+ "@mojaloop/central-services-metrics": "12.8.5",
77
75
  "@mojaloop/central-services-shared": "^18.26.2",
78
- "@mojaloop/central-services-stream": "11.9.0",
79
- "@mojaloop/event-sdk": "14.8.2",
80
- "@mojaloop/object-store-lib": "12.2.2",
81
- "@mojaloop/sdk-standard-components": "19.18.7",
76
+ "@mojaloop/central-services-stream": "11.9.1",
77
+ "@mojaloop/event-sdk": "14.8.3",
78
+ "@mojaloop/object-store-lib": "12.2.3",
79
+ "@mojaloop/sdk-standard-components": "19.18.8",
82
80
  "@now-ims/hapi-now-auth": "2.1.0",
83
81
  "axios": "1.13.5",
84
82
  "blipp": "4.0.2",
@@ -95,9 +93,20 @@
95
93
  "uuid4": "2.0.3"
96
94
  },
97
95
  "overrides": {
98
- "form-data": "4.0.4",
96
+ "ajv": "8.18.0",
97
+ "eslint": {
98
+ "ajv": "6.12.6"
99
+ },
100
+ "eslint@9.39.2": {
101
+ "ajv": "6.12.6"
102
+ },
103
+ "@eslint/eslintrc": {
104
+ "ajv": "6.12.6"
105
+ },
106
+ "form-data": "4.0.5",
99
107
  "on-headers": "1.1.0",
100
- "brace-expansion": "2.0.2",
108
+ "brace-expansion": "5.0.3",
109
+ "minimatch@3.0.5": "3.1.5",
101
110
  "ansi-regex": "5.0.1",
102
111
  "postcss": {
103
112
  "nanoid": "^3.3.8"
@@ -105,13 +114,14 @@
105
114
  "swagmock": {
106
115
  "validator": "13.15.22"
107
116
  },
117
+ "ejs": "3.1.10",
108
118
  "shins": {
109
- "ajv": "6.12.3",
110
- "ejs": "3.1.10",
119
+ "ajv": "8.18.0",
111
120
  "path-to-regexp": "0.1.12",
112
121
  "sanitize-html": "2.12.1",
113
122
  "markdown-it": "12.3.2",
114
- "undici": "6.23.0"
123
+ "undici": "6.23.0",
124
+ "ejs": "3.1.10"
115
125
  },
116
126
  "widdershins": {
117
127
  "swagger2openapi": "7.0.8",
@@ -127,9 +137,9 @@
127
137
  "yargs-parser": "21.1.1",
128
138
  "validator": "13.15.22",
129
139
  "js-yaml": "3.14.2",
130
- "jws": "4.0.1",
131
- "fast-xml-parser": "5.3.4",
132
- "qs": "6.14.1",
140
+ "jws": "3.2.3",
141
+ "fast-xml-parser": "5.3.6",
142
+ "qs": "6.14.2",
133
143
  "undici": "6.23.0",
134
144
  "axios": "1.13.5",
135
145
  "lodash": "4.17.23",
@@ -137,16 +147,18 @@
137
147
  "diff": "8.0.3"
138
148
  },
139
149
  "devDependencies": {
140
- "audit-ci": "^7.1.0",
141
- "nodemon": "3.1.11",
142
- "npm-check-updates": "19.3.2",
143
- "nyc": "17.1.0",
150
+ "@eslint/js": "10.0.1",
151
+ "audit-ci": "7.1.0",
152
+ "eslint": "10.0.2",
153
+ "globals": "17.3.0",
154
+ "nodemon": "3.1.14",
155
+ "npm-check-updates": "19.5.0",
156
+ "nyc": "18.0.0",
144
157
  "pre-commit": "1.2.2",
145
158
  "proxyquire": "2.1.3",
146
159
  "replace": "^1.2.2",
147
160
  "rewire": "9.0.1",
148
161
  "sinon": "21.0.1",
149
- "standard": "17.1.2",
150
162
  "standard-version": "^9.5.0",
151
163
  "swagmock": "1.0.0",
152
164
  "tap-spec": "^5.0.0",