chore: migrate from nx 15.6.3 to 15.9.5
Previous Behavior
New Behavior
scaffold migrations:
- nx now uses per library/app
project.jsoninstead globalworkspace.jsonas source of truth for every project within monorepo
packages migration:
- jest -> 29.x
- ~🛑 Blocked by https://github.com/microsoft/fluentui/pull/27936~
- ~https://github.com/microsoft/fluentui/pull/27935~
Related Issue(s)
- Follows https://github.com/microsoft/fluentui/pull/27885
📊 Bundle size report
Unchanged fixtures
| Package & Exports | Size (minified/GZIP) |
|---|---|
| global-context createContext |
510 B330 B |
| global-context createContextSelector |
537 B342 B |
| priority-overflow createOverflowManager |
4.248 kB1.671 kB |
| react-accordion Accordion (including children components) |
88.246 kB26.712 kB |
| react-alert Alert |
82.552 kB21.771 kB |
| react-avatar Avatar |
47.7 kB14.504 kB |
| react-avatar AvatarGroup |
15.682 kB6.306 kB |
| react-avatar AvatarGroupItem |
63.876 kB18.984 kB |
| react-badge Badge |
23.591 kB7.264 kB |
| react-badge CounterBadge |
24.493 kB7.565 kB |
| react-badge PresenceBadge |
22.213 kB7.872 kB |
| react-button Button |
36.778 kB9.51 kB |
| react-button CompoundButton |
43.932 kB10.99 kB |
| react-button MenuButton |
40.965 kB10.705 kB |
| react-button SplitButton |
49.197 kB12.27 kB |
| react-button ToggleButton |
55.06 kB11.446 kB |
| react-card Card - All |
89.11 kB25.236 kB |
| react-card Card |
83.764 kB23.685 kB |
| react-card CardFooter |
9.229 kB3.9 kB |
| react-card CardHeader |
11.402 kB4.683 kB |
| react-card CardPreview |
10.034 kB4.248 kB |
| react-checkbox Checkbox |
33.164 kB10.699 kB |
| react-combobox Combobox (including child components) |
86.98 kB28.084 kB |
| react-combobox Dropdown (including child components) |
85.321 kB27.675 kB |
| react-components react-components: Button, FluentProvider & webLightTheme |
65.162 kB17.952 kB |
| react-components react-components: Accordion, Button, FluentProvider, Image, Menu, Popover |
210.395 kB58.717 kB |
| react-components react-components: FluentProvider & webLightTheme |
36.395 kB11.996 kB |
| react-datepicker-compat DatePicker Compat |
221.924 kB59.118 kB |
| react-dialog Dialog (including children components) |
92.138 kB27.487 kB |
| react-divider Divider |
17.477 kB6.357 kB |
| react-field Field |
18.003 kB6.931 kB |
| react-image Image |
11.55 kB4.627 kB |
| react-infobutton InfoButton |
131.191 kB40.269 kB |
| react-infobutton InfoLabel |
134.656 kB41.338 kB |
| react-input Input |
24.219 kB7.781 kB |
| react-label Label |
10.175 kB4.243 kB |
| react-link Link |
12.375 kB5.113 kB |
| react-menu Menu (including children components) |
132.388 kB40.52 kB |
| react-menu Menu (including selectable components) |
135.152 kB41.012 kB |
| react-overflow hooks only |
12.505 kB4.626 kB |
| react-persona Persona |
54.621 kB16.435 kB |
| react-popover Popover |
119.781 kB36.844 kB |
| react-portal Portal |
11.82 kB4.391 kB |
| react-portal-compat PortalCompatProvider |
6.473 kB2.196 kB |
| react-positioning usePositioning |
24.249 kB8.856 kB |
| react-progress ProgressBar |
13.927 kB5.488 kB |
| react-provider FluentProvider |
18.115 kB6.719 kB |
| react-radio Radio |
26.952 kB8.608 kB |
| react-radio RadioGroup |
11.362 kB4.753 kB |
| react-select Select |
24.915 kB8.708 kB |
| react-slider Slider |
34.358 kB11.107 kB |
| react-spinbutton SpinButton |
33.452 kB10.296 kB |
| react-spinner Spinner |
21.363 kB7.021 kB |
| react-switch Switch |
29.472 kB9.226 kB |
| react-table DataGrid |
156.306 kB42.785 kB |
| react-table Table (Primitives only) |
44.652 kB12.468 kB |
| react-table Table as DataGrid |
131.96 kB33.791 kB |
| react-table Table (Selection only) |
77.561 kB19.178 kB |
| react-table Table (Sort only) |
76.891 kB18.989 kB |
| react-tags Tag |
23.153 kB7.922 kB |
| react-text Text - Default |
12.563 kB4.972 kB |
| react-text Text - Wrappers |
15.713 kB5.293 kB |
| react-textarea Textarea |
27.69 kB9.125 kB |
| react-theme Single theme token import |
69 B89 B |
| react-theme Teams: all themes |
31.987 kB6.85 kB |
| react-theme Teams: Light theme |
18.121 kB5.194 kB |
| react-tooltip Tooltip |
47.319 kB16.618 kB |
| react-utilities SSRProvider |
180 B159 B |
Perf Analysis (@fluentui/react-northstar)
:warning: 1 potential perf regressions detected
Potential regressions comparing to master
| Scenario | Current PR Ticks | Baseline Ticks | Ratio | Regression Analysis |
|---|---|---|---|---|
| AttachmentMinimalPerf.default | 80 | 83 | 0.96:1 | analysis |
Perf tests with no regressions
| Scenario | Current PR Ticks | Baseline Ticks | Ratio |
|---|---|---|---|
| GridMinimalPerf.default | 205 | 184 | 1.11:1 |
| ButtonSlotsPerf.default | 325 | 296 | 1.1:1 |
| PortalMinimalPerf.default | 85 | 79 | 1.08:1 |
| ButtonMinimalPerf.default | 90 | 84 | 1.07:1 |
| DividerMinimalPerf.default | 210 | 199 | 1.06:1 |
| ImageMinimalPerf.default | 233 | 220 | 1.06:1 |
| FormMinimalPerf.default | 231 | 221 | 1.05:1 |
| ListNestedPerf.default | 322 | 306 | 1.05:1 |
| AccordionMinimalPerf.default | 82 | 79 | 1.04:1 |
| MenuMinimalPerf.default | 505 | 487 | 1.04:1 |
| SkeletonMinimalPerf.default | 204 | 196 | 1.04:1 |
| ChatDuplicateMessagesPerf.default | 154 | 150 | 1.03:1 |
| CheckboxMinimalPerf.default | 1162 | 1127 | 1.03:1 |
| DialogMinimalPerf.default | 449 | 435 | 1.03:1 |
| SliderMinimalPerf.default | 752 | 733 | 1.03:1 |
| TableManyItemsPerf.default | 1144 | 1115 | 1.03:1 |
| TreeWith60ListItems.default | 89 | 86 | 1.03:1 |
| CarouselMinimalPerf.default | 264 | 260 | 1.02:1 |
| ChatMinimalPerf.default | 437 | 428 | 1.02:1 |
| DropdownMinimalPerf.default | 1449 | 1416 | 1.02:1 |
| HeaderMinimalPerf.default | 207 | 202 | 1.02:1 |
| HeaderSlotsPerf.default | 477 | 467 | 1.02:1 |
| ItemLayoutMinimalPerf.default | 730 | 716 | 1.02:1 |
| ReactionMinimalPerf.default | 216 | 211 | 1.02:1 |
| TableMinimalPerf.default | 242 | 237 | 1.02:1 |
| TreeMinimalPerf.default | 487 | 476 | 1.02:1 |
| AttachmentSlotsPerf.default | 641 | 634 | 1.01:1 |
| EmbedMinimalPerf.default | 1871 | 1860 | 1.01:1 |
| LayoutMinimalPerf.default | 212 | 210 | 1.01:1 |
| MenuButtonMinimalPerf.default | 956 | 950 | 1.01:1 |
| PopupMinimalPerf.default | 351 | 348 | 1.01:1 |
| ProviderMergeThemesPerf.default | 666 | 659 | 1.01:1 |
| SplitButtonMinimalPerf.default | 2295 | 2270 | 1.01:1 |
| TextMinimalPerf.default | 189 | 188 | 1.01:1 |
| TooltipMinimalPerf.default | 1299 | 1283 | 1.01:1 |
| DatepickerMinimalPerf.default | 3646 | 3631 | 1:1 |
| ListMinimalPerf.default | 308 | 308 | 1:1 |
| RosterPerf.default | 1552 | 1547 | 1:1 |
| TextAreaMinimalPerf.default | 292 | 292 | 1:1 |
| CustomToolbarPrototype.default | 1477 | 1479 | 1:1 |
| VideoMinimalPerf.default | 438 | 436 | 1:1 |
| AnimationMinimalPerf.default | 292 | 295 | 0.99:1 |
| BoxMinimalPerf.default | 202 | 205 | 0.99:1 |
| InputMinimalPerf.default | 550 | 558 | 0.99:1 |
| ToolbarMinimalPerf.default | 543 | 546 | 0.99:1 |
| AlertMinimalPerf.default | 158 | 162 | 0.98:1 |
| ButtonOverridesMissPerf.default | 656 | 671 | 0.98:1 |
| DropdownManyItemsPerf.default | 391 | 401 | 0.98:1 |
| ListCommonPerf.default | 386 | 394 | 0.98:1 |
| LoaderMinimalPerf.default | 195 | 198 | 0.98:1 |
| ProviderMinimalPerf.default | 194 | 197 | 0.98:1 |
| RadioGroupMinimalPerf.default | 253 | 257 | 0.98:1 |
| SegmentMinimalPerf.default | 191 | 195 | 0.98:1 |
| ChatWithPopoverPerf.default | 187 | 192 | 0.97:1 |
| ListWith60ListItems.default | 365 | 376 | 0.97:1 |
| StatusMinimalPerf.default | 393 | 405 | 0.97:1 |
| AvatarMinimalPerf.default | 102 | 106 | 0.96:1 |
| IconMinimalPerf.default | 391 | 410 | 0.95:1 |
| CardMinimalPerf.default | 295 | 314 | 0.94:1 |
| LabelMinimalPerf.default | 210 | 223 | 0.94:1 |
| FlexMinimalPerf.default | 149 | 161 | 0.93:1 |
| RefMinimalPerf.default | 103 | 111 | 0.93:1 |
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 e4f2fe2ef39b95231077befa7d8664b318905eb6:
| Sandbox | Source |
|---|---|
| @fluentui/react 8 starter | Configuration |
| @fluentui/react-components 9 starter | Configuration |
Perf Analysis (@fluentui/react-components)
No significant results to display.
All results
| Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
|---|---|---|---|---|---|
| Avatar | mount | 618 | 601 | 5000 | |
| Button | mount | 291 | 304 | 5000 | |
| Field | mount | 1076 | 1014 | 5000 | |
| FluentProvider | mount | 634 | 653 | 5000 | |
| FluentProviderWithTheme | mount | 79 | 75 | 10 | |
| FluentProviderWithTheme | virtual-rerender | 61 | 67 | 10 | |
| FluentProviderWithTheme | virtual-rerender-with-unmount | 75 | 73 | 10 | |
| InfoButton | mount | 9 | 10 | 5000 | |
| MakeStyles | mount | 837 | 822 | 50000 | |
| Persona | mount | 1678 | 1641 | 5000 | |
| SpinButton | mount | 1334 | 1337 | 5000 |
🕵 FluentUI-v0 No visual regressions between this PR and main
🕵 fluentuiv9 No visual regressions between this PR and main
Perf Analysis (@fluentui/react)
No significant results to display.
All results
| Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
|---|---|---|---|---|---|
| BaseButton | mount | 642 | 645 | 5000 | |
| Breadcrumb | mount | 1682 | 1710 | 1000 | |
| Checkbox | mount | 1690 | 1680 | 5000 | |
| CheckboxBase | mount | 1495 | 1470 | 5000 | |
| ChoiceGroup | mount | 2941 | 2941 | 5000 | |
| ComboBox | mount | 647 | 664 | 1000 | |
| CommandBar | mount | 6254 | 6224 | 1000 | |
| ContextualMenu | mount | 12082 | 13072 | 1000 | |
| DefaultButton | mount | 767 | 745 | 5000 | |
| DetailsRow | mount | 2165 | 2182 | 5000 | |
| DetailsRowFast | mount | 2206 | 2187 | 5000 | |
| DetailsRowNoStyles | mount | 2010 | 2038 | 5000 | |
| Dialog | mount | 2679 | 2628 | 1000 | |
| DocumentCardTitle | mount | 236 | 235 | 1000 | |
| Dropdown | mount | 2014 | 1996 | 5000 | |
| FocusTrapZone | mount | 1137 | 1111 | 5000 | |
| FocusZone | mount | 1056 | 1058 | 5000 | |
| GroupedList | mount | 41766 | 41773 | 2 | |
| GroupedList | virtual-rerender | 19926 | 19881 | 2 | |
| GroupedList | virtual-rerender-with-unmount | 50584 | 51027 | 2 | |
| GroupedListV2 | mount | 227 | 221 | 2 | |
| GroupedListV2 | virtual-rerender | 210 | 214 | 2 | |
| GroupedListV2 | virtual-rerender-with-unmount | 222 | 221 | 2 | |
| IconButton | mount | 1078 | 1071 | 5000 | |
| Label | mount | 342 | 335 | 5000 | |
| Layer | mount | 2713 | 2748 | 5000 | |
| Link | mount | 391 | 393 | 5000 | |
| MenuButton | mount | 932 | 925 | 5000 | |
| MessageBar | mount | 21710 | 21592 | 5000 | |
| Nav | mount | 1917 | 1942 | 1000 | |
| OverflowSet | mount | 789 | 796 | 5000 | |
| Panel | mount | 1768 | 1758 | 1000 | |
| Persona | mount | 775 | 750 | 1000 | |
| Pivot | mount | 856 | 866 | 1000 | |
| PrimaryButton | mount | 846 | 851 | 5000 | |
| Rating | mount | 4576 | 4545 | 5000 | |
| SearchBox | mount | 911 | 882 | 5000 | |
| Shimmer | mount | 1922 | 1889 | 5000 | |
| Slider | mount | 1356 | 1334 | 5000 | |
| SpinButton | mount | 2839 | 2893 | 5000 | |
| Spinner | mount | 385 | 378 | 5000 | |
| SplitButton | mount | 1838 | 1819 | 5000 | |
| Stack | mount | 410 | 401 | 5000 | |
| StackWithIntrinsicChildren | mount | 836 | 854 | 5000 | |
| StackWithTextChildren | mount | 2613 | 2616 | 5000 | |
| SwatchColorPicker | mount | 6193 | 6170 | 5000 | |
| TagPicker | mount | 1448 | 1433 | 5000 | |
| Text | mount | 374 | 362 | 5000 | |
| TextField | mount | 939 | 944 | 5000 | |
| ThemeProvider | mount | 828 | 850 | 5000 | |
| ThemeProvider | virtual-rerender | 576 | 587 | 5000 | |
| ThemeProvider | virtual-rerender-with-unmount | 1302 | 1296 | 5000 | |
| Toggle | mount | 617 | 611 | 5000 | |
| buttonNative | mount | 191 | 189 | 5000 |
Asset size changes
Size Auditor did not detect a change in bundle size for any component!
Baseline commit: 1c7e6451a11fb9c59e344df616394a320e8031c4 (build)
pipeline is passing + approvals from v-build - admin merged