@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 :)
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?
I just published https://www.npmjs.com/package/hexo-renderer-marked/v/2.0.0-rc2 using hexo-util v1.0.0-rc1
And used it here: https://github.com/tomap/hexo-theme-minidyne-demo/pull/2
Result: https://5d45475fc02e2300091c0f53--hexo-theme-minidyne-demo.netlify.com/2016/11/12/weixin-app/
Looks good
Will also try to integrate both to hexo, and run tests
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 :)
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?