Skip to content
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

Upgrade EUI to v95.12.0 #193805

Merged
merged 12 commits into from
Sep 30, 2024
Merged

Upgrade EUI to v95.12.0 #193805

merged 12 commits into from
Sep 30, 2024

Conversation

cee-chen
Copy link
Member

@cee-chen cee-chen commented Sep 24, 2024

v95.11.0v95.12.0-backport.0

Note

A few fun highlights from this release:

  • Content within EuiDataGrid, EuiBasicTable, and EuiInMemoryTable, when manually selected/highlighted by users, should now more cleanly copy and paste into various spreadsheet apps
  • EuiProvider will now detect the user's system-level dark or light mode and default to that if no colorMode prop is passed manually

Questions? Please see our Kibana upgrade FAQ.


v95.12.0

  • Enhanced EuiDataGrid and EuiBasic/InMemoryTable to clean content newlines/tabs when users copy and paste from their tabular data (#8019)
  • Updated EuiResizableButton with a new accountForScrollbars prop (#8021)
  • Updated EuiProvider to inherit from the user's OS/system light/dark mode setting if a colorMode prop has not been passed (#8026)

Bug fixes

  • Fixed EuiDatePicker's onClear button to not appear when the input is disabled (#8020)
  • Fixed several EuiDataGrid row height bugs: (#8025)
    • Fixed row heights not recalculating when rowHeightOptions.lineHeight, gridStyles.fontSize, or gridStyles.cellPadding changed
    • Fixed incorrect height calculations for rowHeightOptions.rowHeights with lineCounts
    • Fixed control column content to align better with multi-line row heights, as well as custom line-heights

v95.12.0-backport.0

This is a backport release only intended for use by Kibana.

Bug fixes

  • Fixed EuiProvider's system color mode detection causing errors during server-side rendering (#8040)
  • Fixed an EuiDataGrid rendering bug that was causing bouncing scrollbar issues (#8041)

@cee-chen cee-chen added release_note:skip Skip the PR/issue when compiling release notes EUI v9.0.0 v8.16.0 backport:version Backport to applied version labels labels Sep 24, 2024
@cee-chen cee-chen force-pushed the eui/v95.12.0 branch 2 times, most recently from 55e0a37 to edbea88 Compare September 24, 2024 19:31
@cee-chen cee-chen force-pushed the eui/v95.12.0 branch 3 times, most recently from 520f082 to 8181706 Compare September 25, 2024 23:26
- `jest.fn()` is legitimately not available (or possibly getting overwritten) and causing undefined failures down the road

- just replace `jest.fn()`s with static fns / noops since no one is mocking or listening to them in any case
+ harden header control columns to exclude SR text as well
@cee-chen cee-chen marked this pull request as ready for review September 26, 2024 03:37
@cee-chen cee-chen requested review from a team as code owners September 26, 2024 03:37
@elasticmachine
Copy link
Contributor

Pinging @elastic/eui-team (EUI)

Copy link
Member

@wayneseymour wayneseymour left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review only, LGTM

Copy link
Contributor

@peteharverson peteharverson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ML changes LGTM

@@ -199,7 +199,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
const cell = await dataGrid.getCellElementExcludingControlColumns(0, 1);
expect(await cell.getVisibleText()).to.be(' - ');
expect(await dataGrid.getHeaders()).to.eql([
"Select columnPress the Enter key to interact with this cell's contents.", // contains screen reader help text
'Select column',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @cee-chen,

Sorry, I don't have a chance to review the PR fully this week. From a quick look, it seems like the row controls can get misaligned depending on the display settings:

Screenshot 2024-09-26 at 17 32 55

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will take a look at this, thanks for flagging it Julia!

Copy link
Member Author

@cee-chen cee-chen Sep 26, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed now with the latest commits:

The EUI changes let me clean up a bunch of extra wrappers while also making the checkboxes/buttons shift less when switching between single and custom! 🥳

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great, thanks! 😍

cee-chen and others added 3 commits September 26, 2024 10:04
- flex groups and extra padding are no longer necessary with the new EuiDataGrid row height fixes
- remove `<DataTableRowControl />` altogether - the size doesn't appear to do anything and the extra `<span>` wrapper interferes with our ability to vertically align w/ line-height

- tweak negative margin-tops by minute amounts, as that's all that's needed at this point
@cee-chen cee-chen requested review from a team as code owners September 26, 2024 21:38
Copy link
Contributor

@paul-tavares paul-tavares left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes look good - team: elastic/security-defend-workflows

🙏

Copy link
Contributor

@MichaelMarcialis MichaelMarcialis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review only. LGTM.

Copy link
Contributor

@jaredburgettelastic jaredburgettelastic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Entity Analytics changes LGTM!

@kibana-ci
Copy link
Collaborator

kibana-ci commented Sep 30, 2024

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] Jest Tests #8 / CustomFields renders correctly
  • [job] [logs] Jest Tests #1 / ManageAgentPoliciesModal should update policy on submit

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
cloudSecurityPosture 652 651 -1
controls 353 355 +2
discover 992 991 -1
esqlDataGrid 363 362 -1
infra 1502 1504 +2
kubernetesSecurity 200 202 +2
lens 1461 1460 -1
logsExplorer 562 561 -1
maps 1237 1239 +2
securitySolution 5931 5930 -1
slo 846 845 -1
visTypeVega 270 272 +2
total +3

Public APIs missing comments

Total count of every public API that lacks a comment. Target amount is 0. Run node scripts/build_api_docs --plugin [yourplugin] --stats comments for more detailed information.

id before after diff
@kbn/unified-data-table 110 108 -2

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
cloudSecurityPosture 507.1KB 506.9KB -285.0B
controls 456.1KB 458.9KB +2.8KB
discover 820.2KB 820.0KB -272.0B
esqlDataGrid 154.3KB 154.1KB -270.0B
infra 1.6MB 1.6MB +2.8KB
kubernetesSecurity 212.5KB 215.3KB +2.8KB
maps 3.0MB 3.0MB +2.8KB
securitySolution 20.5MB 20.5MB -1.4KB
slo 854.5KB 854.2KB -291.0B
visTypeVega 1.8MB 1.8MB +2.8KB
total +11.5KB

Public APIs missing exports

Total count of every type that is part of your API that should be exported but is not. This will cause broken links in the API documentation system. Target amount is 0. Run node scripts/build_api_docs --plugin [yourplugin] --stats exports for more detailed information.

id before after diff
@kbn/unified-data-table 2 1 -1

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
kbnUiSharedDeps-npmDll 6.2MB 6.2MB +5.8KB
Unknown metric groups

API count

id before after diff
@kbn/unified-data-table 185 183 -2

ESLint disabled line counts

id before after diff
@kbn/test 14 8 -6

Total ESLint disabled count

id before after diff
@kbn/test 14 8 -6

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

@jbudz jbudz merged commit 8a89c85 into elastic:main Sep 30, 2024
44 checks passed
@kibanamachine
Copy link
Contributor

Starting backport for target branches: 8.x

https://github.com/elastic/kibana/actions/runs/11115699066

kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Sep 30, 2024
`v95.11.0`⏩`v95.12.0-backport.0`

> [!note]
> A few fun highlights from this release:
> - Content within `EuiDataGrid`, `EuiBasicTable`, and
`EuiInMemoryTable`, when manually selected/highlighted by users, should
now more cleanly copy and paste into various spreadsheet apps
> - `EuiProvider` will now detect the user's system-level dark or light
mode and default to that if no `colorMode` prop is passed manually

_[Questions? Please see our Kibana upgrade
FAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)_

---

## [`v95.12.0`](https://github.com/elastic/eui/releases/v95.12.0)

- Enhanced `EuiDataGrid` and `EuiBasic/InMemoryTable` to clean content
newlines/tabs when users copy and paste from their tabular data
([elastic#8019](elastic/eui#8019))
- Updated `EuiResizableButton` with a new `accountForScrollbars` prop
([elastic#8021](elastic/eui#8021))
- Updated `EuiProvider` to inherit from the user's OS/system light/dark
mode setting if a `colorMode` prop has not been passed
([elastic#8026](elastic/eui#8026))

**Bug fixes**

- Fixed `EuiDatePicker`'s `onClear` button to not appear when the input
is `disabled` ([elastic#8020](elastic/eui#8020))
- Fixed several `EuiDataGrid` row height bugs:
([elastic#8025](elastic/eui#8025))
- Fixed row heights not recalculating when
`rowHeightOptions.lineHeight`, `gridStyles.fontSize`, or
`gridStyles.cellPadding` changed
- Fixed incorrect height calculations for `rowHeightOptions.rowHeights`
with `lineCount`s
- Fixed control column content to align better with multi-line row
heights, as well as custom line-heights
##
[`v95.12.0-backport.0`](https://github.com/elastic/eui/releases/v95.12.0-backport.0)

**This is a backport release only intended for use by Kibana.**

**Bug fixes**

- Fixed `EuiProvider`'s system color mode detection causing errors
during server-side rendering
([elastic#8040](elastic/eui#8040))
- Fixed an `EuiDataGrid` rendering bug that was causing bouncing
scrollbar issues ([elastic#8041](elastic/eui#8041))

(cherry picked from commit 8a89c85)
@kibanamachine
Copy link
Contributor

💚 All backports created successfully

Status Branch Result
8.x

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

kibanamachine added a commit that referenced this pull request Oct 1, 2024
# Backport

This will backport the following commits from `main` to `8.x`:
- [Upgrade EUI to v95.12.0
(#193805)](#193805)

<!--- Backport version: 9.4.3 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Cee
Chen","email":"549407+cee-chen@users.noreply.github.com"},"sourceCommit":{"committedDate":"2024-09-30T23:25:47Z","message":"Upgrade
EUI to v95.12.0 (#193805)\n\n`v95.11.0`⏩`v95.12.0-backport.0`\r\n\r\n>
[!note]\r\n> A few fun highlights from this release:\r\n> - Content
within `EuiDataGrid`, `EuiBasicTable`, and\r\n`EuiInMemoryTable`, when
manually selected/highlighted by users, should\r\nnow more cleanly copy
and paste into various spreadsheet apps\r\n> - `EuiProvider` will now
detect the user's system-level dark or light\r\nmode and default to that
if no `colorMode` prop is passed manually\r\n\r\n_[Questions? Please see
our Kibana
upgrade\r\nFAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)_\r\n\r\n---\r\n\r\n##
[`v95.12.0`](https://github.com/elastic/eui/releases/v95.12.0)\r\n\r\n-
Enhanced `EuiDataGrid` and `EuiBasic/InMemoryTable` to clean
content\r\nnewlines/tabs when users copy and paste from their tabular
data\r\n([#8019](https://github.com/elastic/eui/pull/8019))\r\n- Updated
`EuiResizableButton` with a new `accountForScrollbars`
prop\r\n([#8021](https://github.com/elastic/eui/pull/8021))\r\n- Updated
`EuiProvider` to inherit from the user's OS/system light/dark\r\nmode
setting if a `colorMode` prop has not been
passed\r\n([#8026](https://github.com/elastic/eui/pull/8026))\r\n\r\n**Bug
fixes**\r\n\r\n- Fixed `EuiDatePicker`'s `onClear` button to not appear
when the input\r\nis `disabled`
([#8020](https://github.com/elastic/eui/pull/8020))\r\n- Fixed several
`EuiDataGrid` row height
bugs:\r\n([#8025](https://github.com/elastic/eui/pull/8025))\r\n- Fixed
row heights not recalculating when\r\n`rowHeightOptions.lineHeight`,
`gridStyles.fontSize`, or\r\n`gridStyles.cellPadding` changed\r\n- Fixed
incorrect height calculations for `rowHeightOptions.rowHeights`\r\nwith
`lineCount`s\r\n- Fixed control column content to align better with
multi-line row\r\nheights, as well as custom
line-heights\r\n##\r\n[`v95.12.0-backport.0`](https://github.com/elastic/eui/releases/v95.12.0-backport.0)\r\n\r\n**This
is a backport release only intended for use by Kibana.**\r\n\r\n**Bug
fixes**\r\n\r\n- Fixed `EuiProvider`'s system color mode detection
causing errors\r\nduring server-side
rendering\r\n([#8040](https://github.com/elastic/eui/pull/8040))\r\n-
Fixed an `EuiDataGrid` rendering bug that was causing
bouncing\r\nscrollbar issues
([#8041](https://github.com/elastic/eui/pull/8041))","sha":"8a89c8576df104c16ae3abf39b9db766e56d4e3b","branchLabelMapping":{"^v9.0.0$":"main","^v8.16.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","EUI","v9.0.0","v8.16.0","backport:version"],"title":"Upgrade
EUI to
v95.12.0","number":193805,"url":"https://github.com/elastic/kibana/pull/193805","mergeCommit":{"message":"Upgrade
EUI to v95.12.0 (#193805)\n\n`v95.11.0`⏩`v95.12.0-backport.0`\r\n\r\n>
[!note]\r\n> A few fun highlights from this release:\r\n> - Content
within `EuiDataGrid`, `EuiBasicTable`, and\r\n`EuiInMemoryTable`, when
manually selected/highlighted by users, should\r\nnow more cleanly copy
and paste into various spreadsheet apps\r\n> - `EuiProvider` will now
detect the user's system-level dark or light\r\nmode and default to that
if no `colorMode` prop is passed manually\r\n\r\n_[Questions? Please see
our Kibana
upgrade\r\nFAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)_\r\n\r\n---\r\n\r\n##
[`v95.12.0`](https://github.com/elastic/eui/releases/v95.12.0)\r\n\r\n-
Enhanced `EuiDataGrid` and `EuiBasic/InMemoryTable` to clean
content\r\nnewlines/tabs when users copy and paste from their tabular
data\r\n([#8019](https://github.com/elastic/eui/pull/8019))\r\n- Updated
`EuiResizableButton` with a new `accountForScrollbars`
prop\r\n([#8021](https://github.com/elastic/eui/pull/8021))\r\n- Updated
`EuiProvider` to inherit from the user's OS/system light/dark\r\nmode
setting if a `colorMode` prop has not been
passed\r\n([#8026](https://github.com/elastic/eui/pull/8026))\r\n\r\n**Bug
fixes**\r\n\r\n- Fixed `EuiDatePicker`'s `onClear` button to not appear
when the input\r\nis `disabled`
([#8020](https://github.com/elastic/eui/pull/8020))\r\n- Fixed several
`EuiDataGrid` row height
bugs:\r\n([#8025](https://github.com/elastic/eui/pull/8025))\r\n- Fixed
row heights not recalculating when\r\n`rowHeightOptions.lineHeight`,
`gridStyles.fontSize`, or\r\n`gridStyles.cellPadding` changed\r\n- Fixed
incorrect height calculations for `rowHeightOptions.rowHeights`\r\nwith
`lineCount`s\r\n- Fixed control column content to align better with
multi-line row\r\nheights, as well as custom
line-heights\r\n##\r\n[`v95.12.0-backport.0`](https://github.com/elastic/eui/releases/v95.12.0-backport.0)\r\n\r\n**This
is a backport release only intended for use by Kibana.**\r\n\r\n**Bug
fixes**\r\n\r\n- Fixed `EuiProvider`'s system color mode detection
causing errors\r\nduring server-side
rendering\r\n([#8040](https://github.com/elastic/eui/pull/8040))\r\n-
Fixed an `EuiDataGrid` rendering bug that was causing
bouncing\r\nscrollbar issues
([#8041](https://github.com/elastic/eui/pull/8041))","sha":"8a89c8576df104c16ae3abf39b9db766e56d4e3b"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/193805","number":193805,"mergeCommit":{"message":"Upgrade
EUI to v95.12.0 (#193805)\n\n`v95.11.0`⏩`v95.12.0-backport.0`\r\n\r\n>
[!note]\r\n> A few fun highlights from this release:\r\n> - Content
within `EuiDataGrid`, `EuiBasicTable`, and\r\n`EuiInMemoryTable`, when
manually selected/highlighted by users, should\r\nnow more cleanly copy
and paste into various spreadsheet apps\r\n> - `EuiProvider` will now
detect the user's system-level dark or light\r\nmode and default to that
if no `colorMode` prop is passed manually\r\n\r\n_[Questions? Please see
our Kibana
upgrade\r\nFAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)_\r\n\r\n---\r\n\r\n##
[`v95.12.0`](https://github.com/elastic/eui/releases/v95.12.0)\r\n\r\n-
Enhanced `EuiDataGrid` and `EuiBasic/InMemoryTable` to clean
content\r\nnewlines/tabs when users copy and paste from their tabular
data\r\n([#8019](https://github.com/elastic/eui/pull/8019))\r\n- Updated
`EuiResizableButton` with a new `accountForScrollbars`
prop\r\n([#8021](https://github.com/elastic/eui/pull/8021))\r\n- Updated
`EuiProvider` to inherit from the user's OS/system light/dark\r\nmode
setting if a `colorMode` prop has not been
passed\r\n([#8026](https://github.com/elastic/eui/pull/8026))\r\n\r\n**Bug
fixes**\r\n\r\n- Fixed `EuiDatePicker`'s `onClear` button to not appear
when the input\r\nis `disabled`
([#8020](https://github.com/elastic/eui/pull/8020))\r\n- Fixed several
`EuiDataGrid` row height
bugs:\r\n([#8025](https://github.com/elastic/eui/pull/8025))\r\n- Fixed
row heights not recalculating when\r\n`rowHeightOptions.lineHeight`,
`gridStyles.fontSize`, or\r\n`gridStyles.cellPadding` changed\r\n- Fixed
incorrect height calculations for `rowHeightOptions.rowHeights`\r\nwith
`lineCount`s\r\n- Fixed control column content to align better with
multi-line row\r\nheights, as well as custom
line-heights\r\n##\r\n[`v95.12.0-backport.0`](https://github.com/elastic/eui/releases/v95.12.0-backport.0)\r\n\r\n**This
is a backport release only intended for use by Kibana.**\r\n\r\n**Bug
fixes**\r\n\r\n- Fixed `EuiProvider`'s system color mode detection
causing errors\r\nduring server-side
rendering\r\n([#8040](https://github.com/elastic/eui/pull/8040))\r\n-
Fixed an `EuiDataGrid` rendering bug that was causing
bouncing\r\nscrollbar issues
([#8041](https://github.com/elastic/eui/pull/8041))","sha":"8a89c8576df104c16ae3abf39b9db766e56d4e3b"}},{"branch":"8.x","label":"v8.16.0","branchLabelMappingKey":"^v8.16.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Cee Chen <549407+cee-chen@users.noreply.github.com>
@cee-chen cee-chen deleted the eui/v95.12.0 branch October 1, 2024 05:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport:version Backport to applied version labels EUI release_note:skip Skip the PR/issue when compiling release notes v8.16.0 v9.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.