-
Notifications
You must be signed in to change notification settings - Fork 2.8k
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(typings): create environment package to provide strict type checking for process.env #20603
feat(typings): create environment package to provide strict type checking for process.env #20603
Conversation
📊 Bundle size report🤖 This report was generated against f8113b88c86cccedd5f232640ef70c4e6282bca8 |
Asset size changesSize Auditor did not detect a change in bundle size for any component! Baseline commit: f8113b88c86cccedd5f232640ef70c4e6282bca8 (build) |
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 6ebeb19:
|
Perf Analysis (
|
Scenario | Render type | Master Ticks | PR Ticks | Iterations | Status |
---|---|---|---|---|---|
Avatar | mount | 1089 | 1047 | 5000 | |
BaseButton | mount | 1071 | 1075 | 5000 | |
Breadcrumb | mount | 2799 | 2779 | 1000 | |
ButtonNext | mount | 568 | 551 | 5000 | |
Checkbox | mount | 1745 | 1766 | 5000 | |
CheckboxBase | mount | 1494 | 1513 | 5000 | |
ChoiceGroup | mount | 5444 | 5383 | 5000 | |
ComboBox | mount | 1067 | 1064 | 1000 | |
CommandBar | mount | 11024 | 10841 | 1000 | |
ContextualMenu | mount | 9143 | 9190 | 1000 | |
DefaultButton | mount | 1296 | 1289 | 5000 | |
DetailsRow | mount | 4238 | 4294 | 5000 | |
DetailsRowFast | mount | 4236 | 4210 | 5000 | |
DetailsRowNoStyles | mount | 4035 | 4024 | 5000 | |
Dialog | mount | 2737 | 2751 | 1000 | |
DocumentCardTitle | mount | 185 | 196 | 1000 | |
Dropdown | mount | 3598 | 3599 | 5000 | |
FluentProviderNext | mount | 4007 | 4069 | 5000 | |
FluentProviderWithTheme | mount | 245 | 229 | 10 | |
FluentProviderWithTheme | virtual-rerender | 118 | 115 | 10 | |
FluentProviderWithTheme | virtual-rerender-with-unmount | 258 | 281 | 10 | |
FocusTrapZone | mount | 2006 | 2015 | 5000 | |
FocusZone | mount | 1994 | 1894 | 5000 | |
IconButton | mount | 1986 | 2058 | 5000 | |
Label | mount | 383 | 395 | 5000 | |
Layer | mount | 3345 | 3280 | 5000 | |
Link | mount | 558 | 536 | 5000 | |
MakeStyles | mount | 1967 | 1927 | 50000 | |
MenuButton | mount | 1748 | 1712 | 5000 | |
MessageBar | mount | 2184 | 2187 | 5000 | |
Nav | mount | 3733 | 3694 | 1000 | |
OverflowSet | mount | 1231 | 1252 | 5000 | |
Panel | mount | 2675 | 2645 | 1000 | |
Persona | mount | 962 | 930 | 1000 | |
Pivot | mount | 1570 | 1596 | 1000 | |
PrimaryButton | mount | 1460 | 1446 | 5000 | |
Rating | mount | 8969 | 8881 | 5000 | |
SearchBox | mount | 1587 | 1527 | 5000 | |
Shimmer | mount | 2904 | 2924 | 5000 | |
Slider | mount | 2176 | 2160 | 5000 | |
SpinButton | mount | 5551 | 5483 | 5000 | |
Spinner | mount | 465 | 485 | 5000 | |
SplitButton | mount | 3562 | 3515 | 5000 | |
Stack | mount | 573 | 597 | 5000 | |
StackWithIntrinsicChildren | mount | 2011 | 2010 | 5000 | |
StackWithTextChildren | mount | 5439 | 5410 | 5000 | |
SwatchColorPicker | mount | 11575 | 11414 | 5000 | |
TagPicker | mount | 3099 | 3021 | 5000 | |
TeachingBubble | mount | 14003 | 13944 | 5000 | |
Text | mount | 490 | 494 | 5000 | |
TextField | mount | 1606 | 1605 | 5000 | |
ThemeProvider | mount | 1305 | 1312 | 5000 | |
ThemeProvider | virtual-rerender | 642 | 657 | 5000 | |
ThemeProvider | virtual-rerender-with-unmount | 2076 | 2079 | 5000 | |
Toggle | mount | 932 | 936 | 5000 | |
buttonNative | mount | 133 | 148 | 5000 |
Perf Analysis (@fluentui/react-northstar
)
Perf tests with no regressions
Scenario | Current PR Ticks | Baseline Ticks | Ratio |
---|---|---|---|
ReactionMinimalPerf.default | 477 | 425 | 1.12:1 |
IconMinimalPerf.default | 754 | 685 | 1.1:1 |
ButtonMinimalPerf.default | 210 | 192 | 1.09:1 |
PortalMinimalPerf.default | 204 | 188 | 1.09:1 |
AvatarMinimalPerf.default | 237 | 221 | 1.07:1 |
BoxMinimalPerf.default | 417 | 390 | 1.07:1 |
RefMinimalPerf.default | 265 | 250 | 1.06:1 |
TextMinimalPerf.default | 412 | 388 | 1.06:1 |
GridMinimalPerf.default | 411 | 390 | 1.05:1 |
HeaderSlotsPerf.default | 913 | 869 | 1.05:1 |
LabelMinimalPerf.default | 448 | 428 | 1.05:1 |
ListWith60ListItems.default | 759 | 725 | 1.05:1 |
CardMinimalPerf.default | 660 | 636 | 1.04:1 |
CarouselMinimalPerf.default | 538 | 516 | 1.04:1 |
ChatWithPopoverPerf.default | 446 | 430 | 1.04:1 |
FormMinimalPerf.default | 521 | 499 | 1.04:1 |
LayoutMinimalPerf.default | 430 | 414 | 1.04:1 |
TreeWith60ListItems.default | 211 | 203 | 1.04:1 |
ChatMinimalPerf.default | 751 | 732 | 1.03:1 |
FlexMinimalPerf.default | 330 | 319 | 1.03:1 |
InputMinimalPerf.default | 1472 | 1425 | 1.03:1 |
LoaderMinimalPerf.default | 792 | 770 | 1.03:1 |
MenuMinimalPerf.default | 967 | 942 | 1.03:1 |
MenuButtonMinimalPerf.default | 1880 | 1820 | 1.03:1 |
StatusMinimalPerf.default | 773 | 751 | 1.03:1 |
TableMinimalPerf.default | 475 | 461 | 1.03:1 |
TreeMinimalPerf.default | 936 | 905 | 1.03:1 |
AlertMinimalPerf.default | 330 | 322 | 1.02:1 |
DropdownMinimalPerf.default | 3433 | 3382 | 1.02:1 |
ItemLayoutMinimalPerf.default | 1400 | 1371 | 1.02:1 |
ListMinimalPerf.default | 603 | 593 | 1.02:1 |
ProviderMinimalPerf.default | 1287 | 1259 | 1.02:1 |
SliderMinimalPerf.default | 1881 | 1844 | 1.02:1 |
TableManyItemsPerf.default | 2232 | 2178 | 1.02:1 |
CustomToolbarPrototype.default | 4546 | 4440 | 1.02:1 |
ToolbarMinimalPerf.default | 1081 | 1063 | 1.02:1 |
TooltipMinimalPerf.default | 1196 | 1170 | 1.02:1 |
AnimationMinimalPerf.default | 466 | 461 | 1.01:1 |
ButtonOverridesMissPerf.default | 2005 | 1992 | 1.01:1 |
EmbedMinimalPerf.default | 4744 | 4710 | 1.01:1 |
PopupMinimalPerf.default | 649 | 640 | 1.01:1 |
ProviderMergeThemesPerf.default | 1855 | 1837 | 1.01:1 |
SkeletonMinimalPerf.default | 406 | 400 | 1.01:1 |
SplitButtonMinimalPerf.default | 4797 | 4772 | 1.01:1 |
CheckboxMinimalPerf.default | 2992 | 2985 | 1:1 |
HeaderMinimalPerf.default | 412 | 411 | 1:1 |
ListNestedPerf.default | 656 | 653 | 1:1 |
RadioGroupMinimalPerf.default | 513 | 513 | 1:1 |
AttachmentSlotsPerf.default | 1197 | 1209 | 0.99:1 |
ButtonSlotsPerf.default | 620 | 629 | 0.99:1 |
DatepickerMinimalPerf.default | 5994 | 6070 | 0.99:1 |
DialogMinimalPerf.default | 835 | 846 | 0.99:1 |
DropdownManyItemsPerf.default | 800 | 812 | 0.99:1 |
SegmentMinimalPerf.default | 390 | 393 | 0.99:1 |
VideoMinimalPerf.default | 730 | 735 | 0.99:1 |
ListCommonPerf.default | 756 | 769 | 0.98:1 |
AccordionMinimalPerf.default | 190 | 196 | 0.97:1 |
AttachmentMinimalPerf.default | 200 | 207 | 0.97:1 |
ChatDuplicateMessagesPerf.default | 330 | 339 | 0.97:1 |
ImageMinimalPerf.default | 442 | 454 | 0.97:1 |
RosterPerf.default | 1335 | 1380 | 0.97:1 |
DividerMinimalPerf.default | 410 | 426 | 0.96:1 |
TextAreaMinimalPerf.default | 583 | 613 | 0.95:1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
508ec3c
to
3648642
Compare
…pe checking for process.env
…rict type checking for process.env
…declaration without leaking globals
c86cc51
to
6ebeb19
Compare
redone whole solution - changes not valid
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, great stuff 🎉
…king for process.env (microsoft#20603) * feat(typings): create environment package to provide strict type checking for process.env * feat(tools): add new 'environment' global type to migration generator * fixup! feat(typings): create environment package to provide strict type checking for process.env * fixup! fixup! feat(typings): create environment package to provide strict type checking for process.env * fixup! feat(tools): add new 'environment' global type to migration generator * chore(typings): use solution config file to proerly check extensions/declaration without leaking globals * feat(typings): make environment globals work everywhere with proper DX
Pull request checklist
process.env
#20602$ yarn change
Description of changes
process.env
in vNext packages (see the DEMO)typings
package so tsc passes ( no global leaks )migrate-converged-pkg
generatorDemo:
BEFORE
before.mov
AFTER
after.mov
Focus areas to test
(optional)