Hexo: Package versioning question

Created on 19 Jul 2019  ·  11Comments  ·  Source: hexojs/hexo

@hexojs/core

As you know now we are dropping Node.js v6 from all of the packages https://github.com/hexojs/hexo/issues/3508. We will publish new version near the feature.

I have a question about release new version. Some packages not yet bump to v1 (major version).

My understanding, drop Node.js v6 is relevant to breaking change.

But, Node.js(npm)'s versioning seems a little bit special. So, my question is "when bump v1"?
What do you think & What should do?


Following packages are not yet bump to v1.

Thanks :)

discussion question

Most helpful comment

I was going to publish hexo-renderer-marked, but it depends on hexo-util, which needs to be published first in v1.0.0
I will publish a hexo-util v1.0.0-rc1, and use it in hexo-renderer-marked, to see if any issue araise
Then, I'll publish v1.0.0, and use it in hexo-renderer-marked and publish a v2.0.0 of it

Is it ok for everyone?

All 11 comments

I don't see the "special" part of the npm versioning. Breaking change = major+1. Easy, simple

I think only "minor" change is required until those modules are es6.

https://semver.org/spec/v2.0.0.html#summary

While node's API has changed our API has not changed unless it goes to es6 or the function and class signatures change. So, segayuu was correct bumping warehouse major version because it went to es6 class.

Are my arguments correct?

Dropping node 6 is a breaking change; say package A is installed as ^1.2.8, if node 6 is dropped in v1.3.0, node 6 users would encounter issue when running npm i.

But, in the case of v0.x.0, ^0.3.4 would only update 0.3.x, so it's safe to drop node 6 in ^0.4.0.

I think it depends, if a package still doesn't _feel_ v1, then minor version bump is fine. I'm being vague on v1 here, because everyone's definition is different.

TL;DR I'm ok with major and minor bump, as long the update doesn't suddenly break node 6 users.

@tomap Thanks :)
Yes, basically I agree you. But, I confuse because many of npm package not released v1.0.0 (e.g. It seems that marked update minor 0.x version when include breaking change.)

@tcrowe Thanks :)
But, not migrate ES6 matter. I refer to drop Node.js v6 :)

@curbengh
So, should we decide this matter each packages, before publish new release?

I think patch version bump most probably don't need, but for v0.x.0, e.g. v0.2.0 -> v0.3.0 or vx.0.0, e.g. v2.0.0 -> v3.0.0, it's better to notify team.

I was going to publish hexo-renderer-marked, but it depends on hexo-util, which needs to be published first in v1.0.0
I will publish a hexo-util v1.0.0-rc1, and use it in hexo-renderer-marked, to see if any issue araise
Then, I'll publish v1.0.0, and use it in hexo-renderer-marked and publish a v2.0.0 of it

Is it ok for everyone?

https://github.com/hexojs/hexo/pull/3646 => a few failed tests, due to breaking changes or bugs?

I was going to publish hexo-renderer-marked, but it depends on hexo-util, which needs to be published first in v1.0.0

I will publish a hexo-util v1.0.0-rc1, and use it in hexo-renderer-marked, to see if any issue araise
Then, I'll publish v1.0.0, and use it in hexo-renderer-marked and publish a v2.0.0 of it

Is it ok for everyone?

Basically ok. I have already mentioned hexo-util. Please give us time before publish hexo-util v1.0.0 🙏

We already updated major version of many packages. I think this issue closable.

Thanks :)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

yunTerry picture yunTerry  ·  3Comments

enterhuiche picture enterhuiche  ·  3Comments

lushijie picture lushijie  ·  3Comments

Helihua1992 picture Helihua1992  ·  3Comments

awulkan picture awulkan  ·  3Comments