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

feat(tools): implement prepare-initial-release generator #28505

Merged

Conversation

Hotell
Copy link
Contributor

@Hotell Hotell commented Jul 12, 2023

Previous Behavior

Release phases are done manually by developer

New Behavior

Release phases are now fully automated, by release-package generator:

initial release

yarn nx workspace-generator prepare-initial-release --project @fluentui/react-breadcrumb-preview --phase preview

image

stable release

yarn nx workspace-generator prepare-initial-release --project @fluentui/react-breadcrumb-preview --phase stable

Validation of provided project:

yarn nx workspace-generator prepare-initial-release --project @fuentui/react --phase stable

image

yarn nx workspace-generator prepare-initial-release --project @fuentui/react-text --phase stable
image

Related Issue(s)

@github-actions github-actions bot added this to the July Project Cycle Q3 2023 milestone Jul 12, 2023
@Hotell Hotell changed the title Hotell/release/package release automation feat(tools): implement release-package generator Jul 12, 2023
@fabricteam
Copy link
Collaborator

fabricteam commented Jul 12, 2023

📊 Bundle size report

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.248 kB
1.671 kB
react-accordion
Accordion (including children components)
88.26 kB
26.718 kB
react-alert
Alert
82.565 kB
21.726 kB
react-avatar
Avatar
47.713 kB
14.513 kB
react-avatar
AvatarGroup
15.695 kB
6.314 kB
react-avatar
AvatarGroupItem
63.889 kB
18.993 kB
react-badge
Badge
23.604 kB
7.272 kB
react-badge
CounterBadge
24.506 kB
7.574 kB
react-badge
PresenceBadge
22.227 kB
7.881 kB
react-button
Button
36.792 kB
9.472 kB
react-button
CompoundButton
43.946 kB
10.952 kB
react-button
MenuButton
40.978 kB
10.669 kB
react-button
SplitButton
49.211 kB
12.232 kB
react-button
ToggleButton
55.074 kB
11.368 kB
react-card
Card - All
89.36 kB
25.284 kB
react-card
Card
83.778 kB
23.685 kB
react-card
CardFooter
9.24 kB
3.907 kB
react-card
CardHeader
11.652 kB
4.741 kB
react-card
CardPreview
10.048 kB
4.254 kB
react-checkbox
Checkbox
33.198 kB
10.718 kB
react-combobox
Combobox (including child components)
87.173 kB
28.125 kB
react-combobox
Dropdown (including child components)
85.576 kB
27.723 kB
react-components
react-components: Button, FluentProvider & webLightTheme
65.175 kB
17.915 kB
react-components
react-components: Accordion, Button, FluentProvider, Image, Menu, Popover
210.68 kB
58.781 kB
react-components
react-components: FluentProvider & webLightTheme
36.409 kB
12.003 kB
react-datepicker-compat
DatePicker Compat
223.368 kB
59.265 kB
react-dialog
Dialog (including children components)
92.736 kB
27.579 kB
react-divider
Divider
17.49 kB
6.364 kB
react-field
Field
18.148 kB
6.97 kB
react-image
Image
11.561 kB
4.637 kB
react-infobutton
InfoButton
131.335 kB
40.311 kB
react-infobutton
InfoLabel
134.94 kB
41.443 kB
react-input
Input
24.232 kB
7.781 kB
react-label
Label
10.186 kB
4.253 kB
react-link
Link
12.782 kB
5.247 kB
react-menu
Menu (including children components)
132.673 kB
40.613 kB
react-menu
Menu (including selectable components)
135.437 kB
41.106 kB
react-overflow
hooks only
12.505 kB
4.626 kB
react-persona
Persona
55.267 kB
16.525 kB
react-popover
Popover
119.925 kB
36.895 kB
react-portal
Portal
11.935 kB
4.421 kB
react-portal-compat
PortalCompatProvider
6.473 kB
2.196 kB
react-positioning
usePositioning
24.272 kB
8.866 kB
react-progress
ProgressBar
13.941 kB
5.498 kB
react-provider
FluentProvider
18.129 kB
6.73 kB
react-radio
Radio
26.991 kB
8.626 kB
react-radio
RadioGroup
11.376 kB
4.763 kB
react-select
Select
24.929 kB
8.713 kB
react-slider
Slider
34.87 kB
11.178 kB
react-spinbutton
SpinButton
33.73 kB
10.337 kB
react-spinner
Spinner
21.376 kB
7.029 kB
react-switch
Switch
29.485 kB
9.228 kB
react-table
DataGrid
158.282 kB
43.276 kB
react-table
Table (Primitives only)
44.666 kB
12.442 kB
react-table
Table as DataGrid
132.365 kB
33.849 kB
react-table
Table (Selection only)
77.993 kB
19.245 kB
react-table
Table (Sort only)
76.978 kB
18.973 kB
react-tags-preview
InteractionTag
33.855 kB
9.08 kB
react-tags-preview
Tag
25.936 kB
8.483 kB
react-tags-preview
TagGroup
69.142 kB
20.294 kB
react-text
Text - Default
12.574 kB
4.982 kB
react-text
Text - Wrappers
15.726 kB
5.302 kB
react-textarea
Textarea
27.703 kB
9.126 kB
react-theme
Single theme token import
69 B
89 B
react-theme
Teams: all themes
31.987 kB
6.85 kB
react-theme
Teams: Light theme
18.121 kB
5.194 kB
react-toast
Toast (including Toaster)
78.365 kB
23.67 kB
react-tooltip
Tooltip
47.463 kB
16.655 kB
react-utilities
SSRProvider
180 B
159 B
🤖 This report was generated against c3f4b77f8160185518b1fea6d74be239519fba73

