Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Formalize and implement a clear Node.js version support policy #122

Open
4 of 5 tasks
thomvaill opened this issue Oct 4, 2024 · 5 comments
Open
4 of 5 tasks

Formalize and implement a clear Node.js version support policy #122

thomvaill opened this issue Oct 4, 2024 · 5 comments
Assignees
Labels
bug Something isn't working documentation Improvements or additions to documentation help wanted Extra attention is needed
Milestone

Comments

@thomvaill
Copy link
Owner

thomvaill commented Oct 4, 2024

Context

I (the maintainer) was absent from the project for a long time (see #108 (comment)) so now the project runs only up to Node.js v16, which is not supported anymore since September 2023.
Also, as @jean-francoismougnot mentioned in #108 (reply in thread): Github Actions dropped support of Node 16

There were also some Issues and PR created earlier related to this topic:

Action plan

To make a fresh start, here is a proposal of action plan.
This issue can be considered as an epic; feel free to raise a PR for each item.

  • test and merge fix: workaround for ERR_OSSL_EVP_UNSUPPORTED build issue #114 to support Node.js v18 -> @thomvaill
  • fix the CI
  • write a formalized Node.js version support policy in README.md and CONTRIBUTING.md: I propose to officially support the "active" and "maintenance" LTS versions (see https://nodejs.org/en/about/previous-releases), and to support in a best effort mode the "current" version
  • test and make log4brains work on Node v22, and if possible v23 (but best effort)
  • optional: automatize the creation of an issue when a new LTS version is available so we don't forget to support it
@thomvaill thomvaill added the feature New feature or request label Oct 4, 2024
@thomvaill thomvaill added this to the v1.1.0 milestone Oct 4, 2024
@thomvaill thomvaill added bug Something isn't working documentation Improvements or additions to documentation help wanted Extra attention is needed and removed feature New feature or request labels Oct 4, 2024
@thomvaill thomvaill self-assigned this Oct 4, 2024
@Potherca
Copy link

Potherca commented Oct 5, 2024

Regarding the version support policy and NodeJS version tracking (for possible automation), the nodejs/Release repo contains a JSON that describes releases.

As the CI already uses a matrix to run different NodeJS versions, we could add unstable versions but allow_failures, to get an idea of incoming breakage without actually breaking the build.

@apankratiev-syberry
Copy link

Speaking about dependencies in general.
Maybe you have any plans to introduce dependabot/renovate?
Considering that the project has good tests coverage, you could even enable automerge of minor/path dependencies updates

@Potherca
Copy link

I'd be interested in other peoples opinions on this before I speak my mind... There are pros and cons, but I is worth discussing, IMHO.

@thomvaill
Copy link
Owner Author

I think it is indeed a good idea, especially for a package that is distributed by an npm install -g.
We already had some issues because of "lax" semver dependencies in the package.json so I already opened this debate a long time ago here: #33
Since using renovate involves pinning all the dependencies to strict versions, it would also solve the issue I mentioned in the discussion.
So yes I would totally be in favor of using this tool.
I you are OK with this, I'll edit this post to this task in the action plan at the end (the first steps are more urgent).
But I'd like to hear your thoughts about this first.

@thomvaill
Copy link
Owner Author

thomvaill commented Oct 30, 2024

Hi all,
I've been progressing well on this issue.

Already merged PRs

Sorry I had to merge them without reviews to be able to progress fast + it was quite hard to debug lerna in the CI so it was easier.

Make Log4brains work on Node 18 and 20:

CI fixes for the new workflow (#121):

PR waiting for reviews

The main topic of this issue:

Thanks!

New related issues created during this development

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working documentation Improvements or additions to documentation help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants
@Potherca @thomvaill @apankratiev-syberry and others