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

Deprecate react-aad-msal in favor of the upcoming official @azure/msal-react library #277

Open
AndrewCraswell opened this issue Oct 6, 2020 · 8 comments

Comments

@AndrewCraswell
Copy link
Contributor

AndrewCraswell commented Oct 6, 2020

Hey folks,

Thanks for everyone's patience, and I apologize for the late replies. Since July a small group has been working to redesign the react-aad-msal library from ground-up to work with MSAL 2.0 using the @azure/msal-browser package. We had hoped to have an initial release in August, then roll out in a few production apps through the end of the month. However, with life, covid, and some developments in MSAL, these timelines had to undergo a lot of change to make sure things were tackled correctly.

In July members of the MSAL team reached out to let us know they were planning to build out an official React library soon, and wanted to take the opportunity of the hackathon to work together and develop an architecture. During this time we were able to test out @azure/msal-browser, and identified a number of API changes that everyone felt would unblock an official React wrapper. The more substantial of these architectural changes related to an event API whereby external libraries can subscribe to internal MSAL data and events in order for React to become aware of changes in internal state. I'm happy to hear that this work is underway at the moment, and the contract of what that API looks like is nearing the review stage.

In lieu of the changes to the underlying @azure/msal-browser, it didn't make much sense to release an update to react-aad-msal since the contracts weren't yet in place. The API changes will dramatically simplify how we build out a wrapper library, and at which point it should be pretty simple to develop the official @azure/msal-react library, and there isn't much of a need for react-aad-msal. From this standpoint, react-aad-msal is gearing up to be deprecated in the near future, and I will be working on some migration guides to get people moved over easily.

In the interim before the official react-msal is released, and now that the designs and contracts are nearly finished, I am hoping to get some time in the next few weekends to build a basic update to react-aad-msal that gets people shifted from msal to @azure/msal-browser. These changes would be substantial, although we would be targeting a very similar architecture to @azure/msal-react when it finally releases. After this point, the plan is to deprecate react-aad-msal and work to help folks move to the officially supported library.

@AndrewCraswell AndrewCraswell pinned this issue Oct 6, 2020
@tleclaire
Copy link

Is this new library anywhere available already?

@Parjoona
Copy link

Parjoona commented Oct 8, 2020

Is there a deadline for this release?
And since you are recommending not to use this solution for new applications, what is applicable to use in its replacement until the react wrapper is completed?

@AndrewCraswell
Copy link
Contributor Author

Is this new library anywhere available already?

According to the latest changes to the MSAL docs, seems the official @azure/msal-react library is due in November for Private Preview, according to AzureAD/microsoft-authentication-library-for-js#2388.

since you are recommending not to use this solution for new applications, what is applicable to use in its replacement until the react wrapper is completed?

I may have a better answer to this in the next two weeks, but for now others have had luck using @azure/msal-browser, which is the MSAL library that the official @azure/msal-react will take as a dependency.

@voloszad
Copy link

voloszad commented Oct 9, 2020

Worth to mention though, that for B2C authentication it is (@azure/msal-browser) not recommended for production yet, due to "some outstanding bugs".

@jamiehicks154
Copy link

Hi @AndrewCraswell

First of all, want to say thanks for the library recently used and been good to work with (quite new to b2c) Does the library support the reset password flow, or is that something will need to use @azure/browser for?

@jasonnutter
Copy link

Excited to announce that the first alpha of MSAL React is now available! https://github.com/AzureAD/microsoft-authentication-library-for-js/releases/tag/msal-react-v1.0.0-alpha.0

Please try it out and let us know if you have feedback. We will be putting together a migration guide for react-aad-msal before public preview.

Worth to mention though, that for B2C authentication it is (@azure/msal-browser) not recommended for production yet, due to "some outstanding bugs".

B2C is now supported in MSAL Browser v2 (which MSAL React relies on).

@Mathieu-DA
Copy link

Mathieu-DA commented Apr 7, 2021

Excited to announce that the first alpha of MSAL React is now available! https://github.com/AzureAD/microsoft-authentication-library-for-js/releases/tag/msal-react-v1.0.0-alpha.0

Please try it out and let us know if you have feedback. We will be putting together a migration guide for react-aad-msal before public preview.

Worth to mention though, that for B2C authentication it is (@azure/msal-browser) not recommended for production yet, due to "some outstanding bugs".

B2C is now supported in MSAL Browser v2 (which MSAL React relies on).

I noticed that @azure/msal-react is in its beta phase right now. Any news on the release of a stable version and on a migration guide from react-aad-msal ?

@jasonnutter
Copy link

@Mathieu-DA You can find a migration guide here: https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-react/docs/migration-guide.md#upgrading-from-react-aad-msal

We are planning to GA soon (within the next month or so), we'll have our roadmap updated this week to reflect that.

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

No branches or pull requests

7 participants