@size-auditor
Copy link

size-auditor bot commented Jul 12, 2023

Asset size changes

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

Baseline commit: c3f4b77f8160185518b1fea6d74be239519fba73 (build)

@codesandbox-ci
Copy link

codesandbox-ci bot commented Jul 12, 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 51400bc:

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

@Hotell Hotell force-pushed the hotell/release/package-release-automation branch from 297b57f to c01d51c Compare July 13, 2023 14:22
@Hotell Hotell force-pushed the hotell/release/package-release-automation branch from 4172afa to 94d2e2c Compare July 14, 2023 09:13
@fabricteam
Copy link
Collaborator

fabricteam commented Jul 14, 2023

Perf Analysis (@fluentui/react-components)

Scenario Render type Master Ticks PR Ticks Iterations Status
FluentProviderWithTheme virtual-rerender 61 59 10 Possible regression
InfoButton mount 13 11 5000 Possible regression
All results

Scenario Render type Master Ticks PR Ticks Iterations Status
Avatar mount 592 568 5000
Button mount 297 299 5000
Field mount 1056 1033 5000
FluentProvider mount 664 633 5000
FluentProviderWithTheme mount 78 88 10
FluentProviderWithTheme virtual-rerender 61 59 10 Possible regression
FluentProviderWithTheme virtual-rerender-with-unmount 70 60 10
InfoButton mount 13 11 5000 Possible regression
MakeStyles mount 880 864 50000
Persona mount 1632 1536 5000
SpinButton mount 1296 1280 5000

@fabricteam
Copy link
Collaborator

fabricteam commented Jul 14, 2023

🕵 fluentuiv8 No visual regressions between this PR and main

@fabricteam
Copy link
Collaborator

fabricteam commented Jul 14, 2023

Perf Analysis (@fluentui/react-northstar)

Perf tests with no regressions
Scenario Current PR Ticks Baseline Ticks Ratio
TreeWith60ListItems.default 93 79 1.18:1
PortalMinimalPerf.default 89 82 1.09:1
BoxMinimalPerf.default 203 189 1.07:1
SkeletonMinimalPerf.default 211 197 1.07:1
HeaderSlotsPerf.default 480 455 1.05:1
VideoMinimalPerf.default 447 424 1.05:1
AlertMinimalPerf.default 165 159 1.04:1
AttachmentMinimalPerf.default 80 77 1.04:1
LoaderMinimalPerf.default 186 178 1.04:1
PopupMinimalPerf.default 352 340 1.04:1
ReactionMinimalPerf.default 220 211 1.04:1
AnimationMinimalPerf.default 301 291 1.03:1
ChatWithPopoverPerf.default 187 182 1.03:1
DropdownManyItemsPerf.default 394 381 1.03:1
LayoutMinimalPerf.default 204 198 1.03:1
RefMinimalPerf.default 112 109 1.03:1
TableManyItemsPerf.default 1130 1101 1.03:1
AvatarMinimalPerf.default 114 112 1.02:1
ButtonOverridesMissPerf.default 660 646 1.02:1
ChatMinimalPerf.default 439 430 1.02:1
DialogMinimalPerf.default 459 448 1.02:1
DividerMinimalPerf.default 207 203 1.02:1
GridMinimalPerf.default 188 184 1.02:1
InputMinimalPerf.default 536 528 1.02:1
ListMinimalPerf.default 309 303 1.02:1
ProviderMergeThemesPerf.default 674 659 1.02:1
ProviderMinimalPerf.default 207 203 1.02:1
SliderMinimalPerf.default 738 720 1.02:1
StatusMinimalPerf.default 399 393 1.02:1
CarouselMinimalPerf.default 264 262 1.01:1
DropdownMinimalPerf.default 1417 1404 1.01:1
EmbedMinimalPerf.default 1880 1858 1.01:1
HeaderMinimalPerf.default 207 204 1.01:1
MenuButtonMinimalPerf.default 962 952 1.01:1
SegmentMinimalPerf.default 193 192 1.01:1
SplitButtonMinimalPerf.default 2308 2292 1.01:1
CustomToolbarPrototype.default 1500 1480 1.01:1
ButtonMinimalPerf.default 86 86 1:1
ButtonSlotsPerf.default 322 322 1:1
CheckboxMinimalPerf.default 1154 1155 1:1
ImageMinimalPerf.default 225 225 1:1
RosterPerf.default 1539 1540 1:1
RadioGroupMinimalPerf.default 260 259 1:1
IconMinimalPerf.default 386 387 1:1
TextMinimalPerf.default 197 197 1:1
ToolbarMinimalPerf.default 540 540 1:1
CardMinimalPerf.default 306 310 0.99:1
FlexMinimalPerf.default 153 155 0.99:1
ItemLayoutMinimalPerf.default 720 726 0.99:1
MenuMinimalPerf.default 506 509 0.99:1
TableMinimalPerf.default 235 238 0.99:1
TooltipMinimalPerf.default 1249 1267 0.99:1
AttachmentSlotsPerf.default 668 684 0.98:1
ChatDuplicateMessagesPerf.default 149 152 0.98:1
ListNestedPerf.default 324 330 0.98:1
TreeMinimalPerf.default 473 481 0.98:1
DatepickerMinimalPerf.default 3649 3758 0.97:1
LabelMinimalPerf.default 220 226 0.97:1
ListCommonPerf.default 394 405 0.97:1
TextAreaMinimalPerf.default 286 294 0.97:1
AccordionMinimalPerf.default 78 81 0.96:1
ListWith60ListItems.default 362 378 0.96:1
FormMinimalPerf.default 213 231 0.92:1

@fabricteam
Copy link
Collaborator

fabricteam commented Jul 14, 2023

🕵 FluentUIV0 No visual regressions between this PR and main

@fabricteam
Copy link
Collaborator

fabricteam commented Jul 14, 2023

🕵 fluentuiv9 No visual regressions between this PR and main

@fabricteam
Copy link
Collaborator

fabricteam commented Jul 14, 2023

Perf Analysis (@fluentui/react)

No significant results to display.

All results

