-
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
Fluent UI v8 #12770
Comments
I have a question about the "Icons updated to svg" topic. Will icon fonts still be supported? In our application we replaced the fabric icon font with a custom one. We register some of the icons under the same name like the fabric ones so all the fluent-ui react controls are automatically using our icons. Also at runtime we make heavy use of the iconName feature. Our application is plugin based and we need to have access to the whole icon library at runtime because we don't know in advance which icon is used from the plugins. For us the current icon font solution is perfect. It would be nice if we can continue to use it (atleast with a custom font) in V8. |
Are there any plans to take up the below issue to "Convert Fabric to use rem" as by using rem we respect user preference even helps to make the UI more accessible and responsive. |
We should consider #9698 in here. |
@Kesshi Thanks for the callout on this - we'll need to be careful about how we roll this out to make sure we don't break your scenario; in the worst case scenario we will have an alternative way to keep this behavior so that you "opt in" to taking the bundle size hit. We want normal use cases to not be penalized by bundle size. |
Will there be a browser usable release like this? |
@dzearing Is Fleunt UI v8 equivalent to Fleunt UI v0? |
Can you please confirm when will Fluent UI V8 be released to public, even if its a Beta version? Thank you! |
@abdullahsalem - V0 is referring |
@vsspt -
We will provide update once we have something consumable |
Will this version support the use of |
The Charting package will be part of Fluent UI 8? BTW. I just created a project with V7 version, and so far the experience is excellent. The most satisfying surprise was how well TextField integrated with react-hook-form. Great stuff. |
In react-next package , some component styles has changed from css-in-js to scss file, |
Any update on that question? Can we make the ability to themes apply to the entire site (page and components) more easy? It took me a long time to find an undocumented |
@dzearing, are there any news regarding the release date? |
Will you include modifying the "theme generator" to let users choose their framework? With all of the different packages / variants of Fluent UI available it would be good for people to be able to choose what they want. I've already found some inconsistencies in the theme generator for the different versions (key differences etc). (https://fabricweb.z5.web.core.windows.net/pr-deploy-site/refs/heads/master/theming-designer/index.html) |
For anyone interested, we've just updated the issue description with the current plan including a specific release timeline. |
The issue description has been updated again with a higher-level summary of changes and some other additions. |
The version 8 beta is now available on npm as |
"Beta" release notes and migration guide are now available. These are still somewhat subject to change before the final release. If you notice anything missing, please let us know. |
Link is broken 😿 |
@layershifter Links are fixed now. |
Version 8 release updateTL;DR: New target release date is February 22, or end of February at latest. Also, your version 7-style Button imports will now work without modification. First of all, apologies for the delayed release and lack of updates. In addition to holiday-related delays, there have been some shifts around our approach to converging components with The overall short-term impact is actually that Button changesFor most consumers, the most impactful changes are around Button:
Preview package and ThemeProvider changesThe main change directly resulting from convergence work is that If you are currently directly consuming Package structure changesIn the original beta version, most of the files from For those who haven't started testing the beta yet, this will have no impact (and might make things easier when you do upgrade). The only negative impact should be for consumers who are using deep imports and had already started updating their deep imports as part of testing the beta.
|
A few more updates... The release likely won't be quite ready by Feb. 22, but it should be ready by the end of that week. Today we published beta versions of all packages adding React 17 to peer dependencies range. We haven't been able to thoroughly test it yet due to tooling issues, so please file an issue if you encounter any React 17-specific bugs. The following experimental components have been removed or deprecated from
The previous experimental implementation of |
Version 8 has now been officially released! 🎉 🎉 🎉You can install it from npm using I'm closing this issue now that the work is finished, but feel free to file new issues if you run into any problems. Additions to release notesFor anyone who read through the release notes in the past and is interested in changes only, these are the main points that have been recently added. Known issuesAzure themeAzure theme styling for DatePicker and Calendar may not fully work - #17156 Calendar/DatePickerDue to time constraints, we didn't add back the global classNames that were present for the New breaking changes to componentsCheckbox
To apply arbitrary native props to the hidden checkbox input element (used for accessibility and forms), use ComboBoxThe return type of TextField
|
UPDATE Feb. 9: Target release date is February 22, or end of February at latest. See this comment detailing a few significant changes from the original beta version.
For current details of the release, please see the draft release notes and migration guide.
Remaining work is tracked here.
Expand for original content, preserved for reference but may be out of date.
Summary
The next release of Fluent UI React is going to be a little different than previous releases of this project and we wanted to help set expectations, detail some of its nuances, and set the stage for subsequent releases.
We view this next release as an incremental release that will set up customers, partners, and contributors for the team's collective vision of improving the baseline components used in all Microsoft 365 experiences. Going forward we will be making smaller, easy to consume, incremental releases of Fluent UI.
The Version 8 (v8) release will focus on:
All content in this issue is a work in progress and will not be final until we approach release.
Note: "v8" here refers to "version 8," not the v8 JavaScript engine.
~~New functionality available outside of Version 8. ~~
~~The Improved Button was part of the Version 8 release, but we found that it complicated the upgrade story, especially since the old button was still used in some other components. The same button is still available from
@fluentui/react-button
but has no longer replaced the default button. ~~Smaller bundle size, better render perfIntroduction of design tokens and slots - looking for feedback!Please see the @fluentui/react-button package README for details about improvements.Timeline
Note: These dates are our best estimations.
*v8 snap:
7.0
branch is created. Fixes for v7 will need to go in7.0
branch until beta release. After beta release, all fixes should go into master first then cherry-pick into7.0
branch.What's in v8?
We are currently tracking the related work here.
Below is a more detailed overview of upcoming changes in v8. Please note, these are still subject to change before official release. Comprehensive release notes will be provided when release happens.
# Packaging restructuring - pave the way for future updates
[Breaking]
Package renamingoffice-ui-fabric-react
to@fluentui/react
Starting in v8, you will need to install
@fluentui/react@8
instead ofoffice-ui-fabric-react@8
. More details and migration tips here.[Breaking]
@uifabric
to@fluentui
package renamesIf time allows, we plan to move our
@uifabric
packages to the@fluentui
scope, and in some cases change the names to better align with current conventions.For packages used by the suite (See this issue for details.@fluentui/react
), we'll continue to publish aliases under the old@uifabric
names (until their major version bumps) to prevent consumers from needing duplicate dependency versions.Change of plan: We decided to rename all the packages without aliases, but will provide a codemod to help pick up the renames.
Major version policy change for sub-packages
Starting with this release, sub-packages such as@uifabric/utilities
or@uifabric/merge-styles
will no longer move in major-lockstep with the suite: for each sub-package, unless it also has breaking changes, it will not major bump when the suite does.The main benefit is that this will reduce duplicate dependencies for consumers who need a longer timeline to fully upgrade to the latest suite package version, and may have multiple versions of the suite in the same app bundle in the meantime.Change of plan: We've decided to major bump all the packages for this release, but will try to get rid of major-lockstep next release. (This was due to technical challenges of renaming packages from
@uifabric
to@fluentui
and getting rid of major-lockstep at the same time, as well as time constraints.)# React Strict Mode Support
Full strict mode support for all components
UNSAFE_*
)findDOMNode
[Breaking]
Function component conversionMost components are being converted from class components to function components (and the remaining components may be converted in a minor version). This work is being tracked here.
In general this will not result in a significant change to the component API surface. However, there are a few important implications, outlined in detail here.
Main points:
ref
prop works.ReactDOM.findDOMNode
is not supported for function components (a React limitation).state
is no longer supportedList of breaking changes
Please see the migration guide for a detailed list of breaking changes to individual components, including removal of certain props previously marked as deprecated.
Testing v8
The beta is now available on npm as
@fluentui/react@beta
. We encourage you to try it out and provide us with any feedback.(Release notes and migration guide coming soon!)
Open questions v8 will answer before release
Question: How will customers upgrade from v7 to v8?
We will provide an
upgrade-source
script which will apply renames to your code. Symbols, imports, and prop renames will be adjusted automatically, and references to deprecated things which have no automated alternative will add comments and links to explanations.Question: What is the right way to theme Fluent UI?
More details coming soon!
The text was updated successfully, but these errors were encountered: