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

Omnisharp process crashing in travis #1256

Closed
akshita31 opened this issue Aug 1, 2018 · 12 comments
Closed

Omnisharp process crashing in travis #1256

akshita31 opened this issue Aug 1, 2018 · 12 comments
Labels

Comments

@akshita31
Copy link
Contributor

akshita31 commented Aug 1, 2018

The recent builds of omnisharp-vscode that consume the latest omnisharp from the master branch have been failing. On trying we realized that the versions till 1.32.2-beta.21 were working fine and the ones from
1.32.2-beta.33 onwards are failing.

Here is the link to the failing build: https://travis-ci.org/OmniSharp/omnisharp-vscode/builds/410545826

@filipw
Copy link
Member

filipw commented Aug 1, 2018

beta.33 only has this change #1250 which is not packaged into OmniSharp distro. It was released from here https://travis-ci.org/OmniSharp/omnisharp-roslyn/jobs/407928780

So this shouldn't be related I think.

@filipw
Copy link
Member

filipw commented Aug 1, 2018

Oh actually, now I see. There is also version beta.31, which was never released for linux, because the release build failed at the time.
That one is based on #1237 which is a much wider set of changes (albeit only updates).

Since beta.31 was never there for non-windows, beta.33 was the first time this particular changeset was released.

@filipw filipw added the bug label Aug 1, 2018
@filipw
Copy link
Member

filipw commented Aug 1, 2018

Here is what I see - when running on embedded mono

System.TypeLoadException: Could not load type of field 'McMaster.Extensions.CommandLineUtils.CommandLineApplication:_validationErrorHandler' (36) due to: Could not load file or assembly 'System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. assembly:System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 type:<unknown type> member:(null) signature:<none>
  at OmniSharp.Stdio.StdioCommandLineApplication..ctor () [0x00000] in <d3a78c5edca1483eaa0e46ffac11a90f>:0 
  at OmniSharp.Stdio.Driver.Program+<>c__DisplayClass0_0.<Main>b__0 () [0x00006] in <24c31f05c7ed4566b78400b5558caab0>:0 
  at OmniSharp.HostHelpers.Start (System.Func`1[TResult] action) [0x0001c] in <d571fd245c0a45a3925672c34247975f>:0 

When running on global mono (I have 5.12) everything is fine. This is definitely related to #1250 as this type McMaster.Extensions.CommandLineUtils.CommandLineApplication (and the whole package) was only introduced then, and looks like it needs dependencies we didn't need before.

@DustinCampbell do you know if System.ComponentModel.Annotations is being trimmed from the embedded mono we have?

@DustinCampbell
Copy link
Contributor

No, we don't copy System.ComponentModel.DataAnnotations into the embedded Mono because nothing used it. Why did we need to upgrade CommandLineUtils to this forked version? Shouldn't the old one have worked fine?

@filipw
Copy link
Member

filipw commented Aug 2, 2018

Why did we need to upgrade CommandLineUtils to this forked version? Shouldn't the old one have worked fine?

that is a good question 😃I think it was just a sweeping upgrade of all the packages involved (@david-driscoll?)

That said, you are right, we do not take advantage of any of the new extra features of this new package so I opened #1259 as a proposal to revert back to the old package and not have to modify the embedded Mono (and not have to grow its size too).

The only thing is that the old package Microsoft.Extensions.CommandLineUtils is no longer supported by MS - which is why the fork exists in the first place. But if we every have any bugs reported or issues with dealing with the command line args in OmniSharp, we can take have a look then. For now indeed there is no benefit.

@DustinCampbell
Copy link
Contributor

Cool. That's probably the right thing in the short term. In the longer term, I'll take a look at moving the scripts that I use to create the embedded Mono into the OmniSharp repo. That's a good first step towards democratizing the embedded Mono so it isn't always gated on work from me.

@DustinCampbell
Copy link
Contributor

We should probably add some tests that activate OmniSharp via command line args as well.

@DustinCampbell
Copy link
Contributor

DustinCampbell commented Aug 3, 2018

FWIW, there are tons of warnings on build with Mac/Linux since moving to net461.

/Library/Frameworks/Mono.framework/Versions/5.12.0/lib/mono/xbuild/15.0/Microsoft.Common.targets/ImportAfter/Microsoft.Common.Mono.After.targets(37,9): warning MSB3912: INTERNAL WARNING: Could not find the replacement assembly (System.Globalization.Extensions.dll) for the Windows specific reference /Library/Frameworks/Mono.framework/Versions/5.12.0/lib/mono/xbuild/Microsoft/Microsoft.NET.Build.Extensions/net461/lib/System.Globalization.Extensions.dll. Please file a bug report at https://bugzilla.xamarin.com . [/Users/dustincampbell/projects/omnisharp-roslyn/src/OmniSharp.Abstractions/OmniSharp.Abstractions.csproj]

@filipw
Copy link
Member

filipw commented Aug 3, 2018

Yep I saw them too. I tried with Mono 5.14 preview as well, but they are still there.

@marek-safar
Copy link

Should be fixed by mono/msbuild@393268f

@DustinCampbell
Copy link
Contributor

Thanks @marek-safar !

@filipw
Copy link
Member

filipw commented Aug 10, 2018

This has been fixed by #1260

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