Skip to content

Conversation

@YuanboXue-Amber
Copy link
Contributor

address #26001

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 2, 2023

Perf Analysis (@fluentui/react-components)

Scenario Render type Master Ticks PR Ticks Iterations Status
InfoButton mount 15 15 5000 Possible regression
All results

Scenario Render type Master Ticks PR Ticks Iterations Status
Avatar mount 614 615 5000
Button mount 315 308 5000
Field mount 1102 1111 5000
FluentProvider mount 688 670 5000
FluentProviderWithTheme mount 78 90 10
FluentProviderWithTheme virtual-rerender 58 64 10
FluentProviderWithTheme virtual-rerender-with-unmount 76 73 10
InfoButton mount 15 15 5000 Possible regression
MakeStyles mount 851 861 50000
Persona mount 1712 1670 5000
SpinButton mount 1439 1331 5000

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 2, 2023

Perf Analysis (@fluentui/react-northstar)

Perf tests with no regressions
Scenario Current PR Ticks Baseline Ticks Ratio
AlertMinimalPerf.default 163 145 1.12:1
PortalMinimalPerf.default 90 82 1.1:1
ButtonSlotsPerf.default 325 300 1.08:1
LayoutMinimalPerf.default 211 195 1.08:1
TableMinimalPerf.default 234 217 1.08:1
DropdownManyItemsPerf.default 403 377 1.07:1
AccordionMinimalPerf.default 85 80 1.06:1
AnimationMinimalPerf.default 291 278 1.05:1
AttachmentMinimalPerf.default 84 80 1.05:1
FlexMinimalPerf.default 155 148 1.05:1
HeaderMinimalPerf.default 208 198 1.05:1
ImageMinimalPerf.default 242 231 1.05:1
InputMinimalPerf.default 545 518 1.05:1
ListNestedPerf.default 324 310 1.05:1
RadioGroupMinimalPerf.default 259 247 1.05:1
VideoMinimalPerf.default 425 408 1.04:1
ChatWithPopoverPerf.default 197 192 1.03:1
HeaderSlotsPerf.default 471 456 1.03:1
PopupMinimalPerf.default 346 337 1.03:1
ProviderMinimalPerf.default 199 193 1.03:1
SplitButtonMinimalPerf.default 2239 2184 1.03:1
StatusMinimalPerf.default 399 387 1.03:1
ToolbarMinimalPerf.default 528 514 1.03:1
CarouselMinimalPerf.default 258 254 1.02:1
CheckboxMinimalPerf.default 1141 1119 1.02:1
SliderMinimalPerf.default 741 725 1.02:1
TreeMinimalPerf.default 463 453 1.02:1
ChatDuplicateMessagesPerf.default 152 151 1.01:1
DialogMinimalPerf.default 443 438 1.01:1
FormMinimalPerf.default 209 207 1.01:1
GridMinimalPerf.default 188 186 1.01:1
MenuMinimalPerf.default 493 487 1.01:1
MenuButtonMinimalPerf.default 942 930 1.01:1
ProviderMergeThemesPerf.default 658 653 1.01:1
TextAreaMinimalPerf.default 276 272 1.01:1
ButtonOverridesMissPerf.default 643 645 1:1
CardMinimalPerf.default 307 306 1:1
DividerMinimalPerf.default 195 195 1:1
DropdownMinimalPerf.default 1427 1423 1:1
ListWith60ListItems.default 355 356 1:1
BoxMinimalPerf.default 193 194 0.99:1
ChatMinimalPerf.default 429 432 0.99:1
ItemLayoutMinimalPerf.default 709 716 0.99:1
ListCommonPerf.default 369 373 0.99:1
SkeletonMinimalPerf.default 193 195 0.99:1
TableManyItemsPerf.default 1086 1095 0.99:1
TooltipMinimalPerf.default 1231 1241 0.99:1
LoaderMinimalPerf.default 189 192 0.98:1
SegmentMinimalPerf.default 188 191 0.98:1
CustomToolbarPrototype.default 1446 1474 0.98:1
AttachmentSlotsPerf.default 637 656 0.97:1
DatepickerMinimalPerf.default 3538 3631 0.97:1
EmbedMinimalPerf.default 1801 1861 0.97:1
LabelMinimalPerf.default 215 221 0.97:1
ListMinimalPerf.default 295 305 0.97:1
TextMinimalPerf.default 184 190 0.97:1
AvatarMinimalPerf.default 103 107 0.96:1
TreeWith60ListItems.default 81 84 0.96:1
RosterPerf.default 1513 1600 0.95:1
ReactionMinimalPerf.default 206 221 0.93:1
RefMinimalPerf.default 106 115 0.92:1
IconMinimalPerf.default 358 388 0.92:1
ButtonMinimalPerf.default 80 90 0.89:1

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 2, 2023

📊 Bundle size report

Package & Exports Baseline (minified/GZIP) PR Change
react-tags
InteractionTag
0 B
0 B
14.275 kB
5.717 kB
🆕 New entry
react-tags
Tag
0 B
0 B
28.998 kB
9.061 kB
🆕 New entry
react-tags
TagGroup
0 B
0 B
72.507 kB
21.605 kB
🆕 New entry
Unchanged fixtures
Package & Exports Size (minified/GZIP)
global-context
createContext
510 B
330 B
global-context
createContextSelector
537 B
342 B
priority-overflow
createOverflowManager
4.162 kB
1.735 kB
react-accordion
Accordion (including children components)
91.684 kB
28.007 kB
react-alert
Alert
83.657 kB
22.915 kB
react-avatar
Avatar
49.185 kB
15.491 kB
react-avatar
AvatarGroup
18.716 kB
7.458 kB
react-avatar
AvatarGroupItem
63.841 kB
19.834 kB
react-badge
Badge
25.921 kB
8.354 kB
react-badge
CounterBadge
26.822 kB
8.657 kB
react-badge
PresenceBadge
24.327 kB
8.867 kB
react-button
Button
39.444 kB
10.738 kB
react-button
CompoundButton
46.799 kB
12.233 kB
react-button
MenuButton
44.218 kB
12.12 kB
react-button
SplitButton
52.232 kB
13.705 kB
react-button
ToggleButton
56.49 kB
12.641 kB
react-card
Card - All
91.484 kB
26.485 kB
react-card
Card
86.31 kB
24.946 kB
react-card
CardFooter
12.074 kB
5.034 kB
react-card
CardHeader
14.323 kB
5.8 kB
react-card
CardPreview
13.031 kB
5.404 kB
react-checkbox
Checkbox
35.959 kB
11.852 kB
react-combobox
Combobox (including child components)
90.121 kB
29.441 kB
react-combobox
Dropdown (including child components)
88.561 kB
29.081 kB
react-components
react-components: Button, FluentProvider & webLightTheme
69.227 kB
19.584 kB
react-components
react-components: Accordion, Button, FluentProvider, Image, Menu, Popover
206.783 kB
59.085 kB
react-components
react-components: FluentProvider & webLightTheme
40.793 kB
13.521 kB
react-datepicker-compat
DatePicker Compat
210.557 kB
58.665 kB
react-dialog
Dialog (including children components)
88.307 kB
26.334 kB
react-divider
Divider
19.836 kB
7.392 kB
react-field
Field
21.443 kB
8.194 kB
react-image
Image
14.752 kB
5.875 kB
react-infobutton
InfoButton
128.844 kB
40.576 kB
react-infobutton
InfoLabel
132.535 kB
41.752 kB
react-input
Input
25.97 kB
8.77 kB
react-jsx-runtime
Classic Pragma
1.049 kB
531 B
react-jsx-runtime
JSX Dev Runtime
2.874 kB
1.307 kB
react-jsx-runtime
JSX Runtime
3.46 kB
1.542 kB
react-label
Label
13.159 kB
5.416 kB
react-link
Link
15.983 kB
6.492 kB
react-menu
Menu (including children components)
138.755 kB
42.86 kB
react-menu
Menu (including selectable components)
141.441 kB
43.37 kB
react-overflow
hooks only
12.419 kB
4.687 kB
react-persona
Persona
56.076 kB
17.369 kB
react-popover
Popover
117.589 kB
37.101 kB
react-portal
Portal
12.255 kB
4.504 kB
react-portal-compat
PortalCompatProvider
6.503 kB
2.22 kB
react-positioning
usePositioning
25.137 kB
9.109 kB
react-progress
ProgressBar
16.448 kB
6.545 kB
react-provider
FluentProvider
21.338 kB
7.945 kB
react-radio
Radio
29.72 kB
9.802 kB
react-radio
RadioGroup
14.355 kB
5.913 kB
react-select
Select
27.692 kB
9.849 kB
react-slider
Slider
36.87 kB
12.141 kB
react-spinbutton
SpinButton
35.857 kB
11.426 kB
react-spinner
Spinner
22.412 kB
8.118 kB
react-switch
Switch
32.179 kB
10.437 kB
react-table
DataGrid
155.92 kB
43.463 kB
react-table
Table (Primitives only)
42.715 kB
13.341 kB
react-table
Table as DataGrid
129.19 kB
34.771 kB
react-table
Table (Selection only)
74.557 kB
20.071 kB
react-table
Table (Sort only)
73.164 kB
19.67 kB
react-text
Text - Default
15.766 kB
6.23 kB
react-text
Text - Wrappers
18.944 kB
6.551 kB
react-textarea
Textarea
30.03 kB
10.129 kB
react-theme
Single theme token import
69 B
89 B
react-theme
Teams: all themes
34.611 kB
7.295 kB
react-theme
Teams: Light theme
19.282 kB
5.486 kB
react-toast
Toast (including Toaster)
91.124 kB
27.293 kB
react-tooltip
Tooltip
50.859 kB
17.955 kB
react-utilities
SSRProvider
180 B
159 B
🤖 This report was generated against f61033d77d6852838c580bfa7379d026128c2dbb

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 2, 2023

