Removing Platform-specific code from the Datasync library? #708
Replies: 3 comments
-
Popping this discussion back to the top - just one week left to vote! |
Beta Was this translation helpful? Give feedback.
-
And - based on the total of 6 votes, I'm going to remove the platform specific code for iOS, Android, Windows, etc. This means that the library will support any .NET 6, .NET 7, or .NET Standard 2.0 platform (which encompasses latest MAUI, Avalonia, Uno, Xamarin Forms, and Xamarin Native). I'll also add .NET 8 when it becomes GA. |
Beta Was this translation helpful? Give feedback.
-
Hey folks, The Datasync NuGets v6.0.0 (the ones without the platform dependent code) have now hit NuGet and the TodoApp sample has been updated. I've gone through every single tutorial today with the new code, and it all works. In addition, I've made it easier to publish the server code by adding "azd" compatibility. Rather than creating the resources and then using Visual Studio to publish, you can now run "azd up" and it will do all that for you. Docs are currently awaiting a publication cycle, but will be published tomorrow AM. Feel free to comment, complain, open issues, etc. as normal! |
Beta Was this translation helpful? Give feedback.
-
Hey folks,
I need your input on something. But first, a bit of background.
We used to have an "installation ID" which was added to each HTTP request to allow us to count the number of unique installs of an application. It was useful to us to understand our top customers when Azure Mobile Apps was an officially sanctioned project within Microsoft. Now that it is an open source project and we don't have to justify an engineering team, we didn't need it and so we removed it.
The only bit of platform-specific code left is the user-agent. This allows me to understand what versions are out in the wild and what types of application are being written, allowing me to target feature development to the right things. However, I have not looked at that in some time, so my belief is that this is useless information as well (at least for product development).
As a result, I'm proposing that we move the application code to a pure .NET 6 library - no platform specific code at all. This will allow me to simplify the TFMs for the library down to just two, because platform specific ones (like net6.0-android12.0) are not required. It also means that you can use the library on later versions of Android, iOS, and Windows without waiting for the platform-specific code to be updated (since there isn't any).
This is a breaking change, so I'd be producing Azure Mobile Apps v6.0 for this.
Poll will be open for the entire month of August - I'll announce the plan in early September.
6 votes ·
Beta Was this translation helpful? Give feedback.
All reactions