Forum Libraries, Components, and Plugins


The Xamarin Forums have officially moved to the new Microsoft Q&A experience. Microsoft Q&A is the home for technical questions and answers at across all products at Microsoft now including Xamarin!

To create new threads and ask questions head over to Microsoft Q&A for .NET and get involved today.

UrhoSharp is dead. Should we fork it?

Soooooo... The Xamarin Team has done it to us once again.

Last commit in July... Still no .NET Standard 2.0 support (promised over a year ago)... No communication... We know the drill.

It's funny - I was reading a rant about Docker the other day and if you substituted the word "Xamarin" for "Docker", it would be totally relevant. Here are some excerpts:

"The Docker release cycle is the only constant in the Docker ecosystem:
1. Abandon whatever exists
2. Make new stuff and release
3. Ignore existing users and retro compatibility"

“We make software not for people to use but because we like to make new stuff.” — Future Docker Epitaph

Miguel promised over a year ago that .NET Standard 2.0 would be supported by "mid-October [of 2017]" (Github Issue #207). It was, of course, a lie. Like the thousand other lies that they've told. But it is us who are idiots for continuing to believe them. We are Charlie Brown and they are Lucy with the football. Over and over again.

I'm going to get so much hate for saying this, but I wish Microsoft would fire @MigueldeIcaza, @EgorBo and the entire Xamarin team and replace them with some Excel project managers and programmer drones. At least those people know how to ship a useable product and maintain it. Or even the team from Expression Blend. At least they are smart enough to know NOT to create an entirely new markup language without providing a GUI tool to create it. Using "code" to create user interfaces in 2018? Unbelievable.

Of course, that is a total fantasy considering that Satya Nadella would rather focus on what flavor of incense to burn in the meditation sessions than actually manage a company. You have to be high as a kite to blow $7.5 billion on GitHub, a site that could be cloned in 2 days. It's like he had a conversation with Ballmer that went like this:

Ballmer: We've got too much money just sitting in the bank. I'm going to blow $7 billion on a dying phone manufacturer.

Nadella: Hold my beer.

Anyway, enough of me ranting. Naively, I created an application that uses both Xamarin Forma snd UrhoSharp Forms. But since UrhoSharp Forms doesn't work with .NET Standard, I'm stuck on Xamarin Forms and the gulf between that and the current version increases every day.

As much as it kills me to do his job for him and reward Egor for being a dilettante (as evidenced by the meager 8 commits to GitHub this month, none of them Xamarin related), how hard would it be to fork UrhoSharp and upgrade it to .NET Standard 2.0?

I need a solution. I am totally cool with spending hours fixing up differing parameters between .NET Framework 4.6.1 and .NET Standard 2.0, but I don't want to get hours into it and find out that I'm in over my head and all my efforts are wasted.

Anybody else interested in contributing? Has anyone looked into the internals of UrhoSharp and knows how to go about starting this port? Is it as simple to start as cloning the project and retargeting?

If this doesn't get fixed, then it's time to me to move to Flutter.


  • MigueldeIcazaMigueldeIcaza USXamarin Team Xamurai

    Addressing your subject line, generally, what you can try before forking and taking over the burden that comes with the release process, you can try sending a pull request.

    That said, we are going to look at doing the .NET Standard effort, we dropped the ball on that.

    Egor is currently working on a different team, the Mono team.

  • Bill_GatesBill_Gates USMember ✭✭

    Umm... Actually @andrekoehler submitted a pull request to add .NET Standard 2.0 support (GitHub issue #332).

    Five and a half months ago...

  • EsaKEsaK SEMember ✭✭

    @MigueldeIcaza Thanks for chiming in here.

    As I have said before, it would be a real pity if UrhoSharp was abandoned. It's such a great lib.
    It's pity that Egor is no longer maintaining it. Are there any plans of letting someone else take over the maintenance?

    PS. I would love to see .NET standard support.

  • MigueldeIcazaMigueldeIcaza USXamarin Team Xamurai

    Generally, UrhoSharp is a binding, so the bulk of the work really has to come out of the underlying Urho library.

    That said, Egor has been helping with the Mono CoreFX unification effort, and we just have been bad at managing his time to spend time maintaining these libraries.

    We would love if someone that wants to step in, does that, and takes over some of the tasks that could be done.

  • MigueldeIcazaMigueldeIcaza USXamarin Team Xamurai

    On Standard, Egor as going to take a look last week, we should have an update soon.

  • @MigueldeIcaza this is exactly why you were asked multiple times if Xamarin was planning on supporting UrhoSharp. Having Egor work on the project when he has free time is not considered support. The project really should have a permanent maintainer for it.

  • najak3dnajak3d Member ✭✭

    We're trying to port from 2008 .NET/WPF technology to the "latest/greatest" stuff. But the latest (i.e. .NET Standard 2.0) appears to be a near cesspool of crap. Moving forward feels like moving backwards.

    WPF is now treated as a mutant compared to Android/iOS -- and UWP has been abandoned with many many issues (demos that work on Android/iOS work differently or fail for UWP). And trying to use WPF with same code base is like using a mutant platform.

    And so we're just trying to get OpenGL to work on Windows, Android, iOS, with Xamarin Forms -- in 2020, you'd think we had nailed that by now. Nope.

    Xamarin.Forms.OpenGLView simply DOES NOT WORK on UWP. And for WFP, it's a mutant control that can't read User Input/Touch, nor can it allow other Xamarin controls to exist overtop of it.

    And so -- as we try to move forward, we're actually having discussions of abandoning Windows!! (because in the world of .NET Standard 2.0, it's now the most difficult platform to support!!)

    What in the world has happened here?

    Now UrhoSharp is supposedly the answer for cross-platform OpenGL/3D support -- NOPE! It's stuck on .Net Portable 4.5, for 4 years!

    What to use? Everything in this new world of .NET Standard is poisoned. Not to mention that XAML still doesn't have a graphical layout tool -- we're using text editing instead. I feel like we've stepped back into the 1990's here.

    This has been unbelievable. My long-standing trust/faith in Microsoft established from 2003-2010, is now shattered. This is definitely not what I expected to find, as we decided to "move forward onto the latest/greatest".

    We currently support 3 platforms "old school" method, and it works fine. But we were wanting to move forward, so far without much luck. So many pointless obstacles and cesspools of crap; I feel like we're trying to do something niche, instead of mainstream. XAML + .NET Standard 2.0 should feel mainstream.... instead it feels like a field of land mines. WTF?

  • najak3dnajak3d Member ✭✭

    My co-worker dug more on this, and found that some Chinese programmer has ported it to .NET Standard 2.0. Here's the link:

    (I can't post links yet -- so just search for "UrhoSamples2019", and the developer name is "slango0513".)

Sign In or Register to comment.