Scenario Render type Master Ticks PR Ticks Iterations Status
BaseButton mount 636 613 5000
Breadcrumb mount 1654 1675 1000
Checkbox mount 1696 1682 5000
CheckboxBase mount 1474 1465 5000
ChoiceGroup mount 2854 2981 5000
ComboBox mount 633 640 1000
CommandBar mount 6185 6235 1000
ContextualMenu mount 11903 12614 1000
DefaultButton mount 739 761 5000
DetailsRow mount 2176 2187 5000
DetailsRowFast mount 2219 2173 5000
DetailsRowNoStyles mount 1988 2006 5000
Dialog mount 2581 2765 1000
DocumentCardTitle mount 230 225 1000
Dropdown mount 1968 1975 5000
FocusTrapZone mount 1132 1132 5000
FocusZone mount 1071 1025 5000
GroupedList mount 41620 41431 2
GroupedList virtual-rerender 19899 19821 2
GroupedList virtual-rerender-with-unmount 50145 50653 2
GroupedListV2 mount 220 228 2
GroupedListV2 virtual-rerender 213 206 2
GroupedListV2 virtual-rerender-with-unmount 224 222 2
IconButton mount 1091 1096 5000
Label mount 330 347 5000
Layer mount 2742 2689 5000
Link mount 379 382 5000
MenuButton mount 941 938 5000
MessageBar mount 21350 21325 5000
Nav mount 1917 1919 1000
OverflowSet mount 775 774 5000
Panel mount 1752 1782 1000
Persona mount 731 765 1000
Pivot mount 856 849 1000
PrimaryButton mount 858 827 5000
Rating mount 4610 4545 5000
SearchBox mount 898 901 5000
Shimmer mount 1880 1856 5000
Slider mount 1357 1336 5000
SpinButton mount 2817 2828 5000
Spinner mount 401 389 5000
SplitButton mount 1789 1834 5000
Stack mount 410 402 5000
StackWithIntrinsicChildren mount 873 850 5000
StackWithTextChildren mount 2623 2665 5000
SwatchColorPicker mount 6093 6104 5000
TagPicker mount 1430 1419 5000
Text mount 365 372 5000
TextField mount 967 933 5000
ThemeProvider mount 826 841 5000
ThemeProvider virtual-rerender 580 583 5000
ThemeProvider virtual-rerender-with-unmount 1290 1263 5000
Toggle mount 608 619 5000
buttonNative mount 190 185 5000

@Hotell Hotell changed the title feat(tools): implement release-package generator feat(tools): implement prepare-initial-release generator Jul 17, 2023
@Hotell Hotell changed the title feat(tools): implement prepare-initial-release generator feat(tools): implement prepare-initial-release generator Jul 17, 2023
@Hotell Hotell merged commit 3207513 into microsoft:master Jul 17, 2023
@Hotell Hotell deleted the hotell/release/package-release-automation branch July 18, 2023 07:32
marcosmoura added a commit to marcosmoura/fluentui that referenced this pull request Jul 18, 2023
* master:
  ci(bundlesize): opt out using --since as lightrail doesnt support this behaviour and needs everything build on every PR (microsoft#28545)
  feat: automatically add v9 package stories to public docsite and correctly create codesandbox demo source code (microsoft#28528)
  applying package updates
  Keytips: Align keytipData with visible instance for dupes (microsoft#28522)
  applying package updates
  V8 Fluent2 Theme: Spinner sizes (microsoft#28512)
  feat: add extra-tiny size value to size prop (microsoft#28249)
  feat(react-infobutton): Remove InfoIcon from react-infobutton (microsoft#28534)
  Made Breadcrumb package public (microsoft#28549)
  X bars showing incorrect data when the values are large- bug 8380 (microsoft#28510)
  feat(tools): implement `prepare-initial-release` generator (microsoft#28505)
  feat: release react-breadcrumb to preview (microsoft#28402)
  applying package updates
  fix: v8 SplitButton and split MenuItem have two touch targets when checkable (microsoft#28523)
  fix(react-infobutton): Apply aria-owns only when the popover is open and cleanup infobutton stories (microsoft#28463)
  fix: Pivot overflow role uses tab (microsoft#28409)
  Migrate react-search to preview (microsoft#28531)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants