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

Merge OUFR into react and update references #15271

Merged
merged 59 commits into from
Oct 1, 2020

Conversation

ecraig12345
Copy link
Member

@ecraig12345 ecraig12345 commented Sep 28, 2020

Move all OUFR files into react or react-internal and update references to office-ui-fabric-react (to either @fluentui/react, @fluentui/react-internal, just react, or occasionally something else).

To prevent circular dependencies with the per-component packages (react-checkbox etc), we decided to make a separate INTERNAL USE ONLY package @fluentui/react-internal. Note that directly importing from the @fluentui/react-internal package (the root or any file within it) is not supported, and the structure of this package may change at any time. Importing from individual component packages or @fluentui/react top-level files is fine.

Components were moved as follows:

  • Moved to individual component packages (which depend on @fluentui/react-internal):
    • Checkbox (@fluentui/react-checkbox)
    • Link (@fluentui/react-link)
    • Pivot (@fluentui/react-tabs)
    • Slider (@fluentui/react-slider)
    • Toggle (@fluentui/react-toggle)
  • Moved to @fluentui/react due to having a dependency on one of the individual component packages (avoid circular dep):
    • Breadcrumb
    • ComboBox
    • DetailsList
    • DocumentCard
    • Dropdown
    • GroupedList
  • All others moved to @fluentui/react-internal

Assorted other changes included in this PR (please see the commit history for a complete list):

  • moved Check.scss to experiments/Tile
  • delete oufr/src/components/Theme/defaultTheme
  • delete oufr/src/customizations/TeamsTheme
  • move update-sass-theme-files to common-styles and update all copies
  • deleted example data from OUFR
  • fully removed prop-types deps
  • Pivot: pick up rootIsTabs change in mdl2-theme and azure-themes
  • DirectionalHint is no longer exported from HoverCard and Tooltip (possibly also from others)
  • scss common imports are now from common-styles (at least in experiments)
  • don't append Base to Toggle's ID (I left it in the component name for now, but we to pick a way and conformance test it)

Related to #15152

@msft-github-bot
Copy link
Contributor

msft-github-bot commented Oct 1, 2020

Perf Analysis

Scenario Render type Master Ticks PR Ticks Iterations Status
CheckboxBase mount 1298 1252 5000 Possible regression
Link mount 475 476 5000 Possible regression
Slider mount 1561 1955 5000 Possible regression
All results

Scenario Render type Master Ticks PR Ticks Iterations Status
Avatar mount 850 896 5000
BaseButton mount 914 928 5000
Breadcrumb mount 43887 43652 5000
BreadcrumbNext mount 167863 168055 5000
ButtonNext mount 577 591 5000
Checkbox mount 1560 1529 5000
CheckboxBase mount 1298 1252 5000 Possible regression
CheckboxNext mount 1531 1507 5000
ChoiceGroup mount 4935 4860 5000
ChoiceGroupNext mount 9553 9520 5000
ComboBox mount 916 969 1000
CommandBar mount 7957 7951 1000
ContextualMenu mount 17445 17064 1000
DefaultButton mount 1152 1176 5000
DetailsRow mount 3842 3628 5000
DetailsRowFast mount 3702 3764 5000
DetailsRowNoStyles mount 3592 3424 5000
Dialog mount 1521 1541 1000
DocumentCardTitle mount 1866 1885 1000
Dropdown mount 2576 2602 5000
FocusTrapZone mount 1783 1767 5000
FocusTrapZoneNext mount 1852 1857 5000
FocusZone mount 1792 1816 5000
IconButton mount 1766 1740 5000
Label mount 349 349 5000
Layer mount 1991 1988 5000
LayerNext mount 1905 1909 5000
Link mount 475 476 5000 Possible regression
LinkNext mount 490 476 5000
MenuButton mount 1527 1535 5000
MessageBar mount 2164 2146 5000
MessageBarNext mount 2130 2193 5000
Nav mount 3415 3318 1000
OverflowSet mount 1459 1465 5000
OverflowSetNext mount 1102 1080 5000
Panel mount 1532 1523 1000
Persona mount 834 866 1000
Pivot mount 1458 1434 1000
PivotNext mount 1429 1393 1000
PrimaryButton mount 1311 1319 5000
Rating mount 7846 7744 5000
RatingNext mount 7576 7555 5000
SearchBox mount 1263 1308 5000
SearchBoxNext mount 1330 1342 5000
Shimmer mount 2574 2574 5000
ShimmerNext mount 2539 2527 5000
Slider mount 1561 1955 5000 Possible regression
SliderNext mount 1912 1972 5000
SpinButton mount 5030 5053 5000
SpinButtonNext mount 5158 5241 5000
Spinner mount 436 436 5000
SplitButton mount 3264 3248 5000
Stack mount 548 532 5000
StackWithIntrinsicChildren mount 1932 1917 5000
StackWithTextChildren mount 5009 5022 5000
SwatchColorPicker mount 10583 10417 5000
SwatchColorPickerNext mount 10488 10404 5000
TagPicker mount 2795 2768 5000
TeachingBubble mount 52889 52853 5000
TeachingBubbleNext mount 11839 11849 5000
Text mount 457 428 5000
TextField mount 1447 1381 5000
ThemeProvider mount 3241 3297 5000
ThemeProvider virtual-rerender 611 642 5000
Toggle mount 811 838 5000
ToggleNext mount 841 815 5000
button mount 123 117 5000

