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

Build fails for Elmish.WPF #604

Closed
rolfsuter opened this issue May 1, 2024 · 4 comments
Closed

Build fails for Elmish.WPF #604

rolfsuter opened this issue May 1, 2024 · 4 comments

Comments

@rolfsuter
Copy link

High-level description
Build fails for Elmish.WPF with error FS3560: This copy-and-update record expression changes all fields of record type

Steps to Reproduce
Build for .NET8

Expected or desired behavior
Building the project should work.

Actual behavior

Build started at 07:25...
1>------ Build started: Project: Elmish.WPF, Configuration: Release Any CPU ------
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(463,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.OneWayData<_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(463,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.OneWayData<_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(481,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.OneWayToSourceData<_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(481,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.OneWayToSourceData<_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(544,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.TwoWayData<_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(544,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.TwoWayData<_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(647,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.SubModelData<_,_,_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(647,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.SubModelData<_,_,_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(760,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.SubModelSeqUnkeyedData<_,_,_,_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(760,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.SubModelSeqUnkeyedData<_,_,_,_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(824,9): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.SubModelSeqKeyedData<_,_,_,_,_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(824,9): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.SubModelSeqKeyedData<_,_,_,_,_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(463,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.OneWayData<_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(481,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.OneWayToSourceData<_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(544,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.TwoWayData<_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(647,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.SubModelData<_,_,_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(760,7): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.SubModelSeqUnkeyedData<_,_,_,_,_,_>'. Consider using the record construction syntax instead.
1>C:\Users\Rolf\Source\Repos\elmish\Elmish.WPF\src\Elmish.WPF\BindingData.fs(824,9): error FS3560: This copy-and-update record expression changes all fields of record type 'Elmish.WPF.BindingData.SubModelSeqKeyedData<_,_,_,_,_,_,_>'. Consider using the record construction syntax instead.
1>Done building project "Elmish.WPF.fsproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 07:25 and took 03.545 seconds ==========

Proposal

  • Replace the copy-and-update record expression with a record construction syntax. Should I prepare a pull request?
  • Prevent error message. How?

Additional Information
Elmish.WPF version: 4.0.0-beta-54
Target framework version: net8.0-window

@TysonMN
Copy link
Member

TysonMN commented May 1, 2024

Our latest CI build passed, so I expect the problem is related to your build environment.

@marner2
Copy link
Collaborator

marner2 commented May 14, 2024

@rolfsuter I think it has to do with certain early versions of .NET 8. The latest versions of .NET 8 do not warn on this. Can you confirm that updating your installation of Visual Studio fixes the issue?

@rolfsuter
Copy link
Author

@marner2, @TysonMN
Today, I was not able to reproduce the issue and I could successfully build the project without first updating Visual Studio. I have now update the .NET SDK and Visual Studio and everything works fine. Thank you for your help and sorry for bothering you. I close the issue.

@rolfsuter
Copy link
Author

rolfsuter commented May 15, 2024

closed

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

3 participants