MonoDevelop-Unity 6.x Preview Builds

Important Update

Starting in Unity 2018.1 we are no longer shipping MonoDevelop-Unity with Unity. There will be no further updates to this thread.

https://blogs.unity3d.com/2018/01/05/discontinuing-support-for-monodevelop-unity-starting-in-unity-2018-1/

Original Post:

We are releasing preview builds of MonoDevelop-Unity 6.x for early testing.

These builds can be used for code editing and debugging with both the Unity .NET 2.0 and the .NET 4.6 preview runtime.

There has been no QA pass on these builds and expect early and experimental build quality.

We will not necessarily ship MonoDevelop 6.x with Unity, it is likely that we will ship MonoDevelop 7.x instead. Previews builds of MonoDevelop 7.x will be made available at a later time.

Feel free to provide any kind of feedback you might have on these builds.

Download

Installation

  • macOS:

  • Mount the .dmg.

  • Copy MonoDevelop.app to your disk

  • Unmount the .dmg.

  • Windows:

  • Right click the zip file, select “Properties” and then click “Unblock”.

  • Unpack the zip to your disk.

  • Might be required to install GTK# using GTKSharp/gtk-sharp.msi (Only once).

  • In Unity:

  • Open Preferences and change the External Script Editor path to point to MonoDevelop.exe (Windows) / MonoDevelop.app (macOS).

Release notes

Preview 1:

  • MonoDevelop 6.3.0 with latest debugger client changes from MonoDevelop 7.x (aka Visual Studio for Mac)
  • Debugger client patches to make it work with .NET 4.6 runtime

Minimum Requirements

Unity patch releases are available here : Download Archive

Not supported

  • Opening and building UnityScript/Boo projects.

Source code repositories

6 Likes

Hi, thanks for the effort! So far it’s working fine with 2017.1.0f3.
The code formatting settings sometimes won’t be preserved when I changed multiple checkboxes (but it may have something to do with the plist files from the older version).

Opening a script from Unity always opens a new instance of MD6. Also, MD6 does not open the script which you double clicked on in the Unity editor. OS is Windows 10.

I installed this preview of MD6 by renaming the folder of Unity’s shipped MD to “MonoDevelop-factory” and placed the preview MD6 into “MonoDevelop”, so Unity thinks it’s the standard MD.

Just installed & tried this. When running unit tests in MonoDevelop I get the following error (and tests don’t run):

Unhandled Exception: System.TypeLoadException: Could not load type 'NUnit.Engine.IExtensionService' from assembly 'nunit.engine.api, Version=3.0.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb'.
   at NUnit.Engine.TestEngine.Initialize()
   at NUnit.Engine.TestEngine.NUnit.Engine.ITestEngine.get_Services()
   at NUnit3Runner.NUnitTestRunner.Initialize() in C:\Users\Lukasz\code\unitytech\monodevelop\main\src\addins\MonoDevelop.UnitTesting.NUnit\NUnit3Runner\NUnitTestRunner.cs:line 57
   at NUnit3Runner.NUnitTestRunner..ctor(RemoteProcessServer server) in C:\Users\Lukasz\code\unitytech\monodevelop\main\src\addins\MonoDevelop.UnitTesting.NUnit\NUnit3Runner\NUnitTestRunner.cs:line 51
   at NUnit3Runner.Application.Main(String[] args) in C:\Users\Lukasz\code\unitytech\monodevelop\main\src\addins\MonoDevelop.UnitTesting.NUnit\NUnit3Runner\Program.cs:line 38
The application exited with code: -532462766
Unhandled Exception: System.TypeLoadException: Could not load type 'NUnit.Engine.IExtensionService' from assembly 'nunit.engine.api, Version=3.0.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb'.
   at NUnit.Engine.TestEngine.Initialize()
   at NUnit.Engine.TestEngine.NUnit.Engine.ITestEngine.get_Services()
   at NUnit3Runner.NUnitTestRunner.Initialize() in C:\Users\Lukasz\code\unitytech\monodevelop\main\src\addins\MonoDevelop.UnitTesting.NUnit\NUnit3Runner\NUnitTestRunner.cs:line 57
   at NUnit3Runner.NUnitTestRunner..ctor(RemoteProcessServer server) in C:\Users\Lukasz\code\unitytech\monodevelop\main\src\addins\MonoDevelop.UnitTesting.NUnit\NUnit3Runner\NUnitTestRunner.cs:line 51
   at NUnit3Runner.Application.Main(String[] args) in C:\Users\Lukasz\code\unitytech\monodevelop\main\src\addins\MonoDevelop.UnitTesting.NUnit\NUnit3Runner\Program.cs:line 38
The application exited with code: -532462766

Hey there. Not sure if I should post this here or with MonoDev because they list the latest version as 6.1 and the one I downloaded says “MonoDevelop-unity” and is version 6.3 so it seems yours is ahead of theirs… thus my reasoning for posting here.

Yeah, man, I found a DOOZY of a bug in (at least) the Mac version. If you update an existing parameter using autocomplete it overwrites anything that comes after it and if the new parameter is long enough it will even overwrite the new line character and start overwriting the code on the next line also.

I.e if you have this:

Foo(bar.x);
SomeNewFunct();

then all you need to do is delete the . then retype the . to bring up the autocomplete box. Select “Superman” and you are left with the following:

Foo(bar.SupermanNewFunct();

Thanks for the feedback. We will update this thread once we have news to share.

Thanks man. I was just about to come look if there is a new one! :smile:

I have some extra info to add to that report of mine to help you fix the issue.
when you want to replace anything on the right hand side of the period, if you use the DELETE key to get rid of one or more characters before accepting the code completion option, the above error happens. If you use the BACKSPACE key right before you use the code completion it inserts the code just fine (even though it doesn’t actually “complete” the word but just inserts the text in front of whatever is already there. i.e. superman backspace on the s, return to confirm and you have supermanuperman)

Basically what it boils down to is if you want to use auto complete, make sure you erase the entire word on the right and make sure your last character was the backspace key.

Hope that helps. :slight_smile:

EDIT:
Wow… I just noticed the distinction here… If you use the backspace before accepting auto complete then text is INSERTED when you hit return. If you use the delete button then text is OVERWRITTEN. Lol… this reminds me of the old days of DOS when I had a button to select insert or overwrite mode. lol. Haven’t use it in forever… don’t even know if that is still a thing… :smile:

P.s. I want to win a T-shirt in 4XL. Do I qualify for finding bugs in MonoDev? :stuck_out_tongue: I’ve come across a few doozys!

Like this one…


Notice how it is instructing me to REMOVE the return statement from my function :open_mouth: WTF?
Maybe it noticed I typed “false” where I should have typed “true”? :stuck_out_tongue: But yeah, it sees the (null == stat) part as returning a bool value already and thus everything after it is redundant code (???) and therefore the entire return statement should be deleted from the function completely (???) 0.o Okaaaaayyyy…

In order for me to fix this issue what I had to do was select text in another part of the script and copy it into memory and… nothing. That was it. Problem solved.

Had a few more such odd errors where the error (sometimes just warnings, sometimes errors) went away by me first hovering over it to see the warning, clicking on that line and then using the arrow keys to navigate to another line. Voila. The error is now valid code.

Hello!

I’ve tried everything but I can’t get this working.
Any time I open any project, even empty project with one empty .cs file. I get this error.

3215225--246255--upload_2017-9-10_14-31-46.png

Is there something I can do?

I really like monodevelop so I’m eager to see what features the new version has. please help !

3215225--246240--upload_2017-9-10_11-32-12.png

Oh no… It seems there simply is no more hope for having a decent IDE for Mac. So sad :frowning:

I got fed up with the MonoDevelop Beta overwriting my code on the next line whenever I used code completion so I said “Screw it” and updated Visual Studios for Mac. “Visual Studio” being the new way to spell “Xamarin” since Visual Studio for Mac has nothing to do with Visual Studio at all and is just a rebranding of Xamarin… Do I recall correctly that Xamarin is in itself just a rebranding of MonoDevelop? …thus making Visual Studio a rebrand of a rebrand of MonoDevelop… Do I have this right?

It seem so because Visual Studio for Mac has the exact same bug that I reported earlier about code completion deleting whatever comes after it even if it means deleting code on the next line.

A friend of mine told me he once installed a VM, Installed Windows and then Visual Studio just so he could code in the REAL Visual Studio while coding for Unity on a Mac. Is that seriously the road we are gonna have to take to get a decent IDE for Mac? Install Windows in a VM and get a decent IDE for Windows and THAT is how we code on Macs now? Seriously?

That absolutely blows :frowning:

MonoDevelop is an open source project. Xamarin Studio was Xamarin’s branch of MonoDevelop, and that’s the product that’s been rebranded as “Visual Studio for Mac”.

Have you tried Visual Studio Code? It’s cross platform and apparently lightweight. And, yes, it’s a completely different product that has nothing to do with the other Visual Studios. Because Microsoft can’t name things.

Is the REST API still being worked on ? Is it available already ?
I fond some code here that seems to make use of it. But it doesn’t look like it works with current Unity projects.

I seem to recall trying something by that name a while back but I didn’t like it for some reason… Will look for a link ant try again. Thx.

Use Project Rider. It’s amazing.

Sounded good till I noticed the $hundreds per year price tag… Project Rider costs more than Unity :open_mouth:
I think I’ll just reach to the right and press the power button on the PC and use Visual Studio. Cheaper that way XD
But thanks for the suggestion :smile:

I’ve just tried this as a fix for built-in Monodevelop 2nd monitor crash on High Sierra and it worked.

So far it seems to be working fine with 5.6.3p4 except it doubles the size on disk (671.9mb)…

I can highly recommend script inspector 3 (asset store)

It has a decent price tag and is super fast. Misses maybe 1-2 features but you will quickly be over it…its a time saver

1 Like

Hi,

I have the same problem and for the moment is impossible for me to debug selecting .Net 4.6 compatibility mode :cry:
I’m working with Unity 2017.2

Thanks in advance

3255123--250755--Error_monodevelop_6.png

I’m having the same error. Any suggestions on how to fix this?
Using Unity 2017.2

Is there an update on this? We’re in the process of evaluating Mac IDE options. Are you still planning on shipping Visual Studio as the next IDE? The concern is that I work for a pretty large company and we can’t use the community edition license. Will you have a different license agreement for Visual Studio than the community version? If not, are you planning on a MonoDevelop 7.x even though Xamarin is now owned by Microsoft?