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

Version to 1.0.0 #18

Closed
rogierschouten opened this issue Jun 25, 2014 · 5 comments
Closed

Version to 1.0.0 #18

rogierschouten opened this issue Jun 25, 2014 · 5 comments

Comments

@rogierschouten
Copy link

Hi Sebastian,

Semver and NPM treat 0.x.y versions differently from >0 versions. I did not know this and ran into typedoc not installing the latest version when I had specified "^0.0.4" in my package.json. I'll probably not be the only one. For easier updating, it would be handy to move to version 1.0.0 sometime when you're ready.

Rogier

@sebastian-lenz
Copy link
Member

Sorry, I haven't been aware of that one. If I understand the documentation of semver correctly (https://www.npmjs.org/doc/misc/semver.html) we could also raise the version to 0.1.0 to allow users to update TypeDoc without trouble and still have the opportunity to raise the minor version if breaking changes arrive. As the project is in a quite early stage and as one may use it as a module for generating models out of TypeScript projects in their applications, I would prefer that one.

@rogierschouten
Copy link
Author

That is fine as long as you reserve the middle number for breaking changes (which is what you propose). However, users who have not read the post will be left wondering about that. Given my new knowledge about version numbers, I've gone through all package.json files I have and used ^ for all packages that happen to be >0.x.y and ~ for all packages 0.x.y. The latter is necessary because I cannot reasonably know what I can upgrade, so I simply have to let it upgrade until it breaks. Having read your answer, I myself could use ^0.0.7 for typedoc specifically, but I don't think many other users will.

At my work we currently have the following rule: use first number for breaking changes, middle number for additions (new features), and last number for bugfixes. Then, in package.json dependencies, you can use ^1.0.0 for always getting the latest compatible version and ~1.0.0 for a more conservative variant. To ensure that this works, we always start from 1.0.0 to avoid the exceptional cases.

Just a thought, please do as you like - you did solve the problem for me ;)

@sebastian-lenz
Copy link
Member

Okay, sounds reasonable. Thank you for sharing your insights, I'm a version noob ;)

Bart van der Schoor just opened issue #19 regarding module support which tells me that other developers use this project not only as a command line tool but also script it, e.g. to automate processes.

As I said, the project is in a pretty early state and I would like to preserve the possibility to easily change the structure without having to raise the main version number. For now, lets raise the version to 0.1.x and stick to this until breaking changed arrive. Let us switch to 1.0.0 when the project has reached a mature state.

@Bartvds
Copy link
Member

Bartvds commented Jun 26, 2014

^ is a bit risky, it is safer to use ~. No idea why npm does ^ now.

But IMHO any node based util should be able to work as node module for maximum hackability (in the spirit of OSS). CLI-only is so limiting.

For example I'm using it to hack something for #7 at this very moment 😉

@rogierschouten
Copy link
Author

Ok I think everyone's opinion is clear & reasonable. Thanks all, I'm closing this.

lddubeau pushed a commit to lddubeau/typedoc that referenced this issue Apr 5, 2018
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