Skip to content

Conversation

@Hotell
Copy link
Contributor

@Hotell Hotell commented Aug 25, 2022

Pre-requirements:

Description

  • adds more scripts subfolders to ts-solution config and fixes types/logic (please check commit messages for more info)
  • renames updateReleaseNotes to kebab case (more human readable and package valid casing)
  • applies single version policy to gulp and related packages

Related Issue(s)

Fixes partially #24349

@github-actions github-actions bot added this to the July Project Cycle Q3 2022 milestone Aug 25, 2022
@Hotell Hotell changed the title Hotell/build/scripts/ts solution config v2 feat(scripts): enable strict checking for additional sub-folders(packages) Aug 25, 2022
@Hotell Hotell assigned Hotell and unassigned micahgodbolt Aug 25, 2022
@codesandbox-ci
Copy link

codesandbox-ci bot commented Aug 25, 2022

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

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

@size-auditor
Copy link

size-auditor bot commented Aug 25, 2022

Asset size changes

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

Baseline commit: e3e67958e604ceb8b36e1954ba595a0f50a196fd (build)

@fabricteam
Copy link
Collaborator

fabricteam commented Aug 25, 2022

Perf Analysis (@fluentui/react-components)

No significant results to display.

All results

Scenario Render type Master Ticks PR Ticks Iterations Status
Avatar mount 1316 1325 5000
Button mount 953 948 5000
FluentProvider mount 1569 1564 5000
FluentProviderWithTheme mount 622 637 10
FluentProviderWithTheme virtual-rerender 590 596 10
FluentProviderWithTheme virtual-rerender-with-unmount 630 622 10
MakeStyles mount 1913 1908 50000
SpinButton mount 2601 2498 5000

@fabricteam
Copy link
Collaborator

fabricteam commented Aug 25, 2022

📊 Bundle size report

Unchanged fixtures
Package & Exports Size (minified/GZIP)
global-context
createContext
533 B
341 B
global-context
createContextSelector
554 B
348 B
priority-overflow
createOverflowManager
2.936 kB
1.212 kB
react-accordion
Accordion (including children components)
78.914 kB
24.06 kB
react-alert
Alert
83.511 kB
20.921 kB
react-avatar
Avatar
48.381 kB
13.696 kB
react-avatar
AvatarGroup
14.95 kB
5.989 kB
react-avatar
AvatarGroupItem
68.349 kB
19.039 kB
react-badge
Badge
22.6 kB
7.205 kB
react-badge
CounterBadge
23.503 kB
7.497 kB
react-badge
PresenceBadge
24.05 kB
7.067 kB
react-button
Button
36.119 kB
9.647 kB
react-button
CompoundButton
43.144 kB
10.86 kB
react-button
MenuButton
38.813 kB
10.551 kB
react-button
SplitButton
46.228 kB
11.933 kB
react-button
ToggleButton
51.888 kB
11.127 kB
react-card
Card - All
67.002 kB
19.261 kB
react-card
Card
62.684 kB
18.177 kB
react-card
CardFooter
8.561 kB
3.601 kB
react-card
CardHeader
9.604 kB
3.94 kB
react-card
CardPreview
8.662 kB
3.656 kB
react-combobox
Combobox (including child components)
74.636 kB
24.186 kB
react-combobox
Dropdown (including child components)
74.236 kB
24.086 kB
react-components
react-components: Accordion, Button, FluentProvider, Image, Menu, Popover
188.689 kB
52.37 kB
react-components
react-components: FluentProvider & webLightTheme
33.394 kB
11.007 kB
react-dialog
Dialog (including children components)
82.755 kB
24.581 kB
react-divider
Divider
16.459 kB
5.902 kB
react-image
Image
10.78 kB
4.264 kB
react-input
Input
23.757 kB
7.704 kB
react-label
Label
9.338 kB
3.86 kB
react-link
Link
11.784 kB
4.867 kB
react-menu
Menu (including children components)
116.589 kB
35.777 kB
react-menu
Menu (including selectable components)
119.658 kB
36.296 kB
react-overflow
hooks only
10.685 kB
4.104 kB
react-popover
Popover
102.963 kB
31.553 kB
react-portal
Portal
10.576 kB
3.875 kB
react-portal-compat
PortalCompatProvider
5.851 kB
1.964 kB
react-positioning
usePositioning
19.7 kB
7.404 kB
react-provider
FluentProvider
15.755 kB
5.883 kB
react-radio
Radio
35.56 kB
11.929 kB
react-radio
RadioGroup
14.248 kB
5.7 kB
react-select
Select
20.846 kB
7.346 kB
react-slider
Slider
31.526 kB
10.046 kB
react-spinbutton
SpinButton
44.102 kB
12.425 kB
react-spinner
Spinner
19.977 kB
6.438 kB
react-switch
Switch
32.097 kB
10.27 kB
react-text
Text - Default
11.782 kB
4.605 kB
react-text
Text - Wrappers
15.092 kB
5.044 kB
react-textarea
Textarea
25.013 kB
8.133 kB
react-theme
Single theme token import
69 B
89 B
react-theme
Teams: all themes
29.65 kB
6.444 kB
react-theme
Teams: Light theme
17.486 kB
5.057 kB
react-tooltip
Tooltip
41.535 kB
14.639 kB
react-utilities
SSRProvider
180 B
159 B
🤖 This report was generated against e3e67958e604ceb8b36e1954ba595a0f50a196fd

