Alex J Lennon | 21 Apr 10:01 2014
Picon

Problem with Mono 3.4.0 and config appSettings on ARM target

Hi all,

I've encountered a problem with an application I was running on an ARM
VFP (i.MX6) target
under 3.2.8, which now fails under 3.4.0.

The error reported is related to a problem with the configuration file
and in particular the
<appSettings> element,

I have reduced it down to a simple test case as follows,

Program.cs (compiled to Program.exe)

namespace DynamicDevices
{
  public class ConfigTest
  {
    static void Main()
    {
      // NB. Both old deprecated method and new method of obtaining
configuration values fail
      var v =
System.Configuration.ConfigurationManager.AppSettings["testkey"];
//      var v =
System.Configuration.ConfigurationSettings.AppSettings["testkey"];

      Console.WriteLine("Config key: " + v);
    }
  }
(Continue reading)

Vardar Sahin | 20 Apr 18:23 2014
Picon

Compiling a C# project with Xamarin Studio + MonoRuntime does not work.

Hi Guys,

I have a C# project which compiles just fine with Visual Studio. It also compiles when I use Xamarin Studio and the .Net runtime. But when I choose to use the MonoRuntime it does not compile anymore. 

I am using the current version of Xamarin Studio ( 4.2.3 ). Interesting is that when I use an older Version of Xamarin Studio ( 4.1.9 ) + MonoRuntime it works.

I am on Windows and use the latest stable version of mono ( 3.2.3 ).

The compiler error I get is the following. 

Error CS0433: The imported type `System.Action<T1,T2>' is defined multiple times (CS0433) 

Also I have a Warning like this

Warning CS1685: The predefined type `System.Runtime.CompilerServices.ExtensionAttribute' is defined multiple times. Using definition from `mscorlib.dll' (CS1685) 

The signature of the function where the error occurs is this. 

private void ApplyCollision(ulong goId, CollisionData data, Action<ICollisionListener, Collision> func)


Any ideas how to fix this?

Best
Sahin
_______________________________________________
Mono-devel-list mailing list
Mono-devel-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
Alex Rønne Petersen | 19 Apr 07:44 2014

Pull request testing

Hey folks!

If you're subscribed to notifications for mono/mono you may have just
noticed a flood of comments coming your way. We're testing a Jenkins
setup for building pull requests, and it will ask explicitly for
approval to build pull requests. I didn't expect it to comment on
every already-open pull request, though. Sorry for the noise!

I'll keep this thread updated on progress in setting all this up.

Regards,
Alex
Brandon Perry | 18 Apr 03:14 2014
Picon

Compiler exception on fresh ASP.NET application in Xamarin Studio

Hi, it seems that the XSP server Xamarin Studio starts assumes 'mcs' will be in the PATH and it isn't, which causes a fresh ASP.NET application to fail with the below linked exception/ I was able to "solve" this by altering my PATH to include the /Library/Frameworks/ installation mono.

PATH="/Library/Frameworks/Mono.framework/Versions/3.2.6/bin/:"$PATH

_______________________________________________
Mono-devel-list mailing list
Mono-devel-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
Antoine Cailliau | 15 Apr 14:43 2014
Picon

Fails to make run-test-ondotnet

Hi,

I'm trying to run tests against the .net runtime, to check that my patch produce the same output on the .net runtime. When I do make run-test-ondotnet, I get the following error;

$ make run-test-ondotnet
make run-test-ondotnet-local
make[1]: Entering directory '/home/Antoine/mono/mcs/class/System.ServiceModel.Web'
ok=:; \
./../../class/lib/net_4_5/nunit-console.exe  System.ServiceModel.Web_test_net_4_5.dll -noshadow   /exclude:NotDotNet,CAS -output=TestResult-ondotnet-net_4_5.log -xml=TestResult-ondotnet-net_4_5.xml   || ok=false; \
(echo ''; cat TestResult-ondotnet-net_4_5.log) | sed '1,/^Tests run: /d'; xsltproc ./../../build/nunit-summary.xsl TestResult-ondotnet-net_4_5.xml >> TestResult-ondotnet-net_4_5.log ; $ok
NUnit version 2.4.8
Copyright (C) 2002-2007 Charlie Poole.
Copyright (C) 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov.
Copyright (C) 2000-2002 Philip Craig.
All Rights Reserved.

Runtime Environment -
   OS Version: Microsoft Windows NT 6.2.9200.0
  CLR Version: 4.0.30319.34003 ( Net 4.0.30319.34003 )

Could not load file or assembly 'nunit.framework, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77' or one of its dependencies. The system cannot find the file specified.
warning: failed to load external entity "TestResult-ondotnet-net_4_5.xml"
unable to parse TestResult-ondotnet-net_4_5.xml
../../build/tests.make:93: recipe for target 'run-test-ondotnet-lib' failed
make[1]: *** [run-test-ondotnet-lib] Error 1
make[1]: Leaving directory '/home/Antoine/mono/mcs/class/System.ServiceModel.Web'
../../build/rules.make:143: recipe for target 'do-run-test-ondotnet' failed
make: *** [do-run-test-ondotnet] Error 2

(I'm on cygwin, src based on trunk)

Any idea of how I could fix this?

Thanks,

Antoine
_______________________________________________
Mono-devel-list mailing list
Mono-devel-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
Nikita Tsukanov | 12 Apr 21:04 2014
Picon

Re: FastCGI Performance

Oh, sorry for misinformation. FrameworkBenchmarks already has experimental and buggy implementation of the same thing (see multiworker branch). So the good news that it can be now considered stable.


Profiling with some optimizations gave me about 20% performance boost however.

Before:
Running 25s test <at> http://127.0.0.1:8083/
  10 threads and 600 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     6.38ms    5.51ms  59.43ms   79.82%
    Req/Sec    10.80k     3.90k   29.20k    66.14%
  2469415 requests in 24.99s, 329.70MB read
Requests/sec:  98803.25
Transfer/sec:     13.19MB


After:
Running 25s test <at> http://127.0.0.1:8083/
  10 threads and 600 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     8.06ms   12.65ms  81.59ms   90.45%
    Req/Sec    12.36k     4.94k   26.73k    71.89%
  2983443 requests in 24.99s, 398.33MB read
Requests/sec: 119391.93
Transfer/sec:     15.94MB

Regards,
Nikita


2014-04-12 21:11 GMT+04:00 Nikita Tsukanov <keks9n <at> gmail.com>:
Oh, sorry for misinformation. FrameworkBenchmarks already has experimental and buggy implementation of the same thing (see multiworker branch). So the good news that it can be now considered stable.

Regards,
Nikita Tsukanov


2014-04-12 20:53 GMT+04:00 Greg Young <gregoryyoung1 <at> gmail.com>:

Nice I will pull and check it out.

Good work.

Greg


On Sat, Apr 12, 2014 at 7:50 PM, Nikita Tsukanov <keks9n <at> gmail.com> wrote:
Hello there. Today I spent some time messing up with libevent and managed to implement multiworker mode (multiple threads accepting connections from the same socket) in my evhttp-sharp wrapper. That gave me 2.5 times faster results in benchmark (from 32K to 79K rps). Now I'll send pull request to FrameworkBenchmarks guys.

Regards,
Nikita Tsukanov


2014-04-09 23:51 GMT+04:00 xplicit <svg <at> ngs.ru>:

I like this. If it provides the ability to easy change one listener to other
and also ability to change HTTP servers it'll be awesome. By the way it also
should provide the ability to run current ASP.NET server otherwise people
could not migrate their web application to Linux platform. ASP.NET requires
some additional things to startup, like create AppDomain with appropriate
security evidence for every web application, route requests to correct
AppDomain according to virtual path and so on. These produce additional
level of complexity, which possible does not required by raw HTTP servers,
but I think it can be simplified.

If you guys are intrested in this, I can share some ideas and tell about
issues and constraints I met when I tried to integrate ASP.NET with nginx.



--
View this message in context: http://mono.1490590.n4.nabble.com/FastCGI-Performance-tp4662454p4662500.html
Sent from the Mono - Dev mailing list archive at Nabble.com.
_______________________________________________
Mono-devel-list mailing list
Mono-devel-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


_______________________________________________
Mono-devel-list mailing list
Mono-devel-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list




--
Le doute n'est pas une condition agréable, mais la certitude est absurde.


_______________________________________________
Mono-devel-list mailing list
Mono-devel-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
etienne.champetier | 10 Apr 13:59 2014
Picon

.exe referencing itself ...

Hi

I'm strugling with HyperFastCgi.

When i launch it (Mono.WebServer.HyperFastCgi.exe), i have:
Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly 'Mono.WebServer.HyperFastCgi,
Version=1.0.5213.24878, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The
system cannot find the file specified.
File name: 'Mono.WebServer.HyperFastCgi, Version=1.0.5213.24878, Culture=neutral, PublicKeyToken=null'
  at (wrapper xdomain-invoke) System.AppDomain:CreateInstanceAndUnwrap (string,string)
  at (wrapper remoting-invoke-with-check) System.AppDomain:CreateInstanceAndUnwrap (string,string)
  at System.Web.Hosting.ApplicationHost.CreateApplicationHost (System.Type hostType,
System.String virtualDir, System.String physicalDir) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.VPathToHost.CreateHost (Mono.WebServer.ApplicationServer server, System.Type
applicationHostType) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.HyperFastCgi.MainClass.Main (System.String[] args) [0x00000] in <filename
unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not load file or assembly
'Mono.WebServer.HyperFastCgi, Version=1.0.5213.24878, Culture=neutral, PublicKeyToken=null'
or one of its dependencies. The system cannot find the file specified.
File name: 'Mono.WebServer.HyperFastCgi, Version=1.0.5213.24878, Culture=neutral, PublicKeyToken=null'
  at (wrapper xdomain-invoke) System.AppDomain:CreateInstanceAndUnwrap (string,string)
  at (wrapper remoting-invoke-with-check) System.AppDomain:CreateInstanceAndUnwrap (string,string)
  at System.Web.Hosting.ApplicationHost.CreateApplicationHost (System.Type hostType,
System.String virtualDir, System.String physicalDir) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.VPathToHost.CreateHost (Mono.WebServer.ApplicationServer server, System.Type
applicationHostType) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.HyperFastCgi.MainClass.Main (System.String[] args) [0x00000] in <filename
unknown>:0 

It's looking for itself ...
If I put it in the gac, it works, but is there a way to not put it in the gac?

I'm building it with "xbuild /p:Configuration=Release /target:rebuild",
but it's the same with the Makefile (make install install it in the gac)

Thanks in advance
Etienne
David Curylo | 9 Apr 06:19 2014

NFS mounts ignored on Linux

I came across the behavior that on Linux, any NFS mounts are ignored when calling
System.IO.DriveInfo.GetDrives().  On OS X, the NFS mounts are included, but on Linux, they are ignored,
since they don’t start with ‘/‘.  To fix, in io.c, I am checking the
LinuxMountInfoParseState->fstype to see if it is “nfs”, and if so, don’t ignore it in the call to add_drive_string.

I’ve added a pull request with the fix: https://github.com/mono/mono/pull/986

Can you please include this so there is similar behavior on OS X and Linux systems when listing the drives on a
system where there are NFS mounted volumes?
Edward Ned Harvey (mono | 8 Apr 20:42 2014

bug in Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.LocalValidation

I have these two servers, identical in every way except for their ip, name, and certs.  The certs were created by exactly the same process for both machines.  I have done mozroots on the client.  Servers are running mono 3.2.8. 

 

This server negotiates ssl just fine with windows or mac clients.  No problem.   (port 443) telefolder.vgocom.net

This server negotiates ssl fine for windows clients, and causes mac client to throw exception (UnknownCA).  Which is incorrect.  (port 443) telefolder.clevertrove.net

 

Code to reproduce the problem:

 

using System;

using System.Net;

using System.Net.Sockets;

using System.Net.Security;

using System.Security.Authentication;

using System.Diagnostics;

 

namespace FunWithSslCerts

{

    class MainClass

    {

        public static void Main(string[] args)

        {

            // const string hostname = "telefolder.vgocom.net";    // works

            const string hostname = "telefolder.clevertrove.net";

            const int port = 443;

 

            var client = new TcpClient();

            client.Connect(hostname, port);

            var mySslStream = new SslStream(client.GetStream(), leaveInnerStreamOpen: false);

            mySslStream.AuthenticateAsClient(

                targetHost: hostname,

                clientCertificates: null,

                enabledSslProtocols: SslProtocols.Tls,

                checkCertificateRevocation: false

            );

            // If we throw exception on the line above, we failed.

            // If we get here, we were successful.

            Debugger.Break();

        }

    }

}

_______________________________________________
Mono-devel-list mailing list
Mono-devel-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
Geoffrey Clark | 7 Apr 04:23 2014
Picon

Compiling Mono with Visual Studio 2013.

Hi guys,

 I've put in some extra effort to get mono compiling on windows with Visual Studio 2013. I see this is useful to others, so figured I'd share my efforts.

I've attached a diff file to this email, but if that is scrubbed, it will be available here: http://bagofbacon.com/patch.diff

a very quick breakdown of my changes are:

adding "#include mini-native-types.c" (yes, .c) to line 18 in mini-generic-sharing.c

Moving the DebuggerTransport struct definition into the header of debugger-agent, and adding an empty function definition for mono_debugger_agent_register_transport(DebuggerTransport *trans) at line 9408 (aprox).

Each of these changes is intendid to assist the visual studio linker find the needed definitions. I expect they are not appropriate standard for the repository itself, but for those needing a "working build" quickly, this should hopefully get things running.

Good luck! :)
 - G. Clark.
diff --git a/mono/mini/debugger-agent.c b/mono/mini/debugger-agent.c
index 27c785a..4fcccd0 100644
--- a/mono/mini/debugger-agent.c
+++ b/mono/mini/debugger-agent.c
 <at>  <at>  -269,14 +269,6  <at>  <at>  typedef struct {
 	MonoContext restore_ctx;
 } DebuggerTlsData;

-typedef struct {
-	const char *name;
-	void (*connect) (const char *address);
-	void (*close1) (void);
-	void (*close2) (void);
-	gboolean (*send) (void *buf, int len);
-	int (*recv) (void *buf, int len);
-} DebuggerTransport;

 /* 
  * Wire Protocol definitions
 <at>  <at>  -1411,9 +1403,6  <at>  <at>  static DebuggerTransport transports [MAX_TRANSPORTS];
 static int ntransports;

 void
-mono_debugger_agent_register_transport (DebuggerTransport *trans);
-
-void
 mono_debugger_agent_register_transport (DebuggerTransport *trans)
 {
 	register_transport (trans);
 <at>  <at>  -9415,5 +9404,10  <at>  <at>  mono_debugger_agent_debug_log_is_enabled (void)
 	return FALSE;
 }

+void
+mono_debugger_agent_register_transport(DebuggerTransport *trans)
+{
+}
+
 #endif

diff --git a/mono/mini/debugger-agent.h b/mono/mini/debugger-agent.h
index 95b7650..90485a3 100644
--- a/mono/mini/debugger-agent.h
+++ b/mono/mini/debugger-agent.h
 <at>  <at>  -59,4 +59,13  <at>  <at>  mono_debugger_agent_debug_log_is_enabled (void) MONO_INTERNAL;
 gboolean
 mono_debugger_agent_transport_handshake (void) MONO_INTERNAL;

+typedef struct {
+	const char *name;
+	void(*connect) (const char *address);
+	void(*close1) (void);
+	void(*close2) (void);
+	gboolean(*send) (void *buf, int len);
+	int(*recv) (void *buf, int len);
+} DebuggerTransport;
+
 #endif
diff --git a/mono/mini/mini-generic-sharing.c b/mono/mini/mini-generic-sharing.c
index ab9245f..5f30627 100644
--- a/mono/mini/mini-generic-sharing.c
+++ b/mono/mini/mini-generic-sharing.c
 <at>  <at>  -15,6 +15,8  <at>  <at> 

 #include "mini.h"

+#include "mini-native-types.c";
+
 #define ALLOW_PARTIAL_SHARING TRUE
 //#define ALLOW_PARTIAL_SHARING FALSE

_______________________________________________
Mono-devel-list mailing list
Mono-devel-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
Giuliano Barberi | 7 Apr 01:43 2014

FastCGI Performance

After looking at some of the Mono web benchmarks ( http://www.techempower.com/benchmarks/#section=data-r8&hw=i7&test=json&s=2&p=13ydj4-0 ) I got very curious as to why FastCGI performance was so much lower than when using a C# libevent implementation.

If you look at nancy-libevent2 vs nancy benchmarks, the only difference is a C# wrapper around libevent ( https://github.com/kekekeks/evhttp-sharp ) vs Mono FastCGI. Since Mono uses epoll underneath which is what libevent uses afaik, I would not expect there to be such a gap in performance. 

I'm curious whether performance of FastCGI is being looked at or if this is expected. Mono when using FastCGI benchmarks almost at the bottom of the list when compared to many other technologies ( http://www.techempower.com/benchmarks/#section=data-r8&hw=i7&test=json ). I've done a bit of analysis on where the bottleneck is and everything I've found is pointing to the FastCGI implementation.

Regards
--
Giuliano Barberi
_______________________________________________
Mono-devel-list mailing list
Mono-devel-list <at> lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list

Gmane