🕵 fluentuiv8 No visual regressions between this PR and main

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 2, 2023

🕵 FluentUIV0 No visual regressions between this PR and main

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 2, 2023

🕵 fluentuiv9 No visual regressions between this PR and main

@fabricteam
Copy link
Collaborator

fabricteam commented Oct 2, 2023

Perf Analysis (@fluentui/react)

No significant results to display.

All results

Scenario Render type Master Ticks PR Ticks Iterations Status
BaseButton mount 648 648 5000
Breadcrumb mount 1711 1669 1000
Checkbox mount 1712 1696 5000
CheckboxBase mount 1482 1476 5000
ChoiceGroup mount 2884 2953 5000
ComboBox mount 647 620 1000
CommandBar mount 6212 6215 1000
ContextualMenu mount 14184 14296 1000
DefaultButton mount 761 734 5000
DetailsRow mount 2129 2166 5000
DetailsRowFast mount 2156 2165 5000
DetailsRowNoStyles mount 1966 2031 5000
Dialog mount 2639 2643 1000
DocumentCardTitle mount 220 225 1000
Dropdown mount 1972 1977 5000
FocusTrapZone mount 1082 1160 5000
FocusZone mount 1039 1077 5000
GroupedList mount 41377 41429 2
GroupedList virtual-rerender 19747 19791 2
GroupedList virtual-rerender-with-unmount 50426 50653 2
GroupedListV2 mount 224 238 2
GroupedListV2 virtual-rerender 214 216 2
GroupedListV2 virtual-rerender-with-unmount 229 236 2
IconButton mount 1054 1062 5000
Label mount 330 333 5000
Layer mount 2722 2717 5000
Link mount 387 396 5000
MenuButton mount 944 934 5000
MessageBar mount 21470 21409 5000
Nav mount 1916 1928 1000
OverflowSet mount 781 763 5000
Panel mount 1800 1816 1000
Persona mount 739 728 1000
Pivot mount 873 897 1000
PrimaryButton mount 851 836 5000
Rating mount 4548 4564 5000
SearchBox mount 916 895 5000
Shimmer mount 1874 1846 5000
Slider mount 1319 1320 5000
SpinButton mount 2844 2863 5000
Spinner mount 384 384 5000
SplitButton mount 1800 1820 5000
Stack mount 405 410 5000
StackWithIntrinsicChildren mount 848 847 5000
StackWithTextChildren mount 2606 2545 5000
SwatchColorPicker mount 6121 6078 5000
TagPicker mount 1502 1448 5000
Text mount 370 371 5000
TextField mount 915 926 5000
ThemeProvider mount 830 805 5000
ThemeProvider virtual-rerender 583 588 5000
ThemeProvider virtual-rerender-with-unmount 1265 1243 5000
Toggle mount 611 595 5000
buttonNative mount 201 198 5000

@codesandbox-ci
Copy link

codesandbox-ci bot commented Oct 2, 2023

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 b2a57a7:

Sandbox Source
@fluentui/react 8 starter Configuration
@fluentui/react-components 9 starter Configuration

@size-auditor
Copy link

size-auditor bot commented Oct 2, 2023

Asset size changes

Size Auditor did not detect a change in bundle size for any component!

Baseline commit: f61033d77d6852838c580bfa7379d026128c2dbb (build)

@YuanboXue-Amber YuanboXue-Amber marked this pull request as ready for review October 2, 2023 13:10
@ling1726
Copy link
Contributor

ling1726 commented Oct 2, 2023

It would be nice to split the work in this PR:

  • Create VR tests
  • Create stable package (private)
  • Release stable package

@YuanboXue-Amber
Copy link
Contributor Author

YuanboXue-Amber commented Oct 2, 2023

It would be nice to split the work in this PR:

  • Create VR tests
  • Create stable package (private)
  • Release stable package

