diff --git a/.travis.yml b/.travis.yml index b9b29624e..768ac73dc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,6 +7,9 @@ script: - npm run setup - npm run unit-test +# public API changes check +- npm run api-extractor-ci + # circular references check - cd tests && npm i - node_modules/.bin/webpack --env.android diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9a278151d..4e0f2a208 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -69,6 +69,7 @@ git checkout -b master - Rebase your changes to the latest master: `git pull --rebase upstream master`. - Ensure all unit test are green for Android and iOS. Check [running unit tests](DevelopmentWorkflow.md#running-unit-tests). - Ensure your changes pass tslint validation. (run `npm run tslint` in the root of the repo). + - If you've made changes to a public API, make sure you update and add the `api-reports/NativeScript.api.md` file to the PR. (run `npm run api-extractor` to update the api-report and definitions). 6. Push your fork. If you have rebased you might have to use force-push your branch: ``` diff --git a/package.json b/package.json index 5c18e302d..800119891 100644 --- a/package.json +++ b/package.json @@ -47,6 +47,7 @@ "unit-test-watch": "mocha-typescript-watch -p unit-tests/tsconfig.json --opts unit-tests/mocha.opts", "dev-link-tns-core-modules-widgets": "(cd tns-core-modules-widgets/dist/package && npm link) && (cd nativescript-core && npm i ../tns-core-modules-widgets/dist/package --save)", "api-extractor": "api-extractor run --local --verbose && (cd nativescript-core && cat nativescript-core.header nativescript-core.d.ts > tmp_file && mv tmp_file nativescript-core.d.ts)", + "api-extractor-ci": "api-extractor run --verbose", "typedoc": "npm run api-extractor && typedoc --tsconfig tsconfig.typedoc.json", "typedoc-dev": "npm run typedoc && cd bin/dist/apiref && npx http-server", "build-core": "sh ./build/build-core.sh",