In order to make the license that applies to each file as clear as possible, and to be consistent with elasticsearch, we are adding Apache 2.0 license headers to the top of each file.
Existence of this header is enforced by eslint and tslint and missing headers were automatically added in the last commit by running:
```
node scripts/eslint --fix && node scripts/tslint --fix
```
* feat(12976): node version validation at runtime.
* refact(12976): move the code into a static utilities class.
* test(12976): added first test case using jest.
* test(12976): added test cases for node_version.
* feat(12976): create setup env node to bootstrap babel, ts-node and node version validator.
* refact(12976): migrated node version code from es6 to es5.
* feat(12976): node version validation at runtime.
* refact(12976): move the code into a static utilities class.
* test(12976): added first test case using jest.
* test(12976): added test cases for node_version.
* feat(12976): create setup env node to bootstrap babel, ts-node and node version validator.
* refact(12976): migrated node version code from es6 to es5.
* fix(12976): remove one level from ts node register cache directory link.
* chore(12976): added caret to semver dependecy in order to support minor versions.
* refact(12976): small change from named import to default import on node version validator.
* refact(12976): removed ts_node_register and add the code to babel_register.
* feat(12976): split eslint config in order to properly support files built to run before and after node version validator. refact(12976): convert script files to es5 code. refact(12976): delete inline eslint configs from node version check related files.
* refact(12976): remove ts node register file.
* refact(12976): completely port setup_node_env to es5.
* refact(12976): remove babel_register invokation from external dependencies in scripts.
* refact(12976): move node_version code directly into node_version_validator inside setup_node_env folder.
* refact(12976): only node version validator for kbn script.
* [tslint/kbn-pm] apply autofixes
* [tslint/kbn-pm] whitelist all console.log calls for now
* [tslint/kbn-pm] sort object keys alphabetically
* [tslint/kbn-pm] use comments to "fill" empty blocks
* [tslint/kbn-pm] use I-prefix for interface names
* [tslint/kbn-pm] use arrow-functions where possible
* [tslint/kbn-pm] use lowerCamelCase for variable names
* [tslint/kbn-pm] prevent shadowed variable names
* [tslint/kbn-pm] avoid variable name and type clashes
* [tslint/kbn-pm] replace console.log statements with bare-bones logger
* [tslint/kbn-system-loader] remove tslint overrides
* [tslint/kbn-system-loader] apply autofixes
* [tslint/kbn-system-loader] override max-classes-per-file for tests
* [tslint/kbn-system-loader] use I-prefix for interface names
* [tslint/kbn-system-loader] use comments to "fill" empty blocks
* [tslint/kbn-system-loader] use lowerCamelCase for variable/property names
* [tslint/kbn-system-loader] sort object keys alphabetically
* [tslint/kbn-system-loader] ensure that public methods come before private ones
* [tslint] lint typescript code
* [tslint] filter projects when running specific project
* [dev/ts] use more explicit types
* [dev/ts] add note about why using glob
* [dev/ts] rely on ts, use fewer getters
* Revert "[DOCS] Removes redundant index.asciidoc files (#19192)"
This reverts commit d11b5aae9a.
* Revert "[typescript] add typescript support for the server and browser (#19104)"
This reverts commit c6112067fc.
* Revert "Option to run kibana from build for CI (#19125)"
This reverts commit 5969860303.
* [typescript] add typescript support for the server and browser
* [ts-jest] upgrade to latest version
* [jest] support test.tsx files
* [jest/ts] modify `ts-jest.tsConfigFile` config based on filePath
* [types] use correct major version of minimatch types
* [jest] add ts support to x-pack jest config
* [ts/projects] fix tsconfig.json not found error message
* [optimizer/ts] use lowercase jsx option
* [tsconfig] remove ui/* alias
* [plguin-helpers] remove mention of `buildSourcePatterns`
* [plugin-helpers] expect typescript to be a devDep
* [dev/build] place transpile tasks next to each other
* [ts/x-pack] add common and server directories to ts project
* [dev/ts/project] use a limited set of globs to find tsconfig files
* [eslint] unify resolver configs
Our eslint resolver settings currently rely on the fact that we define
our resolver with a string globally, and an object in the overrides.
This causes the override value to completely override/replace the global
setting, which is desired, but when the global setting is converted to
an object they are merged, causing both resolvers to run.
This is a problem because some dependencies in the UI side of things
will resolve with the node resolver, but will resolve incorrectly
because they are intended to use some webpack specific override.
While trying to add TypeScript I needed to pass argument to the node
resolver which uncovered this issue. The change here moves us away from
using the node resolver directly and instead uses the kibana resolver
with `forceNode: true` set when linting server code and `forceNode:
false` when resolving imports that will be handled by webpack.
* [import-resolver] use object spread operator
* [mocha] run tests with mocha script, remove grunt-simple-mocha
* [ci] force colored output
* [ci] disable color when reading the yarn bin
* [dev/build/exec] support tooling log having its own chalk
* [dev/mocha] avoid changing the cwd of the process
* [dev/mocha] only match files, speed up negative matches
* [cli/serve/test] strip ansi control characters from logs
* [ci] disable color in all `yarn bin` invocations
* [dev/mocha] cleanup old runInBand check
* [dev/mocha] enable gloabl leak checks
Restructure testing with kbn-test package
- Run with multiple configs, move cli options to config
- Package-ify kbn-test
- Eventually we'll have functional_test_runner live in a package
of its own, and then this kbn-test will use that as a dependency,
probably still as a devDependency.
- Implement functional_tests_server
- Collapse single and multiple config apis into one command
Use kbn-es
Replace es_test_cluster + es_test_config with kbn/test utils
Implement new createEsTestCluster
Improve scripts, jsdocs, cli top-level tools
Lift error handling to the top level
ES snapshots are located again within the base elasticsearch directory and NOT within an additionally nested elasticsearch-oss directory
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* [x-pack/ftr] call fatalErrorHandler when functional tests fail
* [kbn/dev-tools/withProcRunner] require a log as the first arg
* [kbn/dev-tools/procRunner] use correct promise, convert to getter
* [x-pack/ftr] avoid race condition that prevents success message logging
When starting the kibana server it is possible for log messages to come
after the server is started, so we added a pause that waits for 5
seconds of logging silence before logging the success message. The
observable used fails to complete though if a log message is never
written AFTER the Kibana server starts. To counter this the observable
is started with `null` so it will always start at least one 5 second
timer and always complete even if there is no log data after Kibana
server starts.
* fix typo
* [uiExports] migrate uiApp "uses" to explicit imports in apps
* [uiApp] update tests for getModules() method
* [optimize/uiExports] improve naming and comments
* [uiExports] sort imports so they load in the same order as before
* [testHarness] load hacks when testing in the browser
* [x-pack/uiExports] use new uiExports modules
* [testHarness] describe why we import uiExports/hacks
* [optimize] remove needless [].concat()
* [optimize/createUiExportsModule] string.includes > string.indexOf
* [uiExports/createUiExportsModule] remove needless capture of module exports
* Introduce @kbn/plugin-system
* Throw if plugin exposes a promise from 'start'
* TS updates
* rename
* Better error if missing plugin
* Api to add multiple specs at the same time
* isPromise prettier-ified
* Rename 'plugin' to 'system'
* Metadata + some cleanups
* Make it possible to type system metadata
* Throw if stop is async
* Add tests for System class
* [kbn-es/cluster] fix promise handling to properly route success/failure
* [kbn-es/cli] catch errors that bubble to the CLI and log with a bit of style
* [kbn-es] fix promise handling when building from source
* [kbn-es] check for inverse of .stop() condition
* [kbn-es/cluster] resolve promise is cluster stops cleanly
* [kbn-es/cluster/start] reject if ES exits before starting
* [kbn-dev-utils/procRunner] try using execa to avoid never-exitting procs
* [kbn-dev-utils/procRunner] don't listen for close event, rely on stdio streams ending