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

Drop support for Windows Runtime Component #815

Closed
angularsen opened this issue Jul 11, 2020 · 8 comments
Closed

Drop support for Windows Runtime Component #815

angularsen opened this issue Jul 11, 2020 · 8 comments
Labels
Milestone

Comments

@angularsen
Copy link
Owner

angularsen commented Jul 11, 2020

I just wanted to bring this up again.
We added support for this in 2016 with #150, mainly because it was requested by a Microsoft team working on providing IoT nuget packages.

It is clear that this effort has stopped and the only two dependencies I can track via
fuget.org are:

Both of these stopped getting updates in 2017.

We visited this topic in 2018 in #576 and the Microsoft member that originally requested this feature pretty much confirmed that the Windows Runtime Component effort is dead in its tracks on Microsoft's side of things.

Nothing new has happened since then really, it's just been nagging at the back of my mind and I don't like having crud if it is not actually being used by anyone or it's like 5 people in the world who care.

Proposal

  • Deprecate the nuget package as no longer being maintained with a notice to contact us
  • Stop publishing WRC nugets as part of our normal workflow
  • Listen for a few months if anyone complains, then reconsider
  • If no one complains, then remove all WRC code and build scripts and stop publishing new nugets

Pros:

  • Simplifies UnitsNet code base and build pipeline, the wtf-factor goes down a few notches.

Cons:

  • The nuget is still being downloaded although it is hard to distinguish robots from actual usage.
  • We made an effort to make WRC codegen its own separate thing, so it does not really cost us much to keep it around and update it with new units.
@ebfortin
Copy link
Contributor

A bit late to comment. My opinion is if it doesn't cost anything then why not keep it? If at some point it breaks the Windows Runtime build, then we should deprecate it. But right now if my understanding is correct it builds ok and no maintenance is needed. So why not keep it?

@angularsen
Copy link
Owner Author

angularsen commented Aug 29, 2020

Thank you for your opinion on this.

I 66% agree with you 😄 there is a cost however, in on-boarding new contributors having to know what WRC is.

I'm perfectly open to keep it, but I do think it should be removed at some point in the future if we can determine that pretty much no one relies on it anymore. WRC as a technology is pretty much dropped dead by Microsoft. My hunch is that very, very few use this already today.

I can't say for sure that no one is using it, which is why I created the issue hoping someone would notice and chime in saying they were actually using this.

@angularsen
Copy link
Owner Author

angularsen commented Aug 29, 2020

A couple new sources of usage since last time:

@dschuermans
Copy link
Contributor

Wouldn't it be an option to extract all the WRC stuff into it's own repository and have it live there? Maybe an entire copy of what currently exists is required (idk if code is being shared between the WRC stuff and UnitsNet?)

It won't be getting any new units or fixes that are made to the normal UnitsNet library, but there's probably no need to either?
Then, if someone does find an issue or whatever, it can be fixed there and optionally, a new nuget package published if required?

@angularsen
Copy link
Owner Author

angularsen commented Oct 4, 2020

That is probably a good way to deprecate it, yes.

Its readme could state that ownership of that code is abandoned and those who needs to keep it up to date would have to take ownership of it and sync in the new units from the main repo and set up their own build pipeline if they need one. The WRC nugets would point to the WRC repo to make it discoverable, in addition to having the nuget text describe the situation.

I personally would like to do this, but if others would rather keep it because it does not add too much burden to this project, then I'm fine with that too (for some time period, not forever). So this issue is basically to hear out opinions of people using UnitsNet or contributing to the project.

@stale
Copy link

stale bot commented Dec 4, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Dec 4, 2020
@stale stale bot closed this as completed Dec 12, 2020
@angularsen angularsen added this to the 5.0 milestone Nov 1, 2021
@angularsen angularsen reopened this Nov 1, 2021
@stale stale bot removed the wontfix label Nov 1, 2021
@angularsen
Copy link
Owner Author

I'm removing WRC in v5, until someone comes screaming about adding it back.
Beyond the summary listed above, I'd also like to mention that it shortens the build time, which is already pretty painful on appveyor's slow agents with 10-20 minute build times.

@angularsen angularsen changed the title Discuss: Drop support for Windows Runtime Component Drop support for Windows Runtime Component Nov 1, 2021
@angularsen
Copy link
Owner Author

angularsen commented Nov 1, 2021

Closed by 496ed5d in release/v5 branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants