From 72fe134f8de91bcc828d452903998d8a87640cd2 Mon Sep 17 00:00:00 2001 From: Jeremy Meng Date: Wed, 5 Jun 2019 05:08:11 +0000 Subject: [PATCH 1/4] Fix types in template package The path to the type declaration file is incorrect. This change introduces - rollup of d.ts files using api-extractor - point `types` to the rolled-up azure-template.d.ts file - also generate beta trimmed and public trimmed d.ts rollup files in case we want to publish them (which requires either updating the `types` field in package.json, or overwriting that file) - commit the api report (./review/template.api.md) which is often used to review api changes. --- sdk/template/template/api-extractor.json | 32 ++++++++++++++++++++ sdk/template/template/package.json | 8 +++-- sdk/template/template/review/template.api.md | 21 +++++++++++++ 3 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 sdk/template/template/api-extractor.json create mode 100644 sdk/template/template/review/template.api.md diff --git a/sdk/template/template/api-extractor.json b/sdk/template/template/api-extractor.json new file mode 100644 index 000000000000..8642e4933795 --- /dev/null +++ b/sdk/template/template/api-extractor.json @@ -0,0 +1,32 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + "mainEntryPointFilePath": "types/src/index.d.ts", + "docModel": { + "enabled": false + }, + "apiReport": { + "enabled": true, + "reportFolder": "./review" + }, + "dtsRollup": { + "enabled": true, + "untrimmedFilePath": "./types/azure-template.d.ts", + "betaTrimmedFilePath": "./types/azure-template-beta.d.ts", + "publicTrimmedFilePath": "./types/azure-template-public.d.ts" + }, + "messages": { + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + } + }, + "extractorMessageReporting": { + "ae-missing-release-tag": { + "logLevel": "none" + }, + "ae-unresolved-link": { + "logLevel": "none" + } + } + } +} diff --git a/sdk/template/template/package.json b/sdk/template/template/package.json index e5ffc8633e9d..f7a600f00968 100644 --- a/sdk/template/template/package.json +++ b/sdk/template/template/package.json @@ -9,16 +9,17 @@ "./dist/index.js": "./browser/index.js", "./dist-esm/src/print.js": "./dist-esm/src/print.browser.js" }, - "types": "dist-esm/index.d.ts", + "types": "types/azure-template.d.ts", "scripts": { "audit": "node ../../../common/scripts/rush-audit.js && rimraf node_modules package-lock.json && npm i --package-lock-only 2>&1 && npm audit", "build:browser": "tsc -p . && cross-env ONLY_BROWSER=true rollup -c 2>&1", "build:node": "tsc -p . && cross-env ONLY_NODE=true rollup -c 2>&1", "build:samples": "cd samples && tsc -p .", "build:test": "tsc -p . && rollup -c rollup.test.config.js 2>&1", - "build": "tsc -p . && rollup -c 2>&1", + "build": "tsc -p . && rollup -c 2>&1 && api-extractor run --local", "check-format": "prettier --list-different --config ../../.prettierrc.json \"src/**/*.ts\" \"test/**/*.ts\" \"*.{js,json}\"", "clean": "rimraf dist dist-esm test-dist types *.tgz *.log", + "extract-api": "tsc -p . && api-extractor run --local", "format": "prettier --write --config ../../.prettierrc.json \"src/**/*.ts\" \"test/**/*.ts\" \"*.{js,json}\"", "integration-test:browser": "echo skipped", "integration-test:node": "echo skipped", @@ -39,7 +40,7 @@ "dist/", "dist-esm/src/", "src/", - "types/src" + "types/azure-template.d.ts" ], "repository": "github:Azure/azure-sdk-for-js", "keywords": [ @@ -63,6 +64,7 @@ "tslib": "^1.9.3" }, "devDependencies": { + "@microsoft/api-extractor": "^7.1.5", "@types/mocha": "^5.2.5", "@types/node": "^8.0.0", "@typescript-eslint/eslint-plugin": "^1.7.0", diff --git a/sdk/template/template/review/template.api.md b/sdk/template/template/review/template.api.md new file mode 100644 index 000000000000..dded12fcad14 --- /dev/null +++ b/sdk/template/template/review/template.api.md @@ -0,0 +1,21 @@ +## API Report File for "@azure/template" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import EventEmitter from 'events'; +import { URLBuilder } from '@azure/ms-rest-js'; + +// @public (undocumented) +export function createEventEmitter(): EventEmitter; + +// @public (undocumented) +export function (str: string): void; + +export { URLBuilder } + + +// (No @packageDocumentation comment for this package) + +``` From 9acddcd79e763531f221481dced01ea8d0fae47b Mon Sep 17 00:00:00 2001 From: Jeremy Meng Date: Wed, 5 Jun 2019 16:42:28 +0000 Subject: [PATCH 2/4] Address CR feedback Pack the public trimmed rollup .d.ts instead. --- sdk/template/template/api-extractor.json | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sdk/template/template/api-extractor.json b/sdk/template/template/api-extractor.json index 8642e4933795..ee77d2e4f50e 100644 --- a/sdk/template/template/api-extractor.json +++ b/sdk/template/template/api-extractor.json @@ -10,9 +10,8 @@ }, "dtsRollup": { "enabled": true, - "untrimmedFilePath": "./types/azure-template.d.ts", - "betaTrimmedFilePath": "./types/azure-template-beta.d.ts", - "publicTrimmedFilePath": "./types/azure-template-public.d.ts" + "untrimmedFilePath": "./types/azure-template-dev.d.ts", + "publicTrimmedFilePath": "./types/azure-template.d.ts" }, "messages": { "tsdocMessageReporting": { From b643fb2a961aa22c462de9116d081ba26d0baf28 Mon Sep 17 00:00:00 2001 From: Jeremy Meng Date: Wed, 5 Jun 2019 16:47:58 +0000 Subject: [PATCH 3/4] Not generate untrimmed file --- sdk/template/template/api-extractor.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/template/template/api-extractor.json b/sdk/template/template/api-extractor.json index ee77d2e4f50e..63b55b6f3ccf 100644 --- a/sdk/template/template/api-extractor.json +++ b/sdk/template/template/api-extractor.json @@ -10,7 +10,7 @@ }, "dtsRollup": { "enabled": true, - "untrimmedFilePath": "./types/azure-template-dev.d.ts", + "untrimmedFilePath": "", "publicTrimmedFilePath": "./types/azure-template.d.ts" }, "messages": { From ca7ec49acf774fad7d8c56ace1b197de03a69753 Mon Sep 17 00:00:00 2001 From: Jeremy Meng Date: Wed, 5 Jun 2019 16:52:15 +0000 Subject: [PATCH 4/4] Disable generation of untrimmed d.ts rollup files --- sdk/eventhub/event-hubs/api-extractor.json | 1 + sdk/eventhub/event-processor-host/api-extractor.json | 1 + sdk/servicebus/service-bus/api-extractor.json | 1 + sdk/storage/storage-blob/api-extractor.json | 1 + sdk/storage/storage-file/api-extractor.json | 1 + sdk/storage/storage-queue/api-extractor.json | 1 + 6 files changed, 6 insertions(+) diff --git a/sdk/eventhub/event-hubs/api-extractor.json b/sdk/eventhub/event-hubs/api-extractor.json index 1fa3ee7ad8cf..2ca70ff36f68 100644 --- a/sdk/eventhub/event-hubs/api-extractor.json +++ b/sdk/eventhub/event-hubs/api-extractor.json @@ -10,6 +10,7 @@ }, "dtsRollup": { "enabled": true, + "untrimmedFilePath": "", "publicTrimmedFilePath": "./typings/event-hubs.d.ts" }, "messages": { diff --git a/sdk/eventhub/event-processor-host/api-extractor.json b/sdk/eventhub/event-processor-host/api-extractor.json index 45e9a4924bfd..bf37fc7fb26d 100644 --- a/sdk/eventhub/event-processor-host/api-extractor.json +++ b/sdk/eventhub/event-processor-host/api-extractor.json @@ -10,6 +10,7 @@ }, "dtsRollup": { "enabled": true, + "untrimmedFilePath": "", "publicTrimmedFilePath": "./typings/event-processor-host.d.ts" }, "messages": { diff --git a/sdk/servicebus/service-bus/api-extractor.json b/sdk/servicebus/service-bus/api-extractor.json index 72242ba29a56..1be336b52ab3 100644 --- a/sdk/servicebus/service-bus/api-extractor.json +++ b/sdk/servicebus/service-bus/api-extractor.json @@ -10,6 +10,7 @@ }, "dtsRollup": { "enabled": true, + "untrimmedFilePath": "", "publicTrimmedFilePath": "./typings/service-bus.d.ts" }, "messages": { diff --git a/sdk/storage/storage-blob/api-extractor.json b/sdk/storage/storage-blob/api-extractor.json index 30f66b365a76..5a0fde00d976 100644 --- a/sdk/storage/storage-blob/api-extractor.json +++ b/sdk/storage/storage-blob/api-extractor.json @@ -10,6 +10,7 @@ }, "dtsRollup": { "enabled": true, + "untrimmedFilePath": "", "publicTrimmedFilePath": "./typings/storage-blob.d.ts" }, "messages": { diff --git a/sdk/storage/storage-file/api-extractor.json b/sdk/storage/storage-file/api-extractor.json index b9d673c434af..a8c547de79fb 100644 --- a/sdk/storage/storage-file/api-extractor.json +++ b/sdk/storage/storage-file/api-extractor.json @@ -10,6 +10,7 @@ }, "dtsRollup": { "enabled": true, + "untrimmedFilePath": "", "publicTrimmedFilePath": "./typings/storage-file.d.ts" }, "messages": { diff --git a/sdk/storage/storage-queue/api-extractor.json b/sdk/storage/storage-queue/api-extractor.json index bd8273a363c4..e8123acc7358 100644 --- a/sdk/storage/storage-queue/api-extractor.json +++ b/sdk/storage/storage-queue/api-extractor.json @@ -10,6 +10,7 @@ }, "dtsRollup": { "enabled": true, + "untrimmedFilePath": "", "publicTrimmedFilePath": "./typings/storage-queue.d.ts" }, "messages": {