@fabricteam
Copy link
Collaborator

fabricteam commented Aug 25, 2022

Perf Analysis (@fluentui/react-northstar)

Perf tests with no regressions
Scenario Current PR Ticks Baseline Ticks Ratio
AvatarMinimalPerf.default 164 149 1.1:1
HeaderMinimalPerf.default 300 279 1.08:1
RefMinimalPerf.default 182 170 1.07:1
AttachmentMinimalPerf.default 126 119 1.06:1
DividerMinimalPerf.default 303 287 1.06:1
ItemLayoutMinimalPerf.default 1008 953 1.06:1
LayoutMinimalPerf.default 303 285 1.06:1
RadioGroupMinimalPerf.default 383 361 1.06:1
ListMinimalPerf.default 433 413 1.05:1
TextMinimalPerf.default 285 272 1.05:1
ListCommonPerf.default 535 516 1.04:1
PortalMinimalPerf.default 151 145 1.04:1
TableMinimalPerf.default 342 329 1.04:1
AttachmentSlotsPerf.default 907 884 1.03:1
CheckboxMinimalPerf.default 1763 1709 1.03:1
GridMinimalPerf.default 274 267 1.03:1
MenuMinimalPerf.default 722 702 1.03:1
TextAreaMinimalPerf.default 389 376 1.03:1
TooltipMinimalPerf.default 1997 1943 1.03:1
ButtonMinimalPerf.default 127 125 1.02:1
ChatWithPopoverPerf.default 313 306 1.02:1
EmbedMinimalPerf.default 3090 3039 1.02:1
PopupMinimalPerf.default 537 528 1.02:1
CustomToolbarPrototype.default 2299 2249 1.02:1
TreeMinimalPerf.default 666 651 1.02:1
VideoMinimalPerf.default 605 591 1.02:1
ButtonOverridesMissPerf.default 1099 1090 1.01:1
ChatDuplicateMessagesPerf.default 235 232 1.01:1
DatepickerMinimalPerf.default 4925 4865 1.01:1
DialogMinimalPerf.default 641 637 1.01:1
DropdownMinimalPerf.default 2261 2247 1.01:1
FormMinimalPerf.default 305 303 1.01:1
InputMinimalPerf.default 960 946 1.01:1
MenuButtonMinimalPerf.default 1426 1411 1.01:1
ProviderMergeThemesPerf.default 1072 1064 1.01:1
SegmentMinimalPerf.default 281 277 1.01:1
SkeletonMinimalPerf.default 279 276 1.01:1
IconMinimalPerf.default 544 536 1.01:1
TableManyItemsPerf.default 1572 1549 1.01:1
AnimationMinimalPerf.default 438 438 1:1
CardMinimalPerf.default 432 431 1:1
CarouselMinimalPerf.default 384 385 1:1
FlexMinimalPerf.default 228 229 1:1
ListNestedPerf.default 445 447 1:1
RosterPerf.default 1807 1803 1:1
SplitButtonMinimalPerf.default 3636 3652 1:1
AlertMinimalPerf.default 218 220 0.99:1
DropdownManyItemsPerf.default 544 550 0.99:1
HeaderSlotsPerf.default 626 634 0.99:1
LabelMinimalPerf.default 314 318 0.99:1
ProviderMinimalPerf.default 340 343 0.99:1
ReactionMinimalPerf.default 308 310 0.99:1
SliderMinimalPerf.default 1348 1360 0.99:1
StatusMinimalPerf.default 556 560 0.99:1
ToolbarMinimalPerf.default 750 756 0.99:1
BoxMinimalPerf.default 276 281 0.98:1
ButtonSlotsPerf.default 451 460 0.98:1
ListWith60ListItems.default 501 511 0.98:1
ChatMinimalPerf.default 590 607 0.97:1
ImageMinimalPerf.default 318 327 0.97:1
LoaderMinimalPerf.default 561 579 0.97:1
AccordionMinimalPerf.default 117 124 0.94:1
TreeWith60ListItems.default 130 138 0.94:1

@fabricteam
Copy link
Collaborator

fabricteam commented Aug 25, 2022

Perf Analysis (@fluentui/react)

No significant results to display.

All results

Scenario Render type Master Ticks PR Ticks Iterations Status
BaseButton mount 1211 1200 5000
Breadcrumb mount 2777 2794 1000
Checkbox mount 2666 2636 5000
CheckboxBase mount 2371 2371 5000
ChoiceGroup mount 4205 4159 5000
ComboBox mount 1171 1166 1000
CommandBar mount 9243 9151 1000
ContextualMenu mount 10086 9996 1000
DefaultButton mount 1377 1352 5000
DetailsRow mount 3370 3364 5000
DetailsRowFast mount 3381 3357 5000
DetailsRowNoStyles mount 3269 3225 5000
Dialog mount 2944 2984 1000
DocumentCardTitle mount 597 583 1000
Dropdown mount 3189 3196 5000
FocusTrapZone mount 1967 1953 5000
FocusZone mount 1900 1933 5000
GroupedList mount 47384 53081 2
GroupedList virtual-rerender 22822 22894 2
GroupedList virtual-rerender-with-unmount 81564 80951 2
GroupedListV2 mount 553 568 2
GroupedListV2 virtual-rerender 527 518 2
GroupedListV2 virtual-rerender-with-unmount 571 555 2
IconButton mount 1802 1797 5000
Label mount 744 742 5000
Layer mount 4150 4088 5000
Link mount 864 848 5000
MenuButton mount 1612 1611 5000
MessageBar mount 2306 2340 5000
Nav mount 3054 3033 1000
OverflowSet mount 1416 1413 5000
Panel mount 2497 2488 1000
Persona mount 1242 1256 1000
Pivot mount 1532 1507 1000
PrimaryButton mount 1492 1498 5000
Rating mount 6994 6933 5000
SearchBox mount 1489 1520 5000
Shimmer mount 2905 2897 5000
Slider mount 2124 2071 5000
SpinButton mount 4286 4293 5000
Spinner mount 831 844 5000
SplitButton mount 2834 2801 5000
Stack mount 894 896 5000
StackWithIntrinsicChildren mount 2238 2244 5000
StackWithTextChildren mount 4907 4928 5000
SwatchColorPicker mount 9602 9513 5000
TagPicker mount 2335 2349 5000
TeachingBubble mount 74509 74541 5000
Text mount 815 814 5000
TextField mount 1543 1557 5000
ThemeProvider mount 1442 1444 5000
ThemeProvider virtual-rerender 1137 1147 5000
ThemeProvider virtual-rerender-with-unmount 1999 2000 5000
Toggle mount 1124 1130 5000
buttonNative mount 532 545 5000

@DustyTheBot
Copy link

DustyTheBot commented Aug 26, 2022

Warnings
⚠️ There are no updates provided to CHANGELOG. Ensure there are no publicly visible changes introduced by this PR.

Generated by 🚫 dangerJS against a3f0054

@Hotell Hotell force-pushed the hotell/build/scripts/ts-solution-config-v2 branch from 1dc09f9 to 0791945 Compare August 29, 2022 12:05
'error',
{ devDependencies: ['**/*-test.ts*', '**/*.test.ts*', '*.config.js', 'gulpfile.ts', 'just.config.ts'] },
{
packageDir: ['.', workspaceRoot],
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

enablement for single version policy for devDeps

"geckodriver": "3.0.2",
"glob": "7.2.0",
"gulp": "^4.0.2",
"gulp": "4.0.2",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

moved from /scripts

},
"devDependencies": {
"@fluentui/scripts": "^1.0.0",
"gulp": "^4.0.2"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

moved to root package.json (single version policy)

@Hotell Hotell force-pushed the hotell/build/scripts/ts-solution-config-v2 branch from 5f2c264 to ae43638 Compare September 19, 2022 11:54
import { findGitRoot } from '../monorepo/index';
import { findGitRoot, PackageJson } from '../monorepo';

export function fluentuiLernaPublish(bumpType, skipConfirm = false, npmTagForCanary = 'beta') {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no need to have this as public API when its not used

};

const jest = (config: JestPluginConfig) => cb => {
const jest = (config: JestPluginConfig) => () => {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unused argument

@Hotell Hotell marked this pull request as ready for review September 19, 2022 14:08
@Hotell Hotell requested review from a team as code owners September 19, 2022 14:08
@@ -1,7 +1,8 @@
import type { Change, AddChange } from 'parse-diff';
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are the actual type Danger uses from an implicit dep

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is this comment about ? can you elaborate what's the actionable here ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it was just an info for other reviewers

dependencies:
"@types/node" "*"

"@types/[email protected]":
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why so many yarn.lock changes when moving deps from scripts?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • we now pin to versions that have been used all the time instead of misleading caret
  • some have been bumped to introduce less dupes

@Hotell Hotell force-pushed the hotell/build/scripts/ts-solution-config-v2 branch from 476fe3a to 877f2b6 Compare September 23, 2022 10:16
@Hotell Hotell force-pushed the hotell/build/scripts/ts-solution-config-v2 branch from 877f2b6 to a3f0054 Compare September 23, 2022 10:19
@Hotell Hotell requested a review from ling1726 September 23, 2022 10:22
@Hotell Hotell merged commit f020ac1 into microsoft:master Sep 26, 2022
@Hotell Hotell deleted the hotell/build/scripts/ts-solution-config-v2 branch September 26, 2022 10:48
marcosmoura added a commit to marcosmoura/fluentui that referenced this pull request Sep 28, 2022
* master: (21 commits)
  chore: Migrate react-avatar to use new build (microsoft#24969)
  applying package updates
  chore(react-input, react-textarea): Deprecating filled with shadow appearance variants (microsoft#24900)
  fix: v8 Dropdown no longer sets incorrect and unnecessary aria-activedescendant (microsoft#24593)
  feat: v0 Tooltip migration from v9 (microsoft#24908)
  chore: bump devDeps to fix critical security vulnerability (microsoft#24891)
  Fixing Tree chart issues (microsoft#24752)
  init: new package react-avatar-context (microsoft#24968)
  ci(.github): add issues write permisions to triage-bot worflow (microsoft#24963)
  applying package updates
  fix(Toolbar): close previous submenu when opening another submenu (microsoft#24836)
  fix: update non-focus-trap Popover role to be group (microsoft#24897)
  feat: Avatar's aria label includes 'active' or 'inactive' when using the active prop (microsoft#24901)
  feat(scripts): implement triage-bot module (microsoft#24911)
  chore: bump @octokit/rest to v18 (microsoft#24919)
  stress test: add "build-fixture" command (microsoft#24928)
  BREAKING-CHANGE: new ChatMessageContent for style caching (microsoft#24691)
  bugfix: fix changefile to properly update version of react-components with a patch (microsoft#24949)
  feat(scripts): enable strict checking for additional sub-folders(packages) (microsoft#24526)
  chore: exports DialogContent as unstable (microsoft#24943)
  ...
NotWoods pushed a commit to NotWoods/fluentui that referenced this pull request Nov 18, 2022
…ages) (microsoft#24526)

* chore: move packages to single version policy from scripts

* feat(scripts): enable strict checking for dangerjs

* feat(scripts): enable strict checking for fluentui-publish

* feat(scripts): enable strict checking for github

* feat(scripts): enable strict checking for gulp

* feat(scripts): enable strict checking for prettier

* feat(scripts): enable strict checking for projects-test

* feat(scripts): enable strict checking for puppeteer

* feat(scripts): enable strict checking for updateReleaseNotes

* feat(scripts): improve PackageJson interface

* more scripts ts solution config registration

* chore(scripts): rename updateReleaseNotes to package valid casing

* feat(typings): add json-stable-stringify-without-jsonify declarations

* chore: move packages to single version policy from scripts and add types

* fix(eslint-plugin): properly resolve single-version policy dep issues in react-northstar packages

* generate changefiles

* fix(typings): make ignore-not-found-export-webpack-plugi types valid
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.

5 participants