-
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 remaining Project and Build files #4234
base: main
Are you sure you want to change the base?
Conversation
Thanks Nirmal4G 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 🙌 |
@Nirmal4G there's a whole bunch of different types of changes here, some seem functional with respect to the targets of the Notifications. There's not much more value in fixing comments in project files or re-organizing them. If there are things which can be removed because they're in common files great, but lets do that as a separate PR. Same if there are fixes that should be done for the notifications or something (though I don't think we've seen any issues at the moment). |
I'm isolating the changes from #4181 that are not related to CPVM feature to figure out why some tests are failing there. I can open a separate PR if that's what you want but... The notifications change is NOT breaking or intrusive or even a public change. So, Can you please reopen this? |
The main thing that I was worried about for the Notifications was the changes to the versioning in the paths as I don't know how that effects the final package output. |
@michael-hawker Don't worry, it doesn't affect the packaging. I assure you; this PR doesn't contain any breaking change! |
@Nirmal4G I've re-opened so you can re-run the CI. Just want to be weary still of the more nitpicky updates to project files to reduce churn for little value, as we have discussed previously. |
Sure, I have reduced unnecessary changes. These changes do flow through the next PR. I have a separate branch like For example, when you want to update the Notification project for newer UAP target, You'd have to update multiple places but now I've made it so that when you update the target version in the common props will update everywhere. For the code style update for MVVM source generators project file, I followed what I had done in previous PR. I'm still working on the automation of code style analysis but in the meantime, I'll update the new files when possible. |
2cc0727
to
1457982
Compare
1457982
to
e124f17
Compare
Thanks @Nirmal4G! We're just wrapping up the 7.1 release this week; so it'll take us a little bit to get to this one. I've flagged it for the next milestone for tracking. |
@michael-hawker I guess it's okay but this patch only contains non-functional changes. It also does not modify build outputs. That's also one of the reasons why I separated this from the CPVM patch tree, so that we can merge this in sooner than latter. If possible, I would like to merge this in along with the media controls' I'll be opening a PR soon for that, hopefully by tomorrow. |
Yeah, we're just in a state now where we're touching as little as possible. Will be easier to get this reviewed after release and in to bake while we're working on the next milestone. Just don't want to accidently introduce an issue if we happen to overlook something this close to release when it's even tangentially related to the build/project structure. |
e124f17
to
00abbff
Compare
00abbff
to
d63ac21
Compare
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.
Could you please undo all changes affecting the .NET projects? We've paused work there until the split as we don't want PRs to get stuck during the transition. We'll be doing the split soon and this means that we'd either have to rush merging this before then (which I don't want, also because there are a number of changes here I wouldn't approve), or you'd end up with a PR trying to modify a whole lot of files that would then be completely gone from this repository, leaving you with a ton of conflicts.
Let's just keep this isolated to stuff that will remain here (ie. all the UWP stuff) and let's eventually look into this again in the future once the new repository is live. Also FYI, you might want to discuss the changes you'd like to do before actually doing the work to open a PR, otherwise you might end up just wasting time for something that won't be merged anyway. For instance, I don't want any of those file renames/moves you've been doing to the .NET projects (eg. the files ported from the runtime).
Thanks! 🙂
Microsoft.Toolkit.Mvvm.SourceGenerators/Microsoft.Toolkit.Mvvm.SourceGenerators.csproj
Outdated
Show resolved
Hide resolved
These are all non-functional changes. Most of them are removals of redundant code. You can check the summary of individual commits on why the changes been made. As I mentioned before, they are leftovers from previous refactor PRs. Since I was trying to make them diffable with comments (on changes), I had to separate them from those previous PRs. |
Is there any reason why you don't want these files in a predictable location? |
c65db5c
to
d0a0d18
Compare
This is finally done. It took a while after #4395 since I had to separate my local repo to match the remote. A lot of my patches lead to lot of conflicts for these kinds of changes!! |
d0a0d18
to
5cb4a5b
Compare
6014481
to
2b22c9f
Compare
2b22c9f
to
9c255bf
Compare
- Remove BOM from new files. - Remove redundant xml tags and attributes. - Update Git ignores and attributes. - Ensure to preserve encoding of `UTF-16LE` files. - Update Toolkit Icons and use `Icon.png` name instead. - Rename solution, scripts and NuGet config files. - Remove leftover files from previous refactors. - Format Notifications package ReadMe. - Remove redundant code from project files. - Update Comments and fix mistakes.
- Remove the empty Pack target from all project files. - Put the empty Pack target in `Directory.Build.targets`.
- Rearrange lines so that upcoming patches will have better diff. It will also aid in blame as clean diff makes understanding code easier.
- Also Add `ThirdPartyNotices.txt` to the package. - Place the ReadMe, Icon, License and Notices in the root of the package.
We already package them up with lowest version anyway. But the targets don't represent that. So, Fix the project and fallback targets with lowest compatible version instead of latest version.
- Use `Base~` paths where possible. - Remove redundant `OutputPath` entries. - Use `Count()` item function where possible. - Add missing `OutputPath` property to WAP projects.
- Everyone's on x64-bit system. So, It's time switch the default. - This only changes the default for AnyCPU solution target where architecture-agnostic target may not be available.
54e7d0c
to
d63ce34
Compare
6de3996
to
66e14e4
Compare
Changes
Misc refactors (Follow up of #3894, #3896 and #4068)
Update Notifications package
ThirdPartyNotices.txt
to the package.Fixup target UAP versions (non-breaking)
Update
~OutputPath
properties in projectsBase~
output paths where possible.Count()
item function where possible.PR Type
What kind of change does this PR introduce?
PR Checklist
Please check if your PR fulfills the following requirements:
Other information
Default to pull request title and description
in the Repository Pull Request settings to have a better commit message instead ofMerge pull request #xxxx from repo/branch
generic message.