From d129d275a1ce7737f9ecc47e334c7a6d29949641 Mon Sep 17 00:00:00 2001 From: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> Date: Wed, 21 Apr 2021 17:54:53 -0400 Subject: [PATCH] chore(NA): chore(NA): moving @kbn/std into bazel (#97771) (#97891) Co-authored-by: Tiago Costa --- .../monorepo-packages.asciidoc | 1 + package.json | 2 +- packages/BUILD.bazel | 1 + packages/kbn-cli-dev-mode/package.json | 1 - packages/kbn-config/package.json | 3 +- packages/kbn-logging/package.json | 3 - packages/kbn-optimizer/package.json | 1 - packages/kbn-server-http-tools/package.json | 3 +- packages/kbn-std/BUILD.bazel | 85 +++++++++++++++++++ packages/kbn-std/package.json | 9 +- packages/kbn-std/tsconfig.json | 7 +- packages/kbn-utility-types/BUILD.bazel | 5 +- yarn.lock | 2 +- 13 files changed, 96 insertions(+), 27 deletions(-) create mode 100644 packages/kbn-std/BUILD.bazel diff --git a/docs/developer/getting-started/monorepo-packages.asciidoc b/docs/developer/getting-started/monorepo-packages.asciidoc index 9564087dabef..610d78bacccd 100644 --- a/docs/developer/getting-started/monorepo-packages.asciidoc +++ b/docs/developer/getting-started/monorepo-packages.asciidoc @@ -65,6 +65,7 @@ yarn kbn watch-bazel - @kbn/apm-utils - @kbn/babel-preset - @kbn/config-schema +- @kbn/std - @kbn/tinymath - @kbn/utility-types diff --git a/package.json b/package.json index 76f2e4562590..e8ec4530ef41 100644 --- a/package.json +++ b/package.json @@ -133,7 +133,7 @@ "@kbn/monaco": "link:packages/kbn-monaco", "@kbn/server-http-tools": "link:packages/kbn-server-http-tools", "@kbn/server-route-repository": "link:packages/kbn-server-route-repository", - "@kbn/std": "link:packages/kbn-std", + "@kbn/std": "link:bazel-bin/packages/kbn-std/npm_module", "@kbn/tinymath": "link:bazel-bin/packages/kbn-tinymath/npm_module", "@kbn/ui-framework": "link:packages/kbn-ui-framework", "@kbn/ui-shared-deps": "link:packages/kbn-ui-shared-deps", diff --git a/packages/BUILD.bazel b/packages/BUILD.bazel index e1a85e926f04..552eed64d418 100644 --- a/packages/BUILD.bazel +++ b/packages/BUILD.bazel @@ -7,6 +7,7 @@ filegroup( "//packages/kbn-apm-utils:build", "//packages/kbn-babel-preset:build", "//packages/kbn-config-schema:build", + "//packages/kbn-std:build", "//packages/kbn-tinymath:build", "//packages/kbn-utility-types:build", ], diff --git a/packages/kbn-cli-dev-mode/package.json b/packages/kbn-cli-dev-mode/package.json index 1ea319ef3601..2ffa09d7e160 100644 --- a/packages/kbn-cli-dev-mode/package.json +++ b/packages/kbn-cli-dev-mode/package.json @@ -18,7 +18,6 @@ "@kbn/logging": "link:../kbn-logging", "@kbn/server-http-tools": "link:../kbn-server-http-tools", "@kbn/optimizer": "link:../kbn-optimizer", - "@kbn/std": "link:../kbn-std", "@kbn/dev-utils": "link:../kbn-dev-utils", "@kbn/utils": "link:../kbn-utils" } diff --git a/packages/kbn-config/package.json b/packages/kbn-config/package.json index 8093b6ac0d21..9bf491e30087 100644 --- a/packages/kbn-config/package.json +++ b/packages/kbn-config/package.json @@ -11,8 +11,7 @@ }, "dependencies": { "@elastic/safer-lodash-set": "link:../elastic-safer-lodash-set", - "@kbn/logging": "link:../kbn-logging", - "@kbn/std": "link:../kbn-std" + "@kbn/logging": "link:../kbn-logging" }, "devDependencies": { "@kbn/dev-utils": "link:../kbn-dev-utils", diff --git a/packages/kbn-logging/package.json b/packages/kbn-logging/package.json index c7db148c75a2..596eda1fe625 100644 --- a/packages/kbn-logging/package.json +++ b/packages/kbn-logging/package.json @@ -9,8 +9,5 @@ "build": "../../node_modules/.bin/tsc", "kbn:bootstrap": "yarn build", "kbn:watch": "yarn build --watch" - }, - "dependencies": { - "@kbn/std": "link:../kbn-std" } } \ No newline at end of file diff --git a/packages/kbn-optimizer/package.json b/packages/kbn-optimizer/package.json index 3c14d98755a3..423bba0fd8c7 100644 --- a/packages/kbn-optimizer/package.json +++ b/packages/kbn-optimizer/package.json @@ -13,7 +13,6 @@ "dependencies": { "@kbn/config": "link:../kbn-config", "@kbn/dev-utils": "link:../kbn-dev-utils", - "@kbn/std": "link:../kbn-std", "@kbn/ui-shared-deps": "link:../kbn-ui-shared-deps" } } \ No newline at end of file diff --git a/packages/kbn-server-http-tools/package.json b/packages/kbn-server-http-tools/package.json index 24f8f8d67dfd..5a1bb0d5b536 100644 --- a/packages/kbn-server-http-tools/package.json +++ b/packages/kbn-server-http-tools/package.json @@ -11,8 +11,7 @@ "kbn:watch": "yarn build --watch" }, "dependencies": { - "@kbn/crypto": "link:../kbn-crypto", - "@kbn/std": "link:../kbn-std" + "@kbn/crypto": "link:../kbn-crypto" }, "devDependencies": { "@kbn/utility-types": "link:../kbn-utility-types" diff --git a/packages/kbn-std/BUILD.bazel b/packages/kbn-std/BUILD.bazel new file mode 100644 index 000000000000..82520be97df1 --- /dev/null +++ b/packages/kbn-std/BUILD.bazel @@ -0,0 +1,85 @@ +load("@npm//@bazel/typescript:index.bzl", "ts_config", "ts_project") +load("@build_bazel_rules_nodejs//:index.bzl", "js_library", "pkg_npm") + +PKG_BASE_NAME = "kbn-std" +PKG_REQUIRE_NAME = "@kbn/std" + +SOURCE_FILES = glob( + [ + "src/**/*.ts", + ], + exclude = ["**/*.test.*"], +) + +SRCS = SOURCE_FILES + +filegroup( + name = "srcs", + srcs = SRCS, +) + +NPM_MODULE_EXTRA_FILES = [ + "package.json", + "README.md" +] + +SRC_DEPS = [ + "//packages/kbn-utility-types", + "@npm//lodash", + "@npm//query-string", + "@npm//rxjs", + "@npm//tslib", +] + +TYPES_DEPS = [ + "@npm//@types/jest", + "@npm//@types/lodash", + "@npm//@types/node", +] + +DEPS = SRC_DEPS + TYPES_DEPS + +ts_config( + name = "tsconfig", + src = "tsconfig.json", + deps = [ + "//:tsconfig.base.json", + ], +) + +ts_project( + name = "tsc", + args = ['--pretty'], + srcs = SRCS, + deps = DEPS, + declaration = True, + declaration_map = True, + incremental = True, + out_dir = "target", + source_map = True, + root_dir = "src", + tsconfig = ":tsconfig", +) + +js_library( + name = PKG_BASE_NAME, + srcs = NPM_MODULE_EXTRA_FILES, + deps = [":tsc"] + DEPS, + package_name = PKG_REQUIRE_NAME, + visibility = ["//visibility:public"], +) + +pkg_npm( + name = "npm_module", + deps = [ + ":%s" % PKG_BASE_NAME, + ] +) + +filegroup( + name = "build", + srcs = [ + ":npm_module", + ], + visibility = ["//visibility:public"], +) diff --git a/packages/kbn-std/package.json b/packages/kbn-std/package.json index b914356d9924..d88422ec1aa8 100644 --- a/packages/kbn-std/package.json +++ b/packages/kbn-std/package.json @@ -4,12 +4,5 @@ "types": "./target/index.d.ts", "version": "1.0.0", "license": "SSPL-1.0 OR Elastic License 2.0", - "private": true, - "scripts": { - "build": "../../node_modules/.bin/tsc", - "kbn:bootstrap": "yarn build" - }, - "devDependencies": { - "@kbn/utility-types": "link:../kbn-utility-types" - } + "private": true } \ No newline at end of file diff --git a/packages/kbn-std/tsconfig.json b/packages/kbn-std/tsconfig.json index d2ed46dcad6f..dec2d2df6408 100644 --- a/packages/kbn-std/tsconfig.json +++ b/packages/kbn-std/tsconfig.json @@ -1,12 +1,12 @@ { "extends": "../../tsconfig.base.json", "compilerOptions": { - "incremental": false, - "declarationDir": "./target", + "incremental": true, "outDir": "./target", "stripInternal": true, "declaration": true, "declarationMap": true, + "rootDir": "src", "sourceMap": true, "sourceRoot": "../../../../packages/kbn-std/src", "types": [ @@ -16,8 +16,5 @@ }, "include": [ "./src/**/*.ts" - ], - "exclude": [ - "**/__fixture__/**/*" ] } diff --git a/packages/kbn-utility-types/BUILD.bazel b/packages/kbn-utility-types/BUILD.bazel index e22ba38b24a4..1a02f94a88f4 100644 --- a/packages/kbn-utility-types/BUILD.bazel +++ b/packages/kbn-utility-types/BUILD.bazel @@ -57,15 +57,14 @@ ts_project( js_library( name = PKG_BASE_NAME, - srcs = [], + srcs = NPM_MODULE_EXTRA_FILES, deps = [":tsc"] + DEPS, - package_name = PKG_REQUIRE_NAME, + package_name = "@kbn/utility-types", visibility = ["//visibility:public"], ) pkg_npm( name = "npm_module", - srcs = NPM_MODULE_EXTRA_FILES, deps = [ ":%s" % PKG_BASE_NAME, ] diff --git a/yarn.lock b/yarn.lock index a8a44ba61aeb..2dbc34282c14 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2726,7 +2726,7 @@ version "0.0.0" uid "" -"@kbn/std@link:packages/kbn-std": +"@kbn/std@link:bazel-bin/packages/kbn-std/npm_module": version "0.0.0" uid ""