-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Refactor namespaces for extension types #3743
Refactor namespaces for extension types #3743
Conversation
Thanks Sergio0694 for opening a Pull Request! The reviewers will test the PR and highlight if there is any conflict or changes required. If the PR is approved we will proceed to merge the pull request 🙌 |
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.
Went through about half and provided some initial feedback on a couple of items.
I like trying to see if we can do something with the SurfaceDial
API (I have one somewhere I can try to test with if we change things). I'm not sure if SurfaceDial
and SurfaceDialOptions
are the best names, we haven't actually implemented this pattern yet for the Graph, but it's on our minds: CommunityToolkit/Graph-Controls#67
Microsoft.Toolkit.Uwp.UI.Controls.Markdown/Render/MarkdownRenderer.Inlines.cs
Show resolved
Hide resolved
Microsoft.Toolkit.Uwp.UI.Controls/LayoutTransformControl/LayoutTransformControl.cs
Outdated
Show resolved
Hide resolved
Microsoft.Toolkit.Uwp.UI/Extensions/FrameworkElement/FrameworkElementExtensions.LogicalTree.cs
Show resolved
Hide resolved
FYI @Sergio0694, when you create the PR, you can set the base branch to the other branch you had created in the other PR, so that those commits won't show here against the main branch. After that other PR is merged, we could rebase back off the main branch. |
Not sure if I didn't get to them yet, or if we didn't think about it... what about our Converters in the |
@Sergio0694 looks like the build failed as unit tests weren't updated with the namespace changes for their usings or something? |
I do like the look of this shorter, simpler, grouped syntax. |
I'm not sure what you're thinking about checking or changing here. The only thing that could be related and sticks out to me is the |
@mrlacey I'm wondering whether it's actually worth it to have that considering the massive amounts of breaking changes we have in 7.0 anyway, from whole packages being split to general API changes with no intermediate obsolescence of earlier versions. |
Is there a (generated-hopefully) list of all the breaking changes so far? |
@mrlacey yeah we've been trying to telegraph for a while that 7.0 is going to be a big release with breaking changes. The whole start of my release blog post is going to be calling that out that the release has cleaned and changed a lot of things. We've been tagging PRs and should have our list of breaking changes. Hopefully for most folks it'll just be some namespace changes or including different packages, except for the couple of things we've removed (like ScrollHeader and the ImageEx caching). So, I'm ok with us just making straight changes, as we have a bad habit of not cleaning up things later as well. I think the main exception to this is the |
Ok. I'm happy with a straight change if there's loads of other breaking changes too. |
Awesome 😄 |
Note for reviewers: I'm aware there are conflicts to be solved, but I'm waiting for #3685 to be merged first to then rebase this PR on top of master directly. This branch is currently based on top of that PR as well, so I'm fine with waiting for that first before solving conflicts and making this PR to date to avoid creating even more conflicts between the three branches 😄 |
9905484
to
85fb7da
Compare
Related to #3422
PR Type
What kind of change does this PR introduce?
What is the current behavior?
Quoting from #3422 (comment), we have the current situation with respect to extension methods in the Toolkit:
What is the new behavior?
This PR moves all the extensions (including XAML markup extensions) to the root namespace of each package.
It also fixes some related issues like inconsistent naming, incorrect method locations, etc.
Open questions
Some extension types now have a number of properties that are only relevant when grouped together, as they refer a specific feature. For instance, all the SurfaceDial properties in
TextBoxExtensions
, or the ones related to Regex. @michael-hawker mentioned the "option" pattern that the Graph Controls have been using, which would look something like this:Do we want to make this change as well while we're at it? Thoughts? 🙂
Additional details
Haven't fully tested all the samples in the sample app just yet, have just focused on ensuring everything built fine for now.
Also, this PR is based on top of #3685, which needs to be merged before this one.
PR Checklist
Please check if your PR fulfills the following requirements:
Pull Request has been submitted to the documentation repository instructions. Link:Sample in sample app has been added / updated (for bug fixes / features)Icon has been created (if new sample) following the Thumbnail Style Guide and templates