@ling1726 the VR test is already in place. This PR just rename the import. What's the difference between create and release stable package? (apart from package.json having private: true)

@ling1726
Copy link
Contributor

ling1726 commented Oct 3, 2023

@ling1726 the VR test is already in place. This PR just rename the import. What's the difference between create and release stable package? (apart from package.json having private: true)

Yeah it's the new automation process, first time I've seen a PR to stable out of that, just to confirm you used this command to generate this PR right?

yarn nx g @fluentui/workspace-plugin:prepare-initial-release --project @fluentui/react-tags-preview --phase=stable

@YuanboXue-Amber
Copy link
Contributor Author

YuanboXue-Amber commented Oct 3, 2023

@ling1726 the VR test is already in place. This PR just rename the import. What's the difference between create and release stable package? (apart from package.json having private: true)

Yeah it's the new automation process, first time I've seen a PR to stable out of that, just to confirm you used this command to generate this PR right?

yarn nx g @fluentui/workspace-plugin:prepare-initial-release --project @fluentui/react-tags-preview --phase=stable

fyi @Hotell I needed to do a few extra things after running the automated release:

  1. the command updated import of all stories from react-tags-preview to react-tags, but ci wants it to be react-components
  2. I need to update vr test to use "@fluentui/react-tags": ">=9.0.0-alpha" because '*' version gives an error

    Couldn't find package "@fluentui/react-tags@*" required by "@fluentui/[email protected]" on the "npm" registry.

  3. I need to re-generate api file for both react-tags and react-components. The react-tags's new api file has only white space differences.
  4. I need to remove the unstable statement in readme
  5. and also I need to update import to remove '-preview' on fixtures

@YuanboXue-Amber YuanboXue-Amber merged commit e81fd71 into microsoft:master Oct 3, 2023
@YuanboXue-Amber YuanboXue-Amber deleted the tag-stable branch October 3, 2023 09:06
marcosmoura added a commit to marcosmoura/fluentui that referenced this pull request Oct 4, 2023
* master: (146 commits)
  remove a11y test ux from theme designer (microsoft#29379)
  feat: preview release (microsoft#29377)
  Fixed divider in the tooltip (microsoft#29357)
  fix (microsoft#29376)
  docs: Initial documentation pass (microsoft#29372)
  feat: Integrate Announce context (microsoft#29362)
  chore(react-tags): stable release (microsoft#29355)
  chore: delegate focus outline to layout components (microsoft#29293)
  Vertical bar chart line bug (microsoft#29299)
  applying package updates
  Adding axis title examples for line, area, vertical bar and vertical stacked bar charts (microsoft#29254)
  A11y: Pagination: Add tooltip for all icon buttons  (microsoft#29155)
  A11y: Fix aria attribute for page number and add correct role (microsoft#29349)
  feat: Implement motion for MessageBar (microsoft#29339)
  feat: creates getIntrinsicElementProps to replace getNativeElementProps on slots creation (microsoft#29310)
  chore: replace makeStyles with makeResetStyles (microsoft#29338)
  applying package updates
  ci(github/policies): remove bot rules that created and added `Component/Package $1`: labels on PRs (microsoft#29301)
  fix: handle multiple classes in PortalCompatProvider (microsoft#29351)
  applying package updates
  ...
marcosmoura added a commit to marcosmoura/fluentui that referenced this pull request Oct 4, 2023
* master: (49 commits)
  remove a11y test ux from theme designer (microsoft#29379)
  feat: preview release (microsoft#29377)
  Fixed divider in the tooltip (microsoft#29357)
  fix (microsoft#29376)
  docs: Initial documentation pass (microsoft#29372)
  feat: Integrate Announce context (microsoft#29362)
  chore(react-tags): stable release (microsoft#29355)
  chore: delegate focus outline to layout components (microsoft#29293)
  Vertical bar chart line bug (microsoft#29299)
  applying package updates
  Adding axis title examples for line, area, vertical bar and vertical stacked bar charts (microsoft#29254)
  A11y: Pagination: Add tooltip for all icon buttons  (microsoft#29155)
  A11y: Fix aria attribute for page number and add correct role (microsoft#29349)
  feat: Implement motion for MessageBar (microsoft#29339)
  feat: creates getIntrinsicElementProps to replace getNativeElementProps on slots creation (microsoft#29310)
  chore: replace makeStyles with makeResetStyles (microsoft#29338)
  applying package updates
  ci(github/policies): remove bot rules that created and added `Component/Package $1`: labels on PRs (microsoft#29301)
  fix: handle multiple classes in PortalCompatProvider (microsoft#29351)
  applying package updates
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants