From 564e813260ee7c9409b46e5961ba8b0c2067bfa3 Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Mon, 25 Jul 2022 18:23:08 +0530 Subject: [PATCH 01/14] tools: add skeleton for automate time zone update Fixes: https://github.com/nodejs/node/issues/43134 --- .github/workflows/timezone-update.yml | 29 +++++++++++++++++++++++++++ tools/update-timezone.mjs | 5 +++++ 2 files changed, 34 insertions(+) create mode 100644 .github/workflows/timezone-update.yml create mode 100755 tools/update-timezone.mjs diff --git a/.github/workflows/timezone-update.yml b/.github/workflows/timezone-update.yml new file mode 100644 index 00000000000000..0b0102fe7f90c5 --- /dev/null +++ b/.github/workflows/timezone-update.yml @@ -0,0 +1,29 @@ +name: Timezone update +on: + schedule: + # Run once a week at 00:05 AM UTC on Sunday. + - cron: 5 0 * * 0 + + workflow_dispatch: + +jobs: + authors_update: + if: github.repository == 'nodejs/node' + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: '0' # This is required to actually get all the authors + persist-credentials: false + - run: tools/update-timezone.js # Run the timezone tool + - uses: gr2m/create-or-update-pull-request-action@v1 # Create a PR or update the Action's existing PR + env: + GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }} + with: + author: Node.js GitHub Bot + body: > + updates the ICU files + branch: actions/timezone-update # Custom branch *just* for this Action. + commit-message: 'meta: update timezone' + labels: meta + title: 'meta: update timezone' \ No newline at end of file diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs new file mode 100755 index 00000000000000..6f8c1f9ca9a6cb --- /dev/null +++ b/tools/update-timezone.mjs @@ -0,0 +1,5 @@ +#!/usr/bin/env node +// Usage: tools/update-timezone.mjs [--dry] +// Passing --dry will redirect output to stdout. + +console.log('Initial Skeleton'); From eaa919e863fec8af9d70b1f9033e0e28bf82fd56 Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Mon, 25 Jul 2022 22:19:47 +0530 Subject: [PATCH 02/14] tools: apply 2022a timezone patch on icu file Fixes: https://github.com/nodejs/node/issues/43134 --- tools/update-timezone.mjs | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index 6f8c1f9ca9a6cb..3cdd61b2a8c8dc 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -1,5 +1,33 @@ #!/usr/bin/env node // Usage: tools/update-timezone.mjs [--dry] // Passing --dry will redirect output to stdout. +import { execSync, spawnSync } from 'node:child_process'; +import { renameSync } from 'node:fs'; +const fileNames = [ + 'zoneinfo64.res', + 'windowsZones.res', + 'timezoneTypes.res', + 'metaZones.res', +]; + +execSync('rm -rf icu-data'); +execSync('git clone https://github.com/unicode-org/icu-data'); +execSync('bzip2 -d deps/icu-small/source/data/in/icudt70l.dat.bz2'); +fileNames.forEach((file)=>{ + renameSync(`icu-data/tzdata/icunew/2022a/44/le/${file}`,`deps/icu-small/source/data/in/${file}`) +}) +fileNames.forEach((file) => { + spawnSync( + `icupkg`,[ + `-a`, + file, + `icudt70l.dat` + ],{cwd:`deps/icu-small/source/data/in/`} + ); +}); +execSync('bzip2 -z deps/icu-small/source/data/in/icudt70l.dat') +fileNames.forEach((file)=>{ + renameSync(`deps/icu-small/source/data/in/${file}`,`icu-data/tzdata/icunew/2022a/44/le/${file}`) +}) +execSync('rm -rf icu-data'); -console.log('Initial Skeleton'); From 50b226f99cb53ae552b0e534b18706b8166c4d6b Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Mon, 25 Jul 2022 22:50:36 +0530 Subject: [PATCH 03/14] tools: get latest tz version Fixes: https://github.com/nodejs/node/issues/43134 --- tools/update-timezone.mjs | 54 +++++++++++++++++++++++++++++---------- 1 file changed, 40 insertions(+), 14 deletions(-) diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index 3cdd61b2a8c8dc..fa2e86e05aae2d 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -3,31 +3,57 @@ // Passing --dry will redirect output to stdout. import { execSync, spawnSync } from 'node:child_process'; import { renameSync } from 'node:fs'; +import { exit } from 'node:process'; + const fileNames = [ 'zoneinfo64.res', 'windowsZones.res', 'timezoneTypes.res', 'metaZones.res', ]; - execSync('rm -rf icu-data'); execSync('git clone https://github.com/unicode-org/icu-data'); -execSync('bzip2 -d deps/icu-small/source/data/in/icudt70l.dat.bz2'); -fileNames.forEach((file)=>{ - renameSync(`icu-data/tzdata/icunew/2022a/44/le/${file}`,`deps/icu-small/source/data/in/${file}`) -}) +const dirs = spawnSync( + 'ls', { + cwd: 'icu-data/tzdata/icunew', + stdio: ['inherit', 'pipe', 'inherit'] + } +); + +const currentVersion = process.versions.tz; +const availableVersions = dirs.stdout + .toString() + .split('\n') + .filter((_) => _); + +const latestVersion = + availableVersions + .reduce( + (acc, version) => (version > acc ? version : acc), + availableVersions[0]); + +if (latestVersion === currentVersion) { + exit(); +} + +execSync('bzip2 -d deps/icu-small/source/data/in/icudt*.dat.bz2'); +fileNames.forEach((file) => { + renameSync(`icu-data/tzdata/icunew/${latestVersion}/44/le/${file}`, `deps/icu-small/source/data/in/${file}`); +}); fileNames.forEach((file) => { spawnSync( - `icupkg`,[ - `-a`, + 'icupkg', [ + '-a', file, - `icudt70l.dat` - ],{cwd:`deps/icu-small/source/data/in/`} + 'icudt*.dat', + ], { cwd: 'deps/icu-small/source/data/in/' } + ); +}); +execSync('bzip2 -z deps/icu-small/source/data/in/icudt*.dat'); +fileNames.forEach((file) => { + renameSync( + `deps/icu-small/source/data/in/${file}`, + `icu-data/tzdata/icunew/${latestVersion}/44/le/${file}` ); }); -execSync('bzip2 -z deps/icu-small/source/data/in/icudt70l.dat') -fileNames.forEach((file)=>{ - renameSync(`deps/icu-small/source/data/in/${file}`,`icu-data/tzdata/icunew/2022a/44/le/${file}`) -}) execSync('rm -rf icu-data'); - From 17ac3229702d4ceb7134524cf48a2f28e44466ef Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Tue, 26 Jul 2022 19:46:28 +0530 Subject: [PATCH 04/14] tools: apply suggestions --- .github/workflows/timezone-update.yml | 10 +++++----- tools/update-timezone.mjs | 9 +-------- 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/.github/workflows/timezone-update.yml b/.github/workflows/timezone-update.yml index 0b0102fe7f90c5..ed865084fdf521 100644 --- a/.github/workflows/timezone-update.yml +++ b/.github/workflows/timezone-update.yml @@ -7,16 +7,16 @@ on: workflow_dispatch: jobs: - authors_update: + timezone_update: if: github.repository == 'nodejs/node' runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 with: - fetch-depth: '0' # This is required to actually get all the authors + fetch-depth: '0' persist-credentials: false - - run: tools/update-timezone.js # Run the timezone tool - - uses: gr2m/create-or-update-pull-request-action@v1 # Create a PR or update the Action's existing PR + - run: tools/update-timezone.mjs # Run the timezone tool + - uses: gr2m/create-or-update-pull-request-action@6720400cad8e74d7adc64640e4e6ea6748b83d8f # Create a PR or update the Action's existing PR env: GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }} with: @@ -26,4 +26,4 @@ jobs: branch: actions/timezone-update # Custom branch *just* for this Action. commit-message: 'meta: update timezone' labels: meta - title: 'meta: update timezone' \ No newline at end of file + title: 'meta: update timezone' diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index fa2e86e05aae2d..58847ff47d1e64 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -25,12 +25,7 @@ const availableVersions = dirs.stdout .toString() .split('\n') .filter((_) => _); - -const latestVersion = - availableVersions - .reduce( - (acc, version) => (version > acc ? version : acc), - availableVersions[0]); +const latestVersion = availableVersions.sort()[0]; if (latestVersion === currentVersion) { exit(); @@ -39,8 +34,6 @@ if (latestVersion === currentVersion) { execSync('bzip2 -d deps/icu-small/source/data/in/icudt*.dat.bz2'); fileNames.forEach((file) => { renameSync(`icu-data/tzdata/icunew/${latestVersion}/44/le/${file}`, `deps/icu-small/source/data/in/${file}`); -}); -fileNames.forEach((file) => { spawnSync( 'icupkg', [ '-a', From 2cbc9cb2479f554814888bc288a6e6230e8432ac Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Tue, 26 Jul 2022 19:57:08 +0530 Subject: [PATCH 05/14] tools: move icu-data clone to worker --- .github/workflows/timezone-update.yml | 4 ++++ tools/update-timezone.mjs | 13 +++++-------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/timezone-update.yml b/.github/workflows/timezone-update.yml index ed865084fdf521..ef352ee058b548 100644 --- a/.github/workflows/timezone-update.yml +++ b/.github/workflows/timezone-update.yml @@ -15,6 +15,10 @@ jobs: with: fetch-depth: '0' persist-credentials: false + - uses: actions/checkout@v3 + with: + name: 'unicode-org/icu-data' + ref: refs/heads/release - run: tools/update-timezone.mjs # Run the timezone tool - uses: gr2m/create-or-update-pull-request-action@6720400cad8e74d7adc64640e4e6ea6748b83d8f # Create a PR or update the Action's existing PR env: diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index 58847ff47d1e64..f800b96f9617dd 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -11,8 +11,6 @@ const fileNames = [ 'timezoneTypes.res', 'metaZones.res', ]; -execSync('rm -rf icu-data'); -execSync('git clone https://github.com/unicode-org/icu-data'); const dirs = spawnSync( 'ls', { cwd: 'icu-data/tzdata/icunew', @@ -41,12 +39,11 @@ fileNames.forEach((file) => { 'icudt*.dat', ], { cwd: 'deps/icu-small/source/data/in/' } ); + spawnSync( + 'rm', [ + file + ], { cwd: 'deps/icu-small/source/data/in/' } + ) }); execSync('bzip2 -z deps/icu-small/source/data/in/icudt*.dat'); -fileNames.forEach((file) => { - renameSync( - `deps/icu-small/source/data/in/${file}`, - `icu-data/tzdata/icunew/${latestVersion}/44/le/${file}` - ); -}); execSync('rm -rf icu-data'); From b84bec37a9a72bf128fa86acca59c2ca64102385 Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Tue, 26 Jul 2022 22:56:01 +0530 Subject: [PATCH 06/14] tools: fix action --- .github/workflows/timezone-update.yml | 24 +++++++++++++++++------- tools/update-timezone.mjs | 4 ++-- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/.github/workflows/timezone-update.yml b/.github/workflows/timezone-update.yml index ef352ee058b548..c972295426dd83 100644 --- a/.github/workflows/timezone-update.yml +++ b/.github/workflows/timezone-update.yml @@ -10,24 +10,34 @@ jobs: timezone_update: if: github.repository == 'nodejs/node' runs-on: ubuntu-latest + steps: - - uses: actions/checkout@v3 + - name: checkout repo + uses: actions/checkout@v3 with: fetch-depth: '0' persist-credentials: false - - uses: actions/checkout@v3 + + - name: fetch icu-data + uses: actions/checkout@v3 with: - name: 'unicode-org/icu-data' - ref: refs/heads/release - - run: tools/update-timezone.mjs # Run the timezone tool - - uses: gr2m/create-or-update-pull-request-action@6720400cad8e74d7adc64640e4e6ea6748b83d8f # Create a PR or update the Action's existing PR + fetch-depth: '0' + path: icu-data + persist-credentials: false + repository: unicode-org/icu-data + + - name: update icudata file + run: tools/update-timezone.mjs + + - name: open pull request + uses: gr2m/create-or-update-pull-request-action@6720400cad8e74d7adc64640e4e6ea6748b83d8f # Create a PR or update the Action's existing PR env: GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }} with: author: Node.js GitHub Bot body: > updates the ICU files - branch: actions/timezone-update # Custom branch *just* for this Action. + branch: actions/timezone-update commit-message: 'meta: update timezone' labels: meta title: 'meta: update timezone' diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index f800b96f9617dd..635d860358ab5a 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -41,9 +41,9 @@ fileNames.forEach((file) => { ); spawnSync( 'rm', [ - file + file, ], { cwd: 'deps/icu-small/source/data/in/' } - ) + ); }); execSync('bzip2 -z deps/icu-small/source/data/in/icudt*.dat'); execSync('rm -rf icu-data'); From dc093e3a1157964f5303d77ed9aa5d01b923e27e Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Tue, 26 Jul 2022 23:02:20 +0530 Subject: [PATCH 07/14] tools: fix logic for getting latest ver --- tools/update-timezone.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index 635d860358ab5a..b3225a4ff54c5e 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -23,7 +23,7 @@ const availableVersions = dirs.stdout .toString() .split('\n') .filter((_) => _); -const latestVersion = availableVersions.sort()[0]; +const latestVersion = availableVersions.sort().reverse()[0]; if (latestVersion === currentVersion) { exit(); From 9edafa06569f272986a9856369b94b72457fe22a Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Wed, 27 Jul 2022 08:15:03 +0530 Subject: [PATCH 08/14] tools: update workflow files with suggestions --- .github/workflows/timezone-update.yml | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/.github/workflows/timezone-update.yml b/.github/workflows/timezone-update.yml index c972295426dd83..6ac9c11c6237ad 100644 --- a/.github/workflows/timezone-update.yml +++ b/.github/workflows/timezone-update.yml @@ -12,32 +12,28 @@ jobs: runs-on: ubuntu-latest steps: - - name: checkout repo + - name: Checkout nodejs/node uses: actions/checkout@v3 with: - fetch-depth: '0' persist-credentials: false - - name: fetch icu-data + - name: Checkout unicode-org/icu-data uses: actions/checkout@v3 with: - fetch-depth: '0' path: icu-data persist-credentials: false repository: unicode-org/icu-data - - name: update icudata file - run: tools/update-timezone.mjs + - run: ./tools/update-timezone.mjs - - name: open pull request + - name: Open Pull Request uses: gr2m/create-or-update-pull-request-action@6720400cad8e74d7adc64640e4e6ea6748b83d8f # Create a PR or update the Action's existing PR env: GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }} with: author: Node.js GitHub Bot - body: > - updates the ICU files + body: Updates the ICU files. branch: actions/timezone-update - commit-message: 'meta: update timezone' - labels: meta - title: 'meta: update timezone' + commit-message: 'deps: update timezone' + labels: dependencies + title: 'deps: update timezone' From 5f7872f88dbbf086a23b4b3881899e971c335ce3 Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Wed, 27 Jul 2022 17:41:53 +0530 Subject: [PATCH 09/14] tools: update tool file with suggestion --- tools/update-timezone.mjs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index b3225a4ff54c5e..247db1888d165d 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -1,6 +1,5 @@ #!/usr/bin/env node -// Usage: tools/update-timezone.mjs [--dry] -// Passing --dry will redirect output to stdout. +// Usage: tools/update-timezone.mjs import { execSync, spawnSync } from 'node:child_process'; import { renameSync } from 'node:fs'; import { exit } from 'node:process'; From 5901660f938a657e4716de878756171f75ed46bf Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Sun, 31 Jul 2022 00:33:23 +0530 Subject: [PATCH 10/14] tools: update reading available ver to readdirSync --- tools/update-timezone.mjs | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index 247db1888d165d..2211ce9d84885b 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -1,7 +1,7 @@ #!/usr/bin/env node // Usage: tools/update-timezone.mjs import { execSync, spawnSync } from 'node:child_process'; -import { renameSync } from 'node:fs'; +import { renameSync, readdirSync } from 'node:fs'; import { exit } from 'node:process'; const fileNames = [ @@ -10,18 +10,12 @@ const fileNames = [ 'timezoneTypes.res', 'metaZones.res', ]; -const dirs = spawnSync( - 'ls', { - cwd: 'icu-data/tzdata/icunew', - stdio: ['inherit', 'pipe', 'inherit'] - } -); + +const availableVersions = readdirSync('icu-data/tzdata/icunew', { withFileTypes: true }) +.filter((dirent) => dirent.isDirectory()) +.map((dirent) => dirent.name); const currentVersion = process.versions.tz; -const availableVersions = dirs.stdout - .toString() - .split('\n') - .filter((_) => _); const latestVersion = availableVersions.sort().reverse()[0]; if (latestVersion === currentVersion) { From c9feb9503221027f175591d5a534e99314842c13 Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Sun, 31 Jul 2022 00:55:27 +0530 Subject: [PATCH 11/14] tools: update cleaning to rmSync --- tools/update-timezone.mjs | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index 2211ce9d84885b..ed52176e5e983f 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -1,7 +1,7 @@ #!/usr/bin/env node // Usage: tools/update-timezone.mjs import { execSync, spawnSync } from 'node:child_process'; -import { renameSync, readdirSync } from 'node:fs'; +import { renameSync, readdirSync, rmSync } from 'node:fs'; import { exit } from 'node:process'; const fileNames = [ @@ -32,11 +32,7 @@ fileNames.forEach((file) => { 'icudt*.dat', ], { cwd: 'deps/icu-small/source/data/in/' } ); - spawnSync( - 'rm', [ - file, - ], { cwd: 'deps/icu-small/source/data/in/' } - ); + rmSync(`deps/icu-small/source/data/in/${file}`); }); execSync('bzip2 -z deps/icu-small/source/data/in/icudt*.dat'); -execSync('rm -rf icu-data'); +rmSync('icu-data', { recursive: true }); From d8015a7a4c2423d556878588b2e8fdf9edfc89bb Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Sun, 31 Jul 2022 14:25:42 +0530 Subject: [PATCH 12/14] tools: apply suggestions --- tools/update-timezone.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index ed52176e5e983f..53043780391353 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -16,7 +16,7 @@ const availableVersions = readdirSync('icu-data/tzdata/icunew', { withFileTypes: .map((dirent) => dirent.name); const currentVersion = process.versions.tz; -const latestVersion = availableVersions.sort().reverse()[0]; +const latestVersion = availableVersions.sort().at(-1); if (latestVersion === currentVersion) { exit(); From f61c88670f69aab396aaf035ea2a68dd57588e68 Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Thu, 1 Sep 2022 22:00:40 +0530 Subject: [PATCH 13/14] fix: update commit message + logs --- .github/workflows/timezone-update.yml | 11 ++++++++++- tools/update-timezone.mjs | 1 + 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/timezone-update.yml b/.github/workflows/timezone-update.yml index 6ac9c11c6237ad..c649787f0148bb 100644 --- a/.github/workflows/timezone-update.yml +++ b/.github/workflows/timezone-update.yml @@ -32,8 +32,17 @@ jobs: GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }} with: author: Node.js GitHub Bot - body: Updates the ICU files. + body: | + This PR was generated by tools/timezone-update.yml. + + Updates the ICU files as per the instructions present in https://github.com/nodejs/node/blob/main/doc/contributing/maintaining-icu.md#time-zone-data + + To test, build node off this branch & log the version of tz using + ```js + console.log(process.versions.tz) + ``` branch: actions/timezone-update commit-message: 'deps: update timezone' labels: dependencies title: 'deps: update timezone' + reviewers: @nodejs/i18n-api diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index 53043780391353..1cd26c16210122 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -19,6 +19,7 @@ const currentVersion = process.versions.tz; const latestVersion = availableVersions.sort().at(-1); if (latestVersion === currentVersion) { + console.log(`Terminating early, tz version is latest @ ${currentVersion}`) exit(); } From be1d5bded7f20c013a352576b7162706869e7b93 Mon Sep 17 00:00:00 2001 From: Lenvin Gonsalves Date: Thu, 1 Sep 2022 22:41:19 +0530 Subject: [PATCH 14/14] fix: run linter fixes --- .github/workflows/timezone-update.yml | 4 ++-- tools/update-timezone.mjs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/timezone-update.yml b/.github/workflows/timezone-update.yml index c649787f0148bb..9d567415f4b2a6 100644 --- a/.github/workflows/timezone-update.yml +++ b/.github/workflows/timezone-update.yml @@ -40,9 +40,9 @@ jobs: To test, build node off this branch & log the version of tz using ```js console.log(process.versions.tz) - ``` + ``` branch: actions/timezone-update commit-message: 'deps: update timezone' labels: dependencies title: 'deps: update timezone' - reviewers: @nodejs/i18n-api + reviewers: \@nodejs/i18n-api diff --git a/tools/update-timezone.mjs b/tools/update-timezone.mjs index 1cd26c16210122..33da42f4e983fa 100755 --- a/tools/update-timezone.mjs +++ b/tools/update-timezone.mjs @@ -19,7 +19,7 @@ const currentVersion = process.versions.tz; const latestVersion = availableVersions.sort().at(-1); if (latestVersion === currentVersion) { - console.log(`Terminating early, tz version is latest @ ${currentVersion}`) + console.log(`Terminating early, tz version is latest @ ${currentVersion}`); exit(); }