Perf Analysis (Fluent)

Perf comparison
Status Scenario Fluent TPI Fabric TPI Ratio Iterations Ticks
🎯 Avatar.Fluent 0.47 0.51 0.92:1 2000 948
🦄 Button.Fluent 0.12 0.21 0.57:1 5000 611
🔧 Checkbox.Fluent 0.67 0.35 1.91:1 1000 667
🎯 Dialog.Fluent 0.17 0.23 0.74:1 5000 857
🔧 Dropdown.Fluent 3.12 0.54 5.78:1 1000 3120
🔧 Icon.Fluent 0.15 0.06 2.5:1 5000 740
🦄 Image.Fluent 0.08 0.12 0.67:1 5000 392
🔧 Slider.Fluent 1.65 0.45 3.67:1 1000 1646
🔧 Text.Fluent 0.08 0.03 2.67:1 5000 403
🦄 Tooltip.Fluent 0.12 22.71 0.01:1 5000 595

🔧 Needs work     🎯 On target     🦄 Amazing

Perf tests with no regressions
Scenario Current PR Ticks Baseline Ticks Ratio
FlexMinimalPerf.default 346 316 1.09:1
DividerMinimalPerf.default 414 383 1.08:1
ListWith60ListItems.default 1044 969 1.08:1
ListMinimalPerf.default 545 510 1.07:1
RefMinimalPerf.default 264 246 1.07:1
TextAreaMinimalPerf.default 549 513 1.07:1
Text.Fluent 403 377 1.07:1
LabelMinimalPerf.default 470 445 1.06:1
ListNestedPerf.default 629 596 1.06:1
AccordionMinimalPerf.default 175 166 1.05:1
AlertMinimalPerf.default 346 331 1.05:1
ButtonMinimalPerf.default 195 185 1.05:1
ChatDuplicateMessagesPerf.default 453 432 1.05:1
DropdownManyItemsPerf.default 788 753 1.05:1
TableMinimalPerf.default 444 421 1.05:1
ButtonOverridesMissPerf.default 1829 1760 1.04:1
GridMinimalPerf.default 375 362 1.04:1
RadioGroupMinimalPerf.default 482 462 1.04:1
Avatar.Fluent 948 914 1.04:1
AttachmentSlotsPerf.default 1202 1165 1.03:1
HeaderMinimalPerf.default 413 400 1.03:1
LayoutMinimalPerf.default 447 436 1.03:1
SegmentMinimalPerf.default 419 408 1.03:1
SplitButtonMinimalPerf.default 4002 3899 1.03:1
StatusMinimalPerf.default 769 749 1.03:1
ChatMinimalPerf.default 682 671 1.02:1
HeaderSlotsPerf.default 853 834 1.02:1
InputMinimalPerf.default 1372 1347 1.02:1
PortalMinimalPerf.default 175 171 1.02:1
CustomToolbarPrototype.default 4249 4167 1.02:1
Tooltip.Fluent 595 581 1.02:1
CardMinimalPerf.default 609 603 1.01:1
CarouselMinimalPerf.default 491 484 1.01:1
CheckboxMinimalPerf.default 3016 2980 1.01:1
ListCommonPerf.default 706 700 1.01:1
ProviderMinimalPerf.default 1078 1065 1.01:1
ReactionMinimalPerf.default 432 427 1.01:1
SkeletonMinimalPerf.default 452 449 1.01:1
TextMinimalPerf.default 381 379 1.01:1
TreeMinimalPerf.default 924 919 1.01:1
ButtonUseCssPerf.default 865 867 1:1
ButtonUseCssNestingPerf.default 1135 1134 1:1
FormMinimalPerf.default 455 455 1:1
MenuMinimalPerf.default 907 908 1:1
PopupMinimalPerf.default 728 731 1:1
SliderMinimalPerf.default 1632 1633 1:1
IconMinimalPerf.default 709 712 1:1
Button.Fluent 611 612 1:1
Dropdown.Fluent 3120 3134 1:1
Slider.Fluent 1646 1647 1:1
ButtonSlotsPerf.default 624 628 0.99:1
DropdownMinimalPerf.default 3164 3188 0.99:1
ImageMinimalPerf.default 410 415 0.99:1
ItemLayoutMinimalPerf.default 1314 1334 0.99:1
TableManyItemsPerf.default 2223 2246 0.99:1
TooltipMinimalPerf.default 871 882 0.99:1
AnimationMinimalPerf.default 429 436 0.98:1
DialogMinimalPerf.default 820 840 0.98:1
EmbedMinimalPerf.default 1992 2030 0.98:1
LoaderMinimalPerf.default 788 801 0.98:1
MenuButtonMinimalPerf.default 1678 1711 0.98:1
ToolbarMinimalPerf.default 982 1007 0.98:1
Checkbox.Fluent 667 681 0.98:1
Dialog.Fluent 857 873 0.98:1
Icon.Fluent 740 755 0.98:1
AvatarMinimalPerf.default 491 504 0.97:1
ProviderMergeThemesPerf.default 2150 2219 0.97:1
AttachmentMinimalPerf.default 190 198 0.96:1
BoxMinimalPerf.default 376 392 0.96:1
ChatWithPopoverPerf.default 501 520 0.96:1
TreeWith60ListItems.default 212 224 0.95:1
VideoMinimalPerf.default 646 682 0.95:1
Image.Fluent 392 414 0.95:1

