NightOwl888 opened a new issue, #983: URL: https://github.com/apache/lucenenet/issues/983
### Is there an existing issue for this? - [X] I have searched the existing issues ### Task description .NET 8.0 broke running binary serialization in tests. So, when we added tests for .NET 8.0, we originally compiled out the APIs and tests for serializing and de-serializing. In J2N and ICU4N (in particular the former) the problem of getting the serialization tests to run was addressed by [putting a task in the `tests/Directory.Build.targets` file]() to update the `.runtime.config` file for the test project. Then we did a similar deprecation of the *serialization APIs only*, while leaving the deserialization APIs non-deprecated, which was how it was done in the BCL. However, unlike the BCL, we ended up doing this for all target frameworks to ensure users are aware that using binary serialization (even on older target frameworks) is highly discouraged in the modern era. This is primarily to prevent .NET Framework users from considering it for new applications before they migrate to .NET Core. In addition to adding the `[Obsolete]` attribute, the `[EditorBrowsable(EditorBrowsableState.Never)]` attribute was added to prevent users from seeing these APIs in the IDE. So, we should do a similar deprecation here, rather than forcing users who may be using serialization to either stay on `net6.0` or rip out their serialization code so they can migrate their app to `net8.0`. They will still get a warning, but it is no longer a blocker. This of only applies to classes that have de-serialization constructors or implement `ISerializable` or `IDeserializationCallback`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
