diff --git a/.appveyor.yml b/.appveyor.yml deleted file mode 100644 index d7176220..00000000 --- a/.appveyor.yml +++ /dev/null @@ -1,21 +0,0 @@ -version: "{build}" - -clone_depth: 1 -clone_folder: c:\gopath\src\github.com\git-chglog\git-chglog - -environment: - GOPATH: c:\gopath - -install: - - echo %PATH% - - echo %GOPATH% - - go version - - go env - - set PATH=%PATH%;%GOPATH%\bin - -test_script: - - go build github.com/git-chglog/git-chglog/cmd/git-chglog - - for /f "" %%G in ('go list github.com/git-chglog/git-chglog/...') do ( go test -v %%G & IF ERRORLEVEL == 1 EXIT 1) - -build: off -deploy: off diff --git a/.chglog/CHANGELOG.tpl.md b/.chglog/CHANGELOG.tpl.md index 389e9789..5683d039 100755 --- a/.chglog/CHANGELOG.tpl.md +++ b/.chglog/CHANGELOG.tpl.md @@ -29,6 +29,13 @@ {{ end }} {{ end -}} +{{- if .MergeCommits -}} +### Pull Requests +{{ range .MergeCommits -}} +- {{ .Header }} +{{ end }} +{{ end -}} + {{- if .NoteGroups -}} {{ range .NoteGroups -}} ### {{ .Title }} diff --git a/.chglog/config.yml b/.chglog/config.yml index abfce168..074a182c 100755 --- a/.chglog/config.yml +++ b/.chglog/config.yml @@ -11,16 +11,19 @@ options: - fix - perf - refactor + - chore commit_groups: title_maps: feat: Features fix: Bug Fixes perf: Performance Improvements refactor: Code Refactoring + chore: Chores header: - pattern: "^(\\w*)\\:\\s(.*)$" + pattern: "^(\\w*)(?:\\(([\\w\\$\\.\\-\\*\\s]*)\\))?\\:\\s(.*)$" pattern_maps: - Type + - Scope - Subject notes: keywords: diff --git a/.github/renovate.json b/.github/renovate.json new file mode 100644 index 00000000..1aa89153 --- /dev/null +++ b/.github/renovate.json @@ -0,0 +1,25 @@ +{ + "semanticCommits": true, + "prHourlyLimit": 5, + "reviewersFromCodeOwners": true, + "labels": [ + "dependencies" + ], + "extends": [ + "config:base", + "group:allNonMajor" + ], + "postUpdateOptions": ["gomodTidy"], + "major": { + "labels": [ + "dependencies", + "major" + ] + }, + "minor": { + "labels": [ + "dependencies", + "minor" + ] + } +} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..3e16b8c7 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,105 @@ +name: ci + +on: + pull_request: + types: ["opened", "synchronize"] + paths-ignore: + - "README.md" + push: + branches: + - master + paths-ignore: + - "README.md" + +env: + GO_VERSION: "1.24" + GOLANGCI_VERSION: "v1.64.8" + +jobs: + tests: + runs-on: ubuntu-20.04 + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Go + uses: actions/setup-go@v5 + with: + go-version: ${{ env.GO_VERSION }} + + - name: Run tests + run: make test + + - name: Install goveralls + run: | + go install github.com/mattn/goveralls@latest + echo $GOPATH + ls -lash $GOPATH + which goveralls + working-directory: /tmp + + - name: Send coverage + run: goveralls -coverprofile=cover.out -service=github + env: + COVERALLS_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + lint: + runs-on: ubuntu-20.04 + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Go + uses: actions/setup-go@v5 + with: + go-version: ${{ env.GO_VERSION }} + + - name: golangci-lint + uses: golangci/golangci-lint-action@v6 + with: + version: ${{ env.GOLANGCI_VERSION }} + + docker-image-tests: + runs-on: ubuntu-20.04 + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Go + uses: actions/setup-go@v5 + with: + go-version: ${{ env.GO_VERSION }} + + - name: Run tests + run: make build + + - name: Test docker image + run: | + docker build -t git-chglog:ci-build . + docker run -v ${GITHUB_WORKSPACE}:/workdir -w /workdir git-chglog:ci-build > ${GITHUB_WORKSPACE}/ci-build.md + head ${GITHUB_WORKSPACE}/ci-build.md + + goreleaser-test: + runs-on: ubuntu-20.04 + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Go + uses: actions/setup-go@v5 + with: + go-version: ${{ env.GO_VERSION }} + + - name: Run GoReleaser + uses: goreleaser/goreleaser-action@v4 + with: + version: latest + args: release --clean --skip=publish --snapshot diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 00000000..f9386129 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,34 @@ +name: publish + +on: + push: + branches: + - master + +env: + GO_VERSION: "1.24" + DOCKER_REGISTRY: "quay.io" + +jobs: + docker: + runs-on: ubuntu-20.04 + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Go + uses: actions/setup-go@v5 + with: + go-version: ${{ env.GO_VERSION }} + + - name: Login to Docker Registry + uses: docker/login-action@v2 + with: + registry: ${{ env.DOCKER_REGISTRY }} + username: ${{ secrets.QUAY_IO_USER }} + password: ${{ secrets.QUAY_IO_TOKEN }} + + - name: Build and Push docker image + run: DOCKER_TAG=edge make docker push diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..8236dec5 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,39 @@ +name: release + +on: + push: + tags: + - "*" + +env: + GO_VERSION: "1.24" + DOCKER_REGISTRY: "quay.io" + +jobs: + goreleaser: + runs-on: ubuntu-20.04 + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Set up Go + uses: actions/setup-go@v5 + with: + go-version: ${{ env.GO_VERSION }} + + - name: Login to Docker Registry + uses: docker/login-action@v2 + with: + registry: ${{ env.DOCKER_REGISTRY }} + username: ${{ secrets.QUAY_IO_USER }} + password: ${{ secrets.QUAY_IO_TOKEN }} + + - name: Run GoReleaser + uses: goreleaser/goreleaser-action@v4 + with: + version: latest + args: release --clean + env: + GITHUB_TOKEN: ${{ secrets.GORELEASER_TOKEN }} diff --git a/.gitignore b/.gitignore index 6182e02f..8ce7945e 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ *.dll *.so *.dylib +/git-chglog # Test binary, build with `go test -c` *.test @@ -20,17 +21,27 @@ # Project-local glide cache, RE: https://github.com/Masterminds/glide/issues/736 .glide/ +# in https://github.com/git-chglog/git-chglog/pull/85 we moved from dep to gomod +vendor + ### macOS ### *.DS_Store .AppleDouble .LSOverride # Icon must end with two \r -Icon +Icon # Thumbnails ._* +# Intellij IDEA +*.iml +.idea + +# vscode IDE +.vscode + # Files that might appear in the root of a volume .DocumentRevisions-V100 .fseventsd diff --git a/.golangci.yml b/.golangci.yml new file mode 100644 index 00000000..4e3fdd88 --- /dev/null +++ b/.golangci.yml @@ -0,0 +1,103 @@ +# https://golangci-lint.run/usage/configuration/ +run: + timeout: 10m + + tests: true + +linters-settings: + gofmt: + # simplify code: gofmt with `-s` option, true by default + simplify: true + + goimports: + # put imports beginning with prefix after 3rd-party packages; + # it's a comma-separated list of prefixes + local-prefixes: github.com/git-chglog/git-chglog + + gocyclo: + # minimal code complexity to report, 30 by default (but we recommend 10-20) + min-complexity: 10 + + dupl: + # tokens count to trigger issue, 150 by default + threshold: 100 + + goconst: + # minimal length of string constant, 3 by default + min-len: 3 + # minimal occurrences count to trigger, 3 by default + min-occurrences: 5 + + lll: + # tab width in spaces. Default to 1. + tab-width: 1 + + unparam: + # Inspect exported functions, default is false. Set to true if no external program/library imports your code. + # XXX: if you enable this setting, unparam will report a lot of false-positives in text editors: + # if it's called for subdir of a project it can't find external interfaces. All text editor integrations + # with golangci-lint call it on a directory with the changed file. + check-exported: false + + nakedret: + # make an issue if func has more lines of code than this setting and it has naked returns; default is 30 + max-func-lines: 30 + + prealloc: + # XXX: we don't recommend using this linter before doing performance profiling. + # For most programs usage of prealloc will be a premature optimization. + + # Report preallocation suggestions only on simple loops that have no returns/breaks/continues/gotos in them. + # True by default. + simple: true + range-loops: true # Report preallocation suggestions on range loops, true by default + for-loops: false # Report preallocation suggestions on for loops, false by default + + misspell: + locale: US + +linters: + enable: + - gosimple + - staticcheck + - unused + - gocyclo + - goconst + - goimports + - gofmt # We enable this as well as goimports for its simplify mode. + - prealloc + - unconvert + - misspell + - nakedret + - dupl + #- depguard TODO fix later + + presets: + - bugs + - unused + fast: false + +issues: + # Excluding configuration per-path and per-linter + exclude-rules: + # Exclude some linters from running on tests files. + - path: _test(ing)?\.go + linters: + - gocyclo + - errcheck + - dupl + - gosec + - unparam + - testifylint + - depguard + + # Show only new issues: if there are unstaged changes or untracked files, + # only those changes are analyzed, else only changes in HEAD~ are analyzed. + # It's a super-useful option for integration of golangci-lint into existing + # large codebase. It's not practical to fix all existing issues at the moment + # of integration: much better don't allow issues in new code. + # Default is false. + new: false + + # Maximum count of issues with the same text. Set to 0 to disable. Default is 3. + max-same-issues: 0 diff --git a/.goreleaser.yml b/.goreleaser.yml new file mode 100644 index 00000000..9b4766ad --- /dev/null +++ b/.goreleaser.yml @@ -0,0 +1,57 @@ +version: 2 + +# This is an example .goreleaser.yml file with some sane defaults. +# Make sure to check the documentation at http://goreleaser.com +project_name: git-chglog + +before: + hooks: + # You may remove this if you don't use go modules. + - go mod download + +builds: + - dir: cmd/git-chglog + env: + - CGO_ENABLED=0 + goos: + - linux + - windows + - darwin + goarch: + - 386 + - amd64 + - arm + - arm64 + +archives: + - format_overrides: + - goos: windows + format: zip + +checksum: + name_template: "checksums.txt" + +changelog: + sort: desc + filters: + exclude: + - "^Merge" + +snapshot: + name_template: "{{ .Tag }}-next" + +dockers: + - image_templates: + - "quay.io/git-chglog/git-chglog:{{ .RawVersion }}" + - "quay.io/git-chglog/git-chglog:latest" + +brews: + - repository: + owner: git-chglog + name: homebrew-git-chglog + homepage: "https://godoc.org/github.com/git-chglog/git-chglog" + description: "CHANGELOG generator implemented in Go (Golang)." + test: | + system "#{bin}/git-chglog --help" + install: | + bin.install "git-chglog" diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index bde1d8e2..00000000 --- a/.travis.yml +++ /dev/null @@ -1,25 +0,0 @@ -language: go -sudo: false -notifications: - email: false -go: - - 1.9 -before_install: - - go get github.com/mattn/goveralls -before_script: - - export TZ=Asia/Tokyo - - sudo timedatectl set-timezone Asia/Tokyo - - timedatectl -script: - - make test -after_success: - - goveralls -service=travis-ci -before_deploy: - - go get github.com/mitchellh/gox - - go get github.com/tcnksm/ghr -deploy: - provider: script - script: ./scripts/release.sh - on: - tags: true - branch: master diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b5ec343..d25fac2a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,53 +1,311 @@ -# CHANGELOG -All notable changes to this project will be documented in this file. -This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html) - ## [Unreleased] + +## [v0.15.4] - 2023-02-15 +### Bug Fixes +- release process ([#231](https://github.com/git-chglog/git-chglog/issues/231)) +- **ci:** add integration test with docker image ([#226](https://github.com/git-chglog/git-chglog/issues/226)) +- **deps:** update module github.com/urfave/cli/v2 to v2.24.3 ([#227](https://github.com/git-chglog/git-chglog/issues/227)) +- **deps:** update module github.com/fatih/color to v1.14.1 ([#224](https://github.com/git-chglog/git-chglog/issues/224)) +- **deps:** update all non-major dependencies ([#223](https://github.com/git-chglog/git-chglog/issues/223)) + +### Chores +- new release due to shecksum mismatch. Closes [#232](https://github.com/git-chglog/git-chglog/issues/232) +- update changelog for v0.15.3 +- update changelog for v0.15.3 +- bump docker/login-action to v2. Closes [#206](https://github.com/git-chglog/git-chglog/issues/206) +- bump goreleaser/goreleaser-action to v4. Closes [#208](https://github.com/git-chglog/git-chglog/issues/208) + + + +## [v0.15.2] - 2023-01-22 +### Bug Fixes +- typo in readme ([#196](https://github.com/git-chglog/git-chglog/issues/196)) +- **deps:** update module gopkg.in/yaml.v2 to v3 ([#221](https://github.com/git-chglog/git-chglog/issues/221)) + +### Chores +- update changelog for v0.15.2 +- update changelog for v0.15.2 +- update Go install instructions ([#205](https://github.com/git-chglog/git-chglog/issues/205)) +- bump golang to 1.19 ([#218](https://github.com/git-chglog/git-chglog/issues/218)) +- **deps:** update all non-major dependencies ([#220](https://github.com/git-chglog/git-chglog/issues/220)) + + + +## [v0.15.1] - 2021-12-14 +### Bug Fixes +- **deps:** update all non-major dependencies ([#179](https://github.com/git-chglog/git-chglog/issues/179)) +- **deps:** update module github.com/andygrunwald/go-jira to v1.14.0 ([#167](https://github.com/git-chglog/git-chglog/issues/167)) +- **deps:** update module github.com/alecaivazis/survey/v2 to v2.2.16 ([#165](https://github.com/git-chglog/git-chglog/issues/165)) +- **deps:** update module github.com/alecaivazis/survey/v2 to v2.2.15 ([#163](https://github.com/git-chglog/git-chglog/issues/163)) + +### Chores +- update changelog for v0.15.1 +- ignore .vscode +- **deps:** update all non-major dependencies docker tags ([#168](https://github.com/git-chglog/git-chglog/issues/168)) + + + +## [v0.15.0] - 2021-07-09 +### Bug Fixes +- **deps:** update module github.com/alecaivazis/survey/v2 to v2.2.14 ([#158](https://github.com/git-chglog/git-chglog/issues/158)) +- **deps:** update module github.com/alecaivazis/survey/v2 to v2.2.13 ([#156](https://github.com/git-chglog/git-chglog/issues/156)) +- **deps:** update module github.com/fatih/color to v1.12.0 ([#150](https://github.com/git-chglog/git-chglog/issues/150)) +- **deps:** update module github.com/fatih/color to v1.11.0 ([#149](https://github.com/git-chglog/git-chglog/issues/149)) +- **deps:** update module github.com/alecaivazis/survey/v2 to v2.2.12 ([#147](https://github.com/git-chglog/git-chglog/issues/147)) + +### Chores +- update changelog for v0.15.0 +- **deps:** update alpine docker tag to v3.14.0 ([#153](https://github.com/git-chglog/git-chglog/issues/153)) + +### Features +- Automatic link for gitlab merge requests ([#160](https://github.com/git-chglog/git-chglog/issues/160)) + + + +## [v0.14.2] - 2021-04-16 +### Bug Fixes +- add CommitGroupTitleOrder back to Options ([#143](https://github.com/git-chglog/git-chglog/issues/143)) + +### Chores +- update changelog for v0.14.2 +- **deps:** update alpine docker tag to v3.13.5 ([#144](https://github.com/git-chglog/git-chglog/issues/144)) + + + +## [v0.14.1] - 2021-04-13 +### Bug Fixes +- **template:** address regression in string functions for template engine ([#142](https://github.com/git-chglog/git-chglog/issues/142)) + +### Chores +- update changelog for v0.14.1 +- add docker target to Makefile ([#138](https://github.com/git-chglog/git-chglog/issues/138)) +- add make release target ([#130](https://github.com/git-chglog/git-chglog/issues/130)) +- **deps:** update alpine docker tag to v3.13.4 ([#136](https://github.com/git-chglog/git-chglog/issues/136)) + +### Features +- add docker image on release and master ([#135](https://github.com/git-chglog/git-chglog/issues/135)) + + + +## [v0.14.0] - 2021-03-28 +### Chores +- update changelog for v0.14.0 +- **CHANGELOG:** regenerate CHANGELOG with type-scope and KAC template ([#129](https://github.com/git-chglog/git-chglog/issues/129)) + +### Features +- add sprig template functions support ([#131](https://github.com/git-chglog/git-chglog/issues/131)) +- add `--sort [TYPE]` flag ([#78](https://github.com/git-chglog/git-chglog/issues/78)) + + + +## [v0.13.0] - 2021-03-23 +### Chores +- update changelog for v0.13.0 +- use ldflags to pass version to build process ([#127](https://github.com/git-chglog/git-chglog/issues/127)) + +### Features +- add support for rendering .Body after .Subject as part of list ([#121](https://github.com/git-chglog/git-chglog/issues/121)) + + + +## [v0.12.0] - 2021-03-20 +### Chores +- update changelog for v0.12.0 +- bumps version to v0.12.0 +- bump golang to 1.16 ([#118](https://github.com/git-chglog/git-chglog/issues/118)) +- **ci:** add golangci-lint action and apply linting changes ([#120](https://github.com/git-chglog/git-chglog/issues/120)) + +### Features +- allow tag sorting by semver ([#124](https://github.com/git-chglog/git-chglog/issues/124)) + +### BREAKING CHANGE + +`JiraIssueId` has been renamed to `JiraIssueID`. This impacts the value for `pattern_maps` in `config.yml`. + +* chore(ci): add golangci-lint action + +* chore(lint): address errcheck lint failures + +* chore(lint): address misspell lint failures + +* chore(lint): address gocritic lint failures + +* chore(lint): address golint lint failures + +* chore(lint): address structcheck lint failures + +* chore(lint): address gosimple lint failures + +* chore(lint): address gofmt lint failures + +* chore(ci): port to official golangci-lint github action + +* Update golangci configuration for better coverage + + + +## [v0.11.2] - 2021-03-13 +### Bug Fixes +- `--template` and `--repository-url` flags not being used ([#119](https://github.com/git-chglog/git-chglog/issues/119)) + +### Chores +- update changelog for v0.11.2 +- bumps version to v0.11.2 + + + +## [v0.11.1] - 2021-03-12 +### Bug Fixes +- **short flags:** correctly define cli flags with shorthands ([#117](https://github.com/git-chglog/git-chglog/issues/117)) + +### Chores +- update readme and changelog for v0.11.1 +- bumps version to v0.11.1 + + + +## [v0.11.0] - 2021-03-12 +### Bug Fixes +- **deps:** update all non-major dependencies ([#115](https://github.com/git-chglog/git-chglog/issues/115)) +- **deps:** update module gopkg.in/kyokomi/emoji.v1 to github.com/kyokomi/emoji/v2 ([#109](https://github.com/git-chglog/git-chglog/issues/109)) +- **deps:** update module github.com/urfave/cli to v2 ([#107](https://github.com/git-chglog/git-chglog/issues/107)) +- **deps:** update module github.com/stretchr/testify to v1.7.0 ([#103](https://github.com/git-chglog/git-chglog/issues/103)) +- **deps:** update module gopkg.in/alecaivazis/survey.v1 to github.com/AlecAivazis/survey/v2 ([#108](https://github.com/git-chglog/git-chglog/issues/108)) +- **init:** support OptionAnswer form in survey/v2 ([#113](https://github.com/git-chglog/git-chglog/issues/113)) + +### Chores +- update changelog for v0.11.0 +- bumps version to v0.11.0 +- **deps:** add initial renovatebot configuration ([#102](https://github.com/git-chglog/git-chglog/issues/102)) + +### Features +- add Jira integration ([#52](https://github.com/git-chglog/git-chglog/issues/52)) +- **flag:** --path filtering - refs ([#62](https://github.com/git-chglog/git-chglog/issues/62)). Closes [#35](https://github.com/git-chglog/git-chglog/issues/35) + + + +## [v0.10.0] - 2021-01-16 +### Bug Fixes +- ignore only git-chglog binary in root and not subfolder + +### Chores +- update changelog for v0.10.0 +- bumps version to v0.10.0 +- sorts changelog desc and excludes Merge commits +- fix Makefile typo ([#82](https://github.com/git-chglog/git-chglog/issues/82)) +- **asdf:** add asdf install support to README ([#79](https://github.com/git-chglog/git-chglog/issues/79)) + +### Features +- Adds 'Custom' sort_type to CommitGroup ([#69](https://github.com/git-chglog/git-chglog/issues/69)) +- enable tag_filter_pattern in config options ([#72](https://github.com/git-chglog/git-chglog/issues/72)) +- switch from dep to go mod ([#85](https://github.com/git-chglog/git-chglog/issues/85)) +- add option to filter commits in a case insensitive way +- add upperFirst template function +- Add emoji format and some formatters in variables + +### Reverts +- Revert "ci: switches to personal GH Token for brew cross repo releases" +- ci: switches to personal GH Token for brew cross repo releases + +### Pull Requests +- Merge pull request [#65](https://github.com/git-chglog/git-chglog/issues/65) from barryib/case-sensitive-option +- Merge pull request [#59](https://github.com/git-chglog/git-chglog/issues/59) from momotaro98/feature/add-emoji-template-in-init +- Merge pull request [#66](https://github.com/git-chglog/git-chglog/issues/66) from barryib/add-upper-first-func +- Merge pull request [#68](https://github.com/git-chglog/git-chglog/issues/68) from unixorn/tweak-readme + + + +## [0.9.1] - 2019-09-23 + + +## [0.9.0] - 2019-09-23 +### Bug Fixes +- Fixing tests on windows + +### Features +- Add --tag-filter-pattern flag. + +### Pull Requests +- Merge pull request [#44](https://github.com/git-chglog/git-chglog/issues/44) from evanchaoli/tag-filter +- Merge pull request [#41](https://github.com/git-chglog/git-chglog/issues/41) from StanleyGoldman/fixing-tests-windows +- Merge pull request [#37](https://github.com/git-chglog/git-chglog/issues/37) from ForkingSyndrome/master + + ## [0.8.0] - 2019-02-23 ### Features - add the contains, hasPrefix, hasSuffix, replace, lower and upper functions to the template functions map +### Pull Requests +- Merge pull request [#34](https://github.com/git-chglog/git-chglog/issues/34) from atosatto/template-functions + ## [0.7.1] - 2018-11-10 ### Bug Fixes - Panic occured when exec --next-tag with HEAD with tag +### Pull Requests +- Merge pull request [#31](https://github.com/git-chglog/git-chglog/issues/31) from drubin/patch-1 +- Merge pull request [#30](https://github.com/git-chglog/git-chglog/issues/30) from vvakame/fix-panic + ## [0.7.0] - 2018-05-06 ### Bug Fixes - Remove accidentally added `Unreleased.Tag` +### Chores +- Update `changelog` task in Makefile + ### Features - Add URL of output example for template style - Add `--next-tag` flag (experimental) +### Pull Requests +- Merge pull request [#22](https://github.com/git-chglog/git-chglog/issues/22) from git-chglog/feat/add-preview-style-link +- Merge pull request [#21](https://github.com/git-chglog/git-chglog/issues/21) from git-chglog/feat/next-tag + ## [0.6.0] - 2018-05-04 +### Chores +- Update CHANGELOG template format + ### Features - Add tag name header id for keep-a-changelog template +### Pull Requests +- Merge pull request [#20](https://github.com/git-chglog/git-chglog/issues/20) from git-chglog/feat/kac-template-title-id + ## [0.5.0] - 2018-05-04 ### Bug Fixes - Add unreleased commits section to keep-a-changelog template [#15](https://github.com/git-chglog/git-chglog/issues/15) +### Chores +- Update CHANGELOG template format + ### Features - Update template format to human readable - Add `Unreleased` field to `RenderData` +### Pull Requests +- Merge pull request [#19](https://github.com/git-chglog/git-chglog/issues/19) from git-chglog/fix/unreleased-commits +- Merge pull request [#18](https://github.com/git-chglog/git-chglog/issues/18) from ringohub/master + ## [0.4.0] - 2018-04-14 ### Features -- Add support for Bitbucket :tada: +- Add support for Bitbucket + +### Pull Requests +- Merge pull request [#17](https://github.com/git-chglog/git-chglog/issues/17) from git-chglog/feat/bitbucket @@ -55,42 +313,69 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html ### Features - Change to kindly error message when git-tag does not exist +### Pull Requests +- Merge pull request [#16](https://github.com/git-chglog/git-chglog/issues/16) from git-chglog/fix/empty-tag-handling + ## [0.3.2] - 2018-04-02 ### Bug Fixes - Fix color output bug in windows help command +### Pull Requests +- Merge pull request [#14](https://github.com/git-chglog/git-chglog/issues/14) from git-chglog/fix/windows-help-color + ## [0.3.1] - 2018-03-15 ### Bug Fixes -- Fix preview string of commit subject ([@kt3k](https://github.com/kt3k)) +- fix preview string of commit subject + +### Pull Requests +- Merge pull request [#13](https://github.com/git-chglog/git-chglog/issues/13) from kt3k/feature/fix-preview ## [0.3.0] - 2018-03-12 +### Chores +- Add helper task for generate CHANGELOG + ### Features -- Add support for GitLab :tada: +- Add support for GitLab + +### Pull Requests +- Merge pull request [#12](https://github.com/git-chglog/git-chglog/issues/12) from git-chglog/feat/gitlab ## [0.2.0] - 2018-03-02 +### Chores +- Fix release flow (retry) +- Add AppVeyor config + ### Features - Add template for `Keep a changelog` to the `--init` option - Supports vim like `j/k` keybind with item selection of `--init` -### Bug Fixes -- Support Windows colors :tada: ([@mattn](https://github.com/mattn)) -- Fixed several bugs in Windows +### Pull Requests +- Merge pull request [#11](https://github.com/git-chglog/git-chglog/issues/11) from git-chglog/develop +- Merge pull request [#10](https://github.com/git-chglog/git-chglog/issues/10) from mattn/fix-test +- Merge pull request [#9](https://github.com/git-chglog/git-chglog/issues/9) from mattn/windows-color ## [0.1.0] - 2018-02-25 ### Bug Fixes +- Fix a bug that `Commit.Revert.Header` is not converted by `GitHubProcessor` - Fix error message when `Tag` can not be acquired - Fix `Revert` of template created by Initializer +### Chores +- Fix release scripts +- Remove unnecessary task +- Add coverage measurement task for local confirmation +- Change release method of git tag on TravisCI + ### Code Refactoring - Refactor `Initializer` to testable @@ -100,14 +385,19 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html - Add Git Basic to commit message format - Add preview to the commit message format of `--init` option +### Pull Requests +- Merge pull request [#8](https://github.com/git-chglog/git-chglog/issues/8) from git-chglog/feat/0.0.3 +- Merge pull request [#6](https://github.com/git-chglog/git-chglog/issues/6) from git-chglog/chore/coverage +- Merge pull request [#4](https://github.com/git-chglog/git-chglog/issues/4) from paralax/patch-1 +- Merge pull request [#5](https://github.com/git-chglog/git-chglog/issues/5) from git-chglog/develop +- Merge pull request [#1](https://github.com/git-chglog/git-chglog/issues/1) from git-chglog/develop + ## [0.0.2] - 2018-02-18 -### Bug Fixes -- Fix a bug that `Commit.Revert.Header` is not converted by `GitHubProcessor` - -### Features -- Add preview to the commit message format of `--init` option +### Chores +- Fix release script +- Add release process @@ -115,6 +405,17 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html ### Bug Fixes - Fix parsing of revert and body +### Chores +- Fix timezone in TravisCI +- Add travis configuration +- Add Makefile for task management +- Fix testcase depending on datetime +- Update vendor packages +- Add e2e tests +- Setup gitignore +- Initial commit +- **editor:** Add Editorconfig + ### Code Refactoring - Fix typo - Change to return an error if corresponding commit is empty @@ -129,7 +430,22 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html - First implement -[Unreleased]: https://github.com/git-chglog/git-chglog/compare/0.8.0...HEAD +[Unreleased]: https://github.com/git-chglog/git-chglog/compare/v0.15.4...HEAD +[v0.15.4]: https://github.com/git-chglog/git-chglog/compare/v0.15.2...v0.15.4 +[v0.15.2]: https://github.com/git-chglog/git-chglog/compare/v0.15.1...v0.15.2 +[v0.15.1]: https://github.com/git-chglog/git-chglog/compare/v0.15.0...v0.15.1 +[v0.15.0]: https://github.com/git-chglog/git-chglog/compare/v0.14.2...v0.15.0 +[v0.14.2]: https://github.com/git-chglog/git-chglog/compare/v0.14.1...v0.14.2 +[v0.14.1]: https://github.com/git-chglog/git-chglog/compare/v0.14.0...v0.14.1 +[v0.14.0]: https://github.com/git-chglog/git-chglog/compare/v0.13.0...v0.14.0 +[v0.13.0]: https://github.com/git-chglog/git-chglog/compare/v0.12.0...v0.13.0 +[v0.12.0]: https://github.com/git-chglog/git-chglog/compare/v0.11.2...v0.12.0 +[v0.11.2]: https://github.com/git-chglog/git-chglog/compare/v0.11.1...v0.11.2 +[v0.11.1]: https://github.com/git-chglog/git-chglog/compare/v0.11.0...v0.11.1 +[v0.11.0]: https://github.com/git-chglog/git-chglog/compare/v0.10.0...v0.11.0 +[v0.10.0]: https://github.com/git-chglog/git-chglog/compare/0.9.1...v0.10.0 +[0.9.1]: https://github.com/git-chglog/git-chglog/compare/0.9.0...0.9.1 +[0.9.0]: https://github.com/git-chglog/git-chglog/compare/0.8.0...0.9.0 [0.8.0]: https://github.com/git-chglog/git-chglog/compare/0.7.1...0.8.0 [0.7.1]: https://github.com/git-chglog/git-chglog/compare/0.7.0...0.7.1 [0.7.0]: https://github.com/git-chglog/git-chglog/compare/0.6.0...0.7.0 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5e7184c7..717768f2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,22 +2,21 @@ Thank you for contributing `git-chglog` :tada: - ## Templates Please use issue/PR templates which are inserted automatically. - ## Found a Bug? -If you find a bug in the source code, you can help us by [submitting an issue](https://github.com/git-chglog/git-chglog/issues) to our [GitHub Repository](https://github.com/git-chglog/git-chglog). Even better, you can submit a Pull Request with a fix. - +If you find a bug in the source code, you can help us by [submitting an issue] +to our [GitHub Repository]. Even better, you can submit a Pull Request with a +fix. ## Commit Message Format -A format influenced by [Angular commit message](https://github.com/angular/angular/blob/master/CONTRIBUTING.md#commit-message-format). +A format influenced by [Angular commit message]. -``` +```text : @@ -25,26 +24,31 @@ A format influenced by [Angular commit message](https://github.com/angular/angul