-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Data table] Reactify & EUIficate the visualization #70801
Merged
Merged
Changes from 57 commits
Commits
Show all changes
103 commits
Select commit
Hold shift + click to select a range
ed29fb2
Use data grid for table vis
sulemanof 82712f0
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
sulemanof 9e17f4d
Create basic table template
sulemanof 3a693ef
Add table_vis_split component
sulemanof 34a1375
Apply cell filtering
sulemanof de6dd8f
Add aria-label attributes
sulemanof 3a6e113
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
sulemanof d2e8436
Use field formatters for values
sulemanof 66654f8
Add no results component
sulemanof 743fded
Remove legacy dependencies
sulemanof ca802cd
Add usePagination
sulemanof 02013f1
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
sulemanof af74780
Create usePagination util
sulemanof f6cdb86
Use percentage column and total row
sulemanof c68b60e
Use csv export button
sulemanof dea9e48
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
sulemanof d485086
Update labels
sulemanof 6c489dc
Merge branch 'master' into EUIfication/data_table
sulemanof 409e34b
Fix merge conflicts
sulemanof 14c27a4
Use split table
sulemanof 5853a10
Fix functional tests
sulemanof 7a561da
Fix dashboard tests
sulemanof f8accdf
Update data table functional tests
sulemanof 9902674
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
sulemanof 62ab3c4
Fix missed test
sulemanof 0a90deb
Introduce showToolbar option
sulemanof a057da9
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
sulemanof 59987e5
Merge branch 'master' into EUIfication/data_table
144a7cd
Remove useless package
b90d442
Fix merge conflicts
d4162fc
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
04eec45
Return back kibanaUtils required bundle
0bde52a
Merge branch 'master' into EUIfication/data_table
fe2501f
Revert "Remove useless package"
08944ca
Use feature flag for legacy vis
f4790c1
Add footer row
5c5acd7
Remove lock files
bc75fef
Revert "Remove lock files"
cd8d67f
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
9a54372
Minor fixes
7816196
Use common no result message
73fd7a9
Fix broken tests
2598656
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
ea0c16c
Use ui state sorting
395144f
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
448e23f
Fix error
89f2e0d
Merge branch 'master' into EUIfication/data_table
8ae598f
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
0bc512f
Fix merge conflicts
6f0aa33
Add legacy functional tests
7836ab1
Pull pagination footer up to keep with table
8d548da
Merge branch 'master' into EUIfication/data_table
4545764
Comments fixes
6372a59
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
e96b097
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
445b9ca
Use cell actions for filtering
1083217
Fix translations
c846aff
Merge branch 'master' into EUIfication/data_table
61730b3
Fix comments
47b0b0c
Reduce legacy tests amount
1029099
Update sorting
953fdaa
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
d8a50c9
Update split column layout
b51ea9c
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
df24a7b
Add telemetry for legacy vis
27c300f
Merge branch 'master' into EUIfication/data_table
d21236f
Apply latest changes for split table
74a71ea
Fix eslint errors
344fdea
Use aria labels with values
03888a0
Use aria label for export btn
8c95a55
Fix functional test
ae02c6d
Update translations
7ad54f1
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
1ace317
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
7ea584f
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
8bb70b5
Cleanup
e661af7
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
a13d027
Merge branch 'master' into EUIfication/data_table
kibanamachine 528865f
Truncate cells content
ada2cae
Enhance types in table_vis_response_handler.ts
3c7950e
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
ad09412
Merge branch 'EUIfication/data_table' of github.com:sulemanof/kibana …
bb2a885
Persist columns width on change
94706bc
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
31ee02d
Fix sorting history
aac4c2d
Add a migration script for toolbar
ef00cc1
Export sorted table
17f381d
Use reportUiCounter instead of reportUiStats
b4effc4
Fix integration tests
e502e9d
Fix typos
558d2c7
Adjust FieldFormat type
e993a5e
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
6ace73a
Hide the density selector
0320d28
Update docs
f1cd098
Fix pagination
6d620d8
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
9048a45
Restrict hiding the toolbar
5285111
Fix column index on filter
edd4809
Merge remote-tracking branch 'upstream/master' into EUIfication/data_…
6cd3d3d
Merge branch 'master' into EUIfication/data_table
kibanamachine d9e7c96
Merge branch 'master' into EUIfication/data_table
kibanamachine d16b81a
Add closePopover action
26b9cae
Merge branch 'master' into EUIfication/data_table
kibanamachine File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,8 @@ | ||
Contains the data table visualization, that allows presenting data in a simple table format. | ||
Contains the data table visualization, that allows presenting data in a simple table format. | ||
|
||
By default a new version of visualization will be used. To use the previous version of visualization the config must have the `vis_type_table.legacyVisEnabled: true` setting | ||
configured in `kibana.dev.yml` or `kibana.yml`, as shown in the example below: | ||
|
||
```yaml | ||
vis_type_table.legacyVisEnabled: true | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,6 +11,7 @@ | |
], | ||
"requiredBundles": [ | ||
"kibanaUtils", | ||
"kibanaReact", | ||
"share", | ||
"charts", | ||
"visDefaultEditor" | ||
|
2 changes: 1 addition & 1 deletion
2
src/plugins/vis_type_table/public/__snapshots__/to_ast.test.ts.snap
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
/* | ||
* Licensed to Elasticsearch B.V. under one or more contributor | ||
* license agreements. See the NOTICE file distributed with | ||
* this work for additional information regarding copyright | ||
* ownership. Elasticsearch B.V. licenses this file to you under | ||
* the Apache License, Version 2.0 (the "License"); you may | ||
* not use this file except in compliance with the License. | ||
* You may obtain a copy of the License at | ||
* | ||
* http://www.apache.org/licenses/LICENSE-2.0 | ||
* | ||
* Unless required by applicable law or agreed to in writing, | ||
* software distributed under the License is distributed on an | ||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||
* KIND, either express or implied. See the License for the | ||
* specific language governing permissions and limitations | ||
* under the License. | ||
*/ | ||
|
||
export { TableOptions } from './table_vis_options_lazy'; |
117 changes: 117 additions & 0 deletions
117
src/plugins/vis_type_table/public/components/table_vis_basic.tsx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
/* | ||
* Licensed to Elasticsearch B.V. under one or more contributor | ||
* license agreements. See the NOTICE file distributed with | ||
* this work for additional information regarding copyright | ||
* ownership. Elasticsearch B.V. licenses this file to you under | ||
* the Apache License, Version 2.0 (the "License"); you may | ||
* not use this file except in compliance with the License. | ||
* You may obtain a copy of the License at | ||
* | ||
* http://www.apache.org/licenses/LICENSE-2.0 | ||
* | ||
* Unless required by applicable law or agreed to in writing, | ||
* software distributed under the License is distributed on an | ||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||
* KIND, either express or implied. See the License for the | ||
* specific language governing permissions and limitations | ||
* under the License. | ||
*/ | ||
|
||
import React, { memo, useCallback, useMemo } from 'react'; | ||
import { EuiDataGrid, EuiDataGridSorting } from '@elastic/eui'; | ||
|
||
import { IInterpreterRenderHandlers } from 'src/plugins/expressions'; | ||
import { createTableVisCell } from './table_vis_cell'; | ||
import { Table } from '../table_vis_response_handler'; | ||
import { TableVisConfig, TableVisUiState } from '../types'; | ||
import { useFormattedColumnsAndRows, usePagination } from '../utils'; | ||
import { TableVisControls } from './table_vis_controls'; | ||
import { createGridColumns } from './table_vis_columns'; | ||
|
||
interface TableVisBasicProps { | ||
fireEvent: IInterpreterRenderHandlers['event']; | ||
setSort: (s?: TableVisUiState['sort']) => void; | ||
sort: TableVisUiState['sort']; | ||
table: Table; | ||
visConfig: TableVisConfig; | ||
} | ||
|
||
export const TableVisBasic = memo( | ||
({ fireEvent, setSort, sort, table, visConfig }: TableVisBasicProps) => { | ||
const { columns, rows, splitRow } = useFormattedColumnsAndRows(table, visConfig); | ||
const renderCellValue = useMemo(() => createTableVisCell(columns, rows), [columns, rows]); | ||
const gridColumns = useMemo(() => createGridColumns(table, columns, rows, fireEvent), [ | ||
table, | ||
columns, | ||
rows, | ||
fireEvent, | ||
]); | ||
|
||
// Pagination | ||
const pagination = usePagination(visConfig); | ||
// Sorting config | ||
const sortingColumns = useMemo( | ||
() => | ||
sort.columnIndex && sort.direction | ||
? [{ id: columns[sort.columnIndex]?.id, direction: sort.direction }] | ||
: [], | ||
[columns, sort] | ||
); | ||
const onSort = useCallback( | ||
(sortingCols: EuiDataGridSorting['columns'] | []) => { | ||
// data table vis sorting now only handles one column sorting | ||
// if data grid provides more columns to sort, pick only the next column to sort | ||
const newSortValue = sortingCols.length <= 1 ? sortingCols[0] : sortingCols[1]; | ||
setSort( | ||
newSortValue && { | ||
columnIndex: columns.findIndex((c) => c.id === newSortValue.id), | ||
direction: newSortValue.direction, | ||
} | ||
); | ||
}, | ||
[columns, setSort] | ||
); | ||
|
||
return ( | ||
<EuiDataGrid | ||
aria-label="" | ||
sulemanof marked this conversation as resolved.
Show resolved
Hide resolved
|
||
columns={gridColumns} | ||
gridStyle={{ | ||
border: 'horizontal', | ||
header: 'underline', | ||
}} | ||
rowCount={rows.length} | ||
columnVisibility={{ | ||
visibleColumns: columns.map(({ id }) => id), | ||
setVisibleColumns: () => {}, | ||
}} | ||
toolbarVisibility={ | ||
visConfig.showToolbar && { | ||
showColumnSelector: false, | ||
showFullScreenSelector: false, | ||
showSortSelector: false, | ||
additionalControls: ( | ||
<TableVisControls | ||
cols={columns} | ||
rows={rows} | ||
table={table} | ||
filename={visConfig.title} | ||
splitRow={splitRow} | ||
/> | ||
), | ||
} | ||
} | ||
renderCellValue={renderCellValue} | ||
renderFooterCellValue={ | ||
visConfig.showTotal | ||
? // @ts-expect-error | ||
({ colIndex }) => columns[colIndex].formattedTotal || null | ||
: undefined | ||
} | ||
pagination={pagination} | ||
inMemory={{ level: 'sorting' }} | ||
sorting={{ columns: sortingColumns, onSort }} | ||
/> | ||
); | ||
} | ||
); |
49 changes: 49 additions & 0 deletions
49
src/plugins/vis_type_table/public/components/table_vis_cell.tsx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
/* | ||
* Licensed to Elasticsearch B.V. under one or more contributor | ||
* license agreements. See the NOTICE file distributed with | ||
* this work for additional information regarding copyright | ||
* ownership. Elasticsearch B.V. licenses this file to you under | ||
* the Apache License, Version 2.0 (the "License"); you may | ||
* not use this file except in compliance with the License. | ||
* You may obtain a copy of the License at | ||
* | ||
* http://www.apache.org/licenses/LICENSE-2.0 | ||
* | ||
* Unless required by applicable law or agreed to in writing, | ||
* software distributed under the License is distributed on an | ||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||
* KIND, either express or implied. See the License for the | ||
* specific language governing permissions and limitations | ||
* under the License. | ||
*/ | ||
|
||
import React from 'react'; | ||
import { EuiDataGridCellValueElementProps } from '@elastic/eui'; | ||
|
||
import { Table } from '../table_vis_response_handler'; | ||
import { FormattedColumn } from '../types'; | ||
|
||
export const createTableVisCell = (formattedColumns: FormattedColumn[], rows: Table['rows']) => ({ | ||
// @ts-expect-error | ||
colIndex, | ||
sulemanof marked this conversation as resolved.
Show resolved
Hide resolved
|
||
rowIndex, | ||
columnId, | ||
}: EuiDataGridCellValueElementProps) => { | ||
const rowValue = rows[rowIndex][columnId]; | ||
const column = formattedColumns[colIndex]; | ||
const content = column?.formatter?.convert(rowValue, 'html') || (rowValue as string) || ''; | ||
|
||
const cellContent = ( | ||
<div | ||
/* | ||
* Justification for dangerouslySetInnerHTML: | ||
* The Data table visualization can "enrich" cell contents by applying a field formatter, | ||
* which we want to do if possible. | ||
*/ | ||
dangerouslySetInnerHTML={{ __html: content }} // eslint-disable-line react/no-danger | ||
data-test-subj="tbvChartCellContent" | ||
/> | ||
); | ||
|
||
return cellContent; | ||
}; |
140 changes: 140 additions & 0 deletions
140
src/plugins/vis_type_table/public/components/table_vis_columns.tsx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,140 @@ | ||
/* | ||
* Licensed to Elasticsearch B.V. under one or more contributor | ||
* license agreements. See the NOTICE file distributed with | ||
* this work for additional information regarding copyright | ||
* ownership. Elasticsearch B.V. licenses this file to you under | ||
* the Apache License, Version 2.0 (the "License"); you may | ||
* not use this file except in compliance with the License. | ||
* You may obtain a copy of the License at | ||
* | ||
* http://www.apache.org/licenses/LICENSE-2.0 | ||
* | ||
* Unless required by applicable law or agreed to in writing, | ||
* software distributed under the License is distributed on an | ||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||
* KIND, either express or implied. See the License for the | ||
* specific language governing permissions and limitations | ||
* under the License. | ||
*/ | ||
|
||
import React from 'react'; | ||
import { EuiDataGridColumnCellActionProps } from '@elastic/eui'; | ||
import { i18n } from '@kbn/i18n'; | ||
|
||
import { IInterpreterRenderHandlers } from 'src/plugins/expressions'; | ||
import { Table } from '../table_vis_response_handler'; | ||
import { FormattedColumn } from '../types'; | ||
|
||
interface FilterCellData { | ||
/** | ||
* Row index | ||
*/ | ||
row: number; | ||
/** | ||
* Column index | ||
*/ | ||
column: number; | ||
value: unknown; | ||
} | ||
|
||
export const createGridColumns = ( | ||
table: Table, | ||
columns: FormattedColumn[], | ||
rows: Table['rows'], | ||
fireEvent: IInterpreterRenderHandlers['event'] | ||
) => { | ||
const onFilterClick = (data: FilterCellData, negate: boolean) => { | ||
fireEvent({ | ||
name: 'filterBucket', | ||
data: { | ||
data: [ | ||
{ | ||
table, | ||
...data, | ||
}, | ||
], | ||
negate, | ||
}, | ||
}); | ||
}; | ||
|
||
return columns.map((col, colIndex) => { | ||
const cellActions = col.filterable | ||
? [ | ||
({ rowIndex, columnId, Component }: EuiDataGridColumnCellActionProps) => { | ||
const rowValue = rows[rowIndex][columnId]; | ||
const contentsIsDefined = rowValue ?? false; | ||
|
||
const filterForText = i18n.translate( | ||
'visTypeTable.tableCellFilter.filterForValueText', | ||
{ | ||
defaultMessage: 'Filter for value', | ||
} | ||
); | ||
|
||
return ( | ||
contentsIsDefined && ( | ||
<Component | ||
aria-label={filterForText} | ||
myasonik marked this conversation as resolved.
Show resolved
Hide resolved
|
||
data-test-subj="tbvChartCell__filterForCellValue" | ||
onClick={() => | ||
onFilterClick({ row: rowIndex, column: colIndex, value: rowValue }, false) | ||
} | ||
iconType="magnifyWithPlus" | ||
sulemanof marked this conversation as resolved.
Show resolved
Hide resolved
|
||
> | ||
{filterForText} | ||
</Component> | ||
) | ||
); | ||
}, | ||
({ rowIndex, columnId, Component }: EuiDataGridColumnCellActionProps) => { | ||
const rowValue = rows[rowIndex][columnId]; | ||
const contentsIsDefined = rowValue ?? false; | ||
|
||
const filterOutText = i18n.translate( | ||
'visTypeTable.tableCellFilter.filterOutValueText', | ||
{ | ||
defaultMessage: 'Filter out value', | ||
} | ||
); | ||
|
||
return ( | ||
contentsIsDefined && ( | ||
<Component | ||
aria-label={filterOutText} | ||
sulemanof marked this conversation as resolved.
Show resolved
Hide resolved
|
||
onClick={() => | ||
onFilterClick({ row: rowIndex, column: colIndex, value: rowValue }, true) | ||
} | ||
iconType="magnifyWithMinus" | ||
sulemanof marked this conversation as resolved.
Show resolved
Hide resolved
|
||
> | ||
{filterOutText} | ||
</Component> | ||
) | ||
); | ||
}, | ||
] | ||
: undefined; | ||
|
||
return { | ||
id: col.id, | ||
display: col.title, | ||
displayAsText: col.title, | ||
actions: { | ||
showHide: false, | ||
showMoveLeft: false, | ||
showMoveRight: false, | ||
showSortAsc: { | ||
label: i18n.translate('visTypeTable.sort.ascLabel', { | ||
defaultMessage: 'Sort asc', | ||
}), | ||
}, | ||
showSortDesc: { | ||
label: i18n.translate('visTypeTable.sort.descLabel', { | ||
defaultMessage: 'Sort desc', | ||
}), | ||
}, | ||
}, | ||
cellActions, | ||
}; | ||
}); | ||
}; |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not in favor of keeping the legacy data table available behind a flag. I would expect when we reactify and EUIify the data table it simply replaces the old angular one. If you make the old one available behind a flag, then we also have to have telemetry on it to know if users are still using it. If they're still using it, we'd need to know why.
Flags like this which require restarting Kibana also are painful for CI jobs. If we did keep the legacy table behind this flag, I would suggest we stop testing it.
If we're not confident to replace the old data table completely we should wait to merge it until we are confident.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should def add telemetry to this flag to make sure we understand if people disable this. The reasoning behind the flag was, that data table is the 2nd most used visualization across Kibana, and we're fundamentally exchanging the implementation here. I would like to merge it only once we're certain it's 100% working, but in the past we've seen with a lot of those fundamental refactorings, things still broke and even if it's just some edge-cases only "a handful" of users are having. By that measurement I am not sure I would ever feel "confident" enough to replace it without any fallback flag, or rather feel like we're again using a minor version and our user-case to "test" an implementation for us in all cases.
We've also seen that significant refactorings ever so often required some users to switch back to the old implementation (most recently the conversion from _msearch -> _search might have been a good example were we saw quit some users requiring this flag to fall back).
Ideally this flag only lives for a really short time - I would "timebox" it to max. 2 minor versions (ideally only 1). If you're fine with us not having functional tests for the old implementation in place in favor of not requiring another job runner, we could do that. It just felt safer from my perspective to have at least some very basic tests running.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Running all listed legacy tests will add extra ~20-25 min, that sounds too much for legacy functionality, we will have to re-group several CI groups to optimize overall execution time.
But I think having a few tests with basic checks (rendering data) is a good compromise (5-7 extra minutes to the same CI group 9), we don't want to worry if backward solution works. @sulemanof How about cut some tests from
legacy/data_table/_data_table.ts
?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@dmlemeshko @LeeDr
I left only few legacy tests to check basic functionality (basic table, few aggs, filtering, table splitting)
CI time is increased with around 5 extra mins -> https://kibana-ci.elastic.co/job/elastic+kibana+pipeline-pull-request/86727/execution/node/531/log/?consoleFull
I believe this is quite enough to check the legacy functionality and is not so painful for CI. What do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Personally, I think it is a good way to go.