diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e292db4..a9c7a54 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -8,14 +8,14 @@ jobs: strategy: matrix: - node-version: [14.x, 15.x, 16.x, 18.x] + node-version: [16.x, 18.x, 20.x, 22.x, 24.x] steps: - name: Checkout repository - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Set up Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} @@ -26,4 +26,4 @@ jobs: run: npm run test - name: Upload coverage to Coveralls - uses: coverallsapp/github-action@v2 \ No newline at end of file + uses: coverallsapp/github-action@v2 diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..c6bfd34 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,20 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +## [1.2.0] - 2026-02-13 + +### Added +- Node.js v20, v22, and v24 support +- `engines` field in package.json specifying minimum Node.js version + +### Changed +- Dockerfile updated from Node 22 to Node 24 +- CI matrix updated to test against Node.js 16, 18, 20, 22, and 24 +- Updated GitHub Actions to latest versions (checkout@v4, setup-node@v4) +- Minimum supported Node.js version updated from v8 to v16 +- README updated to reflect current Node.js compatibility + +## [1.1.1] - Previous release + +- Initial tracked version diff --git a/Dockerfile b/Dockerfile index d70ec22..67e44ee 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:22-slim +FROM node:24-slim USER node ARG APP_DIR=/home/node/app diff --git a/README.md b/README.md index a426893..aad6b8c 100644 --- a/README.md +++ b/README.md @@ -29,8 +29,8 @@ Alternatively keep reading below. #### Prerequisites -- Minimum NodeJs v8 (npm v5 and above) -- Working on NodeJs v18 +- Minimum NodeJs v16 (npm v7 and above) +- Tested on NodeJs v16, v18, v20, v22, v24 - Free or Paid account with CurrencyApi.net #### Test Coverage diff --git a/package-lock.json b/package-lock.json index f04946b..69b3290 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,17 +1,20 @@ { "name": "currencyapi-node", - "version": "1.1.1", + "version": "1.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "currencyapi-node", - "version": "1.1.1", + "version": "1.2.0", "dependencies": { "node-fetch": "^2.7.0" }, "devDependencies": { "jest": "^29.7.0" + }, + "engines": { + "node": ">=16.0.0" } }, "node_modules/@ampproject/remapping": { @@ -1769,6 +1772,21 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", diff --git a/package.json b/package.json index d4f3c90..00b0d7c 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,10 @@ "role": "Developer" } ], - "version": "1.1.1", + "version": "1.2.0", + "engines": { + "node": ">=16.0.0" + }, "scripts": { "test": "jest --coverage --collectCoverageFrom='./src/**'" }, diff --git a/run.js b/run.js index f1fcb57..29c4a0f 100644 --- a/run.js +++ b/run.js @@ -1,5 +1,5 @@ // run.js -import CurrencyApi from './src/CurrencyApi.js'; +const CurrencyApi = require('./src/CurrencyApi'); const currency = new CurrencyApi('YOUR_API_KEY');