* adding large_string_test (#17312)
* adding large_string_test
* removed a failing test, modified the existing one
* new line at the end of mappings.json
* removed the data.json file and also removed the navigateTo() and clickKibanaIndices() as createIndexPattern() takes care of it
* more modifications
* Test for Large number of Fields in Kibana. (#16237)
* test huge data
* new file for testing large number of fields
* testing large fields
* large_fields_test
* add the unload of es_archiver
* incorporated the changes in kibana.yml
* Revert "incorporated the changes in kibana.yml"
This reverts commit 8682121678.
* cleanup
* code simplification
* removed commented code
* Add test-subj-selector module to packages dir.
* Rename to @kbn/test-subj-selector.
* Simplify rejectRejFiles Grunt task and ignore nested node_modules.
* Update jenkins_unit script to use yarn kbn CLI.
* [build] don't copy unwanted files
* [build] condense mkdir/touch tasks
* [i18n] verifyTranslations task has nothing to do with the build, just run in tests
* Build packages before running ESLint on CI
* Add production task to kbn-build
* Ensure packages are bootstrapped before running the build
* Run ESLint on kbn-build
Previously, we were not aggressive in combining common code which resulted in duplicates included in the bundles.
As an example `node_modules/elasticsearch-browser/elasticsearch.angular.js` is present in the following chunks:
* kibana.bundle.js
* dashboardViewer.bundle.js
* apm.bundle.js
* monitoring.bundle.js
* ml.bundle.js
* timelion.bundle.js
* graph.bundle.js
Vendored code (anything inside node_modules) is placed in vendors.bundle.js while everything else with more than two references is placed in commons.bundle.js.
This has a couple positive side-effects (numbers are with x-pack & canvas):
* Decreased build time. Seeing builds go from 475.76 seconds to 274.72.
* Decreased memory overhead. Uses roughly 1/3 the memory overhead.
* Decreased bundle size. A 68% reduction in overall bundle size. Going from 66.16 MB to 21.13 MB.
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* Switch to Yarn (#15485)
* switch to yarn
* cleanup misc references to npm
* [yarn] loosen dependency ranges so yarn will merge more deps
* fix linting error now that moment uses ESM
* [licenses] font-awesome changed the format of its license id
* Use local yarn
* Misc fixes
* eslintignore built yarn file
* Remove mkdir which doesn't do what it should do
* Check build without upgrading lots of versions
* Fix license check
* too many moments
* Better description
* Review fixes
* Lock to angular@1.6.5
* More specific version locks
* Revert "More specific version locks"
This reverts commit 11ef81102e.
* Revert "Lock to angular@1.6.5"
This reverts commit 3ade68c14c.
* rm yarn.lock; yarn
* Forcing a specific version of React, Angular, Moment
* Using vendored version of yarn in ci
* Use --frozen-lockfile
* fixes
* Update lockfile
Previously, we were not aggressive in combining common code which resulted in duplicates included in the bundles.
As an example `node_modules/elasticsearch-browser/elasticsearch.angular.js` is present in the following chunks:
* kibana.bundle.js
* dashboardViewer.bundle.js
* apm.bundle.js
* monitoring.bundle.js
* ml.bundle.js
* timelion.bundle.js
* graph.bundle.js
Vendor code (anything inside Kibana's node_modules) is placed in vendors.bundle.js while everything else with more than two references is placed in commons.bundle.js.
This has a couple positive side-effects (numbers are with x-pack & canvas):
* Decreased build time. Seeing builds go from 475.76 seconds to 274.72.
* Decreased memory overhead. Uses roughly 1/3 the memory overhead.
* Decreased bundle size. A 68% reduction in overall bundle size. Going from 66.16 MB to 21.13 MB.
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* Add EUI v0.0.7 as a dependency.
- Add support for using dark theme EUI CSS in Dashboard.
- Set light theme as the default.
- Add comments to chrome.jade about role of theme node.
- Add (WTFPL OR MIT) to acceptable licenses.
* Remove old reset CSS.
- Remove naked element selectors from base.less.
- Remove Bootstrap resets.
- Remove UI Framework reset.
- Remove unused reset styles from UI Framework.
* Fix CSS regressions caused by removal of CSS reset.
- Replace usage of sr-only with euiScreenReaderOnly.
- Apply euiButtonEmpty classes to the 'Add a filter' button.
- Fix Notification padding and layout.
- Apply euiTabs styles to Timepicker mode tabs.
- Fix layout of Available Fields heading in Discover.
- Add padding to Popular Fields container in Discover.
- Push down Selected Fields heading in Discover sidebar.
- Fix appearance of links in Discover sidebar.
- Fix height of pills in Filter Bar.
* Fix timepicker tests.
- Remove kbn-accessible-click from timepicker buttons.
* Fix functional tests.
- Use byCssSelector inside of testSubjects.find.
- Delete flaky view_edit.js test: 'when time changed is stored with dashboard'.
- Delete flaky view_edit.js test: 'and preserves edits on cancel > when time changed is stored with dashboard'.
- Delete flake Gauge Chart tests. EUI changed the font size, and the text within the gauges doesn't render when the window is too small.
* [optimizer] extract plugin discovery (#14745)
* [plugins] extract plugin discover from the kibana server
* integrate plugin discovery module with server
* [pluginDiscovery] fully extend config before checking enabled status
* [pluginDiscovery] limit arbitrary defaults in PluginSpec
* [ui/navLink] fix tests
* [ui/injectedVars] fix tests
* [ui/app] fix tests
* [server/plugins] convert init to callPluginHook tests
* [build/verifyTranslations] update verify logic
* [pluginDiscovery] remove rx utils
* fix i18n transaltion key name
* [pluginDiscovery] do kibana version checks as a part of discovery
* [pluginDiscovery/createPacksInDirectory$] clarify error handling
* [eslint] fix lint errors
* [uiApp/modules] ensure load order matches master
* [uiBundle] use known uiExport type for providers
* [uiExports] use the `home` export type
* [uiExports] validate that all uiExport types are known
* [timelion] remove archaic/broken bwc check
* revert some stragler changes
* [pluginSpecs] reformat comments
* [uiBundle] rebel and use more fcb 😬
* correct comment
* [server/waitForPluginsInit] describe queues var
* [server/plugins] prevent multiple calls to next() by using single then()
* [uiApp] remove archaic deprecation warning
* [uiApp] tighten up tests
* [pluginDiscovery/errors] remove $ from symbol var
* [pluginDiscovery/reduceExportSpecs] update docs
* [pluginDiscovery/findPluginSpecs] rightVersion -> isRightVersion
* [pluginDiscovery/findPluginSpecs] fix typos
* [uiApps/getById] use Map() rather than memoize
* save
* [savedObjects/mappings] use uiExports.savedObjectMappings
* [server/mapping/indexMapping] update tests, addRootProperties method removed
* [uiExports] "embeddableHandlers" -> "embeddableFactories"
* [pluginDiscovery] fix pluralization of invalidVersionSpec$
* [pluginDiscover] add README
* [pluginDiscovery/reduceExportSpecs] don't ignore fasly spec values, just undefined
* [ui/exportTypes] use better reducer names
* [ui/uiExports] add README
* fix links
* [pluginDiscovery/readme] expand examples
* [pluginDiscovery/readme] clean up reduceExportSpecs() doc
* [ui/uiExports/readme] cleanup example
* [pluginDiscovery] remove needless use of lodash
* [pluginDiscovery/waitForComplete] use better name
* [pluginDiscovery/findPluginSpecs] use fixtures rather than core_plugins
* [pluginDiscovery/stubSchema] use deafult: false
* [plguinDiscovery/pluginConfig] add tests
* typo
* [uiExports/readme] fix link
* [pluginDiscovery/packAtPath] fail with InvalidPackError if path is not a string
* [pluginDiscovery/packAtPath] rely on error.code to detect missing package.json file
* [pluginDiscovery/packAtPath] only attempt to get pack when observable is subscribed
* [pluginDiscovery/packAtPath] add tests
* [pluginDiscovery/pluginPack] move absolute path checks into fs lib
* [pluginDiscovery/packsInDirectory] fix error type check
* [pluginDiscovery/pluginPack/tests] share some utils
* [pluginDiscovery/packsInDirectory] add tests
* [pluginDiscovery/pluginPack] only cast undefined to array
* [pluginDiscovery/pluginPack] add tests
* [pluginDiscovery/pluginSpec/isVersionCompatible] add tests
* [pluginDiscovery/InvalidPluginError] be less redundant
* [pluginDiscovery/pluginSpec] verify config service is passed to isEnabled()
* [pluginDiscovery/pluginSpec] add tests
* fix "existent" spelling
* [server/rootRedirect] fix root_redirect view location
* [mocha] use custom reporter for legible results in jenkins
* [jest] use custom result processor for legible results in jenkins
* [karma] enable junit output on CI
* [mocha/junitReporter] accept rootDirectory as configuration
* [jest/reporter] use reporters option added in jest 20
* [toolingLog] remove black/white specific colors
* [dev/mocha/junit] no reason for junit to be a "reporter"
* typos
* [dev/mocha/junit] use else if
* [karma/junit] use string#replace for explicitness
* [junit] use test file path as "classname"
* [ftr/mocha] no longer a "console" specific reporter
* [es][savedObjects/index] put template on each savedObject write
The elasticsearch plugin currently checks for the Kibana index on each iteration of the healthCheck, and creates it if it does not exist. This removes that step from the healthCheck and instead, before each savedObject is written to elasticsearch, ensures that Elasticsearch has the necessary index template should the write result in index creation.
The healthCheck still has the `patchKibanaIndex()` logic, which checks the type in the Kibana index and adds any missing types. This step now does nothing when the Kibana index does not exist, and does what it has always done when it does.
* [ftr] remove unused kibanaIndex service
(cherry picked from commit b1ef897dafeb6d43fe279776e44a9d793a389dc3)
* [savedObjects/integration] create now creates kibana index
* [es/healthCheck] remove use of format()
* [es/healthCheck/tests] use sinon assertions
* [es/patchKibanaIndex] test for kibana index missing behavior
* [savedObjects/errors] add tests for EsAutoCreateIndexError
* [savedObjects/config] deprecate and remove savedObjects.indexCheckTimeout config
* use dangling commas consistently
* [ui/error_auto_create_index] fix class names
* [ui/savedObjectsClient] no need to specify basePath
* [eslint] fix linting issue
* Adds task to export a CSV of all dependencies
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* Fixes tests and changes argument name to `out`
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* Uses csv as argument for output file
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* Removes unused columns
Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co>
* [license csv] Fetch all licenses by default, add release flag to only generate release dependencies
* [precommitHook] move to dev script
* [eslint] fix lint error
* [dev/eslint] do simply boolean checks first
* [dev] use shared REPO_ROOT constant
* [dev/File] precompute relative/ext of path
* [dev/eslint] fix relative import
* [dev/eslint] fix typos
* [grunt] remove unused run:eslintStaged config
* [dev/run] only create log if we are going to use it
* [dev/run/isFailError] ensure return value is Boolean
* [dev/precommitHook] use less intermediate vars
* [eslint] upgrade to 4.10.0
* [eslint-config-kibana] limit jest config to jest test files
* [ui_framework] remove trailing comma from rest-spreads
* [dashboard/tests] tag jest helpers with .test.js suffix
* explicitly import expect.js where used
* [eslint] apply auto-fixes
* [eslint] manually add/wrap some parens for compliance
* [npm] point to local packages for testing/review
* [jest] remove .test extension from jest helpers
* [ui_framework] fix trailing comma removal from 3bc661a1c8
* [packages] upgrade eslint packages
* [timelion] remove last remaining amd modules
* [eslint-config-kibana] remove env.amd
* [webpack] use absolute loader names
* [webpack] remove absolute node_modules/ imports
* [webpack] upgrade to webpack 3
* [uiFramework] make webpack build compatible with v3
* [eslint-import-resolver] use https://github.com/elastic/eslint-import-resolver-kibana/pull/21
* [baseOptimizer] don't break when pkg has no dependencies
* [optimize] remove unnecessary json-loader
* [optimize] remove local references to webpack vars
* [eslint] upgrade to eslint-import-resolver-kibana 0.9.0
* [baseOptimizer] comment tweaks
* [baseOptimizer] remove loader pinning
In webpack 1 the loaders defined here were resolved relative to the file they were going to load, which meant that plugins in other projects could accidentally overwrite the loaders Kibana was trying to use, which is why the aliases were used to enforce proper resolution.
In webpack 2 loaders are now resolved relative to the webpackConfig.context, which is set to the root of the Kibana repo. See https://webpack.js.org/configuration/module/#useentry
* [webpack] rely on kibana webpack shims before checking node_modules
(cherry picked from commit f60639fccb)
* Math Aggregation to support Sibling Aggs
* Fixing tests
* Deal with ResultSets
* including all var under params; updating docs
* Fixing bugs asscociated with blank Math aggs
* Adding aria props to elements
* Fixing aria labels; changing calculation label to bucket sript
* changing input to textarea
* Add compatability with percentiles; fix vars to be compatible with percentiles
* Adding comments
* Fixing typo in note
The flot-charts project has been abandoned since 2014, but we use it
pretty extensively in Kibana. By forking it, we can fix bugs and improve
on the library in ways that we need to for Kibana.