Marek Safar [Mon, 16 Mar 2015 07:48:04 +0000 (08:48 +0100)]
Mono friendly Attribute
Marek Safar [Thu, 12 Mar 2015 12:26:05 +0000 (13:26 +0100)]
Few FULL_AOT_RUNTIME tweaks
Marek Safar [Wed, 11 Mar 2015 16:12:05 +0000 (17:12 +0100)]
Mono uses WebAsyncResult instead of reference sources LazyAsyncResult (at least for now)
Alexander Köplinger [Mon, 9 Mar 2015 16:36:44 +0000 (17:36 +0100)]
Fix System.Timers.Timer regression on ARM
When setting Interval = double.MaxValue like in the TimerTest.Interval_TooHigh_ThrowOnEnabled and
TimerTest.Interval_TooHigh_Enabled_Throw Mono unit tests there was a regression on ARM in that
the ArgumentOutOfRangeException wasn't thrown as expected.
Turns out, on ARM the call to (int)Math.Ceiling(double.MaxValue) as used in UpdateTimer() and Enabled setter
doesn't produce -
2147483648 (i.e. Int32.MinValue) like on x86/amd64 but rather
2147483647 (i.e. Int32.MaxValue),
which is perfectly valid as the cast overflows and the result is an undefined value.
This means that the value passed to the underlying System.Threading.Timer is not negative
and no ArgumentOutOfRangeException is thrown there.
The fix is to properly check for interval>Int32.MaxValue like is done already in the constructor.
I pulled that logic out and introduced a separate method CalculateRoundedInterval().
Note: The thrown exception changes from an ArgumentOutOfRangeException inside of System.Threading.Timer
to an ArgumentException inside of CalculateRoundedInterval().
I think this has minimal impact as no-one should rely on this exception anyway and it actually matches
what MSDN (https://msdn.microsoft.com/en-us/library/system.timers.timer.interval(v=vs.110).aspx)
says should happen in this case (even though the MS.NET 4.5 implementation doesn't comply).
Mono's implementation also did the same before: https://github.com/mono/mono/blob/
4cb3f77b4bbf703b1cda59db2f5aee206e35d31a/mcs/class/System/System.Timers/Timer.cs#L95-L96
Marek Safar [Wed, 11 Mar 2015 09:04:58 +0000 (10:04 +0100)]
Mono friendly Type
dotnet-bot [Tue, 10 Mar 2015 22:29:14 +0000 (15:29 -0700)]
Adding reference source for SMDiagnostics
Martin Baulig [Thu, 5 Mar 2015 20:47:00 +0000 (21:47 +0100)]
Need another DISABLE_CAS_USE in _SecureChannel.cs.
Martin Baulig [Thu, 5 Mar 2015 20:37:51 +0000 (21:37 +0100)]
Add another DISABLE_CAS_USE conditional to _SecureChannel.cs
Marek Safar [Thu, 5 Mar 2015 13:31:43 +0000 (14:31 +0100)]
Mono friendly enum
Atsushi Eno [Wed, 4 Mar 2015 12:25:53 +0000 (20:25 +0800)]
Fix native pointer and endianness issue. Fixes bug #27258.
Patch by Neale Ferguson.
Atsushi Eno [Tue, 3 Mar 2015 18:26:08 +0000 (02:26 +0800)]
add XmlSerializer for mono support.
Even after we imported System.Xml referencesource, XmlSerializer is still
based on existing code. And we have some special trick for XElement
serialization support in System.Xml, by allowing access from
System.Xml.Linq.dll to use special type converter attribute.
It does not exist in referencesource and thus we lost serializability on
XElement, so we need to add the missing code to bring it back.
Marek Safar [Tue, 3 Mar 2015 13:10:58 +0000 (14:10 +0100)]
Mono friendly Activator
Marek Safar [Fri, 27 Feb 2015 12:12:04 +0000 (13:12 +0100)]
Marek Safar [Fri, 27 Feb 2015 11:03:08 +0000 (12:03 +0100)]
Change Encoding key to workaround collision with Encoding parameter names used by string resources
Marek Safar [Fri, 27 Feb 2015 10:54:04 +0000 (11:54 +0100)]
Mono friendly Binder
Atsushi Eno [Wed, 25 Feb 2015 21:13:16 +0000 (05:13 +0800)]
some people claim they have old SYSMONO that cannot compile this source and demand to "fix" this code.
Atsushi Eno [Tue, 24 Feb 2015 14:48:37 +0000 (22:48 +0800)]
Add #if CONFIGURATION_DEP and #if XML_DEP in Trace class and co.
Atsushi Eno [Tue, 24 Feb 2015 04:55:22 +0000 (12:55 +0800)]
more BIGENDIAN fixes in UnicodeEncoding.
Marek Safar [Mon, 23 Feb 2015 18:21:47 +0000 (19:21 +0100)]
Inline string category resource keys
Marek Safar [Mon, 23 Feb 2015 17:13:18 +0000 (18:13 +0100)]
Include Stream::ObjectInvariant in mono build
Marek Safar [Mon, 23 Feb 2015 16:01:54 +0000 (17:01 +0100)]
Revert no longer needed changes
Atsushi Eno [Mon, 23 Feb 2015 12:22:42 +0000 (20:22 +0800)]
Alter #if BIGENDIAN code with run-time condition.
Should fix bug #27258.
Atsushi Eno [Tue, 3 Feb 2015 11:53:03 +0000 (19:53 +0800)]
add DISABLE_XSLT_SCRIPT and DISABLE_XSLT_COMPILER.
The former condition is to disable <msxsl:script> element.
The latter is to disable XslCompiledTransform and co (though they are
mostly removed at *.dll.sources level).
Atsushi Eno [Tue, 3 Feb 2015 11:51:06 +0000 (19:51 +0800)]
Reduce !MOBILE scope in XmlReaderSettings. They are in use.
Atsushi Eno [Tue, 3 Feb 2015 11:14:25 +0000 (19:14 +0800)]
disable Win32 registry dependencies in XmlReaderSettings on MOBILE builds.
Atsushi Eno [Mon, 2 Feb 2015 10:36:07 +0000 (18:36 +0800)]
Add workaround for XmlSchema serialization.
Somewhere in System.Xml requires NameTable to be canonically reused when
deserializing XmlSchema, so that certain deserialization part can check
only reference equality.
Since we have hybrid System.Xml implementation for XmlSerializer, this
is not completely achieved and with reference comparison it causes some
schema deserialization failure. To avoid this problem, just disable
reference comparison. It should not affect outside XmlSchema serialization.
Atsushi Eno [Mon, 2 Feb 2015 10:26:47 +0000 (18:26 +0800)]
revert mono-specific XmlSchemas changes that is not necessary anymore.
Atsushi Eno [Tue, 6 Jan 2015 07:50:55 +0000 (16:50 +0900)]
Make changes for System.Xml merge into mono tree.
DISABLE_CAS_USE is required to avoid NotImplementedExceptions in CAS land.
MONO_HYBRID_XML is to preserve Mono's XmlSerializer which also allows
interpreter-based XML serialization (as opposed to run-time code generation
based XML serialization, which is not doable in iOS).
Though some Xml.Serialization classes are useful even with mono
implementation, so we partially import them (namely schema importer).
Marek Safar [Fri, 20 Feb 2015 13:57:33 +0000 (14:57 +0100)]
Disable eventsources in resources
Marek Safar [Fri, 20 Feb 2015 07:39:46 +0000 (08:39 +0100)]
Revert "Add read-only interfaces to some System/System.Core collection classes."
This reverts commit
b23609f81a95b384538dba01a1cbf49fe2a9b95a.
Confirmed by Brett Lopez as MSDN bug
dotnet-bot [Fri, 20 Feb 2015 02:00:27 +0000 (18:00 -0800)]
Adding reference source for part of Workflow Foundation
Adding reference source for
System.Activities
System.Activities.DurableInstancing
System.Activities.Presentation
System.Runtime.DurableInstancing
System.Workflow.Activities
System.Workflow.ComponentModel
System.Workflow.Runtime
System.WorkflowServices
System.Xaml.Hosting
XamlBuildTask
dotnet-bot [Thu, 19 Feb 2015 19:07:03 +0000 (11:07 -0800)]
Add resources for some referencesource projects
Add resources for:
mscorlib
System
System.ComponentModel.DataAnnotations
System.Core
System.Core
System.Data.DataSetExtensions
System.Data.Entity.Design
System.Data.Entity
System.Data.Linq
System.Data.SqlXml
System.Data
System.Net
System.Numerics
System.Runtime.Serialization
System.ServiceModel.Web
System.ServiceModel
System.Web.Mobile
System.Web
System.Xml.Linq
System.Xml
Marek Safar [Thu, 19 Feb 2015 18:33:00 +0000 (19:33 +0100)]
Endianness handling in binary reader
Marek Safar [Thu, 19 Feb 2015 16:14:41 +0000 (17:14 +0100)]
Remove not useful !FEATURE_PAL from bufferedstream
Marek Safar [Thu, 19 Feb 2015 15:54:35 +0000 (16:54 +0100)]
Add mono specific DataAvailable to streamreader
Marek Safar [Thu, 19 Feb 2015 15:51:58 +0000 (16:51 +0100)]
TextWriter without hardcoded line endings
Marek Safar [Thu, 19 Feb 2015 15:38:03 +0000 (16:38 +0100)]
Bugfix WriteLineAsync(String value) to not crash on writing null string
Ludovic Henry [Fri, 6 Feb 2015 23:49:06 +0000 (18:49 -0500)]
Integrate the microsoft ThreadPool into it's own System.Threading.Microsoft namespace
This will let us have both the Mono and the Microsoft ThreadPool at the same time.
To switch to the Microsoft one, set the MONO_THREADPOOL environment variable to "microsoft". It will default to the Mono one.
Marek Safar [Thu, 19 Feb 2015 11:57:31 +0000 (12:57 +0100)]
Mono friendly IO errors
Marek Safar [Thu, 19 Feb 2015 11:56:17 +0000 (12:56 +0100)]
Fix contradicting defines in Stream
Marek Safar [Thu, 19 Feb 2015 11:55:16 +0000 (12:55 +0100)]
Fix a bug when setting capacity to 0 on MemoryStream causes crash on ToArray call
Marek Safar [Tue, 17 Feb 2015 20:16:36 +0000 (21:16 +0100)]
Inline contracts error messages for text replacement to work
Alex Rønne Petersen [Tue, 17 Feb 2015 09:48:58 +0000 (10:48 +0100)]
Add read-only interfaces to some System/System.Core collection classes.
Atsushi Eno [Fri, 13 Feb 2015 10:24:51 +0000 (18:24 +0800)]
avoid reflection here.
as per https://github.com/mono/mono/pull/1566#discussion_r24653304
Atsushi Eno [Thu, 12 Feb 2015 20:28:34 +0000 (04:28 +0800)]
Add I18N assembly invocation support in Encoding.
Marek Safar [Thu, 12 Feb 2015 15:41:55 +0000 (16:41 +0100)]
Apply more DISABLE_CAS_USE
Marek Safar [Wed, 11 Feb 2015 14:26:52 +0000 (15:26 +0100)]
Disable more CAS on mobile
Marek Safar [Tue, 10 Feb 2015 14:26:08 +0000 (15:26 +0100)]
Mono friendly guid. Includes StringToLong fix for issue https://github.com/dotnet/coreclr/issues/182
Zoltan Varga [Tue, 10 Feb 2015 03:40:31 +0000 (22:40 -0500)]
Remove another unused decimal icall.
Zoltan Varga [Tue, 10 Feb 2015 03:32:10 +0000 (22:32 -0500)]
Remove unused decimal icalls.
Martin Baulig [Sun, 8 Feb 2015 00:54:27 +0000 (01:54 +0100)]
Need MONO_X509_ALIAS in _SslState.cs and _SecureChannel.cs.
Martin Baulig [Sat, 7 Feb 2015 18:39:43 +0000 (19:39 +0100)]
Introduce new MONO_X509_ALIAS conditional and use it in SslStream.cs.
Miguel de Icaza [Thu, 5 Feb 2015 23:21:59 +0000 (18:21 -0500)]
Implement NumberBufferToDecimal in Mono, and make Decimal ctor build
Sebastien Pouliot [Thu, 5 Feb 2015 20:47:08 +0000 (15:47 -0500)]
Disable some CAS usage using DISABLE_CAS_USE
Martin Baulig [Thu, 5 Feb 2015 03:58:39 +0000 (04:58 +0100)]
Merge the 'martin-ssl-integration' branch.
All changes are conditional to MONO_FEATURE_NEW_TLS.
In addition to that, all changes to their code are also conditional to 'MONO'; this
mostly applies to SecureChannel, which needed several changes to replace their native
SSPI implementation with Mono's new managed version.
* Net/SecureProtocols/SslStream.cs: Make partial and comment out 'SslStream.TransportContext'.
* Net/SecureProtocols/SslState.cs: Make partial and add new internal constructor; pass the
'SSPIConfiguration' argument down to SecureChannel's .ctor.
* Net/SecureProtocols/_SslStream.cs: Make partial.
* Net/SecureProtocols/_SecureChannel.cs: Add Mono-specific SSPI APIs.
* Net/_SslSessionCache.cs: Make conditional.
Marek Safar [Wed, 4 Feb 2015 16:18:20 +0000 (17:18 +0100)]
Add AmILittleEndian to bitconverter
Marek Safar [Wed, 4 Feb 2015 14:16:26 +0000 (15:16 +0100)]
Exclude legacy icalls from datetime
Alexander Kyte [Tue, 3 Feb 2015 23:41:57 +0000 (18:41 -0500)]
Fixed MethodAccessException in dynamically generated code
Marek Safar [Tue, 3 Feb 2015 15:18:41 +0000 (16:18 +0100)]
Disable legacy calls from timespan
Marek Safar [Tue, 3 Feb 2015 10:54:32 +0000 (11:54 +0100)]
Removes one culture #if
Marek Safar [Mon, 2 Feb 2015 17:49:37 +0000 (18:49 +0100)]
Mono friendly DateTimeFormatInfo
Sebastien Pouliot [Fri, 30 Jan 2015 00:52:58 +0000 (19:52 -0500)]
Disable CAS calls on System.Componentmodel.TypeDescriptor
Martin Baulig [Tue, 27 Jan 2015 23:18:36 +0000 (00:18 +0100)]
Add another small DISABLE_CAS_USE conditionals.
Martin Baulig [Tue, 27 Jan 2015 23:05:26 +0000 (00:05 +0100)]
Add 'MONO_FEATURE_LOGGING' conditional to disable Logging.cs.
Also put back the previous conditionals in this file.
Marek Safar [Mon, 26 Jan 2015 16:40:03 +0000 (17:40 +0100)]
Marek Safar [Sat, 24 Jan 2015 08:26:15 +0000 (09:26 +0100)]
Reverts not needed changes
Martin Baulig [Fri, 23 Jan 2015 23:26:11 +0000 (00:26 +0100)]
FIXME: This completely breaks Xamarin Studio, making it impossible to compile anything.
See the detailed comment inside.
Martin Baulig [Thu, 22 Jan 2015 22:56:55 +0000 (23:56 +0100)]
Add 'MONO_FEATURE_NEW_TLS' conditional to SslStreamContext.
This allows us to bring TransportContext.cs and conditionally enable it when needed.
Marek Safar [Thu, 22 Jan 2015 21:01:55 +0000 (21:01 +0000)]
Disable com specific stringbuilder marshalling
Zoltan Varga [Thu, 22 Jan 2015 20:59:51 +0000 (15:59 -0500)]
Revert "[mscorlib] RuntimeWrappedException mono updates."
This reverts commit
ea80438e7108d9d0a10b2b6b3dd0c6d123710232.
Revert this, it is now handled in the runtime.
Martin Baulig [Thu, 22 Jan 2015 19:11:54 +0000 (20:11 +0100)]
Use "Thread.CurrentThread.ManagedThreadId" on Mono.
Martin Baulig [Thu, 22 Jan 2015 19:09:47 +0000 (20:09 +0100)]
Add conditionals where needed.
This allows us to bring Internal.cs, Logging.cs and _LoggingObject.cs.
Martin Baulig [Thu, 22 Jan 2015 19:05:34 +0000 (20:05 +0100)]
Add REAMDE.Mono with known conditional names.
Please update if you add any new conditionals.
Zoltan Varga [Thu, 22 Jan 2015 17:16:33 +0000 (12:16 -0500)]
RuntimeWrappedException mono updates.
Marek Safar [Thu, 22 Jan 2015 16:02:14 +0000 (17:02 +0100)]
Mono Calendars compatibility
Marek Safar [Wed, 21 Jan 2015 13:13:05 +0000 (14:13 +0100)]
List<T> mono updates
Marek Safar [Tue, 20 Jan 2015 22:08:10 +0000 (23:08 +0100)]
Exclude never used method
Marek Safar [Tue, 20 Jan 2015 12:06:37 +0000 (13:06 +0100)]
Add BigNumber runtime api
Marek Safar [Tue, 20 Jan 2015 11:13:21 +0000 (12:13 +0100)]
Mono number formatting
Miguel de Icaza [Sat, 17 Jan 2015 01:19:10 +0000 (20:19 -0500)]
ComponentModel, make it build in the MOBILE profile
Ludovic Henry [Tue, 25 Nov 2014 16:34:18 +0000 (11:34 -0500)]
Add mono internal API support
Marek Safar [Thu, 15 Jan 2015 15:00:38 +0000 (16:00 +0100)]
Replace more Array.MaxArrayLength appearences
Marek Safar [Thu, 15 Jan 2015 09:02:46 +0000 (10:02 +0100)]
Remove windows api dependency from Timer
Marek Safar [Tue, 13 Jan 2015 15:58:23 +0000 (16:58 +0100)]
Conditionals for mobile profiles
Miguel de Icaza [Tue, 13 Jan 2015 04:20:07 +0000 (23:20 -0500)]
Disable IL code generation until we figure out 25671
Miguel de Icaza [Fri, 9 Jan 2015 01:33:55 +0000 (20:33 -0500)]
Only initialize Etw on Windows
Miguel de Icaza [Mon, 5 Jan 2015 03:52:46 +0000 (01:52 -0200)]
Remove code that depends on code that has not been open sourced.
Use the MONO define for this
Marek Habersack [Tue, 16 Dec 2014 20:30:48 +0000 (21:30 +0100)]
Use the DISABLE_CAS_USE macro instead of MOBILE to disable CAS
This augments commit
7dc4e513eafd3fb30d34111948ef14c981264463
dotnet-bot [Mon, 15 Dec 2014 18:50:15 +0000 (10:50 -0800)]
Adding reference source for System.Net
Marcos Henrich [Thu, 11 Dec 2014 20:56:46 +0000 (20:56 +0000)]
Removed UnsafeNativeMethods calls on Mono. - MEMORYSTATUSEX usages were replaced with performance counters "Total Physical Memory and "Available Physical Memory"
- SafeRegistryHandle.ReleaseHandle is only called on code that is ignored on Mono.
- Mono is using AppDomain.FriendlyName directly instead of UnsafeNativeMethods.GetModuleFileName.
Marcos Henrich [Thu, 11 Dec 2014 20:47:32 +0000 (20:47 +0000)]
Added Mono config variables. Variables __MonoEmulateOneCPU and __MonoTimerPeriod are used by some tests.
Marek Habersack [Wed, 10 Dec 2014 10:16:13 +0000 (11:16 +0100)]
Exclude security code from the mobile targets.
Mobile doesn't support any of the security features of .NET, no point in
running the code and/or defining fake types.
Marek Safar [Tue, 9 Dec 2014 13:25:34 +0000 (14:25 +0100)]
Disable UseCompatibleTypeConverterBehavior on mono
Marek Safar [Tue, 9 Dec 2014 13:07:19 +0000 (14:07 +0100)]
componentmodel tweaked to work with mono
Marcos Henrich [Fri, 5 Dec 2014 16:57:55 +0000 (16:57 +0000)]
Disable use of CAS. The added ifdef is required to circumvent a compile error on older versions of mcs.
Marek Safar [Thu, 4 Dec 2014 17:43:49 +0000 (18:43 +0100)]
Remove unused private using
Marcos Henrich [Thu, 4 Dec 2014 13:45:19 +0000 (13:45 +0000)]
Removed unnecessary call to Thread.WriteVolatile. System.Threading.Volatile is internal on framework versions before 4.5. As corlib internals are visible from System.Core we can use Volatile.
Marcos Henrich [Tue, 2 Dec 2014 17:27:10 +0000 (17:27 +0000)]
ReaderWriterLockSlim.cs now builds with mono.
* Builds without [MethodImpl(MethodImplOptions.AggressiveInlining)]
when target framework version is lower than 4.5.
* Use Thread.Volatile instead of Volatile.Read when target framework
version is lower than 4.5.
Alexander Köplinger [Sat, 29 Nov 2014 17:00:48 +0000 (18:00 +0100)]
Add support to build with Mono
Sebastien Pouliot [Wed, 26 Nov 2014 21:21:29 +0000 (16:21 -0500)]
Remove unused System.Web namespace from source (it does not exists in the mobile profile).