Jonathan Pryor [Tue, 13 Nov 2012 18:17:08 +0000 (13:17 -0500)]
Update.
Rodrigo Kumpera [Tue, 13 Nov 2012 15:29:48 +0000 (10:29 -0500)]
Fix boehm to correctly build on iOS/x86.
* darwin_stop_world.c: Use the target macros from Apple to figure
out what flavor of darwin we're compiling against.
Sebastien Pouliot [Tue, 13 Nov 2012 14:30:28 +0000 (09:30 -0500)]
Only send server_name extension for TLS (not SSLv3). Fix for #8312
Marek Safar [Tue, 13 Nov 2012 11:13:40 +0000 (03:13 -0800)]
Merge pull request #503 from bprzygoda/linq_enumerable_ioe
Filling Linq' IEnumerable extensions InvalidOperationException messages.
Paolo Molaro [Tue, 13 Nov 2012 11:04:39 +0000 (12:04 +0100)]
Confirmed fix from Marek for #xambug 8320.
The memberref table is not a valid option for computing the
MemberRefParent tag size.
bprzygoda [Tue, 13 Nov 2012 08:49:17 +0000 (09:49 +0100)]
Wrapped IEnumerable extensions InvalidOperationException throws into factory methods.
Fixed incorrect messages for Average methods.
Marek Safar [Tue, 13 Nov 2012 08:28:20 +0000 (09:28 +0100)]
Do full check for missing type when importing class constraints. Fixes #5760
bprzygoda [Tue, 13 Nov 2012 06:12:02 +0000 (07:12 +0100)]
Looked through all InvalidOperationException thrown by IEnumerable Linq extension methods, and added messages according to ms implementation.
In case of methods with predicate/selector, message is: 'Sequence contains no matching elements', wheras ms implementation just yields 'Sequence contains no elements, because it just calls predicateless/selectorless methods after filtering out the collection.
Marek Safar [Mon, 12 Nov 2012 18:48:40 +0000 (10:48 -0800)]
Merge pull request #501 from knocte/fix_linq_ioe
[Linq] Return a clearer exception message for Enumerable<T>.First()'s IOE
Andres G. Aragoneses [Mon, 12 Nov 2012 18:34:44 +0000 (18:34 +0000)]
[Linq] Return a clearer exception message for Enumerable<T>.First()'s IOE
This method was using the empty constructor (no message) of
InvalidOperationException if no element matched the predicate.
This meant that the message bubbled up would be a bit confusing:
"Operation is not valid due to the current state of the object".
This commit makes Mono match MS.NET by throwing "Sequence contains
no matching element"
Marek Safar [Mon, 12 Nov 2012 08:52:13 +0000 (09:52 +0100)]
Add 4.5 profile sdk for CSharpCodeProvider. Fixes #3582
Marek Safar [Mon, 12 Nov 2012 08:47:03 +0000 (09:47 +0100)]
Clean up some warnings
Jonathan Pryor [Mon, 12 Nov 2012 03:22:37 +0000 (22:22 -0500)]
[Mono.Options] Add documentation for Option.Hidden.
Zoltan Varga [Mon, 12 Nov 2012 02:24:21 +0000 (03:24 +0100)]
Add a few missing #ifdef HAVE_SGEN_GC blocks to
1fa0a65b2ff8b548aceb2f66c51b8e9e49b7aae4.
Zoltan Varga [Mon, 12 Nov 2012 02:06:46 +0000 (03:06 +0100)]
Add --enable-minimal= configure options to disable sgen features.
Marek Safar [Sun, 11 Nov 2012 17:28:38 +0000 (18:28 +0100)]
Add System.Runtime.Serialization to runtime remapping. Fixes #8037
Marek Safar [Sun, 11 Nov 2012 14:46:54 +0000 (15:46 +0100)]
Fix win serial port constants. Fixes #8285
Marek Safar [Sun, 11 Nov 2012 14:04:30 +0000 (15:04 +0100)]
Save repl shell history on quit. Fixes #8156
Marek Safar [Sun, 11 Nov 2012 13:20:41 +0000 (14:20 +0100)]
Don't filter out user operator of System.Char type. Fixes #8263
Zoltan Varga [Sat, 10 Nov 2012 22:53:55 +0000 (23:53 +0100)]
Remove sgen sources from libmonoruntime_la_SOURCES, so changes to sgen files cause less libraries/executables to be recompiled.
Zoltan Varga [Sat, 10 Nov 2012 22:50:06 +0000 (23:50 +0100)]
Declare the memory region passed to conservatively_pin_objects_from () as defined to prevent many warning errors.
Zoltan Varga [Sat, 10 Nov 2012 22:49:18 +0000 (23:49 +0100)]
Update valgrind headers.
Marek Safar [Sat, 10 Nov 2012 17:08:41 +0000 (18:08 +0100)]
Remove extra #endif
Marek Safar [Sat, 10 Nov 2012 15:36:45 +0000 (16:36 +0100)]
When comparing base type interface implementation parameters use ordered comparer. Fixes #8283
Marek Safar [Sat, 10 Nov 2012 14:30:45 +0000 (15:30 +0100)]
Correctly check recursive constraints involving type parameters. Fixes #8232
Marek Safar [Sat, 10 Nov 2012 14:06:05 +0000 (15:06 +0100)]
Clean up some ifdefs
Marek Safar [Sat, 10 Nov 2012 14:29:22 +0000 (06:29 -0800)]
Merge pull request #499 from bh-whd/master
Fix bug 8278 (https://bugzilla.xamarin.com/show_bug.cgi?id=8278)
Duncan Mak [Fri, 9 Nov 2012 19:39:58 +0000 (14:39 -0500)]
Bump to 3.0.2
Rodrigo Kumpera [Fri, 9 Nov 2012 18:07:05 +0000 (13:07 -0500)]
Replace a g_assert with a g_error.
Rodrigo Kumpera [Fri, 9 Nov 2012 18:05:07 +0000 (13:05 -0500)]
The FullAOT compiler needs the BSTR icalls.
* cominterop.c: The FullAOT compiler needs the BSTR icalls so
it can handle wrappers that marshal BSTRs.
Rodrigo Kumpera [Fri, 9 Nov 2012 18:02:19 +0000 (13:02 -0500)]
Remove more from COM in corlib.
* EXCEPINFO.cs: These types are only usable with the COM machinery
enabled. It's better to just take them out.
* Marshal.cs: The COM icalls are not available under DISABLE_COM
so let's make sure they are not present.
Rodrigo Kumpera [Thu, 8 Nov 2012 22:32:09 +0000 (17:32 -0500)]
Make LINQ sort work with Full AOT.
Rodrigo Kumpera [Thu, 8 Nov 2012 21:08:59 +0000 (16:08 -0500)]
Add compatibility only flag to the aot compiler.
* aot-compiler.c: Add iphone-abi option. This flag no longer
matter as we always use the right ABI on iOS. This exists only
to remains compatible with old applications.
Rodrigo Kumpera [Thu, 8 Nov 2012 21:07:14 +0000 (16:07 -0500)]
Don't use a fixed file name for LLVM compilation.
* aot-compiler.c: Don't use a fixed name for the intermediary files
so we can do parallel compilation on the same folder.
Rodrigo Kumpera [Thu, 8 Nov 2012 20:49:20 +0000 (15:49 -0500)]
Remove usage of -mmacosx-version-min
Rodrigo Kumpera [Thu, 8 Nov 2012 17:27:07 +0000 (12:27 -0500)]
Remove some sgen debug spew.
Rodrigo Kumpera [Thu, 8 Nov 2012 17:22:51 +0000 (12:22 -0500)]
Do DISABLE_COM properly.
*class.c:
*class-internals.h: DISABLE_COM now assumes that the COM core types
are not going to be present on corlib so we don't even try to load them.
Rodrigo Kumpera [Thu, 8 Nov 2012 00:13:49 +0000 (19:13 -0500)]
Use g_assertion_message instead of exit to kill an iOS app.
* mini-exceptions.c: Given iOS apps don't have the explicit notion
of terminating, we hard crash when we need to force-exit them.
Rodrigo Kumpera [Thu, 8 Nov 2012 00:03:41 +0000 (19:03 -0500)]
Add new configure option --with-lazy-gc-thread-creation.
* gc.c: New configure option lets the embedding host create the
gc thread itself.
Rodrigo Kumpera [Wed, 7 Nov 2012 23:36:08 +0000 (18:36 -0500)]
Fix reflection emit disable.
Rodrigo Kumpera [Wed, 7 Nov 2012 23:33:56 +0000 (18:33 -0500)]
Implement the runtime side of disabling performance counters.
Rodrigo Kumpera [Wed, 7 Nov 2012 23:19:43 +0000 (18:19 -0500)]
Add the option to disable performance counters to configure.in
Rodrigo Kumpera [Wed, 7 Nov 2012 23:19:05 +0000 (18:19 -0500)]
Add ARM cross compilation target to configure.in.
Marek Safar [Wed, 17 Oct 2012 13:34:08 +0000 (14:34 +0100)]
Use system resgen for monotouch build
Martin Baulig [Fri, 9 Nov 2012 04:39:14 +0000 (05:39 +0100)]
Implement NTLMv2 Session and NTLMv2 Authentication.
By default, we use NTLMv2 Session if the server supports it
and fall back to LM and NTLM.
The default behavior can be configured with the static
Mono.Security.Protocol.Ntlm.Type3Message.DefaultAuthLevel
property.
To use NTLMv2, you must explicitly set this to
NtlmAuthLevel.NTLMv2_only.
This is similar to the LAN Manager Authentication Level on
Windows (http://msdn.microsoft.com/en-us/library/ms814176.aspx).
Zoltan Varga [Fri, 9 Nov 2012 04:27:26 +0000 (05:27 +0100)]
Disable dtrace on Darwin arm.
Zoltan Varga [Thu, 8 Nov 2012 02:21:09 +0000 (03:21 +0100)]
Speed up the sigaltstack configure test.
Marek Habersack [Thu, 8 Nov 2012 12:42:48 +0000 (13:42 +0100)]
Removed original license since no substantial portions of the original software are used in our implementation
Rolf Bjarne Kvinge [Wed, 7 Nov 2012 09:00:32 +0000 (10:00 +0100)]
[Mono.Options] Add support for hidden options (which are not written in WriteOptionDescriptions).
bh-whd [Thu, 8 Nov 2012 09:24:53 +0000 (10:24 +0100)]
Update mcs/class/Novell.Directory.Ldap/Novell.Directory.Ldap.Rfc2251/RfcFilter.cs
This fixes bug 8278 (https://bugzilla.xamarin.com/show_bug.cgi?id=8278)
Miguel de Icaza [Wed, 7 Nov 2012 20:15:25 +0000 (15:15 -0500)]
Fix #6349: Do not use KQueue on Darwin, as their kernel behaves differently than BSD
Introduce a new define that determines whether we can use kqueue for the threadpool,
and keep the old check for kqueue, in case we need to use it in the future for something
else.
From Gonzalo's notes:
I could not reproduce the problem at all on FreeBSD, but it happened
immediately on the Mac. And when it happened, I could never kill the
process (tried kill from outside and another thread with
Environment.Exit() but no luck). This led me to believe that it was an
OS problem. Both asynchronous operations work fine when they are the
only asynchronous operation on the socket (I turned the other into
synch). When read and writes are asychronous kqueue() changes the
event we are waiting for to be read/write. That is usually not a
problem, but in this particular case, it looked like 2 separate
threads were trying to do the same thing (one for read and one for
write). I tried a simple spin lock per file-descriptor to no avail. I
also tried a fat lock and again no luck. Then I found this:
http://lists.apple.com/archives/darwin-dev/2011/Jun/msg00016.html and
then remembered that back in 2006, when I first tried a patch to
support kqueue(), Geoff found a similar problem to this one (yeah,
what the fuck, Steve!). The problem has not surfaced earlier because
most people that use sockets know how to do it. Setting up read and
write asynch. calls at the same time is not something that pros do,
but...
Solutions?
1. Provide a way to disable kqueue at runtime for cases like this (can
we set the MONO_DISABLE_AIO environment variable in an iOS mono
program? Just Environment.SetEnvironmentVariable before the first use
of sockets/threadpool should work.
2. Disable kqueue by default. The benefits of things like epoll and
kqueue are negligible, really, unless people are dealing with several
hundreds of sockets (~500 and above) and the default poll based
implementation is ok for most applications (xsp would suffer a lot of
contention under load, but xsp uses asynch ops the right way :).
Rodrigo Kumpera [Tue, 9 Oct 2012 21:25:05 +0000 (17:25 -0400)]
Fix mobile profile build of System.dll
Sebastien Pouliot [Fri, 30 Mar 2012 11:54:53 +0000 (07:54 -0400)]
Fix Aes to behave correctly on MonoTouch wrt CryptoConfig (default creation) and fix it's FeedbackSize (for CFB)
Rodrigo Kumpera [Wed, 7 Mar 2012 20:14:50 +0000 (17:14 -0300)]
Use Function<T>:Identity instead of an inline lambda. Fixes 3627.
Rodrigo Kumpera [Tue, 6 Mar 2012 23:38:11 +0000 (20:38 -0300)]
Add workaround to make LINQ 4 Objects order by work under full-aot.
Sebastien Pouliot [Thu, 23 Feb 2012 20:06:30 +0000 (15:06 -0500)]
Avoid multiple potential full-AOT failures with LINQ Enumerable. Fix bug #3285
Sebastien Pouliot [Sun, 17 Jul 2011 20:35:15 +0000 (16:35 -0400)]
Avoid using PredicateOf<T>.Always since it does not work with full-aot. Fix bug #682757...
Rodrigo Kumpera [Tue, 9 Oct 2012 21:25:41 +0000 (17:25 -0400)]
Fix the mobile profile build of System.Core.dll.
Miguel de Icaza [Mon, 27 Aug 2012 14:36:03 +0000 (10:36 -0400)]
Add some defensive exceptions to WebConnectionStream to try to track down #6329
Miguel de Icaza [Mon, 27 Aug 2012 14:33:43 +0000 (10:33 -0400)]
Add some defensive exceptions to WebConnectionStream to try to track down #6329
Miguel de Icaza [Wed, 15 Aug 2012 20:49:57 +0000 (16:49 -0400)]
mobile/System.dll: Add BindingList<T>
Miguel de Icaza [Tue, 19 Jun 2012 21:14:25 +0000 (17:14 -0400)]
NetworkStream: Bring ReceiveTimeout, SendTimeout, Close to MOBILE profile
Chris Toshok [Mon, 19 Sep 2011 21:44:41 +0000 (14:44 -0700)]
Up the default max persistent connections to 10 for monotouch, and warn when we use more.
Rolf Bjarne Kvinge [Tue, 8 Nov 2011 22:59:20 +0000 (23:59 +0100)]
[Mono.Data.Sqlite] Fix a MonoTouch memory leak
Ensure SQLite3's GCHandle is freed when Close is called instead of Dispose.
Also make SQLiteConnection's Dispose call SQlite3's Dispose to ensure we free
the GCHandle in all cases.
Sebastien Pouliot [Thu, 22 Mar 2012 12:31:09 +0000 (08:31 -0400)]
Redirect, by default, the Console.* and Console.Error.* output to NSLog
Sebastien Pouliot [Wed, 20 Jul 2011 01:39:48 +0000 (21:39 -0400)]
Get better linker results when doing full-aot wrt the cryptographic stack
Sebastien Pouliot [Wed, 20 Jul 2011 22:45:35 +0000 (18:45 -0400)]
Fix default SecurityManager properties to false (they should not be reached unless there's a bug, but they should be right)
Sebastien Pouliot [Thu, 1 Mar 2012 15:14:04 +0000 (10:14 -0500)]
Disable optimization under full AOT. Fix bug #3682
Sebastien Pouliot [Wed, 7 Nov 2012 00:08:30 +0000 (19:08 -0500)]
Use same name/casing for DllImport so we do not duplicate needlessly the extern entries in the metadata
Rodrigo Kumpera [Tue, 6 Nov 2012 23:03:33 +0000 (18:03 -0500)]
Disable the regex compiler under Full AOT.
Rodrigo Kumpera [Tue, 6 Nov 2012 23:03:21 +0000 (18:03 -0500)]
Remove transparent proxy support for monotouch builds.
Rodrigo Kumpera [Tue, 6 Nov 2012 23:00:45 +0000 (18:00 -0500)]
Make System.Guid Full AOT friendly.
* Guid.cs: Make this type more Full AOT friendly by not exposing
the rng type on the field to allow the linker to kill it and by
using a Guid generator that doesn't depend on the Crypto stack.
Rodrigo Kumpera [Tue, 6 Nov 2012 22:57:41 +0000 (17:57 -0500)]
Make the Crypto stack work with Full AOT.
* System.Security.Cryptography.*cs: To make Crypto work with
Full AOT we remove the usage of providers and reflection. We hardcode
the default algorithms for hashing, rng and symmetric cyphers.
Rodrigo Kumpera [Tue, 6 Nov 2012 22:08:53 +0000 (17:08 -0500)]
Don't tag some CAS types as obsolete.
Rodrigo Kumpera [Tue, 6 Nov 2012 21:16:23 +0000 (16:16 -0500)]
Avoid bringing the whole Crypto stack in AssemblyName under FullAOT.
Rodrigo Kumpera [Tue, 6 Nov 2012 21:14:44 +0000 (16:14 -0500)]
Disable code generation for object serialization under Full AOT.
Rodrigo Kumpera [Tue, 6 Nov 2012 21:11:26 +0000 (16:11 -0500)]
Disable more COM code under Full AOT.
Rodrigo Kumpera [Tue, 6 Nov 2012 21:04:50 +0000 (16:04 -0500)]
Remove SRE from Full AOT builds.
Rodrigo Kumpera [Tue, 6 Nov 2012 20:42:27 +0000 (15:42 -0500)]
Remove some COM types under Full AOT.
Rodrigo Kumpera [Tue, 6 Nov 2012 19:55:32 +0000 (14:55 -0500)]
Kill silly using directive.
Rodrigo Kumpera [Tue, 6 Nov 2012 15:09:41 +0000 (10:09 -0500)]
Add Full AOT support for System.Linq.Expression.
* System.Core/System.Linq.Expressions/*.cs: To bring LINQ expressions
to Full AOT we disable all code that depends on SRE or dynamic code generation.
Rodrigo Kumpera [Tue, 6 Nov 2012 14:33:07 +0000 (09:33 -0500)]
Rework some bits in Parallel LINQ to work under Full AOT.
Miguel de Icaza [Tue, 1 Nov 2011 18:51:13 +0000 (14:51 -0400)]
Bring Parallel LINQ to the Mobile profile
Zoltan Varga [Tue, 6 Nov 2012 19:21:45 +0000 (20:21 +0100)]
Disable the profilers when using --disable-libraries.
Zoltan Varga [Tue, 6 Nov 2012 19:13:55 +0000 (20:13 +0100)]
Don't build monograph when using --disable-libraries.
Zoltan Varga [Tue, 6 Nov 2012 19:02:02 +0000 (20:02 +0100)]
Don't build monodis when using --disable-libraries.
Rodrigo Kumpera [Mon, 5 Nov 2012 19:13:57 +0000 (14:13 -0500)]
Remove SRE.UnmanagedMarshal dependency from System.Reflection.
* FieldInfo.cs:
* MonoMethod.cs:
* ParameterInfo.cs: Remove silly dep on UnmanagedMarshal to use
MarshalAsAttribute which is what we need in the end.
* icall.c:
* reflection.c: Use the custom attribute type instead of the SRE
one. This allows FULL_AOT_RUNTIME to work with stuff that uses
MarshalAs.
Rodrigo Kumpera [Mon, 5 Nov 2012 19:08:07 +0000 (14:08 -0500)]
Remove FieldInfo::UMarshal, which is dead code.
Rodrigo Kumpera [Mon, 5 Nov 2012 19:02:58 +0000 (14:02 -0500)]
Expose MarshalAsAttribute to the runtime.
Jeffrey Stedfast [Mon, 5 Nov 2012 13:54:11 +0000 (05:54 -0800)]
Merge pull request #488 from roji/email_attachment_fixes
Fixed missing Content-Id email headers
Marek Safar [Mon, 5 Nov 2012 09:39:29 +0000 (01:39 -0800)]
Merge pull request #497 from Shabbafru/ImageListPatches
Fixed clearing of the ImageList
Atsushi Eno [Mon, 5 Nov 2012 09:22:29 +0000 (18:22 +0900)]
Fix JavaScriptSerializer.Deserialize() for dictionary of array of anonymously typed dictionary.
context: https://twitter.com/muo_jp/status/
265373491224801280
Shabbafru [Mon, 5 Nov 2012 08:35:28 +0000 (09:35 +0100)]
fixed clearing of the ImageList
Shay Rojansky [Mon, 5 Nov 2012 01:36:23 +0000 (03:36 +0200)]
Removed debugging prints that slipped through
Sebastien Pouliot [Fri, 2 Nov 2012 21:15:02 +0000 (17:15 -0400)]
Allow setting a custom Profile without using reflection
Marek Safar [Fri, 2 Nov 2012 09:12:41 +0000 (02:12 -0700)]
Merge pull request #492 from pruiz/systx-fixes
Sys.Tx: Avoid uncatched exceptions during Prepare phase, which might crash the whole application.
Rodrigo Kumpera [Thu, 1 Nov 2012 21:43:25 +0000 (17:43 -0400)]
Revert "Merge pull request #464 from gregoryyoung/master"
This commit causes deadlock in the tpool backend in the following way:
thread 1:
socket_io_add locks io_lock
tp_poll_modify waits on new_sem
thread 2:
tp_poll_wait tries to lock io_lock
tp_poll_wait is the responsible to post to new_sem, which it can't do since it's
blocked on io_lock, held by a thread waiting on new_sem.
This reverts commit
11286da0ac2e2bab7b2d8ab04b9f6a4da4e12131, reversing
changes made to
94bfdf21e6f06424ad96980a27c35c99ba42b1d3.
Rodrigo Kumpera [Thu, 1 Nov 2012 20:23:50 +0000 (16:23 -0400)]
When inflating a (M)VAR make sure we're not using a broken type.
*class.c (inflate_generic_type): When inflating (M)VAR we must
check if the replaced type is not void or typedbyref as both can
later lead to all sorts of nasty crashes or memory corruption.
Mark Probst [Thu, 1 Nov 2012 19:13:11 +0000 (20:13 +0100)]
[sgen] MONO_GC_DEBUG option for disabling the managed allocator.
This can be used to make all object allocations show up in the dtrace probe.
Jonathan Pryor [Thu, 1 Nov 2012 17:59:30 +0000 (13:59 -0400)]
[mdoc] Update XSD @id, @tool for docs team.
Xamarin docs team has requested the following changes to make life
easier and increase tooling support:
//para/@id:
Similar in concept/purpose to the HTML @id attribute.
//para/@tool:
Contains the name of a tool which generated the <para/>.
//exception/list:
Allow lists within <exception/> blocks.