Skip to content
This repository has been archived by the owner on Mar 15, 2024. It is now read-only.

Revert to .NET Framework #17

Merged
merged 7 commits into from
Feb 25, 2024
Merged

Revert to .NET Framework #17

merged 7 commits into from
Feb 25, 2024

Conversation

Metadorius
Copy link
Member

@Metadorius Metadorius commented Nov 8, 2023

See CnCNet/xna-cncnet-client#494 for details.

I already figured out most of the changes, what's left is technical work and evaluation.

Currently what's needed to be done here:

  • Finish the changing of FileStream constructors to old API
  • Decide if the backport of sockets handler is OK to use
  • Sort out the polyfills to use, see parent PR

@Metadorius Metadorius marked this pull request as draft November 8, 2023 12:20
@SadPencil
Copy link
Member

SadPencil commented Nov 16, 2023

I just realized that in order to keep the compatibility of both .NET 4.8 and .NET 7.0, it is better to switch this project to .NET Standard 2.0

Update: since we still need to determine whether the client is .NET 8 or 4.8, this project is retained as a .NET 4.8/8 project. Hmm, we need to merge this project into xna-cncnet-client considering the high coupling

@Metadorius
Copy link
Member Author

I am not sure if the project can be compiled under .NET Standard though, I thought it's a pseudo target and a DLL/EXE can't be compiled this way?

@SadPencil
Copy link
Member

I am not sure if the project can be compiled under .NET Standard though, I thought it's a pseudo target and a DLL/EXE can't be compiled this way?

should be fine. dotnet pack command generates the package files needed by the client. After specifying this project as .NET Standard 2.0, when compiling the client in .NET 7, the related warning messages would not show again.

@SadPencil SadPencil force-pushed the revert-to-net-framework branch from 1891e38 to 8b45744 Compare February 6, 2024 06:12
@SadPencil
Copy link
Member

SadPencil commented Feb 6, 2024

Check whether the second stage updater could run successfully as a single file exe. PR #6 brings a DLL dependency (obsolete; not needed)

@SadPencil SadPencil force-pushed the revert-to-net-framework branch from a64179d to 9ae5ee6 Compare February 20, 2024 07:22
@SadPencil
Copy link
Member

Now, this PR brings the support of the old clientupdt.dat updater as well as the new second stage updater. Both cases are tested on my machine.

@SadPencil SadPencil marked this pull request as ready for review February 20, 2024 14:16
Copy link
Member Author

@Metadorius Metadorius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No complaints either, although not sure where did the .NET Standard as target idea go.

@SadPencil
Copy link
Member

not sure where did the .NET Standard as target idea go.

currently there are #if !NETFRAMEWORK to differ the client’s behavior in ClientUpdater library (e.g., whether .NET 4.8 or .NET 8.0 second-stage updater should be launched), so ClientUpdater.dll is not a .NET Standard library right now

@SadPencil SadPencil force-pushed the revert-to-net-framework branch from 46245b8 to cbc884c Compare February 25, 2024 13:55
@SadPencil SadPencil force-pushed the revert-to-net-framework branch from cbc884c to 012b133 Compare February 25, 2024 14:41
@SadPencil SadPencil merged commit 98ff606 into master Feb 25, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants