Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

git-changelog

Package Overview
Dependencies
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

git-changelog - npm Package Compare versions

Comparing version 0.1.9 to 1.0.0

.changelogrc

59

CHANGELOG.md

@@ -1,7 +0,3 @@

<img width="300px" src="https://github.com/rafinskipg/git-changelog/raw/master/images/git-changelog-logo.png" />
__my name__
__Git changelog__
_Git changelog is a utility tool for generating changelogs. It is free and opensource. :)_
# (2016-05-08)

@@ -15,10 +11,6 @@

- correctly get branch name from the command line
([4baa075b](https://github.com/rafinskipg/git-changelog/commit/4baa075bd93f878ee708817f911fe89c102dec02))
- Fix generation of logs
([cddb2408](https://github.com/rafinskipg/git-changelog/commit/cddb2408fa3017be704acac51dabbba9f477a547))
- correctly detect when running under grunt on Windows
([4205ea49](https://github.com/rafinskipg/git-changelog/commit/4205ea49a893e4d1807a39268739c13754d40cf2))
- **Options:** use repo_url instead of url
([346b3949](https://github.com/rafinskipg/git-changelog/commit/346b39491923a49a3421f174a566b204d5fc7db9))
- **params:** Restores versionName in CLI
([1d97f952](https://github.com/rafinskipg/git-changelog/commit/1d97f952bd5d37f67c1febdf161f4ce9b310eebf))

@@ -28,4 +20,4 @@

- improve `git log` synthax command to use the branch name
([4ce61281](https://github.com/rafinskipg/git-changelog/commit/4ce6128103ece64b44695ac196b457e63649229b))
- Show pull requests merged
([65f5504c](https://github.com/rafinskipg/git-changelog/commit/65f5504ce8e92fa39ced7da308e471cc85f750b5))

@@ -35,9 +27,50 @@

- Updated readme with the correct specification
([ec2de4bf](https://github.com/rafinskipg/git-changelog/commit/ec2de4bf599dfc77c24c9b86ee9c0d86fe37e5b8))
- **README:**
- Follow proper style in example commits
([6fef01ba](https://github.com/rafinskipg/git-changelog/commit/6fef01ba8a71bb5cd779ddb84f52b8f75296618d))
- Reorder contents
([14e8a772](https://github.com/rafinskipg/git-changelog/commit/14e8a772c3a05c32bc9fba6f75565132025d4942))
- TOC
([d6338ab4](https://github.com/rafinskipg/git-changelog/commit/d6338ab45f6e45e5562e5e6f4f1db86f39ca458d))
- Added more information on the new specification
([f984eedd](https://github.com/rafinskipg/git-changelog/commit/f984eedde6be5db804d0b6bf2e238ab2e7ca15fb))
- added more commit examples and npm versioning usage
([51341b7a](https://github.com/rafinskipg/git-changelog/commit/51341b7aae082c6c1a1caaa77dfdbfdc2622a56f))
## Refactor
- Refactor branch name
([8774b963](https://github.com/rafinskipg/git-changelog/commit/8774b963fd5e15de1cc1066c91034f9b1d34c4bc))
- **generate:** replace `#getStream` with `fse#createOutputStream`
([2d252d89](https://github.com/rafinskipg/git-changelog/commit/2d252d89017a70008896497e36f03e9d2add2c97))
## Test
- Tests fixed
([b9edae3b](https://github.com/rafinskipg/git-changelog/commit/b9edae3bfc64f2a8c2320f6f27326225bd586cc7))
## Chore
- Remove grunt from peer dependencies
([f6111d31](https://github.com/rafinskipg/git-changelog/commit/f6111d31f0c70f8368d2a57ea708bf58990f6bfd))
- Updated jshint
([1d5f6b1d](https://github.com/rafinskipg/git-changelog/commit/1d5f6b1d471e9d48ac2b4c7c8b78e3e5a8021ff4))
- typos and grammar
([5ae2ee52](https://github.com/rafinskipg/git-changelog/commit/5ae2ee52d1f096d375d077299047684eae2cd5e2))
- **cleanup:**
- remove unnecessary code [skip ci]
([80dbe3ec](https://github.com/rafinskipg/git-changelog/commit/80dbe3ec7a28e7c20d99e89009856c70138350b0))
- remove `#getStream` and `#checkPath`
([cd75ebc4](https://github.com/rafinskipg/git-changelog/commit/cd75ebc44e39242b7e9c8ef2363c86d3f1cabc0e))
- **deps:** install fs-extra@0.18.4
([7c8e257b](https://github.com/rafinskipg/git-changelog/commit/7c8e257b81f0daeba7e347d175583af1a7a9bfa0))
---
<sub><sup>*Generated with [git-changelog](https://github.com/rafinskipg/git-changelog). If you have any problems or suggestions, create an issue.* :) **Thanks** </sub></sup>

@@ -15,6 +15,8 @@ <img width="300px" src="https://github.com/rafinskipg/git-changelog/raw/master/images/git-changelog-logo.png" />

- correctly get branch name from the command line
([4baa075b](https://github.com/rafinskipg/git-changelog/commit/4baa075bd93f878ee708817f911fe89c102dec02))
- Fix generation of logs
([cddb2408](https://github.com/rafinskipg/git-changelog/commit/cddb2408fa3017be704acac51dabbba9f477a547))
- correctly detect when running under grunt on Windows
([4205ea49](https://github.com/rafinskipg/git-changelog/commit/4205ea49a893e4d1807a39268739c13754d40cf2))
- fixed tests
([2e60172a](https://github.com/rafinskipg/git-changelog/commit/2e60172a4666c70d27e66d15dad297b89fff9583))
- Stream didn't close properly

@@ -24,4 +26,2 @@ ([99f228cf](https://github.com/rafinskipg/git-changelog/commit/99f228cfa5cb26c46ef9e3b00171a5e3d38fd844))

([c186f2d8](https://github.com/rafinskipg/git-changelog/commit/c186f2d877e7907305953610bcaaef331406178a))
- **Options:** use repo_url instead of url
([346b3949](https://github.com/rafinskipg/git-changelog/commit/346b39491923a49a3421f174a566b204d5fc7db9))
- **checkPath:** add missing require('path')

@@ -39,4 +39,2 @@ ([e5dab826](https://github.com/rafinskipg/git-changelog/commit/e5dab826062bd22dd37c8c3d3c24a4d9b4701f6d))

([257119cf](https://github.com/rafinskipg/git-changelog/commit/257119cf2bb6d8f341a5d65a2f47bcf803dff205))
- **params:** Restores versionName in CLI
([1d97f952](https://github.com/rafinskipg/git-changelog/commit/1d97f952bd5d37f67c1febdf161f4ce9b310eebf))

@@ -46,4 +44,4 @@

- improve `git log` synthax command to use the branch name
([4ce61281](https://github.com/rafinskipg/git-changelog/commit/4ce6128103ece64b44695ac196b457e63649229b))
- Show pull requests merged
([65f5504c](https://github.com/rafinskipg/git-changelog/commit/65f5504ce8e92fa39ced7da308e471cc85f750b5))
- CLI option with git-changelog

@@ -68,81 +66,222 @@ ([50af9f0a](https://github.com/rafinskipg/git-changelog/commit/50af9f0aeba14e88254aaf1bfd6433c4c6bc9fbe))

## Documentation
- Updated readme with the correct specification
([ec2de4bf](https://github.com/rafinskipg/git-changelog/commit/ec2de4bf599dfc77c24c9b86ee9c0d86fe37e5b8))
- Updated options and tagging info
([1ad3b6be](https://github.com/rafinskipg/git-changelog/commit/1ad3b6bedc6431b70e3a2e93e5967bad9a7830ee))
- added documentation for explaining the commit message
([d516c2fb](https://github.com/rafinskipg/git-changelog/commit/d516c2fb464072fc1f4c86ec71a910eeab3e830c))
- Added docs
([e0ba50c0](https://github.com/rafinskipg/git-changelog/commit/e0ba50c0bb0b13e9b39a59b8f4dda96e86d55644))
- **README:**
- Follow proper style in example commits
([6fef01ba](https://github.com/rafinskipg/git-changelog/commit/6fef01ba8a71bb5cd779ddb84f52b8f75296618d))
- Reorder contents
([14e8a772](https://github.com/rafinskipg/git-changelog/commit/14e8a772c3a05c32bc9fba6f75565132025d4942))
- TOC
([d6338ab4](https://github.com/rafinskipg/git-changelog/commit/d6338ab45f6e45e5562e5e6f4f1db86f39ca458d))
- Added more information on the new specification
([f984eedd](https://github.com/rafinskipg/git-changelog/commit/f984eedde6be5db804d0b6bf2e238ab2e7ca15fb))
- added more commit examples and npm versioning usage
([51341b7a](https://github.com/rafinskipg/git-changelog/commit/51341b7aae082c6c1a1caaa77dfdbfdc2622a56f))
- add logo
([1af36c9b](https://github.com/rafinskipg/git-changelog/commit/1af36c9b0dad5cc0c2a321e3f280a89d76a8fb2b))
- **readme:** Final readme Fixes #1 Closes #1
([e725d8f4](https://github.com/rafinskipg/git-changelog/commit/e725d8f4bf477b517ca6185a75fdfa0aa660b3be),
[#1](https://github.com/rafinskipg/git-changelog/issues/1))
## Refactor
- Refactor branch name
([8774b963](https://github.com/rafinskipg/git-changelog/commit/8774b963fd5e15de1cc1066c91034f9b1d34c4bc))
- added debug messages and refactored some additional code
([70e48caf](https://github.com/rafinskipg/git-changelog/commit/70e48caf330b7f76fdea474ce58bcf96cb11ccbc))
- modified the task using a factory pattern to improve testability
([1a0f25d3](https://github.com/rafinskipg/git-changelog/commit/1a0f25d3d9bbedd029c810c4dd2d35419cbb9276))
- Removed ignore tags and updated documentation
([cb17b55d](https://github.com/rafinskipg/git-changelog/commit/cb17b55de2ba0b597147fe4ce15e6883feb82a88))
- removed deprecated options
([7d05b632](https://github.com/rafinskipg/git-changelog/commit/7d05b632af6be3db2c00925b7cf28cd990c19a71))
- **delete:** deleted some files
([b9c72f57](https://github.com/rafinskipg/git-changelog/commit/b9c72f57c4920420fef8c486bfccf5798870e06b))
- **docs:**
- Angular document commits
([01e8c1ba](https://github.com/rafinskipg/git-changelog/commit/01e8c1ba4c29fcddcfc237f4e6185682b9ced67d))
- Added docs
([0a155845](https://github.com/rafinskipg/git-changelog/commit/0a1558458c46574c5b0e6ec3749668fad1c8647a))
- **generate:** replace `#getStream` with `fse#createOutputStream`
([2d252d89](https://github.com/rafinskipg/git-changelog/commit/2d252d89017a70008896497e36f03e9d2add2c97))
- **lib:** simplify methods and refactor into separate files
([7a3600bf](https://github.com/rafinskipg/git-changelog/commit/7a3600bf9a5487cb26e3eb4b65ac774a68b6b91e))
- **writeChangelog:** method now returns a promise
([69fa1b0b](https://github.com/rafinskipg/git-changelog/commit/69fa1b0b11a603683342a9e0626cb69550b92002))
## Style
- **message:** Added a message on the changelog for referencing the github
([d20031a9](https://github.com/rafinskipg/git-changelog/commit/d20031a9dc6fd92cba205903b2fd9d25feae6ea7))
## Test
- Tests fixed
([b9edae3b](https://github.com/rafinskipg/git-changelog/commit/b9edae3bfc64f2a8c2320f6f27326225bd586cc7))
- added test for .init(), .getPreviousTag(), getRepoUrl(), .log() and .warn()
([fd099a85](https://github.com/rafinskipg/git-changelog/commit/fd099a858b44e67e28f4e18f07c520803f3ac55e))
- removed unnecessary debug setting (was using for "debugging")
([83cd52b1](https://github.com/rafinskipg/git-changelog/commit/83cd52b1e8b79dd6bff13dc0d2003e802f8e45e6))
- updated test to cover promise return from .generate()
([c182ee47](https://github.com/rafinskipg/git-changelog/commit/c182ee47a4ec36a453420f8cc04358ec6e98e381))
- ensure changelog has default setting at the beginning of spec
([31f81e26](https://github.com/rafinskipg/git-changelog/commit/31f81e262440aa10efafd90c74d98569df418795))
- changed spy on changelog.generate() to stub, to avoid polluting following tests
([0aa35588](https://github.com/rafinskipg/git-changelog/commit/0aa35588cf944b2f84b842d66220d50e8f5d96a8))
- added test for .writeChageLog() and .organizeCommits()
([b07f28e1](https://github.com/rafinskipg/git-changelog/commit/b07f28e1e92bdf20be669596651b344d2f70855e))
- added default mocha options
([595c8347](https://github.com/rafinskipg/git-changelog/commit/595c8347fd4e2b697ceac247babe7ece7c90c4fa))
- added missing done() callback on .catch()
([0da53e9c](https://github.com/rafinskipg/git-changelog/commit/0da53e9c8ad8a967753ac06dc1c23302c7956017))
- added tests for tag option equals to false
([1fc1e809](https://github.com/rafinskipg/git-changelog/commit/1fc1e809dcca7d499f870c314d2860121fcb6bab))
- Added unit tests for commit parsing
([504a61a7](https://github.com/rafinskipg/git-changelog/commit/504a61a715ed541feee4570810c2153ba8984420))
- **writeChangelog:** updated test to reflect changes to method
([b999948f](https://github.com/rafinskipg/git-changelog/commit/b999948f2c38f5d002fa0dc535429a80acdf2d75))
## Chore
- Remove grunt from peer dependencies
([f6111d31](https://github.com/rafinskipg/git-changelog/commit/f6111d31f0c70f8368d2a57ea708bf58990f6bfd))
- Updated jshint
([1d5f6b1d](https://github.com/rafinskipg/git-changelog/commit/1d5f6b1d471e9d48ac2b4c7c8b78e3e5a8021ff4))
- typos and grammar
([5ae2ee52](https://github.com/rafinskipg/git-changelog/commit/5ae2ee52d1f096d375d077299047684eae2cd5e2))
- a couple of spelling corrections [ci skip]
([1486a845](https://github.com/rafinskipg/git-changelog/commit/1486a84537c5fd2d7997721820981c7949487af2))
- minor edits to README
([481c6c80](https://github.com/rafinskipg/git-changelog/commit/481c6c80d49e5e11c72d8378976d5d3ee1d581d2))
- fixing lint errors
([3a8e8d48](https://github.com/rafinskipg/git-changelog/commit/3a8e8d486a2b89b9f04d01200fe4f9f7851d0123))
- added chai-as-promise to handle methods that return promises
([1d384257](https://github.com/rafinskipg/git-changelog/commit/1d3842576839b763b28a777e96b061dbd4d01a80))
- updated travis config
([d6a7ef94](https://github.com/rafinskipg/git-changelog/commit/d6a7ef945f600ec787b515486bd3abfa2f86a25b))
- stopped tracking test output files
([1d12bccb](https://github.com/rafinskipg/git-changelog/commit/1d12bccb9f7dce07ff45318304dc5ab82620b6f1))
- added istanbul configuration file
([88c945e6](https://github.com/rafinskipg/git-changelog/commit/88c945e6d8ddddfe6ee3bdf808ae2c749b4eabf3))
- updated travis configuration for code climate
([fbd651dd](https://github.com/rafinskipg/git-changelog/commit/fbd651dd765a1ee26293dd03543e578181462e3f))
- fixed lint issues in tests
([2edb0199](https://github.com/rafinskipg/git-changelog/commit/2edb019910a421cd94868397a0f5881e90af4ed5))
- add tests to lint task
([1d789792](https://github.com/rafinskipg/git-changelog/commit/1d789792143d2f68820c16426e772857e45ba181))
- add lint rules for mocha test
([bbea9341](https://github.com/rafinskipg/git-changelog/commit/bbea9341acb37f729e7f83d59d784cb4ff7969e1))
- ignore files generated by tests
([3ccbff47](https://github.com/rafinskipg/git-changelog/commit/3ccbff47ee2dd655da95ea3a9b95cb156f8f6956))
- update dependencies
([3036d803](https://github.com/rafinskipg/git-changelog/commit/3036d8037f4af6aa34fb137037a9eb9d0ce34297))
- removed unused dependency
([cdd9f0d5](https://github.com/rafinskipg/git-changelog/commit/cdd9f0d5623f839eaaf646d4de0cf72816cf00af))
- fixed typo
([081a8f96](https://github.com/rafinskipg/git-changelog/commit/081a8f963104711b5f15bb8468489ee13927e226))
- added commits fixture for tests
([b7d16b68](https://github.com/rafinskipg/git-changelog/commit/b7d16b682a8167cd4a90e59c4f511774f6572ce1))
- added missing development dependencies
([e52e3ec6](https://github.com/rafinskipg/git-changelog/commit/e52e3ec6234db4cc9055c6e0abd5f32b587f67d6))
- adding missing newline at the end of file
([da4b5492](https://github.com/rafinskipg/git-changelog/commit/da4b54920e1be490fb47a25906eece63229b0094))
- removed testing from grunt file (causing recursion issues during some tests)
([8e94e8ac](https://github.com/rafinskipg/git-changelog/commit/8e94e8ac23e73709495cf0c6851fbaf1a84c0c9b))
- install mocha before travis scripts
([9be62aae](https://github.com/rafinskipg/git-changelog/commit/9be62aaeb7d50959cff870e0cabb08277d1c512b))
- updated npm scripts and added debug
([aa4f2a2d](https://github.com/rafinskipg/git-changelog/commit/aa4f2a2d7b834484f65239ceccdf4f973dbe0cee))
- moved fixtures to the test folder
([e59d429b](https://github.com/rafinskipg/git-changelog/commit/e59d429b032451f75ef986e2d1b3c63fb8672a1c))
- removed unused test/hacky.js
([500fdf3c](https://github.com/rafinskipg/git-changelog/commit/500fdf3c37e72c98f4809806e85926035eb46792))
- rename changelog.spec.js to match file being tested
([41757850](https://github.com/rafinskipg/git-changelog/commit/417578507b39aeffe826922ad3eccfcc13ad6ed0))
- fixed lint errors
([71a5eae2](https://github.com/rafinskipg/git-changelog/commit/71a5eae2212e7abf87c97a569f8251a56b5474a6))
- added grunt coverage task
([ef6cf2cf](https://github.com/rafinskipg/git-changelog/commit/ef6cf2cf14b69fe4200eb0eeb9319fb4bcdffcc2))
- added node.js `0.12` to travis-ci config
([24d9c58a](https://github.com/rafinskipg/git-changelog/commit/24d9c58a0a4ea349709719c431ca9878a2f01bc4))
- Updated readme
([fca6ecba](https://github.com/rafinskipg/git-changelog/commit/fca6ecbac686661ece15acdb41d23e86011457f2))
- package json version 1.1.3
([9d600386](https://github.com/rafinskipg/git-changelog/commit/9d6003868e352ae21383913f671bc091afc9d8c7))
- **cleanup:**
- remove unnecessary code [skip ci]
([80dbe3ec](https://github.com/rafinskipg/git-changelog/commit/80dbe3ec7a28e7c20d99e89009856c70138350b0))
- remove `#getStream` and `#checkPath`
([cd75ebc4](https://github.com/rafinskipg/git-changelog/commit/cd75ebc44e39242b7e9c8ef2363c86d3f1cabc0e))
- **deps:** install fs-extra@0.18.4
([7c8e257b](https://github.com/rafinskipg/git-changelog/commit/7c8e257b81f0daeba7e347d175583af1a7a9bfa0))
- **images:**
- add logo in JPEG format
([50338b9a](https://github.com/rafinskipg/git-changelog/commit/50338b9a8b5540e42273857448e803d8b85c689d))
- add logo in PNG format
([bb5fbbdb](https://github.com/rafinskipg/git-changelog/commit/bb5fbbdba7ef2b9466c185c12ef426d82fe25bcf))
- **lint:**
- add missing semicolon
([2888af48](https://github.com/rafinskipg/git-changelog/commit/2888af4803f85da1afbb8c9832314f53cc4ca131))
- fix indentation
([4cf9b6e6](https://github.com/rafinskipg/git-changelog/commit/4cf9b6e69a1426d48f18da45614f8f01994707b7))
- have jshint ignore false positives
([ed8e9df4](https://github.com/rafinskipg/git-changelog/commit/ed8e9df48720c42086186fa4219262a351bbc3e4))
- fixing jshint errors
([987366f0](https://github.com/rafinskipg/git-changelog/commit/987366f02517c9cfdb62264d0f6ea7d0b20d6634))
- **package:** Package json version
([990b8ea0](https://github.com/rafinskipg/git-changelog/commit/990b8ea04ca04f3c907653b0fa89ae6ddd601092))
- **package.json:** Added preversion script
([b3f1e44a](https://github.com/rafinskipg/git-changelog/commit/b3f1e44a900b00bda1facaee5354ba1ff58166aa))
- **release:** 0.1.8 codename(furious-stallman)
([b9432318](https://github.com/rafinskipg/git-changelog/commit/b943231854ffd6cb0c5f32e5482cadd99c96f3e9))
- **task:** cleanup unused requires
([8a41d4e7](https://github.com/rafinskipg/git-changelog/commit/8a41d4e7b245b2698749279765bcef4748e18ac7))
## Documentation
## Branchs merged
- Updated options and tagging info
- added documentation for explaining the commit message
- Added docs
- **README:**
- Follow proper style in example commits
- added more commit examples and npm versioning usage
- add logo
- **readme:** Final readme Fixes #1 Closes #1
- Merge branch 'feature/add-logo'
([e29b2dd8](https://github.com/rafinskipg/git-changelog/commit/e29b2dd8e088386eeec3f0c125973de6c8cdc2c6))
- Merge branch 'development' into feature/code-refactoring
([34ea0198](https://github.com/rafinskipg/git-changelog/commit/34ea0198b976c72c638fd815be5a5913c67ef80a))
## Pull requests merged
- Merge pull request #46 from zoner14/master
([0485a1fd](https://github.com/rafinskipg/git-changelog/commit/0485a1fd4bf01662f50b93098c6b535eb7c527eb))
- Merge pull request #37 from richardthombs/fix-grunt-on-windows
([5f024339](https://github.com/rafinskipg/git-changelog/commit/5f02433963b5b603c5763bd5c1a37cf8ca9e3598))
- Merge pull request #33 from richardthombs/fix-typos
([2656d150](https://github.com/rafinskipg/git-changelog/commit/2656d150eb95c6ad9326e4265ba64edf8e49a11c))
- Merge pull request #30 from JohnnyEstilles/refactor/get-stream
([a52b1169](https://github.com/rafinskipg/git-changelog/commit/a52b1169a2510d83d6d4fd5113ce157f30c4d4d0))
- Merge pull request #25 from JohnnyEstilles/code-climate
([28053b92](https://github.com/rafinskipg/git-changelog/commit/28053b9292d3d61fb33a004f6088c244e653b76b))
- Merge pull request #23 from JohnnyEstilles/docs/readme-updates
([3079151a](https://github.com/rafinskipg/git-changelog/commit/3079151a8d5f90d0830aab4437a65dff4d837b2a))
- Merge pull request #20 from JohnnyEstilles/feature/code-refactoring
([be209f04](https://github.com/rafinskipg/git-changelog/commit/be209f04c22f1ce2cb82e6412c4ddf117897a9e7))
- Merge pull request #12 from jodybrewster/master
([219ea809](https://github.com/rafinskipg/git-changelog/commit/219ea8091ac81a55b0210c9a7fd41a7f0ee5660f))
- Merge pull request #7 from colegleason/fix-tags
([1d4f6043](https://github.com/rafinskipg/git-changelog/commit/1d4f604363094d4eee3b4d7b1ca01133edaad344))
- Merge pull request #6 from colegleason/add-q
([2a712b9c](https://github.com/rafinskipg/git-changelog/commit/2a712b9cfd912f36b6f7f70d16b336575881881a))
---
<sub><sup>*Generated with [git-changelog](https://github.com/rafinskipg/git-changelog). If you have any problems or suggestions, create an issue.* :) **Thanks** </sub></sup>

@@ -50,3 +50,13 @@ /*

tag: 'v0.0.1',
debug: true
debug: true,
sections: [
{
"title": "Bug Fixes",
"grep": "^fix"
},
{
"title": "Pull requests merged",
"grep": "^Merge pull request"
}
]
}

@@ -63,3 +73,44 @@ },

file : 'EXTENDEDCHANGELOG.md',
grep_commits: '^fix|^feat|^docs|^refactor|^chore|BREAKING'
sections: [
{
"title": "Bug Fixes",
"grep": "^fix"
},
{
"title": "Features",
"grep": "^feat"
},
{
"title": "Documentation",
"grep": "^docs"
},
{
"title": "Breaking changes",
"grep": "BREAKING"
},
{
"title": "Refactor",
"grep": "^refactor"
},
{
"title": "Style",
"grep": "^style"
},
{
"title": "Test",
"grep": "^test"
},
{
"title": "Chore",
"grep": "^chore"
},
{
"title": "Branchs merged",
"grep": "^Merge branch"
},
{
"title" : "Pull requests merged",
"grep": "^Merge pull request"
}
]
}

@@ -66,0 +117,0 @@ }

@@ -13,6 +13,8 @@ <img width="300px" src="https://github.com/rafinskipg/git-changelog/raw/master/images/git-changelog-logo.png" />

- correctly get branch name from the command line
([4baa075b](https://github.com/rafinskipg/git-changelog/commit/4baa075bd93f878ee708817f911fe89c102dec02))
- Fix generation of logs
([cddb2408](https://github.com/rafinskipg/git-changelog/commit/cddb2408fa3017be704acac51dabbba9f477a547))
- correctly detect when running under grunt on Windows
([4205ea49](https://github.com/rafinskipg/git-changelog/commit/4205ea49a893e4d1807a39268739c13754d40cf2))
- fixed tests
([2e60172a](https://github.com/rafinskipg/git-changelog/commit/2e60172a4666c70d27e66d15dad297b89fff9583))
- Stream didn't close properly

@@ -22,4 +24,2 @@ ([99f228cf](https://github.com/rafinskipg/git-changelog/commit/99f228cfa5cb26c46ef9e3b00171a5e3d38fd844))

([c186f2d8](https://github.com/rafinskipg/git-changelog/commit/c186f2d877e7907305953610bcaaef331406178a))
- **Options:** use repo_url instead of url
([346b3949](https://github.com/rafinskipg/git-changelog/commit/346b39491923a49a3421f174a566b204d5fc7db9))
- **checkPath:** add missing require('path')

@@ -37,43 +37,30 @@ ([e5dab826](https://github.com/rafinskipg/git-changelog/commit/e5dab826062bd22dd37c8c3d3c24a4d9b4701f6d))

([257119cf](https://github.com/rafinskipg/git-changelog/commit/257119cf2bb6d8f341a5d65a2f47bcf803dff205))
- **params:** Restores versionName in CLI
([1d97f952](https://github.com/rafinskipg/git-changelog/commit/1d97f952bd5d37f67c1febdf161f4ce9b310eebf))
## Features
## Pull requests merged
- improve `git log` synthax command to use the branch name
([4ce61281](https://github.com/rafinskipg/git-changelog/commit/4ce6128103ece64b44695ac196b457e63649229b))
- CLI option with git-changelog
([50af9f0a](https://github.com/rafinskipg/git-changelog/commit/50af9f0aeba14e88254aaf1bfd6433c4c6bc9fbe))
- Working on new API
([121b9928](https://github.com/rafinskipg/git-changelog/commit/121b99285d2a04f9159951fa0e3f849d0d618fef))
- **bootstrap:** creating initial structure
([dea45d68](https://github.com/rafinskipg/git-changelog/commit/dea45d68ce9555e876680bf7c0778add2f367a30))
- **grunt-plugin:**
- Commit for research purposes
([5afbb7a9](https://github.com/rafinskipg/git-changelog/commit/5afbb7a95c9f0e985f78666e7e231967524a8928))
- Now it is ready to be a grunt plugin
([6422e055](https://github.com/rafinskipg/git-changelog/commit/6422e0552b30f6e94d11b03310a23c1342aa5965))
- **options:** Added ignore tags option
([95362e8b](https://github.com/rafinskipg/git-changelog/commit/95362e8b57a673e810ffe54ff3337de1ea5109a8))
- **output:** added logo in printHeader
([6b489450](https://github.com/rafinskipg/git-changelog/commit/6b489450a90172dc57059d7fd55fb4c6110152b2))
- **package:** Added global install so you can run via command
([86eae3f0](https://github.com/rafinskipg/git-changelog/commit/86eae3f013ace1c5c23afc32b2e8f878a69629f1))
- Merge pull request #46 from zoner14/master
([0485a1fd](https://github.com/rafinskipg/git-changelog/commit/0485a1fd4bf01662f50b93098c6b535eb7c527eb))
- Merge pull request #37 from richardthombs/fix-grunt-on-windows
([5f024339](https://github.com/rafinskipg/git-changelog/commit/5f02433963b5b603c5763bd5c1a37cf8ca9e3598))
- Merge pull request #33 from richardthombs/fix-typos
([2656d150](https://github.com/rafinskipg/git-changelog/commit/2656d150eb95c6ad9326e4265ba64edf8e49a11c))
- Merge pull request #30 from JohnnyEstilles/refactor/get-stream
([a52b1169](https://github.com/rafinskipg/git-changelog/commit/a52b1169a2510d83d6d4fd5113ce157f30c4d4d0))
- Merge pull request #25 from JohnnyEstilles/code-climate
([28053b92](https://github.com/rafinskipg/git-changelog/commit/28053b9292d3d61fb33a004f6088c244e653b76b))
- Merge pull request #23 from JohnnyEstilles/docs/readme-updates
([3079151a](https://github.com/rafinskipg/git-changelog/commit/3079151a8d5f90d0830aab4437a65dff4d837b2a))
- Merge pull request #20 from JohnnyEstilles/feature/code-refactoring
([be209f04](https://github.com/rafinskipg/git-changelog/commit/be209f04c22f1ce2cb82e6412c4ddf117897a9e7))
- Merge pull request #12 from jodybrewster/master
([219ea809](https://github.com/rafinskipg/git-changelog/commit/219ea8091ac81a55b0210c9a7fd41a7f0ee5660f))
- Merge pull request #7 from colegleason/fix-tags
([1d4f6043](https://github.com/rafinskipg/git-changelog/commit/1d4f604363094d4eee3b4d7b1ca01133edaad344))
- Merge pull request #6 from colegleason/add-q
([2a712b9c](https://github.com/rafinskipg/git-changelog/commit/2a712b9cfd912f36b6f7f70d16b336575881881a))
## Documentation
- Updated options and tagging info
- added documentation for explaining the commit message
- Added docs
- **README:**
- Follow proper style in example commits
- added more commit examples and npm versioning usage
- add logo
- **readme:** Final readme Fixes #1 Closes #1
---
<sub><sup>*Generated with [git-changelog](https://github.com/rafinskipg/git-changelog). If you have any problems or suggestions, create an issue.* :) **Thanks** </sub></sup>
{
"name": "git-changelog",
"description": "A git changelog based on ANGULAR JS commit standards",
"version": "0.1.9",
"description": "A git changelog tool",
"version": "1.0.0",
"homepage": "https://github.com/rafinskipg/git-changelog",

@@ -25,3 +25,3 @@ "author": {

"engines": {
"node": ">= 0.8.0"
"node": ">= 0.12.0"
},

@@ -36,2 +36,3 @@ "scripts": {

"dependencies": {
"colors": "^1.1.0",
"commander": "^2.8.0",

@@ -50,4 +51,4 @@ "debug": "^2.1.3",

"chai-as-promised": "^5.0.0",
"grunt": "^0.4.5",
"grunt-contrib-clean": "^0.6.0",
"grunt": "^1.0.0",
"grunt-contrib-clean": "^1.0.0",
"grunt-contrib-jshint": "^0.11.2",

@@ -60,5 +61,2 @@ "grunt-mocha-test": "^0.12.1",

},
"peerDependencies": {
"grunt": "~0.4.1"
},
"keywords": [

@@ -65,0 +63,0 @@ "gruntplugin, git, git-changelog, angularjs, angular, commit, log"

@@ -8,3 +8,3 @@ ![git-changelog logo][logo-image]

> A git changelog based on ANGULAR JS commit standards. [NPM page][npm-url]
> A git changelog based on ANGULAR JS commit standards (but adaptable to your needs). [NPM page][npm-url]

@@ -15,20 +15,121 @@ **Works as a `CLI` option or `grunt` plugin**

## NEWS!
----
version 0.1.7 is out, special thanks to [JohnnyEstilles][JohnnyEstilles] for his work.
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
This release includes a big refactor with a huge improvement on test coverage.
- [Breaking changes](#breaking-changes)
- [`.changelogrc` specification](#changelogrc-specification)
- [The "git_changelog" task](#the-git_changelog-task)
- [Grunt Task](#grunt-task)
- [Getting Started](#getting-started)
- [Options | Defaults](#options-%7C-defaults)
- [Command Line](#command-line)
- [Git Commit Guidelines - Source : "Angular JS"](#git-commit-guidelines---source--angular-js)
- [Commit Message Format](#commit-message-format)
- [Example types](#example-types)
- [Scope](#scope)
- [Subject](#subject)
- [Body](#body)
- [Footer](#footer)
- [Tagging your project](#tagging-your-project)
- [ROADMAP](#roadmap)
- [v0.3.0](#v030)
- [Release History](#release-history)
- [Contributors](#contributors)
**Git changelog is secure enough**
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
Next releases will include:
- Downloadable resources area on the generated changelog, for linking to your zip project folder of certain tag.
- .gitchangelogrc specification. That will allow using any comment standards for your commit messages.
![Good news](http://www.labspaces.net/pictures/blog/4e5466b7dc69f1314154167_blog.jpg)
## Breaking changes
Since version `1.0.0` git-changelog has included the [`.changelogrc` specification](#changelog_specification) and has discontinued the next options:
- `grep_commits` option has been removed in favour of the changelogrc options
- `tag = false`, in addition to pick logs from the begining of the project, now groups the commits by tag [see example]. **TODO**
- `tag = false` && `group=false` will log from the begining of the project, without grouping by tag **TODO**
- `repo_url` fixed as parameter
- `branch_name` changed to `branch`
## Getting Started
This plugin requires Grunt `~0.4.1`
## `.changelogrc` specification
The `.changelogrc` file contains the "standard commit guideliness" that you and your team are following.
This specification is used to grep the commits on your log, it contains a valid JSON that will tell git-changelog which sections to include on the changelog.
```javascript
{
"app_name": "Git Changelog",
"logo": "https://github.com/rafinskipg/git-changelog/raw/master/images/git-changelog-logo.png",
"intro": "Git changelog is a utility tool for generating changelogs. It is free and opensource. :)",
"branch" : "",
"repo_url": "",
"version" : "v1.0.0",
"file": 'CHANGELOG.md',
"sections": [
{
"title": "Bug Fixes",
"grep": "^fix"
},
{
"title": "Features",
"grep": "^feat"
},
{
"title": "Documentation",
"grep": "^docs"
},
{
"title": "Breaking changes",
"grep": "BREAKING"
},
{
"title": "Refactor",
"grep": "^refactor"
},
{
"title": "Style",
"grep": "^style"
},
{
"title": "Test",
"grep": "^test"
},
{
"title": "Chore",
"grep": "^chore"
},
{
"title": "Branchs merged",
"grep": "^Merge branch"
},
{
"title" : "Pull requests merged",
"grep": "^Merge pull request"
}
]
}
```
### Options | Defaults
* **branch** : The name of the branch. Defaults to ` `
* **repo_url** : The url of the project. For issues and commits links. Defaults to `git config --get remote.origin.url`
* **version**: The version of the project. Defaults to ` `, *DEPRECATED* will default to the tag name
* **file**: The name of the file that will be generated. Defaults to `CHANGELOG.md`,
* **app_name** : The name of the project. Defaults to `My App - Changelog`
* **intro** : The introduction text on the header of the changelog. Defaults to `null`
* **logo** : A logo URL to be included in the header of the changelog. Defaults to `null`
* **changelogrc ** : Relative path indicating the location of the .changelogrc file, defaults to current dir.
* **tag**: You can select from which tag to generate the log, it defaults to the last one. Set it to false for log since the beginning of the project
* **debug**: Debug mode, false by default
* **sections**: Group the commit by sections. The sections included by default are the ones that are on the previous example of .changelogrc file.
## The "git_changelog" task
### Grunt Task
#### Getting Started
This plugin requires Grunt `1.0.0`
If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

@@ -46,5 +147,3 @@

## The "git_changelog" task
### Overview
In your project's Gruntfile, add a section named `git_changelog` to the data object passed into `grunt.initConfig()`.

@@ -59,2 +158,3 @@

app_name : 'Git changelog',
changelogrc : '/files/.changelogrc',
logo : 'https://github.com/rafinskipg/git-changelog/raw/master/images/git-changelog-logo.png',

@@ -66,6 +166,15 @@ intro : 'Git changelog is a utility tool for generating changelogs. It is free and opensource. :)'

options: {
repo_url: 'https://github.com/rafinskipg/git-changelog',
app_name : 'Git changelog extended',
file : 'EXTENDEDCHANGELOG.md',
grep_commits: '^fix|^feat|^docs|^refactor|^chore|BREAKING',
version : 'squeezy potatoe',
sections : [
{
"title": "Test commits",
"grep": "^test"
},
{
"title": "New Awesome Features!",
"grep": "^feat"
}
],
debug: true,

@@ -87,15 +196,3 @@ tag : false //False for commits since the beggining

### Options | Defaults
* **branch_name** : The name of the branch. Defaults to ` `
* **repo_url** : The url of the project. For issues and commits links. Defaults to `git config --get remote.origin.url`
* **version**: The version of the project. Defaults to ` `, *DEPRECATED* will default to the tag name
* **file**: The name of the file that will be generated. Defaults to `CHANGELOG.md`,
* **app_name** : The name of the project. Defaults to `My App - Changelog`
* **intro** : The introduction text on the header of the changelog. Defaults to `null`
* **logo** : A logo URL to be included in the header of the changelog. Defaults to `null`
* **grep_commits**: The commits that will be picked. Defaults to `'^fix|^feat|^docs|^refactor|^chore|BREAKING'`
* **tag**: You can select from which tag to generate the log, it defaults to the last one. Set it to false for log since the beginning of the project
* **debug**: Debug mode, false by default
### Command Line

@@ -118,16 +215,16 @@ Install it globally

-h, --help output usage information
-V, --version output the version number
-e, --extended Extended log
-a, --app_name [app_name] Name [app_name]
-b, --branch [branch_name] Branch name [branch_name]
-f, --file [file] File [file]
-r, --repo_url [url] Repo url [url]
-l, --logo [logo] Logo path [logo]
-i, --intro [intro] intro text [intro]
-t, --tag [tag] Since tag [tag]
-g, --grep [grep] Grep commits for [grep]
-d, --debug Debugger
-h, --help output usage information
-V, --version output the version number
-e, --extended Extended log
-a, --app_name [app_name] Name [app_name]
-b, --branch [branch] Branch name [branch]
-f, --file [file] File [file]
-r, --repo_url [url] Repo url [url]
-l, --logo [logo] Logo path [logo]
-i, --intro [intro] intro text [intro]
-t, --tag [tag] Since tag [tag]
-rc, --changelogrc [changelogrc] .changelogrc relative path [changelogrc]
-g, --grep [grep] Grep commits for [grep]
-d, --debug Debugger
```

@@ -141,2 +238,3 @@

## Git Commit Guidelines - Source : "Angular JS"

@@ -181,3 +279,6 @@

### Type
### Example types
**You may define your own types refering to the `.changelogrc` specification**
Must be one of the following:

@@ -237,8 +338,28 @@

## Contributing
In lieu of a formal style guide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/).
## ROADMAP
### v2.0.0
- Downloadable resources area on the generated changelog, for linking to your zip project folder of certain tag.
![Evolution](http://1.bp.blogspot.com/-YgUV9XTA9Rk/UVHhe4vJA-I/AAAAAAAAEyg/RPL3sjMQb0k/s1600/scala-naturae-robots.png)
## Release History
_(Nothing yet)_
### v1.0.0
- Support for `.changelogrc`
## Contributors
_Add your name here by contributing to this project_
- [rafinskipg][Rafinskipg]
- [JohnnyEstilles][JohnnyEstilles]
- [colegleason][colegleason]
- [jodybrewster][jodybrewster]
[logo-image]: images/git-changelog-logo.png

@@ -257,3 +378,10 @@

[Rafinskipg]: https://github.com/rafinskipg
[JohnnyEstilles]: https://github.com/JohnnyEstilles
[jodybrewster]: https://github.com/jodybrewster
[colegleason]: https://github.com/colegleason
[npm-versioning]: https://docs.npmjs.com/cli/version
[changelog_specification]: https://github.com/rafinskipg/git-changelog/#changelog-specification
[npm-versioning]: https://docs.npmjs.com/cli/version

@@ -19,3 +19,3 @@ #!/usr/bin/env node

.option('-a, --app_name [app_name]', 'Name [app_name]')
.option('-b, --branch [branch_name]', 'Branch name [branch_name]')
.option('-b, --branch [branch]', 'Branch name [branch]')
.option('-f, --file [file]', 'File [file]')

@@ -26,2 +26,3 @@ .option('-r, --repo_url [repo_url]', 'Repo url [repo_url]')

.option('-t, --tag [tag]', 'Since tag [tag]')
.option('-rc, --changelogrc [changelogrc]', '.changelogrc relative path [changelogrc]')
.option('-g, --grep [grep]', 'Grep commits for [grep]')

@@ -32,2 +33,3 @@ .option('-d, --debug', 'Debugger')

console.log('Executing git changelog:');
if (program.extended){

@@ -47,3 +49,3 @@ console.log(' - Extended, getting log since the BigBang');

if (program.branch){
options.branch_name = program.branch;
options.branch = program.branch;
console.log(' - Branch %s', program.branch);

@@ -60,2 +62,6 @@ }

if (program.changelogrc){
options.changelogrc = program.changelogrc;
}
if (program.logo){

@@ -83,13 +89,6 @@ options.logo = program.logo;

if (program.grep){
options.grep_commits = program.grep;
}
console.log(' - The APP name is %s', options.app_name);
console.log(' - The output file is %s', options.file);
git_changelog.generate(options).then(function(){
console.log('Finished generating log Yai!');
git_changelog.generate(options, true).then(function(){
git_changelog.log('success', 'Finished generating log Yai!');
});
}
//Defaults options
module.exports = {
branch_name : '',
branch : '',
//[G]ithub [B]itbucket supported at the momment

@@ -9,3 +9,2 @@ repo_url: '',

app_name : 'My app - Changelog',
grep_commits: '^fix|^feat|^docs|BREAKING',
tag: null,

@@ -15,2 +14,3 @@ logo : null,

debug: false,
changelogrc : '.changelogrc',
sections: [

@@ -17,0 +17,0 @@ {

@@ -21,2 +21,3 @@ /*

Changelog.prototype.getProviderLinks = require('./lib/get-provider-links');
Changelog.prototype.loadChangelogRc = require('./lib/load-changelog-rc');
Changelog.prototype.getGitLogCommands = require('./lib/get-gitlog-commands');

@@ -38,3 +39,2 @@ Changelog.prototype.parseRawCommit = require('./lib/parse-raw-commit');

Changelog.prototype.log = require('./lib/log');
Changelog.prototype.warn = require('./lib/warn');

@@ -41,0 +41,0 @@ var changelog = new Changelog();

@@ -18,3 +18,3 @@ /*

grunt.registerMultiTask('git_changelog', 'A git changelog based on ANGULAR JS commit standards', function() {
grunt.registerMultiTask('git_changelog', 'A git changelog tool', function() {

@@ -21,0 +21,0 @@ var done = this.async();

@@ -7,8 +7,8 @@ 'use strict';

function generateFromCommits(deferred, commits) {
function generateFromCommits(deferred, commits, sections) {
var stream;
this.message('parsed commits', commits.length);
this.log('Parsed', commits.length, 'commits');
this.log('Generating changelog to', this.options.file || 'stdout', '(', this.options.version, ')');
this.log('debug', 'Parsed', commits.length, 'commits');
this.log('info','Generating changelog to', this.options.file || 'stdout', '(', this.options.version, ')');

@@ -21,3 +21,3 @@ if (this.options.file) {

this.writeChangelog(stream, commits)
this.writeChangelog(stream, commits, sections)
.then(deferred.resolve.bind(deferred, this.options));

@@ -30,7 +30,7 @@ }

if (typeof(tag) !== 'undefined' && tag !== false) {
this.log('Reading git log since', tag);
this.log('info', 'Reading git log since', tag);
this.message('since tag', tag);
readGitLog = this.readGitLog.bind(this, this.cmd.gitLog, tag);
} else {
this.log('Reading git log since the beggining');
this.log('info', 'Reading git log since the beggining');
this.message('since beggining');

@@ -45,3 +45,3 @@ readGitLog = this.readGitLog.bind(this, this.cmd.gitLogNoTag);

function generate(params) {
function generate(params, loadRC) {
debug('generating ...');

@@ -51,6 +51,9 @@ var self = this;

this.init(params)
this.init(params, loadRC)
.then(this.getPreviousTag.bind(this))
.then(generateFromTag.bind(this, deferred))
.catch(deferred.reject.bind(deferred));
.catch(function(err){
self.log('error', err);
deferred.reject(err);
});

@@ -57,0 +60,0 @@ return deferred.promise;

@@ -7,6 +7,6 @@ 'use strict';

debug('getting log commands');
this.cmd.gitLog = 'git log --grep="%s" -E --format=%s %s..' + (this.options.branch_name ? this.options.branch_name : 'HEAD');
this.cmd.gitLogNoTag = 'git log ' + this.options.branch_name + ' --grep="%s" -E --format=%s';
this.cmd.gitLog = 'git log --grep="%s" -E --format=%s %s..' + (this.options.branch ? this.options.branch : 'HEAD');
this.cmd.gitLogNoTag = 'git log ' + this.options.branch + ' --grep="%s" -E --format=%s';
}
module.exports = getGitLogCommands;

@@ -17,3 +17,2 @@ 'use strict';

function getPreviousTag() {
debug('getting previous tag');
var deferred = q.defer();

@@ -26,3 +25,4 @@

} else {
//IF we dont find a previous tag, we get all the commits from the beginning - The bigbang of the code
this.log('debug', 'Getting last tag');
//IF we dont find a previous tag, we get all the commits from the beggining - The bigbang of the code
debug('calling git tag command');

@@ -29,0 +29,0 @@ child.exec(this.cmd.gitTag, cmdDone.bind(null, deferred));

@@ -13,2 +13,3 @@ 'use strict';

this.options = _.defaults(params, defaults);
this.options.msg = '';

@@ -19,8 +20,8 @@ this.message('name', this.options.app_name);

this.message('logo', this.options.logo);
this.message('grep_commits', this.options.grep_commits);
this.message('sections', this.options.sections);
this.message('debug', this.options.debug);
this.message('version', this.options.version);
this.message('changelogrc', this.options.changelogrc);
}
module.exports = initOptions;
'use strict';
var debug = require('debug')('changelog:init');
var q = require('q');
var _ = require('lodash');
function getRepoSuccess(deferred, url) {
var provider;
var module = this;

@@ -14,4 +14,3 @@ this.options.repo_url = url;

this.getGitLogCommands();
deferred.resolve(this.options);
deferred.resolve();
}

@@ -24,10 +23,27 @@

function init(params) {
debug('initializing ...');
var self = this;
function init(params, loadRC) {
this.log('debug', 'Initializing changelog options');
var module = this;
var deferred = q.defer();
this.initOptions(params);
var promise = loadRC ? this.loadChangelogRc() : new Promise(function (resolve) { resolve(params); });
this.getRepoUrl()
promise
.then(function(options) {
module.options = _.defaults(options, module.options);
module.log('info', ' - The APP name is', module.options.app_name);
module.log('info', ' - The output file is', module.options.file);
module.options.grep_commits = module.options.sections.map(function(section) {
return section.grep;
}).join('|');
module.log('debug', 'Grep commits: ', module.options.grep_commits);
return module.getRepoUrl();
})
.then(getRepoSuccess.bind(this, deferred))

@@ -34,0 +50,0 @@ .catch(getRepoFailure.bind(this, deferred));

'use strict';
var colors = require('colors');
var debug = require('debug')('changelog:log');
function getColor(type){
var colorList = {
'info' : 'blue',
'success' : 'green',
'error' : 'red',
'debug' : 'cyan',
'warn' : 'yellow'
};
return colorList[type] ;
}
function log() {
if (this.options.debug) {
console.log.apply(null, arguments);
var args = Array.prototype.slice.call(arguments);
var type = args.length >= 2 ? args[0] : 'info';
if(args.length >= 2){
args.splice(0, 1);
}
var color = getColor(type);
if( (this.options && this.options.debug) || type === 'info' || type === 'error' || type === 'success'){
console.log(colors[color].apply(null, args));
}
}
module.exports = log;
module.exports = log;

@@ -6,4 +6,19 @@ 'use strict';

function grepSection(sections, commit){
//TODO: MONKEY METHOD, please use the regexp greps
var keys = Object.keys(sections);
for (var i = 0; i < keys.length; i++){
if(commit.subject.indexOf(keys[i]) === 0){
return sections[keys[i]];
}
}
return null;
}
function organizeCommit(sections, commit) {
var section = sections[commit.type];
var section = commit.type ? sections[commit.type] : grepSection(sections, commit) ;
var component = commit.component || this.emptyComponent;

@@ -17,4 +32,4 @@

if (commit.breaking) {
sections.breaks[component] = sections.breaks[component] || [];
sections.breaks[component].push({
sections.BREAKING[component] = sections.BREAKING[component] || [];
sections.BREAKING[component].push({
subject: format("due to %s,\n %s", this.linkToCommit(commit.hash), commit.breaking),

@@ -21,0 +36,0 @@ hash: commit.hash,

@@ -36,15 +36,16 @@ 'use strict';

match = msg.subject.match(/^(.*)\((.*)\)\:\s(.*)$/);
//@TODO: match merges and pull request messages
if (!match) {
match = msg.subject.match(/^(.*)\:\s(.*)$/);
if (!match) {
this.warn('Incorrect message: %s %s', msg.hash, msg.subject);
return null;
//console.log(msg.subject, '------------');
this.log('warn', 'Incorrect message:', msg.hash, msg.subject);
//return null;
}
msg.type = match[1];
msg.subject = match[2];
msg.type = match ? match[1] : null;
msg.subject = match ? match[2] : msg.subject;
return msg;
}
msg.type = match[1];

@@ -51,0 +52,0 @@ msg.component = match[2];

@@ -39,3 +39,3 @@ 'use strict';

git_log_command = gitLogCommand.call(this, git_log_command, from);
this.log('Executing : ', git_log_command);
this.log('debug', 'Executing : ', git_log_command);
debug('executing git log command');

@@ -42,0 +42,0 @@ child.exec(git_log_command , {timeout: 1000}, cmdDone.bind(this, deferred));

@@ -8,16 +8,16 @@ 'use strict';

function sendToStream(stream, sections, deferred) {
//stream.write(format(this.header, , this.currentDate()));
var module = this;
this.printHeader(stream, this.options, this.currentDate());
this.printSection(stream, 'Bug Fixes', sections.fix);
this.printSection(stream, 'Features', sections.feat);
this.printSection(stream, 'Refactor', sections.refactor, false);
this.printSection(stream, 'Style', sections.style, false);
this.printSection(stream, 'Test', sections.test, false);
this.printSection(stream, 'Chore', sections.chore, false);
this.printSection(stream, 'Documentation', sections.docs, false);
if (sections.breaks[this.emptyComponent].length > 0 ) {
this.printSection(stream, 'Breaking Changes', sections.breaks, false);
}
this.options.sections.forEach(function(section){
var sectionType = section.grep.replace('^', '');
if(sectionType !== 'BREAKING'){
module.printSection(stream, section.title, sections[sectionType]);
}else if (sections.BREAKING[module.emptyComponent].length > 0 ) {
module.printSection(stream, 'Breaking Changes', sections.BREAKING, false);
}
});
this.printSalute(stream);

@@ -32,13 +32,11 @@ stream.end();

var sections = {
fix: {},
feat: {},
breaks: {},
style: {},
refactor: {},
test: {},
chore: {},
docs: {}
BREAKING : {}
};
sections.breaks[this.emptyComponent] = [];
this.options.sections.forEach(function(sectionInfo){
var sectionType = sectionInfo.grep.replace('^', '');
sections[sectionType] = {};
});
sections.BREAKING[this.emptyComponent] = [];
this.organizeCommits(commits, sections);

@@ -45,0 +43,0 @@ stream.on('open', sendToStream.bind(this, stream, sections, deferred));

@@ -104,2 +104,8 @@ 'use strict';

it('should store "changelogrc" if passed as an option', function() {
changelog.initOptions({ changelogrc: 'test' });
expect(changelog.options.changelogrc).to.equal('test');
expect(changelog.options.msg).to.contain('changelogrc: test');
});
it('should store "logo" if passed as an option', function() {

@@ -117,7 +123,2 @@ changelog.initOptions({ logo: 'test' });

it('should store "grep_commits" if passed as an option', function() {
changelog.initOptions({ grep_commits: 'test' });
expect(changelog.options.grep_commits).to.equal('test');
expect(changelog.options.msg).to.contain('grep_commits: test');
});

@@ -186,10 +187,10 @@ it('should store "debug" if passed as an option', function() {

it('should generate "git log" commands for "branch_name"', function() {
var branch_name = 'master';
changelog.options.branch_name = branch_name;
it('should generate "git log" commands for "branch"', function() {
var branch = 'master';
changelog.options.branch = branch;
changelog.getGitLogCommands();
expect(changelog.cmd.gitLog).to.include('git log ')
.and.include('..' + branch);
expect(changelog.cmd.gitLog).to.include('git log ')
.and.include('..' + branch_name);
expect(changelog.cmd.gitLogNoTag).to.include('git log ' + branch_name);
expect(changelog.cmd.gitLogNoTag).to.include('git log ' + branch);
});

@@ -419,2 +420,36 @@

describe('without breaking commits', function() {
var sections = [
{
title: 'Bug Fixes',
grep: '^fix'
},
{
title: 'Features',
grep: '^feat'
},
{
title: 'Documentation',
grep: '^docs'
},
{
title: 'Refactor',
grep: '^refactor'
},
{
title: 'Style',
grep: '^style'
},
{
title: 'Test',
grep: '^test'
},
{
title: 'Chore',
grep: '^chore'
},
{
title: 'Breaking changes',
grep: 'BREAKING'
}
];

@@ -438,3 +473,3 @@ before(function(done) {

changelog.initOptions({ app_name: 'app', version: 'version' });
changelog.initOptions({ app_name: 'app', version: 'version', sections: sections });
changelog.writeChangelog(this.stream, this.commits).then(function() {

@@ -463,16 +498,10 @@ done();

it('should print 7 sections', function() {
var sections = [
'Bug Fixes',
'Features',
'Refactor',
'Style',
'Test',
'Chore',
'Documentation'
];
expect(changelog.printSection.callCount).to.equal(7);
sections.forEach(function(section, index) {
var call = changelog.printSection.getCall(index);
expect(call.args).to.include(section);
if(!call){
expect(section.title).to.equals('Breaking changes');
}else{
expect(call.args).to.include(section.title);
}
});

@@ -489,2 +518,36 @@ });

describe('with breaking commits', function() {
var sections = [
{
title: 'Bug Fixes',
grep: '^fix'
},
{
title: 'Features',
grep: '^feat'
},
{
title: 'Documentation',
grep: '^docs'
},
{
title: 'Refactor',
grep: '^refactor'
},
{
title: 'Style',
grep: '^style'
},
{
title: 'Test',
grep: '^test'
},
{
title: 'Chore',
grep: '^chore'
},
{
title: 'Breaking Changes',
grep: 'BREAKING'
}
];

@@ -504,3 +567,3 @@ before(function(done) {

sinon.stub(changelog, 'organizeCommits', function(commits, sections) {
sections.breaks[changelog.emptyComponent] = [ 'breaking commit'];
sections.BREAKING[changelog.emptyComponent] = [ 'breaking commit'];
});

@@ -511,3 +574,3 @@ sinon.stub(changelog, 'printSalute');

changelog.initOptions({ app_name: 'app', version: 'version' });
changelog.initOptions({ app_name: 'app', version: 'version', sections: sections });
changelog.writeChangelog(this.stream, this.commits).then(function() {

@@ -536,17 +599,6 @@ done();

it('should print 8 sections', function() {
var sections = [
'Bug Fixes',
'Features',
'Refactor',
'Style',
'Test',
'Chore',
'Documentation',
'Breaking Changes'
];
expect(changelog.printSection.callCount).to.equal(8);
sections.forEach(function(section, index) {
var call = changelog.printSection.getCall(index);
expect(call.args).to.include(section);
expect(call.args).to.include(section.title);
});

@@ -573,3 +625,3 @@ });

feat: {},
breaks: {},
BREAKING: {},
style: {},

@@ -598,3 +650,3 @@ refactor: {},

it('should breaks section to be empty', function() {
expect(this.sections.breaks).to.deep.equal({});
expect(this.sections.BREAKING).to.deep.equal({});
});

@@ -631,3 +683,3 @@

feat: {},
breaks: {},
BREAKING: {},
style: {},

@@ -660,3 +712,3 @@ refactor: {},

it('should breaks section to be empty', function() {
expect(this.sections.breaks.$scope.length).to.equal(1);
expect(this.sections.BREAKING.$scope.length).to.equal(1);
});

@@ -794,7 +846,8 @@

expect(console.log).to.have.been.calledOnce;
expect(console.log).to.have.been.calledWith('test');
expect(console.log).to.have.been.calledWithMatch('test');
console.log.restore();
});
it('should call console.log() when debug option is true', function () {
xit('should call console.log() when debug option is true', function () {
changelog.options.debug = false;

@@ -809,30 +862,2 @@

describe('.warn()', function() {
beforeEach(function() {
sinon.stub(changelog, 'log');
});
afterEach(function() {
changelog.log.restore();
});
it('should always call .log(), when debug is true', function () {
changelog.options.debug = true;
changelog.warn('test');
expect(changelog.log).to.have.been.calledOnce;
expect(changelog.log).to.have.been.calledWith('WARNING:','test');
});
it('should always call .log(), when debug is false', function () {
changelog.options.debug = false;
changelog.warn('test');
expect(changelog.log).to.have.been.calledOnce;
expect(changelog.log).to.have.been.calledWith('WARNING:','test');
});
});
});

@@ -839,0 +864,0 @@

@@ -35,3 +35,3 @@ 'use strict';

expect(grunt.registerMultiTask.getCall(0).args.length).to.equal(3);
expect(grunt.registerMultiTask).to.have.been.calledWith('git_changelog', 'A git changelog based on ANGULAR JS commit standards');
expect(grunt.registerMultiTask).to.have.been.calledWith('git_changelog', 'A git changelog tool');
expect(grunt.registerMultiTask.getCall(0).args[2]).to.be.a('function');

@@ -38,0 +38,0 @@ });

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc