From 52e56a2973ee0d5199d44f099b8b8d4504c95d1d Mon Sep 17 00:00:00 2001 From: Felix Becker Date: Fri, 20 Oct 2017 15:47:46 -0700 Subject: [PATCH] chore(release): add semantic-release --- .travis.yml | 23 +++++++---------------- README.md | 2 +- dependencies.yml | 19 +++++++++++++++++-- package.json | 15 +++++++++++++-- 4 files changed, 38 insertions(+), 21 deletions(-) diff --git a/.travis.yml b/.travis.yml index a3d7973..4145d58 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,8 +9,8 @@ cache: - $HOME/.composer/cache before_install: - - nvm install 6.5.0 - - nvm use 6.5.0 + - nvm install 8 + - nvm use 8 install: - npm install @@ -20,18 +20,9 @@ script: - npm run lint - npm run build -# If build on a tag, publish a new release and upload vsix to the GitHub release -before_deploy: - - ./node_modules/.bin/vsce package - - ./node_modules/.bin/vsce publish -p $VSCE_TOKEN +after_success: + - npm run semantic-release -deploy: - provider: releases - skip_cleanup: true - api_key: - secure: Jxe2EeDH4+pd4e/GhwUz+CQo5W4K7qBjdXQce9v+hUJZzoZgcwfkxZny0EWM53YyC6W8/10OZlo06KB2ZyiS90vYk9h0Wy5qva4le0m+ekW6u2YNexUd22z+9n6eKr5T+wzx60TTSHNLIprGyJfWyK5Q1vJbOzX0eBartXvu4NgXFakrBgykbur+8NwHQuZSAsiAnjooSTrVV+IJruCNti1ZhkVbwyjMMOzMvXU7y7wx2KZ30p0UL0S0/DbPRtfKJeLrLhkUYSVaxcoNsExVJaWKWrWiu8GZ6WBL0uryhSptobxllrFWH93ox0IDw2WGJNKMronGdxbafle20ILLK/q/0HN0QRa0h8dcFEerLyMSLOxF/dgdVVvlqockCC4/fISreTjrFAd8o0RLL+BIgfvrTmSsHJ0dD1sOVVO2ZnMmYOia0Ehex1wBBO2PXE+yHQBqwVjIEqPx5cwdO94Js1RCFiMaJmAEMaF1+JceWobwCsIpGyhsq3202XtnbPxHyi5o1IcsQWeMDdo2GsNozJgCMf8IuWB+z5jKa6Vlz92TXmGEPUAzTERHyGKNMKN9oHw0WhUkgFVt4dn1wMLGnFjy+BSrlmBzg4UCYT1LD2HYCkhQPrOgHGLiCBiBENoRCXOr/01mZpu16ibpJxMf114udtwA2TThHrmnRgWNXms= - file: php-intellisense-*.vsix - file_glob: true - on: - repo: felixfbecker/vscode-php-intellisense - tags: true +branches: + except: + - /^v\d+\.\d+\.\d+$/ diff --git a/README.md b/README.md index 0956111..c404fb9 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # PHP IntelliSense -[![Latest Release](https://vsmarketplacebadge.apphb.com/version-short/felixfbecker.php-intellisense.svg)](https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-intellisense) [![Installs](https://vsmarketplacebadge.apphb.com/installs/felixfbecker.php-intellisense.svg)](https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-intellisense) [![Rating](https://vsmarketplacebadge.apphb.com/rating-short/felixfbecker.php-intellisense.svg)](https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-intellisense) [![Build Status](https://travis-ci.org/felixfbecker/vscode-php-intellisense.svg?branch=master)](https://travis-ci.org/felixfbecker/vscode-php-intellisense) [![Dependency Status](https://gemnasium.com/felixfbecker/vscode-php-intellisense.svg)](https://gemnasium.com/felixfbecker/vscode-php-intellisense) [![Minimum PHP Version](https://img.shields.io/badge/php-%3E%3D%207.0-8892BF.svg)](https://php.net/) [![Gitter](https://badges.gitter.im/felixfbecker/vscode-php-intellisense.svg)](https://gitter.im/felixfbecker/vscode-php-intellisense?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) +[![Latest Release](https://vsmarketplacebadge.apphb.com/version-short/felixfbecker.php-intellisense.svg)](https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-intellisense) [![Installs](https://vsmarketplacebadge.apphb.com/installs/felixfbecker.php-intellisense.svg)](https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-intellisense) [![Rating](https://vsmarketplacebadge.apphb.com/rating-short/felixfbecker.php-intellisense.svg)](https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-intellisense) [![Build Status](https://travis-ci.org/felixfbecker/vscode-php-intellisense.svg?branch=master)](https://travis-ci.org/felixfbecker/vscode-php-intellisense) [![Dependency Status](https://gemnasium.com/felixfbecker/vscode-php-intellisense.svg)](https://gemnasium.com/felixfbecker/vscode-php-intellisense) [![Minimum PHP Version](https://img.shields.io/badge/php-%3E%3D%207.0-8892BF.svg)](https://php.net/) [![Gitter](https://badges.gitter.im/felixfbecker/vscode-php-intellisense.svg)](https://gitter.im/felixfbecker/vscode-php-intellisense?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release) Advanced PHP IntelliSense for Visual Studio Code. diff --git a/dependencies.yml b/dependencies.yml index bb83377..de93560 100644 --- a/dependencies.yml +++ b/dependencies.yml @@ -7,10 +7,25 @@ collectors: - type: js-npm versions: "Y.0.0" +# pull requests for any update to the language server - type: php-composer path: / actors: - # pull requests for any update to the language server + - type: php-composer dependencies: "^felixfbecker/language-server$" - versions: "Y.Y.Y" + # if it was a patch release, make semantic-release release a patch of the extension + commit_message_prefix: "fix: " + versions: "L.L.Y" + + - type: php-composer + # if it was a minor release, make semantic-release release a minor of the extension + dependencies: "^felixfbecker/language-server$" + commit_message_prefix: "feat: " + versions: "L.Y.0" + + - type: php-composer + dependencies: "^felixfbecker/language-server$" + # majors could be anything, open a PR and let a human handle it + commit_message_prefix: "chore: " + versions: "Y.0.0" diff --git a/package.json b/package.json index 711f65f..c331d3a 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "license": "MIT", "private": true, "preview": false, - "version": "1.5.2", + "version": "0.0.0-development", "engines": { "vscode": "^1.17.1" }, @@ -42,15 +42,21 @@ "build": "tsc -p .", "watch": "tsc -w -p .", "postinstall": "node ./node_modules/vscode/bin/install", - "lint": "tslint -c tslint.json \"src/**/*.ts\"" + "lint": "tslint -c tslint.json \"src/**/*.ts\"", + "semantic-release": "semantic-release pre && vsce publish -p $VSCE_TOKEN && semantic-release post", + "commitmsg": "validate-commit-msg" }, "devDependencies": { "@types/mocha": "^2.2.42", "@types/mz": "^0.0.31", "@types/node": "^8.0.24", "@types/semver": "^5.3.34", + "cz-conventional-changelog": "^2.0.0", + "husky": "^0.14.3", + "semantic-release": "^8.2.0", "tslint": "^5.0.0", "typescript": "^2.1.4", + "validate-commit-msg": "^2.14.0", "vsce": "^1.8.1", "vscode": "^1.0.0" }, @@ -59,6 +65,11 @@ "semver": "^5.3.0", "vscode-languageclient": "^3.0.3" }, + "config": { + "commitizen": { + "path": "./node_modules/cz-conventional-changelog" + } + }, "contributes": { "configuration": { "type": "object",