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

Old dependencies #18

Open
jayvdb opened this issue Feb 24, 2017 · 9 comments
Open

Old dependencies #18

jayvdb opened this issue Feb 24, 2017 · 9 comments

Comments

@jayvdb
Copy link

jayvdb commented Feb 24, 2017

This package is using some quite old versions of dependencies, such as split2 0.2.1 when the latest is 2.1.1.
In the case of split 0.2.1, this is likely the cause of some junk in our docker image.
See coala/docker-coala-base#120

@jayvdb
Copy link
Author

jayvdb commented Feb 25, 2017

@mcollina can you confirm that the split2 dependency can be upgraded from 0.2.1 to 2.1.1 painlessly.

@mcollina
Copy link

From 0.2.1 to 2.0.1 is a huge step, but it should be painless.
Several things are different between those two versions, so you'd want to bump he major of ndjson as well.

@jayvdb
Copy link
Author

jayvdb commented Feb 25, 2017

@mcollina, are all the options for parse in 0.2.1 still supported?
That appears to be the only usage in this package:
https://github.com/maxogden/ndjson/blob/2659c24280d45aaf38b33bf7beed2ea34f424e48/index.js#L24

@mcollina
Copy link

Yes it's fine. v2 just handles correctly utf8 chars, plus it's an updated dependency on readable-stream.

@jayvdb
Copy link
Author

jayvdb commented Feb 25, 2017

So why wouldnt it be backwards compatible, or...
why would it need to be a major release of ndjson?

@mcollina
Copy link

because I consider a substantial change of the implementation a major change, ad it might introduce bugs.

It's up to @maxogden and @finnp.

@millette
Copy link

millette commented Sep 21, 2017

If it follows semantic versioning, quoting:

Given a version number MAJOR.MINOR.PATCH, increment the:

  1. MAJOR version when you make incompatible API changes,
  2. MINOR version when you add functionality in a backwards-compatible manner, and
  3. PATCH version when you make backwards-compatible bug fixes.

It's all about compatibility, nothing about the implementation itself. If you don't change the interface (including supported node version), I suggest you only make it a PATCH change.

@mcollina
Copy link

As the maintainer of both split2 and readable-stream, I still recommend a major bump.
Specifically, split2 handles correctly utf8 chars, and that alone can cause applications using this to behave differently: they can break, ence the major bump. So yes, it’s about compatibility.

@millette
Copy link

Good point @mcollina :-)

Sorry if that came out pedantic,

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants