Primer React v35 RC - Technical Preview #1918
Locked
rezrah
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
The Primer team are excited to share some major updates that will arrive in
v35of@primer/react.This technical preview will cover:
v35v35yourself todayv35will shipOverview
Primer React is now used in many high-profile projects, both internally at GitHub and in the wider public. Our approach to managing releases will evolve to match the expectations of our community. This technical preview will provide early access to the next
majorrelease of@primer/reactand provide insight into how you can prepare for an eventual upgrade.The Primer team will look to publish release candidates and technical previews ahead of
majorupdates to the library going forward. The intention here is to batchmajorchanges into fewer releases, thereby offering more longer-term stability to activemajorversions and ensure that the community have adequate time to prepare for future breaking changes.🔧 Try it today
You can try
v35RC today on thenext-majorrelease channel.This release candidate is available for preview and feedback purposes only. We don’t recommend using this in production.
OR
Try
@primer/react@v35on StackBlitz ⚡📆 Release schedule
Minor and Patch updates to
v34will continue to roll out independently tov35✨ New in
v35CheckboxGroupRadioGroupv35will contain a handful of breaking changes.Graduations
PageLayoutDeprecations
All components marked for deprecation will:
Read more on our deprecations process here.
Summary of changes
Are you using any of the components below? Skip to the relevant section below to learn about what's changing.
ActionListActionMenuBorderBoxButtonDropdownDropdownMenuFormGroup,InputFieldandChoiceInputFieldGridPositionSelectMenu🔗 ActionList
The new
ActionListwill ship with a composable API and improved accessibility, including better support for assistive technologies and keyboard users.Upgrade to the new
ActionListby referring to the examples in our documentation.or
Continue using the deprecated
ActionList:Alternatively, try our
codemodto change yourimportstatements automatically ⚡🔗 ActionMenu
The new
ActionMenuwill ship with a composable API, visual updates and accessibility fixes built on top of ActionList and Button, which will also be included inv35.Upgrade to the new
ActionMenuby referring to the examples in our documentation.or
Continue using the deprecated
ActionMenu:Alternatively, try our
codemodto change yourimportstatements automatically ⚡🔗 Button
Buttonwill be replaced with a newer, more accessible equivalent that includes an improved API for better ergonomics.New features include improvements to
sizehandling and built-in support for leading and trailing visuals.Upgrade to the new
Buttonby referring to the examples in our documentation.or
Continue using the deprecated
Button:Alternatively, try our
codemodto change yourimportstatements automatically ⚡🔗 DropdownMenu
DropdownMenuandDropdownMenu2are being deprecated in favour ofActionMenu.Upgrade to the new
ActionMenuby referring to the examples in our documentation.or
Continue using the deprecated
DropdownMenu:Alternatively, try our
codemodto change yourimportstatements automatically ⚡🔗 PageLayout
PageLayout is now being graduated from the
draftsbundle to themainbundle.Use
PageLayoutby referring to the examples in our documentation.🔗 Label
The Label component has been updated to align with Primer ViewComponents' Label component. Now the React component is consistent with ViewComponents.
Major changes in the new Label component:
mediumsize - onlysmallandlargeoutlineprop has been removedsxpropIf you were using the
Labelcomponent to render issue/PR labels, use the IssueLabelToken component instead.Arbitrary label
Issue label
Upgrade to the new
Labelby referring to the Label and IssueTokenLabel examples in our documentation.or
Continue using the deprecated
Label:Alternatively, try our
codemodto change yourimportstatements automatically ⚡🔗 FormGroup, InputField and ChoiceInputField
The
FormControlcomponent will be used to deprecate theFormGroup,InputField, andChoiceInputFieldcomponents. It has the ability to render contextual content with your inputs: labels, validation statuses, captions. It also handles the ARIA attributes that make the form controls accessible to assistive technology.Upgrade to the new
FormControlcomponent by referring to the examples in our documentation.or
Continue using the deprecated
FormGroup,ChoiceInputFieldorInputField:🔗 SelectMenu
SelectMenu will move from the
mainbundle into thedeprecatedbundle.We recommend using
ActionMenuas a longer-term replacement.Upgrade from
SelectMenutoActionMenuby referring to the example above or our documentation.or
Continue using the deprecated
SelectMenu:Alternatively, try our
codemodto change yourimportstatements automatically ⚡🔗 Dropdown
Dropdown will move from the
mainbundle into thedeprecatedbundle.We recommend using
ActionMenuas a longer-term replacement.Upgrade from
DropdowntoActionMenuby referring to the example above or our documentation.or
Continue using the deprecated
Dropdown:Alternatively, try our
codemodto change yourimportstatements automatically ⚡🔗 BorderBox
BorderBox will move from the
mainbundle into thedeprecatedbundle.We recommend using
Boxas a longer-term alternative.🔗 Flex
Flex will move from the
mainbundle into thedeprecatedbundle.We recommend using
Boxas a longer-term alternative.🔗 Grid
Grid will move from the
mainbundle into thedeprecatedbundle.We recommend using
PageLayoutas a longer-term alternative.🔗 Position
Position will move from the
mainbundle into thedeprecatedbundle.We recommend using
Boxas a longer-term alternative.Reporting issues
Found a bug or problem while trying
v35? Please raise an issue here.Thanks for reading this technical preview. We look forward to shipping this release soon 🚀
Beta Was this translation helpful? Give feedback.
All reactions