tediousjs / tedious

Node TDS module for connecting to SQL Server databases.
http://tediousjs.github.io/tedious/
MIT License
1.58k stars 439 forks source link

fix: add Node.js v20 support by bumping `@azure/identity` to `v3.4.1` #1575

Closed esetnik closed 1 year ago

esetnik commented 1 year ago

Before submitting a PR :

  1. Ensure your fork is created from master branch of the repository.
  2. Run npm install in the root folder.
  3. After bug fix/code change, ensure all the existing tests and new tests (if any) pass (npm run-script test-all). During development, to run individual test use node_modules/nodeunit test/<test_file.js> -t <test_name>.
  4. Build the driver (npm run build).
  5. Run eslint and flow typechecker (npm run lint).
  6. Run commitlint (node_modules/.bin/commitlint --from origin/master --to HEAD). Refer commit conventions and commit rules.

Thank you for Contributing!

esetnik commented 1 year ago

Looks like only v2 of azure/msal-node will support node 20 https://github.com/AzureAD/microsoft-authentication-library-for-js/issues/6167

MichaelSun90 commented 1 year ago

Thanks for make this change. we will double check see if the latest 3.0 version and NodeJS 20 has any compatibility issue with the current setup, then merge it if everything looks good.

esetnik commented 1 year ago

Thanks for make this change. we will double check see if the latest 3.0 version and NodeJS 20 has any compatibility issue with the current setup, then merge it if everything looks good.

It looks like @azure/identity only supports node LTS which won't become v20 until 10/24/2023, however I wanted to add node 20 to the compatibility matrix now so that we can ensure tedious doesn't have any issues.

Release Status Codename Initial Release Active LTS Start Maintenance LTS Start End Of Life
V20 Current   2023-04-18 2023-10-24 2024-10-22 2026-04-30
V18 Active LTS Hydrogen 2022-04-19 2022-10-25 2023-10-18 2025-04-30
V16 Maintenance LTS Gallium 2021-04-20 2021-10-26 2022-10-18 2023-09-11
codecov[bot] commented 1 year ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (d26df9b) 78.98% compared to head (953baee) 78.07%.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #1575 +/- ## ========================================== - Coverage 78.98% 78.07% -0.92% ========================================== Files 93 93 Lines 4821 4821 Branches 921 921 ========================================== - Hits 3808 3764 -44 - Misses 707 756 +49 + Partials 306 301 -5 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

esetnik commented 1 year ago

Hi @MichaelSun90 now that node 20 is LTS can we get another look at this?

absci commented 1 year ago

Hi @MichaelSun90 now that node 20 is LTS can we get another look at this?

Hi, Michael is on vacation currently, we'll look into supporting this in the future.

semics-tech commented 1 year ago

@esetnik @MichaelSun90 probably worth merging in with @azure/identity v4.0.0 as they have just implemented node 20 support.

https://github.com/Azure/azure-sdk-for-js/issues/26886#issuecomment-1793132348

esetnik commented 1 year ago

@esetnik @MichaelSun90 probably worth merging in with @azure/identity v4.0.0 as they have just implemented node 20 support.

Azure/azure-sdk-for-js#26886 (comment)

Looks like this would also necessitate dropping node 16 support from tedious if I'm reading the above comments correctly...

arthurschreiber commented 1 year ago

Do you mind updating this PR to version 3.4.1 of @azure/identity?

esetnik commented 1 year ago

Do you mind updating this PR to version 3.4.1 of @azure/identity?

Just pushed the update

github-actions[bot] commented 1 year ago

:tada: This PR is included in version 16.6.1 :tada:

The release is available on:

Your semantic-release bot :package::rocket:

mmachatschek commented 1 year ago

@arthurschreiber it seems like 16.6.1 wasn't pushed as the latest tag to npm 🤔

image

arthurschreiber commented 1 year ago

That's how new releases of tedious are managed. When a new version is released, the latest tag is only updated a week or so later.