@ecraig12345 ecraig12345 merged commit cbc0b9a into microsoft:master Oct 1, 2020
@ecraig12345 ecraig12345 deleted the merge-oufr-react branch October 1, 2020 19:24
ecraig12345 added a commit to ecraig12345/office-ui-fabric-react that referenced this pull request Oct 2, 2020
@ecraig12345 ecraig12345 mentioned this pull request Oct 2, 2020
msft-github-bot pushed a commit that referenced this pull request Oct 3, 2020
Delete the accidental extra copy of ComponentConformance.test.tsx that was causing size auditor to fail after #15271.

And somewhat related changes:
- Update release notes to reflect changes from #15271 
- Clean up test-bundles package, including deleting stuff which appeared to only be used in a previous implementation of bundle size measurement. None of these things turned out to be the problem, but I made these changes while investigating.
@msft-github-bot
Copy link
Contributor

🎉@fluentui/webpack-utilities@v8.0.0-beta.0 has been released which incorporates this pull request.:tada:

Handy links:

@msft-github-bot
Copy link
Contributor

🎉@fluentui/theme-samples@v8.0.0-beta.0 has been released which incorporates this pull request.:tada:

Handy links:

@msft-github-bot
Copy link
Contributor

🎉@fluentui/style-utilities@v8.0.0-beta.0 has been released which incorporates this pull request.:tada:

Handy links:

@msft-github-bot
Copy link
Contributor

🎉@fluentui/eslint-plugin@v1.0.0-beta.0 has been released which incorporates this pull request.:tada:

Handy links:

@msft-github-bot
Copy link
Contributor

🎉@fluentui/react-slider@v1.0.0-beta.0 has been released which incorporates this pull request.:tada:

Handy links:

@msft-github-bot
Copy link
Contributor

🎉@fluentui/azure-themes@v8.0.0-beta.0 has been released which incorporates this pull request.:tada:

Handy links:

@msft-github-bot
Copy link
Contributor

🎉@fluentui/react-flex@v0.2.0 has been released which incorporates this pull request.:tada:

Handy links:

@msft-github-bot
Copy link
Contributor

🎉@fluentui/react-cards@v1.0.0-beta.0 has been released which incorporates this pull request.:tada:

Handy links:

@msft-github-bot
Copy link
Contributor

🎉@fluentui/react-charting@v5.0.0-beta.0 has been released which incorporates this pull request.:tada:

Handy links:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants