You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Semantic versioning is a very nice way to keep track of the evolution of your module. Basically, your module will have 3 numbers, for example 1.2.3, where:
The number 1 is for major changes and you have to increase it when you make breaking changes to your module. For example, if the add method accept an object as argument and you change it to only accept arrays for now on, you have to increase the major number since you created a breaking change.
The number 2 is for minor changes and you have to increase it when you add new functionalities to your public API without making any breaking changes. For example, add a new find method.
The number 3 is for patch changes and you have to increase it when you fix something, without changing the public API. For example, you manage to iterate over the feed list in a much more efficient way.
I will start to recommend this tutorial for our candidates that need/want learn more, how to learn to code in a "professional way". Your tutorial is a perfect way to learn how to develop a module using JavaScript and also how to use tools and learn concepts that are very important, and so many developers and interns don't know.
This is the last step 👍
Semver
Semantic versioning is a very nice way to keep track of the evolution of your module. Basically, your module will have 3 numbers, for example
1.2.3
, where:1
is for major changes and you have to increase it when you make breaking changes to your module. For example, if theadd
method accept an object as argument and you change it to only accept arrays for now on, you have to increase the major number since you created a breaking change.2
is for minor changes and you have to increase it when you add new functionalities to your public API without making any breaking changes. For example, add a newfind
method.3
is for patch changes and you have to increase it when you fix something, without changing the public API. For example, you manage to iterate over the feed list in a much more efficient way.For more informations about semantic version: http://semver.org/
Package version in npm and Release tag in Github
There's a very easy way to bump
package.json
version and create a release tag to Github using npm.Commit everything you have unstaged and then just run the below command to do that for a
1.0.0
version for example.It will not only update the
version
property of yourpackage.json
but also will create a commit and a tag with that version:To push that git tag to your remote branch, you need to add
--follow tags
in your push command:But there's a better way, just configure your Git to always push relevant annotated tags with this configuration:
When when you push your feature branch, it will also push the version tag:
And this is responsible to automatically create a release inside Github:
Awesome!
Publish to npm
After you merge everything to master, just type this simple command in your terminal to publish everything to npm:
And you're done, awesome!
From now on you will just keep iterating over the same things until your module internals are complete.
Next step
17. Bonus: how to watch tests with Mocha
The text was updated successfully, but these errors were encountered: