[WIP] Fix how we call grunt with multiple tasks#7461
[WIP] Fix how we call grunt with multiple tasks#7461ycombinator wants to merge 2 commits intoelastic:masterfrom
Conversation
This way, if we invoke `npm test` with options like `npm test -- --esvm-no-fresh`, the options are available to all grunt tasks, not just the last one.
|
jenkins, test it |
|
Any reason for not adding this to the grunt test command? Not running on jenkins? https://github.com/elastic/kibana/blob/master/tasks/test.js#L18 |
|
👍 Awesome! Thanks for the improvement. |
|
@jbudz I see no reason not to do it that way. I didn't know the original intent of doing it in |
|
@ycombinator After talking about it with @spalger, I put the task into |
|
@cjcenizal I see. Then I think we need a way to accomplish both these constraints: run the |
|
The reason this was done this way is that we want the |
|
@spalger The current behavior with using the I understand we want the |
|
Yeah, that's fair, which is why I didn't close the pr :) we just can't merge it as is |
|
Agreed. I'll mark it as WIP and remove the review label so its clearer that it should not be merged in its current state. |
|
I looked into using |
|
I don't understand. Why not just add |
|
@epixa Unless I'm misunderstanding your question, I think the answer is in this comment from CJ above: #7461 (comment). BTW, I think I have something that works while satisfying both constraints. @spalger and others, mind giving this another review? |
| ], | ||
| "scripts": { | ||
| "test": "grunt test; grunt test:visualRegression", | ||
| "test": "bash -c 'grunt test $@; grunt test:visualRegression $@' --", |
There was a problem hiding this comment.
This does mean development has to be done on a system with bash on it, which may be too restrictive.
There was a problem hiding this comment.
Yeah, that's a no go. The dev tasks need to be able to run on windows and such.
There was a problem hiding this comment.
Okie doke. Marking this PR as WIP again.
|
Our tests don't bail once a single failure is found, so I'm not sure how adding |
|
@epixa I did an experiment by adding the I then hard-coded a test to fail and tried running |
|
In that case, if tests do bail once one task fails, why do we want |
|
I think the idea is that we could use the generated screenshots/visual_regression_gallery.html to do some debugging. So you could run your tests, take a look at the gallery, and notice some UI error that's breaking the tests. At least that's the theory. 😄 I don't think the value of this has been proven yet... |
|
If this is blocking people or costing an inordinate amount of attention, I suggest we remove the visualRegression task from the npm scripts and refrain from adding it to the grunt test tasks. At this point, I think I'm the only person really using it, so I'm fine with just running |
|
For consistency's sake, we should just toss it at the end of |
|
@cjcenizal Based on #7461 (comment), I'm going to close this PR (unmerged) so you can do a separate, clean PR instead. |
`v93.3.0`⏩ `v93.4.0` --- ## [`v93.4.0`](https://github.com/elastic/eui/releases/v93.4.0) - Added the following properties to `EuiButtonGroup`'s `options` configs: `toolTipContent`, `toolTipProps`, and `title`. These new properties allow wrapping buttons in `EuiToolTips`, and additionally customizing or disabling the native browser `title` tooltip. ([#7461](elastic/eui#7461)) - Enhanced `EuiResizeObserver` and `useResizeObserver`'s performance to not trigger page reflows on resize event ([#7575](elastic/eui#7575)) - Updated `EuiSuperUpdateButton` to support custom button text via an optional `children` prop ([#7576](elastic/eui#7576)) **Bug fixes** - Fixed `EuiFlyout` to not repeatedly remove/add a body class on resize ([#7462](elastic/eui#7462)) - Fixed `EuiToast` title text to wrap instead of overflowing out of the container ([#7568](elastic/eui#7568)) - Fixed a visual bug with `EuiHeaderBreadcrumbs` with popovers ([#7580](elastic/eui#7580)) **Deprecations** - Deprecated `euiPalettePositive` and `euiPaletteNegative` in favour of a more culturally inclusive `euiPaletteGreen` and `euiPaletteRed` ([#7570](elastic/eui#7570)) - Deprecated all charts theme exports in favor of `@elastic/charts` exports: ([#7572](elastic/eui#7572)) - Deprecated `EUI_CHARTS_THEME_<DARK|LIGHT>` in favor of `<DARK|LIGHT>_THEME` from `@elastic/charts`. ([#7572](elastic/eui#7572)) - Deprecated `EUI_SPARKLINE_THEME_PARTIAL` in favor of `useSparklineOverrides` theme from the kibana `charts` plugin `theme` service. **Accessibility** - Updated `EuiModal` to set an `aria-modal` attribute and a default `dialog` role ([#7564](elastic/eui#7564)) - Updated `EuiConfirmModal` to set a default `alertdialog` role ([#7564](elastic/eui#7564)) - Fixed `EuiModal` and `EuiConfirmModal` to properly trap Safari+VoiceOver's virtual cursor ([#7564](elastic/eui#7564))
This way, if we invoke
npm testwith options likenpm test -- --esvm-no-fresh, the options are available to all grunt tasks, not just the last one.