MonoDevelop-Unity 5.9 Preview Release

ATTENTION: Unity 5.3 with MonoDevelop-Unity 5.9 has been released. This thread is no longer being updated

We are releasing preview builds of MonoDevelop-Unity 5.9, which will ship with Unity 5.3, for early testing and feedback.

These builds are different from using Xamarin Studio 5.9 with the Unity Add-ins as they also contain fixes that are not yet included in Xamarin Studio. We are working on getting these fixes into Xamarin Studio.

Download

Installation

  • OSX:

  • Mount the .dmg.

  • Copy MonoDevelop.app to a path without spaces on 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 (OSX).

Release notes

Beta 2

  • Fixed ERR_UNLOADED error when setting breakpoints. Regression introduced in Beta 1.

  • OSX: Added .NET 4.0 assemblies in bundled Mono framework.

Beta 1

  • Fixed missing syntax highlighting for ShaderLab files
  • Fixed Mono.Debugger.Soft.ObjectCollectedException error message when setting a breakpoint

Alpha 4

  • Removed “Show Error Reference” and “API Documentation” menu items that launch the documentation browser, which we do not include nor support.
  • Updated MonoDevelop to 5.9.6

Alpha 3

  • Fixed “The requested item has been unloaded” when inspecting enums.
  • Fixed “The requested item has been unloaded” dialog when enabling/disabling breakpoints.
  • Fixed “Debugger operation failed. Argument cannot be null” error.
  • Included DocFood (/// documentation) and VersionControl add-ins.

Alpha 2

  • Fixed issue with MonoDevelop crashing on OSX.
  • Regression: MonoDevelop OSX must be installed in path without spaces.
  • Fixed issue with being unable to set conditional breakpoints.
  • Bundled GTK# installer. Will be installed by the Unity editor installer for Unity 5.3.

Alpha 1

  • Fixed issue with MonoDevelop-Unity opening a new instance when clicking a script on Windows.
  • Fixed “The request is not supported by the protocol version implemented by the debugee” when inspecting generic List/Dictionary.
  • Fixed error messages when trying to recompile your scripts in Unity while the debugger is attached.

Minimum Requirements

Unity patch releases are available here : Download Archive

Not supported

  • Boo/UnityScript: Code completion and source navigation. (Editing, building and debugging of Boo/UnityScript projects is supported).

  • Debugger: Launching Unity from MonoDevelop/Xamarin Studio.

Source code repositories

5 Likes

wow…

1 Like

Download links aren’t working. :frowning:

1 Like

Sorry. Should be fixed now.

It’s strangely super slow. I just downloaded 170 KB in 10 minutes.

Do these links download faster for you?

OSX: http://beta.unity3d.com/lukasz/MonoDevelop-Unity-5.9.4-alpha1.dmg
Windows: http://beta.unity3d.com/lukasz/MonoDevelop-Unity-5.9.4-alpha1.zip

1 Like

Tried to edit colors in custom syntax highlighting make Monodevelop-Unity crash every time, not happen in Xamarin Studio with Unity Add-ins.

Bug# 722356

Thanks for the bug report. We will have a look.

It works really well for me, even opens up to the right script, right light.

It crashes a lot for me, especially when using source analysis.

I notice that the add-ins are all 5.9.0. In Xamarin Studio version, some is 5.9.1. Is this correct?

I would be very interested in repro steps for these crashes. Using Help - Open Log Directory you can open the logs files for MonoDevelop and you should see call stacks for the crashes. These would also be very helpful.

There are many log files. I will just send you the latest one. I test MonoDevelop-Unity 5.9.4a1 to know the cause of crash for awhile now. I can always reproduce the crash by move mouse cursor over the red underline error to see the tooltip box of the error. The’s when MD will crash.

INFO [2015-08-26 03:29:47Z]: Starting MonoDevelop-Unity 5.9.4
INFO [2015-08-26 03:29:47Z]: Running on Mono 4.0.2 ((detached/c99aa0c Fri Jul 10 13:28:51 CEST 2015)
WARNING [2015-08-26 03:29:48Z]: Gtk-Warning: Locale not supported by C library.
Using the fallback ‘C’ locale.
Stack trace:
at Gtk.Application.gtk_init(Int32 ByRef , IntPtr ByRef )
at Gtk.Application.do_init(System.String progname, System.String[ ] ByRef args, Boolean check)
at Gtk.Application.Init(System.String progname, System.String[ ] ByRef args)
at MonoDevelop.Ide.IdeStartup.Run(MonoDevelop.Ide.MonoDevelopOptions options)
at MonoDevelop.Ide.IdeStartup.Main(System.String[ ] args, MonoDevelop.Ide.Extensions.IdeCustomizer customizer)
at MonoDevelop.Startup.MonoDevelopMain.Main(System.String[ ] args)
2015-08-26 03:29:48.100 mono[25982:2429880] *** WARNING: Method userSpaceScaleFactor in class NSView is deprecated on 10.7 and later. It should not be used in new applications. Use convertRectToBacking: instead.
INFO [2015-08-26 03:29:48Z]: Using GTK+ 2.24.23
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.Core
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.Ide
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.MacPlatform
INFO [2015-08-26 03:29:48Z]: Initializing Runtime Mono 4.0.2
ERROR [2015-08-26 03:29:48Z]: Error reading name for assembly ‘/Applications/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.SqlServer.dll’ in framework ‘.NETFramework,Version=v4.5.1’:
System.IO.FileNotFoundException: Could not load file or assembly ‘/Applications/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.SqlServer.dll’ or one of its dependencies. The system cannot find the file specified.
File name: ‘/Applications/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.SqlServer.dll’
at (wrapper managed-to-native) System.Reflection.Assembly:InternalGetAssemblyName (string,System.Reflection.AssemblyName)
at System.Reflection.AssemblyName.GetAssemblyName (System.String assemblyFile) [0x00000] in :0
at MonoDevelop.Core.Assemblies.SystemAssemblyService.GetAssemblyNameObj (System.String file) [0x00000] in :0
ERROR [2015-08-26 03:29:48Z]: Error reading name for assembly ‘/Applications/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.dll’ in framework ‘.NETFramework,Version=v4.5.1’:
System.IO.FileNotFoundException: Could not load file or assembly ‘/Applications/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.dll’ or one of its dependencies. The system cannot find the file specified.
File name: ‘/Applications/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.dll’
at (wrapper managed-to-native) System.Reflection.Assembly:InternalGetAssemblyName (string,System.Reflection.AssemblyName)
at System.Reflection.AssemblyName.GetAssemblyName (System.String assemblyFile) [0x00000] in :0
at MonoDevelop.Core.Assemblies.SystemAssemblyService.GetAssemblyNameObj (System.String file) [0x00000] in :0
Starting MonoDevelop-Unity
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.Debugger
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.SourceEditor2
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.UnityScript
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.DesignerSupport
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.Refactoring
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.CSharpBinding
INFO [2015-08-26 03:29:48Z]: Add-in loaded: Unity.Utilities
INFO [2015-08-26 03:29:48Z]: Add-in loaded: MonoDevelop.Boo
INFO [2015-08-26 03:29:50Z]: Add-in loaded: MonoDevelop.NUnit
INFO [2015-08-26 03:29:50Z]: Add-in loaded: MonoDevelop.Debugger.Soft
INFO [2015-08-26 03:29:50Z]: Add-in loaded: MonoDevelop.Debugger.Soft.Unity
INFO [2015-08-26 03:29:50Z]: Add-in loaded: MonoDevelop.Xml
Loading Workbench
INFO [2015-08-26 03:29:50Z]: Add-in loaded: MonoDevelop.RegexToolkit
INFO [2015-08-26 03:29:50Z]: Add-in loaded: MonoDevelop.AssemblyBrowser
Initializing Main Window
INFO [2015-08-26 03:29:50Z]: Creating DefaultWorkbench
INFO [2015-08-26 03:29:51Z]: Add-in loaded: MonoDevelop.ILAsmBinding
INFO [2015-08-26 03:29:52Z]: Add-in loaded: MonoDevelop.HexEditor
ERROR [2015-08-26 03:29:58Z]: Failed to load: /PlaybackEngines/iOSSupport/Data/iosdevices.csv
System.IO.DirectoryNotFoundException: Could not find a part of the path “/PlaybackEngines/iOSSupport/Data/iosdevices.csv”.
at System.IO.FileStream…ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x00000] in :0
at System.IO.FileStream…ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, System.String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) [0x00000] in :0
at (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare,int,System.IO.FileOptions,string,bool,bool,bool)
at System.IO.StreamReader…ctor (System.String path, System.Text.Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost) [0x00000] in :0
at System.IO.StreamReader…ctor (System.String path, System.Text.Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize) [0x00000] in :0
at System.IO.StreamReader…ctor (System.String path, Boolean detectEncodingFromByteOrderMarks) [0x00000] in :0
at System.IO.StreamReader…ctor (System.String path) [0x00000] in :0
at (wrapper remoting-invoke-with-check) System.IO.StreamReader:.ctor (string)
at System.IO.File.OpenText (System.String path) [0x00000] in :0
at System.IO.File.ReadAllLines (System.String path) [0x00000] in :0
at MonoDevelop.Debugger.Soft.Unity.iOSDevices.LoadDescriptions (System.String path) [0x00000] in :0
at MonoDevelop.Debugger.Soft.Unity.iOSDevices.SetupDescriptions (System.String path) [0x00000] in :0
ERROR [2015-08-26 03:29:58Z]: Error while initializing usbmuxd
System.Exception: dlopen: dlopen(/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.Native.dylib, 2): image not found
at MonoDevelop.Debugger.Soft.Unity.PosixDllLoader.LoadLibrary (System.String fileName) [0x00000] in :0
at MonoDevelop.Debugger.Soft.Unity.Usbmuxd.LoadDll (System.String nativeDll) [0x00000] in :0
at MonoDevelop.Debugger.Soft.Unity.Usbmuxd.Setup (System.String dllPath) [0x00000] in :0
at MonoDevelop.Debugger.Soft.Unity.iOSDevices.SetupDll (System.String path) [0x00000] in :0

