-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Stress Test: add build commands #24575
Conversation
This pull request is automatically built and testable in CodeSandbox. To see build info of the built libraries, click here or the icon next to each commit SHA. Latest deployment of this branch, based on commit 8600445:
|
Asset size changesSize Auditor did not detect a change in bundle size for any component! Baseline commit: dd504116164f53a88c14ba932dc8d8e3f561e2b3 (build) |
Perf Analysis (
|
Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
---|---|---|---|---|---|
FluentProviderWithTheme | virtual-rerender-with-unmount | 1911 | 740 | 10 | Possible regression |
All results
Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
---|---|---|---|---|---|
Avatar | mount | 1351 | 1293 | 5000 | |
Button | mount | 951 | 959 | 5000 | |
FluentProvider | mount | 1840 | 2119 | 5000 | |
FluentProviderWithTheme | mount | 1842 | 627 | 10 | |
FluentProviderWithTheme | virtual-rerender | 603 | 592 | 10 | |
FluentProviderWithTheme | virtual-rerender-with-unmount | 1911 | 740 | 10 | Possible regression |
MakeStyles | mount | 5812 | 1892 | 50000 | |
SpinButton | mount | 6793 | 2449 | 5000 |
📊 Bundle size reportUnchanged fixtures
|
Perf Analysis (
|
Scenario | Current PR Ticks | Baseline Ticks | Ratio |
---|---|---|---|
AlertMinimalPerf.default | 238 | 210 | 1.13:1 |
RefMinimalPerf.default | 201 | 184 | 1.09:1 |
TextMinimalPerf.default | 284 | 262 | 1.08:1 |
AttachmentMinimalPerf.default | 122 | 114 | 1.07:1 |
AvatarMinimalPerf.default | 164 | 154 | 1.06:1 |
VideoMinimalPerf.default | 628 | 592 | 1.06:1 |
AccordionMinimalPerf.default | 136 | 130 | 1.05:1 |
ListCommonPerf.default | 523 | 499 | 1.05:1 |
ListWith60ListItems.default | 524 | 499 | 1.05:1 |
TextAreaMinimalPerf.default | 399 | 379 | 1.05:1 |
ButtonSlotsPerf.default | 467 | 449 | 1.04:1 |
ChatDuplicateMessagesPerf.default | 238 | 229 | 1.04:1 |
TreeWith60ListItems.default | 140 | 134 | 1.04:1 |
BoxMinimalPerf.default | 278 | 271 | 1.03:1 |
LoaderMinimalPerf.default | 565 | 549 | 1.03:1 |
MenuMinimalPerf.default | 705 | 686 | 1.03:1 |
TableManyItemsPerf.default | 1601 | 1553 | 1.03:1 |
ToolbarMinimalPerf.default | 766 | 742 | 1.03:1 |
ChatMinimalPerf.default | 595 | 583 | 1.02:1 |
DatepickerMinimalPerf.default | 4826 | 4742 | 1.02:1 |
DialogMinimalPerf.default | 655 | 644 | 1.02:1 |
FormMinimalPerf.default | 308 | 301 | 1.02:1 |
ImageMinimalPerf.default | 316 | 310 | 1.02:1 |
ItemLayoutMinimalPerf.default | 976 | 955 | 1.02:1 |
RadioGroupMinimalPerf.default | 366 | 360 | 1.02:1 |
SegmentMinimalPerf.default | 313 | 308 | 1.02:1 |
DropdownMinimalPerf.default | 2281 | 2254 | 1.01:1 |
HeaderSlotsPerf.default | 630 | 625 | 1.01:1 |
MenuButtonMinimalPerf.default | 1439 | 1419 | 1.01:1 |
PopupMinimalPerf.default | 524 | 520 | 1.01:1 |
PortalMinimalPerf.default | 138 | 136 | 1.01:1 |
ProviderMergeThemesPerf.default | 1063 | 1049 | 1.01:1 |
ReactionMinimalPerf.default | 306 | 302 | 1.01:1 |
CustomToolbarPrototype.default | 2292 | 2263 | 1.01:1 |
AnimationMinimalPerf.default | 432 | 434 | 1:1 |
ButtonOverridesMissPerf.default | 1091 | 1090 | 1:1 |
InputMinimalPerf.default | 954 | 950 | 1:1 |
SplitButtonMinimalPerf.default | 3648 | 3661 | 1:1 |
StatusMinimalPerf.default | 553 | 552 | 1:1 |
TableMinimalPerf.default | 334 | 333 | 1:1 |
TreeMinimalPerf.default | 668 | 670 | 1:1 |
CheckboxMinimalPerf.default | 1723 | 1749 | 0.99:1 |
DropdownManyItemsPerf.default | 541 | 546 | 0.99:1 |
EmbedMinimalPerf.default | 3062 | 3090 | 0.99:1 |
HeaderMinimalPerf.default | 293 | 297 | 0.99:1 |
LayoutMinimalPerf.default | 291 | 294 | 0.99:1 |
ListMinimalPerf.default | 413 | 418 | 0.99:1 |
RosterPerf.default | 1775 | 1797 | 0.99:1 |
ProviderMinimalPerf.default | 330 | 335 | 0.99:1 |
SliderMinimalPerf.default | 1332 | 1343 | 0.99:1 |
IconMinimalPerf.default | 522 | 526 | 0.99:1 |
TooltipMinimalPerf.default | 1877 | 1900 | 0.99:1 |
AttachmentSlotsPerf.default | 896 | 915 | 0.98:1 |
DividerMinimalPerf.default | 284 | 291 | 0.98:1 |
ListNestedPerf.default | 448 | 455 | 0.98:1 |
GridMinimalPerf.default | 280 | 290 | 0.97:1 |
FlexMinimalPerf.default | 234 | 243 | 0.96:1 |
LabelMinimalPerf.default | 322 | 336 | 0.96:1 |
ButtonMinimalPerf.default | 138 | 146 | 0.95:1 |
CarouselMinimalPerf.default | 363 | 389 | 0.93:1 |
ChatWithPopoverPerf.default | 287 | 309 | 0.93:1 |
SkeletonMinimalPerf.default | 275 | 301 | 0.91:1 |
CardMinimalPerf.default | 439 | 488 | 0.9:1 |
Perf Analysis (
|
Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
---|---|---|---|---|---|
BaseButton | mount | 770 | 771 | 5000 | |
Breadcrumb | mount | 2313 | 2310 | 1000 | |
Checkbox | mount | 2249 | 2199 | 5000 | |
CheckboxBase | mount | 1957 | 1947 | 5000 | |
ChoiceGroup | mount | 3863 | 3824 | 5000 | |
ComboBox | mount | 737 | 762 | 1000 | |
CommandBar | mount | 8839 | 8815 | 1000 | |
ContextualMenu | mount | 9566 | 9594 | 1000 | |
DefaultButton | mount | 938 | 937 | 5000 | |
DetailsRow | mount | 3000 | 2975 | 5000 | |
DetailsRowFast | mount | 3026 | 3015 | 5000 | |
DetailsRowNoStyles | mount | 2927 | 2825 | 5000 | |
Dialog | mount | 2517 | 2521 | 1000 | |
DocumentCardTitle | mount | 148 | 138 | 1000 | |
Dropdown | mount | 2896 | 2759 | 5000 | |
FocusTrapZone | mount | 1565 | 1539 | 5000 | |
FocusZone | mount | 1525 | 1513 | 5000 | |
IconButton | mount | 1371 | 1379 | 5000 | |
Label | mount | 315 | 317 | 5000 | |
Layer | mount | 3693 | 3704 | 5000 | |
Link | mount | 432 | 420 | 5000 | |
MenuButton | mount | 1189 | 1197 | 5000 | |
MessageBar | mount | 1938 | 1855 | 5000 | |
Nav | mount | 2667 | 2672 | 1000 | |
OverflowSet | mount | 1001 | 972 | 5000 | |
Panel | mount | 2047 | 2061 | 1000 | |
Persona | mount | 819 | 820 | 1000 | |
Pivot | mount | 1107 | 1096 | 1000 | |
PrimaryButton | mount | 1059 | 1078 | 5000 | |
Rating | mount | 6639 | 6591 | 5000 | |
SearchBox | mount | 1095 | 1088 | 5000 | |
Shimmer | mount | 2524 | 2457 | 5000 | |
Slider | mount | 1673 | 1705 | 5000 | |
SpinButton | mount | 3890 | 3833 | 5000 | |
Spinner | mount | 403 | 392 | 5000 | |
SplitButton | mount | 2433 | 2440 | 5000 | |
Stack | mount | 463 | 477 | 5000 | |
StackWithIntrinsicChildren | mount | 1869 | 1824 | 5000 | |
StackWithTextChildren | mount | 4528 | 4499 | 5000 | |
SwatchColorPicker | mount | 9080 | 9035 | 5000 | |
TagPicker | mount | 1959 | 1917 | 5000 | |
TeachingBubble | mount | 73476 | 72617 | 5000 | |
Text | mount | 396 | 389 | 5000 | |
TextField | mount | 1125 | 1147 | 5000 | |
ThemeProvider | mount | 1027 | 1029 | 5000 | |
ThemeProvider | virtual-rerender | 713 | 716 | 5000 | |
ThemeProvider | virtual-rerender-with-unmount | 1561 | 1580 | 5000 | |
Toggle | mount | 712 | 704 | 5000 | |
buttonNative | mount | 107 | 100 | 5000 |
Adds a CLI application for Stress Test that allows test configurations to easily be generated and run. This makes running large test suites as simple as a single command and eliminates the need for most npm scripts that previously existed for this package.
This command allows the application to be built via the CLI. It adds: - Support for different Griffel build modes (runtime, build time, extraction) - Building dependencies for Stress Test (e.g., @fluentui/react) - Running Webpack dev server via CLI
d425ca5
to
4c81bc5
Compare
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.
TBH I think that it might be reasonable to change it to TS and use ts-node
that is blazing fast now because we use swc
(#24255).
I've been thinking that too. TS and JSDoc work pretty well together but I feel that I've already spent a lot more time working through typing issues with this set up than I would have with just plain TS. I'm going to exclude the |
- clean up package.json - disable type checking for scripts
* master: (63 commits) feat: add helper types to assist DOM element handling (microsoft#24722) applying package updates Textarea/hc bug (microsoft#24701) Fix null ref in use slider (microsoft#24728) Add Field unit tests, and remove snapshot tests (microsoft#24706) Stress Test: add build commands (microsoft#24575) Coachmark - useOffsetHeight should cause re-render on each set state to match v7 functionality (microsoft#24702) Implement screener tests for Field components (microsoft#24684) Update Field types to clean up react-field.api.md (microsoft#24703) fix(Popup): remove rotate(360deg) from PopupContent content styles (microsoft#24432) fix(FocusZone): should reset tabindex when focus is outside the zone with prop `shouldResetActiveElementWhenTabFromZone` (microsoft#24463) Fix greyed out legend key contrast ratio (microsoft#24714) fix: Portal compat should apply `focus-visible` ponyfill (microsoft#24712) Fix artifact error (microsoft#24717) chore(react-dialog): remove localShorthands in favor of griffel shorthands (microsoft#24715) Skip screener checks for draft PRs with exception of appropriately la… (microsoft#24694) fix: Remove provider classname from focus styles (microsoft#24710) feat: autocontrolled `useTable` hook (microsoft#24688) feat: add dialog properties to getNativeElementProps (microsoft#24698) Using migrate rather than upgrade term (microsoft#24695) ...
Current Behavior
Stress Test cannot be built via the CLI app (it can only be built via npm scripts).
New Behavior
NB: This PR depends on #24551
Stress Test can be built via the CLI app. This allows:
@fluentui/react
).Related Issue(s)
Fixes #24310