Thanks for the report. I will have look.

Regarding the 5.9.0 add-ins being included, the 5.9.1 add-ins did not make the cut for this build, but will be included in the next one.

I tried giving this a go on my 10.11 (PB5) Mac using Unity 5.1.3 and received the following error log as soon as intellisense appeared to come up with a documentation window. In this cause it was “Application.OpenURL(” then the app would crash.

INFO [2015-08-26 00:30:02Z]: Starting MonoDevelop-Unity 5.9.4
INFO [2015-08-26 00:30:02Z]: Running on Mono 4.0.2 ((detached/c99aa0c Fri Jul 10 13:28:51 CEST 2015)
INFO [2015-08-26 00:30:02Z]: Using GTK+ 2.24.23
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.Core
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.Ide
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.MacPlatform
INFO [2015-08-26 00:30:02Z]: Initializing Runtime Mono 4.0.2
ERROR [2015-08-26 00:30:02Z]: Error reading name for assembly '/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.SqlServer.dll' in framework '.NETFramework,Version=v4.5.1':
System.IO.FileNotFoundException: Could not load file or assembly '/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.SqlServer.dll' or one of its dependencies. The system cannot find the file specified.
File name: '/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.SqlServer.dll'
  at (wrapper managed-to-native) System.Reflection.Assembly:InternalGetAssemblyName (string,System.Reflection.AssemblyName)
  at System.Reflection.AssemblyName.GetAssemblyName (System.String assemblyFile) [0x00000] in <filename unknown>:0
  at MonoDevelop.Core.Assemblies.SystemAssemblyService.GetAssemblyNameObj (System.String file) [0x00000] in <filename unknown>:0
ERROR [2015-08-26 00:30:02Z]: Error reading name for assembly '/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.dll' in framework '.NETFramework,Version=v4.5.1':
System.IO.FileNotFoundException: Could not load file or assembly '/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.dll' or one of its dependencies. The system cannot find the file specified.
File name: '/Applications/Unity/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5/EntityFramework.dll'
  at (wrapper managed-to-native) System.Reflection.Assembly:InternalGetAssemblyName (string,System.Reflection.AssemblyName)
  at System.Reflection.AssemblyName.GetAssemblyName (System.String assemblyFile) [0x00000] in <filename unknown>:0
  at MonoDevelop.Core.Assemblies.SystemAssemblyService.GetAssemblyNameObj (System.String file) [0x00000] in <filename unknown>:0
Starting MonoDevelop-Unity
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.Debugger
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.SourceEditor2
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.Boo
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.DesignerSupport
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.Refactoring
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.CSharpBinding
INFO [2015-08-26 00:30:02Z]: Add-in loaded: MonoDevelop.UnityScript
INFO [2015-08-26 00:30:02Z]: Add-in loaded: Unity.Utilities
INFO [2015-08-26 00:30:05Z]: Add-in loaded: MonoDevelop.Debugger.Soft
INFO [2015-08-26 00:30:05Z]: Add-in loaded: MonoDevelop.Debugger.Soft.Unity
INFO [2015-08-26 00:30:05Z]: Add-in loaded: MonoDevelop.Xml
INFO [2015-08-26 00:30:05Z]: Add-in loaded: MonoDevelop.NUnit
   Loading Workbench
INFO [2015-08-26 00:30:06Z]: Add-in loaded: MonoDevelop.AssemblyBrowser
INFO [2015-08-26 00:30:06Z]: Add-in loaded: MonoDevelop.RegexToolkit
      Initializing Main Window
INFO [2015-08-26 00:30:06Z]: Creating DefaultWorkbench
INFO [2015-08-26 00:30:07Z]: Add-in loaded: MonoDevelop.ILAsmBinding
INFO [2015-08-26 00:30:08Z]: Add-in loaded: MonoDevelop.HexEditor
Loaded: /Applications/Unity/Unity.app/Contents/PlaybackEngines/iOSSupport/UnityEditor.iOS.Extensions.Native.dylib
[usbmuxd] Start listen thread
[usbmuxd] Listen thread started
[usbmuxd] Send listen message
INFO [2015-08-26 00:30:14Z]: CodeTemplateService: No user templates, reading default templates.
Stacktrace:

  at <unknown> <0xffffffff>
  at (wrapper managed-to-native) Pango.Layout.pango_layout_get_pixel_size (intptr,int&,int&) <0xffffffff>
  at Pango.Layout.GetPixelSize (int&,int&) <0x00023>
  at MonoDevelop.Components.FixedWidthWrapLabel.OnSizeRequested (Gtk.Requisition&) <0x00053>
  at Gtk.Widget.sizerequested_cb (intptr,intptr) <0x00075>
  at (wrapper native-to-managed) Gtk.Widget.sizerequested_cb (intptr,intptr) <0xffffffff>
  at <unknown> <0xffffffff>
  at (wrapper managed-to-native) Gtk.Application.gtk_main () <0xffffffff>
  at Gtk.Application.Run () <0x0000b>
  at MonoDevelop.Ide.IdeApp.Run () <0x0000b>
  at MonoDevelop.Ide.IdeStartup.Run (MonoDevelop.Ide.MonoDevelopOptions) <0x018f7>
  at MonoDevelop.Ide.IdeStartup.Main (string[],MonoDevelop.Ide.Extensions.IdeCustomizer) <0x00127>
  at MonoDevelop.Startup.MonoDevelopMain.Main (string[]) <0x0001b>
  at (wrapper runtime-invoke) <Module>.runtime_invoke_int_object (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:

Thanks. Looks like there is an issue with how we package MonoDevelop on OSX, where we bundle Pango (used for text rendering and layout) and Pango crashes. This seems to be the case for the crash reports so far.

OSX. It crashes when I bring up code completion/intellisense for method parameters.
Also, it throws up something about needing Xcode and command line developer tools?

I can repro consistently by making a new script, opening it, and then inside Start, typing “StartCoroutine(” or “gameObject.SetActive(”. Just looking through member fields/properties does not seem to cause it to crash.

I just copied the top part of the log. Not sure if this makes any sense. But the whole log was crazy long.

Process: mono-sgen [1173]
Path: /Applications/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/bin/mono
Identifier: com.unity.monodevelop
Version: 5.9.4 (5.9.4)
Code Type: X86 (Native)
Parent Process: ??? [1]
Responsible: mono-sgen [1173]
User ID: 503

Date/Time: 2015-08-26 18:42:39.441 +0800
OS Version: Mac OS X 10.10.5 (14F27)
Report Version: 11
Anonymous UUID: 256E1DEB-26DA-8C76-9B66-90D29CA960E4

Time Awake Since Boot: 3300 seconds

Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Exception Type: EXC_BAD_ACCESS (SIGABRT)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000

VM Regions Near 0:
→
__TEXT 000000000002f000-0000000000502000 [ 4940K] r-x/rwx SM=COW /Applications/MonoDevelop.app/Contents/Frameworks/Mono.framework/Versions/Current/bin/mono-sgen

Just curious. Is the Windows version more stable right now?

Looking forward to the fixed version. I will turn back to the Xamarin Studio with Unity Add-ins for the time being. That one is rock solid stable for me.

It tries to open the developer tools because of the crash. Yes, the Windows version is more stable because it runs on .NET, where as the OSX version runs on Mono.

I’ve found the root cause of the crash on OSX and this will be fixed in the next alpha.

Cool. I’ll try the Windows version. I’ll report back on any weird stuff that happens.

Looking forward to MonoDevelop-Unity 5.9 though. Great work so far. :slight_smile:

EDIT: Ok, just right off the bat. MonoDevelop.exe doesn’t seem to do anything. Doesn’t launch. Nothing through command prompt either. Is there an error log somewhere it’d be logging to?

I forgot to mention in the instructions above that you need to have .NET 4.5 installed on Windows for MonoDevelop to turn, but if Xamarin Studio runs, this build should also.

The log files are stored in C:\Users<username>\AppData\Local\MonoDevelop-Unity-5.0\Logs