marcos henrich [Wed, 28 May 2014 17:24:16 +0000 (18:24 +0100)]
Removed NET_2_1 conditional blocks from FileInfo. Fixes #19862.
Marek Safar [Sat, 24 May 2014 06:24:42 +0000 (08:24 +0200)]
Revert "[build] Make Mono.Cecil use an [assmebly:AssemblyKeyFile] to specify keyfile"
This reverts commit
20872b3abe24c0e085710ea09209a92617fdb2e5 to fix the build
Miguel de Icaza [Sat, 24 May 2014 02:40:24 +0000 (22:40 -0400)]
[build] Make Mono.Cecil use an [assmebly:AssemblyKeyFile] to specify keyfile
Currently the flag is passed on the command line, but this is
problematic for us since our xbuild implementation does not seem to support
the attribute that generates the /keyfile: argument
Rolf Bjarne Kvinge [Sat, 24 May 2014 00:17:49 +0000 (02:17 +0200)]
Fix TimeZoneTest to build properly with new-style XI assemblies.
Rolf Bjarne Kvinge [Sat, 24 May 2014 00:16:59 +0000 (02:16 +0200)]
Remove unused namespace from LazyTest.cs
Miguel de Icaza [Fri, 23 May 2014 22:03:32 +0000 (18:03 -0400)]
[build] Fix the reference to ecma.pub
Rodrigo Kumpera [Fri, 23 May 2014 21:33:56 +0000 (17:33 -0400)]
[runtime] Don't leak memory if the custom attribute constructor throws.
Rodrigo Kumpera [Fri, 23 May 2014 21:30:51 +0000 (17:30 -0400)]
[runtime] Add regression tests for custom attribute loader errors.
Rodrigo Kumpera [Fri, 23 May 2014 21:15:11 +0000 (17:15 -0400)]
[reflection] Harder the custom attribute code against common type load errors.
Replace silent failures with exceptions.
Rodrigo Kumpera [Fri, 23 May 2014 19:38:35 +0000 (15:38 -0400)]
[runtime] Change the semantics of mono_error_set_type_load_name to acquire alloc'd strings.
The use case for this function compared to the one that take MonoClass/MonoImage is for lookups
and the failed names are usually freshly alloc'd.
Fix a leak in class.c usage of mono_error_set_type_load_name.
Rodrigo Kumpera [Fri, 23 May 2014 18:10:47 +0000 (14:10 -0400)]
[reflection] Do proper error handling in more cases.
Remove all internal usages of mono_custom_attrs_construct and replace with mono_custom_attrs_construct_by_type
that takes a MonoError.
Introduce mono_custom_attrs_get_attr_checked and replace usage of the old one where it's needed.
Miguel de Icaza [Fri, 23 May 2014 21:15:44 +0000 (17:15 -0400)]
[build] Fresh new csproj files based on the updated build system.
Miguel de Icaza [Fri, 23 May 2014 21:12:43 +0000 (17:12 -0400)]
[build] Fix location of the key file
Miguel de Icaza [Fri, 23 May 2014 21:09:30 +0000 (17:09 -0400)]
[Managed.Windows.Forms] Disable TRACE code, since it is broken
Miguel de Icaza [Fri, 23 May 2014 20:58:26 +0000 (16:58 -0400)]
[build] The ecma.pub is one directory above
Miguel de Icaza [Fri, 23 May 2014 20:54:25 +0000 (16:54 -0400)]
[msvc/scripts] Update order.xml file with Makefile changes, update generator
Miguel de Icaza [Fri, 23 May 2014 20:51:33 +0000 (16:51 -0400)]
[build] Ensure that staged build directories are set on LOCAL_MCS_FLAGS
The LOCAL_MCS_FLAGS are passed to the compiler before the standard
directory for the profile. This is important both for correctness,
and also assists the solution generator, since we can now precisely
determine which intermediate project must be referenced.
Marek Safar [Fri, 23 May 2014 19:27:22 +0000 (21:27 +0200)]
Fix warnings
Marek Safar [Fri, 23 May 2014 19:11:42 +0000 (21:11 +0200)]
[system] Add SendMailAsync methods
Miguel de Icaza [Fri, 23 May 2014 19:11:18 +0000 (15:11 -0400)]
[mscorlib] Since .NET 4.5 some of the System.IdentityModel now is in the core, add this class
Jonathan Pryor [Fri, 23 May 2014 17:26:52 +0000 (13:26 -0400)]
[Mono.Posix] Support OS X ENOATTR
Fixes: https://bugzilla.xamarin.com/show_bug.cgi?id=19991
The original Mono.Unix.Native.Errno design used the Linux <errno.h>
constants and values...largely because it was easy.
As it turns out, this is also incomplete. The getxattr(2) defines
ENOATTR as a possible error code. On Linux, ENOATTR is an alias for
ENODATA [0]. On OS X, ENOATTR is _not_ an alias. Furthermore, since
ENOATTR is not a Linux errno value (it's an alias!),
Mono_Posix_ToErrno() couldn't check for the native ENOATTR value, so a
Syscall.GetLastError() call after a failing Syscall.getxattr() would
fail with a System.ArgumentOutOfRangeException:
$ csharp -r:Mono.Posix.dll
Mono C# Shell, type "help;" for help
Enter statements below.
csharp> using Mono.Unix.Native;
csharp> byte[] value;
csharp> Syscall.getxattr(".", "test", out value);
-1
csharp> Syscall.GetLastError();
System.ArgumentOutOfRangeException: Current platform doesn't support this value.
Parameter name: value
93
at Mono.Unix.Native.NativeConvert.ThrowArgumentException (System.Object value) [0x00000] in <filename unknown>:0
at Mono.Unix.Native.NativeConvert.ToErrno (Int32 value) [0x00000] in <filename unknown>:0
at Mono.Unix.Native.Stdlib.GetLastError () [0x00000] in <filename unknown>:0
The fix is to add an Errno.ENOATTR field [1].
The complication is one of what enum value to use: at present, the
Errno values are based on the Linux values. In the case of ENOATTR
(and others), there is no Linux value. Meanwhile, there is the
possibility of additional Linux error values; how do we future proof
ourselves?
This isn't a perfect solution, but it should punt the problem down the
road a bit: Errno is an `int` enum, and thus has large range. To
support the OS X values, we add 1000 to the OS X error value.
/* OS X: <errno.h> */
#define ENOATTR 93 /* Attribute not found */
// C# Errno enum:
public enum Errno : int {
// ...
ENOATTR = 1093,
}
This gives us 0..1000 for POSIX+Linux error codes, 1000..2000 for OS X
specific error codes, and as new platforms require additional support
they can all start at multiples of 1000.
Hopefully no single *nix platform will add more than 1000 error codes...
[0]: http://linux.die.net/man/2/getxattr
[1]: Related part of the fix: add all the OTHER <errno.h> values that
OS X includes but weren't included in the Errno enum.
Sebastien Pouliot [Fri, 23 May 2014 17:26:34 +0000 (13:26 -0400)]
Revert "[system] Add new StreamWebSocket.cs file to the mobile profile list of sources"
This reverts commit
00ecc7392d03c817d2f52de6758195633b2d28ee.
Atsushi Eno [Fri, 23 May 2014 16:26:29 +0000 (01:26 +0900)]
[xbuild] fix NET_2_0 build.
Atsushi Eno [Fri, 23 May 2014 16:24:27 +0000 (01:24 +0900)]
[xbuild] implement ToolLocationHelper.GetPathToStandardLibraries().
Miguel de Icaza [Fri, 23 May 2014 15:51:20 +0000 (11:51 -0400)]
[build] Add new project files based on the new staged build
Miguel de Icaza [Fri, 23 May 2014 15:35:10 +0000 (11:35 -0400)]
[build] Use LOCAL_MCS_FLAGS to give preference to the intermediate dir in System builds, and do not use temporary files for corlib builds
Marek Safar [Fri, 23 May 2014 15:22:39 +0000 (17:22 +0200)]
Revert "Merge pull request #981 from methane/websocket"
This reverts commit
62cc262196951b67a13069444b889dc71758776c, reversing
changes made to
c1028cf91286489ef075a33c91d29d1efea8d200.
Miguel de Icaza [Fri, 23 May 2014 15:04:34 +0000 (11:04 -0400)]
[System] Fix parsing of IPv6 addresses (bug #18574)
From Dick Porter:
The IPv6 address parser misses some syntax errors, and can become confused by
addresses that at first glance look IPv4 compatible. The attach patch contains
the following fixes:
Don't fail to parse an address if we mistakenly thought it was IPv4 compatible
or mapped, just treat it as IPv6.
Fix IPv4-compatible and mapped address formatting in ToString().
Fix parsing of colons - specifically occurrences of ':::'.
Make sure blocks of digits are no longer than 4 characters.
Add some more parsing tests to Mono's NUnit test suite.
Add a NUnit test for bogus IPv6 addresses.
Miguel de Icaza [Thu, 22 May 2014 22:12:55 +0000 (18:12 -0400)]
Update order.xml
Sebastien Pouliot [Fri, 23 May 2014 13:15:26 +0000 (09:15 -0400)]
[system] Small optimization for Xamarin.Mac (where we know we're executing on a Mac)
Atsushi Eno [Fri, 23 May 2014 12:16:43 +0000 (21:16 +0900)]
[msbuild] implement CodeTaskFactory i.e. inline tasks.
Atsushi Eno [Fri, 23 May 2014 12:14:39 +0000 (21:14 +0900)]
[MS.Build] fix some TaskFactory related bugs uncovered by CodeTaskFactory impl.
- ITaskFactory could return null, so check the return value.
- UsingTask descendants could have property references, so use ExpandString.
- TaskBody was not appropriately passed to internal structure.
Atsushi Eno [Fri, 23 May 2014 12:10:57 +0000 (21:10 +0900)]
[MS.Build] fix default build targets to not return empty list in Project.
And since the code is almost the same as existing ProjectInstance one, just
make it identical. (Should be unified, but depends on members, hence TODO.)
Martin Baulig [Fri, 23 May 2014 11:15:25 +0000 (13:15 +0200)]
Small fix.
Martin Baulig [Fri, 23 May 2014 11:12:56 +0000 (13:12 +0200)]
Revert "Fix WebProxy.BypassProxyOnLocal logic."
This reverts commit
3f7ad8f457f67576f400a172573081818fbda2dc.
WebProxy.BypassProxyOnLocal is really broken! There seems to be no
way of actually bypassing a proxy on local connections.
Alex Rønne Petersen [Fri, 23 May 2014 10:49:28 +0000 (12:49 +0200)]
Merge pull request #1052 from sethjackson/master
Don't define _XOPEN_SOURCE on OpenBSD.
Marek Safar [Fri, 23 May 2014 09:15:37 +0000 (11:15 +0200)]
Fix tests not to hang on failure
Marek Safar [Fri, 23 May 2014 08:57:14 +0000 (10:57 +0200)]
[mcs] Expand type parameter member change using effective base type
Martin Baulig [Fri, 23 May 2014 08:09:38 +0000 (10:09 +0200)]
Fix WebProxy.BypassProxyOnLocal logic.
Marek Safar [Fri, 23 May 2014 07:27:16 +0000 (09:27 +0200)]
[mcs] Handling of nested effective base classes
Marek Safar [Fri, 23 May 2014 04:44:42 +0000 (06:44 +0200)]
Merge pull request #1051 from josedonizetti/bug11916-DataContractSerializer
add IsAny=true support for DataContractSerializer
Seth Jackson [Fri, 23 May 2014 04:06:44 +0000 (00:06 -0400)]
Don't define _XOPEN_SOURCE on OpenBSD. With _XOPEN_SOURCE defined mincore() is not visible.
This change is licensed under the MIT license.
Miguel de Icaza [Fri, 23 May 2014 03:04:22 +0000 (23:04 -0400)]
[build/msbuild] Tool resolves assemblies based on exact match, not random-last
Jose Donizetti [Fri, 23 May 2014 03:01:16 +0000 (23:01 -0400)]
add IsAny=true support for DataContractSerializer
Zoltan Varga [Thu, 22 May 2014 21:49:47 +0000 (23:49 +0200)]
[arm64] Fix the definition of DWARF_PC_REG, it should be x30 (lr).
Rolf Bjarne Kvinge [Thu, 22 May 2014 13:18:02 +0000 (15:18 +0200)]
Fix casing in monotouch_Mono.CSharp.dll.sources
Enrico Sada [Sat, 18 Aug 2012 15:20:13 +0000 (17:20 +0200)]
fix V547 Expression 'ccw->ref_count >= 0' is always true. Unsigned type value is always >= 0.
Enrico Sada [Sat, 18 Aug 2012 15:08:56 +0000 (17:08 +0200)]
fix V547 Expression 'index >= 0' is always true. Unsigned type value is always >= 0.
Enrico Sada [Sat, 18 Aug 2012 15:07:52 +0000 (17:07 +0200)]
fix V547 Expression 'index >= 0' is always true. Unsigned type value is always >= 0.
Enrico Sada [Sat, 18 Aug 2012 14:52:05 +0000 (16:52 +0200)]
fix V595 The 'method' pointer was utilized before it was verified against nullptr. Check lines: 302, 303.
Enrico Sada [Sat, 18 Aug 2012 14:18:45 +0000 (16:18 +0200)]
fix V595 The 'amodule' pointer was utilized before it was verified against nullptr
Atsushi Eno [Thu, 22 May 2014 07:40:17 +0000 (16:40 +0900)]
Merge pull request #924 from marcusva/master
- Use the correct absolute path for relative paths within a rooted path
Marek Safar [Thu, 22 May 2014 07:13:56 +0000 (09:13 +0200)]
Merge pull request #164 from LogosBible/AppSettingsFileChanges
Use the configuration file path directory for AppSettings File directory
Alex Rønne Petersen [Thu, 22 May 2014 07:01:02 +0000 (09:01 +0200)]
Merge pull request #1045 from sethjackson/master
kinfo_proc2 was removed from OpenBSD. Use kinfo_proc instead.
Alex Rønne Petersen [Thu, 22 May 2014 06:59:55 +0000 (08:59 +0200)]
Merge pull request #1046 from sethjackson/null-gc
Allow building with no GC again.
Marek Safar [Thu, 22 May 2014 06:37:14 +0000 (08:37 +0200)]
[mcs] Emit better code for null coalescing operator with nullable return type. Fixes #19702
Seth Jackson [Wed, 21 May 2014 02:33:12 +0000 (22:33 -0400)]
Allow building with no GC again.
These changes are released under the MIT license.
Seth Jackson [Tue, 20 May 2014 23:31:16 +0000 (19:31 -0400)]
kinfo_proc2 was removed from OpenBSD. Use kinfo_proc instead.
This change is released under the MIT license with permission from the
original author Robert Nagy.
Alex Rønne Petersen [Wed, 21 May 2014 19:09:00 +0000 (21:09 +0200)]
Merge pull request #1049 from ranma42/fix-check-gdi-sibling
Fix checking when libgdi is configured as "sibling"
Andrea Canciani [Wed, 21 May 2014 17:28:20 +0000 (19:28 +0200)]
Fix checking when libgdi is configured as "sibling"
When libgdiplus is configured as sibling, it is available in the
libgdiplus_loc path. This path was added to runtime/mono/config, but
it was later overridden by the prefix-based path.
Using the same approach as for libMonoPosixHelper fixed the lookup of
the library (performed, for example, when testing
MonoTests.System.Drawing without installing libgdiplus).
This change is released under the MIT license.
Martin Baulig [Wed, 21 May 2014 16:45:08 +0000 (18:45 +0200)]
[Http]: Cleanup and simplify the ServicePoint's connection group list.
Alex Rønne Petersen [Wed, 21 May 2014 15:59:34 +0000 (17:59 +0200)]
Merge pull request #1032 from miguelzf/master
[Jay] Fix memory corruptions: out-of-bounds and uninitialized value.
Alex Rønne Petersen [Wed, 21 May 2014 15:10:31 +0000 (17:10 +0200)]
Merge pull request #1044 from ranma42/fix-icc-build
Fix building mono with icc
Andrea Canciani [Tue, 20 May 2014 13:32:11 +0000 (15:32 +0200)]
Fix building mono with icc
When compiling mono with icc (ICC) 14.0.0
20130728 the build fails on
CC libmonoruntimesgen_la-sgen-stw.lo
with the following error:
Assembler messages:
Error: suffix or operands invalid for `lea'
Apparently icc (or the assembler) dislikes the rip-based LEA
operation. This can be worked around by manually assembling the
instruction and replacing it with the corresponding byte sequence.
This change is released under the MIT license.
Marek Safar [Wed, 21 May 2014 10:47:59 +0000 (12:47 +0200)]
[mcs] Add explicit array conversion involving type parameters. Fixes #18474
Marek Safar [Wed, 21 May 2014 09:03:08 +0000 (11:03 +0200)]
[mcs] Undo implicit object prefix for cref interface references
Atsushi Eno [Wed, 21 May 2014 09:56:59 +0000 (18:56 +0900)]
[MS.Build] fix support for MSBuildExtensionsPath* to try more than one paths.
So, it seems that where MSBuildExtensionsPath* is evaluated should be likely
evaluated multiple times, and find actually matching files in one of those.
F# build .targets file expects that.
Since it is almost impossible to assume in which usage scenario it is going
to be evaluated multiple times (those properties can be used anywhere by
simple $(...) syntax), it limits the attempts only for Import() so far.
Old xbuild actually does so too. That way, the particular F# issue is fixed.
Atsushi Eno [Wed, 21 May 2014 09:55:06 +0000 (18:55 +0900)]
[MS.Build] Fix metadata item parsing wrong indexing.
Marek Safar [Wed, 21 May 2014 08:19:25 +0000 (10:19 +0200)]
[mcs] Explicit type parameter conversion to generic parameter
Rodrigo Kumpera [Wed, 21 May 2014 04:00:25 +0000 (00:00 -0400)]
[GC] Make size dependent vars use size_t instead of glong or int.
This opens the door for huge nurseries.
Miguel de Icaza [Wed, 21 May 2014 02:31:49 +0000 (22:31 -0400)]
[vsbuild] Update Makefiles to not generate the VS metadata for the 'basic' profile
Miguel de Icaza [Wed, 21 May 2014 02:31:44 +0000 (22:31 -0400)]
[build] Kill OpenSystem.C from the Makefile
Miguel de Icaza [Wed, 21 May 2014 02:30:29 +0000 (22:30 -0400)]
[build] Revert change in Facades parellism patch, since it works great for builds, but not for other recursive targets (ie: update-csproj, maybe others
Miguel de Icaza [Wed, 21 May 2014 02:17:14 +0000 (22:17 -0400)]
[build] Kill OpenSystem.C, nobody ever used this
Miguel de Icaza [Wed, 21 May 2014 02:04:29 +0000 (22:04 -0400)]
[build] Fix the build for NET_4_5 (and maybe other profiles) from the pull request 981
Martin Baulig [Wed, 21 May 2014 00:14:32 +0000 (02:14 +0200)]
[Http]: Cleanup chained async operations; bug #19161.
Sebastien Pouliot [Tue, 20 May 2014 21:29:12 +0000 (17:29 -0400)]
[system] Add new StreamWebSocket.cs file to the mobile profile list of sources
Sebastien Pouliot [Tue, 20 May 2014 20:56:47 +0000 (16:56 -0400)]
[facades] Build the facades assemblies defined for the profile being built
Zoltan Varga [Tue, 20 May 2014 19:28:31 +0000 (21:28 +0200)]
[sdb] Make sure the ids of unloading assemblies is the same in the ASSEMBLY_UNLOAD event as it was in the ASSEMBLY_LOAD event.
Zoltan Varga [Tue, 20 May 2014 18:01:08 +0000 (20:01 +0200)]
[runtime] Clean up an #ifdef block.
Marek Safar [Tue, 20 May 2014 17:56:13 +0000 (19:56 +0200)]
Merge pull request #981 from methane/websocket
[websocket] Implement HttpListenerContext.AcceptWebSocketAsync()
Marek Safar [Tue, 20 May 2014 17:35:00 +0000 (19:35 +0200)]
[corlib] Fix public api
Zoltan Varga [Tue, 20 May 2014 17:09:19 +0000 (19:09 +0200)]
[llvm] Update to the llvm backend to work with llvm
a82b09c3a3efbfaf2ce39adc113f9a5458cde398.
Sebastien Pouliot [Tue, 20 May 2014 15:24:40 +0000 (11:24 -0400)]
[System.Core][ios] Fix value for ENAMETOOLONG (typo?) internal constant in System.IO.MemoryMappedFiles.MemoryMappedFile
Marek Safar [Tue, 20 May 2014 14:36:41 +0000 (16:36 +0200)]
[corlib] Add Guid hex format parsing with whitespaces. Fixes #19915
Zoltan Varga [Tue, 20 May 2014 13:00:23 +0000 (15:00 +0200)]
[llvm] Detect the cpu architecture and pass it to EngineBuilder, recent llvm versions require this to be able to support sse etc.
Marek Safar [Tue, 20 May 2014 12:04:45 +0000 (14:04 +0200)]
[mcs] Use correct parent type in partial type base context
Alexis Christoforides [Tue, 20 May 2014 11:22:56 +0000 (07:22 -0400)]
Merge pull request #1040 from ermshiperete/bug-xamarin-19856
[MWF] Fix opacity of form (#19856)
Marek Habersack [Tue, 20 May 2014 08:12:52 +0000 (10:12 +0200)]
Add a missing assembly name to full type specification.
Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=19839
Atsushi Eno [Tue, 20 May 2014 07:18:55 +0000 (16:18 +0900)]
[MS.Build] add internal expression debugging helper strings.
Atsushi Eno [Tue, 20 May 2014 07:05:41 +0000 (16:05 +0900)]
[MS.Build] process Choose/When/Otherwise elements (they were left forgotten).
Atsushi Eno [Mon, 19 May 2014 11:06:54 +0000 (20:06 +0900)]
[ms.build] remove unused code.
Marek Safar [Mon, 19 May 2014 15:19:27 +0000 (17:19 +0200)]
[xbuild] Add ReferenceOutputAssembly filter
Marek Safar [Mon, 19 May 2014 13:58:22 +0000 (15:58 +0200)]
Remove 2.0 defines
Miguel de Icaza [Tue, 20 May 2014 02:54:53 +0000 (22:54 -0400)]
[build] Record extra library builds for our Visual Studio input files
Added local targets (csproj-local) to all the assemblies that have
staged builds to dump their build information for the underlying
dependencies.
This information is needed to create the new Visual Studio csproj
files.
This commit also updates the collected build metadata from running:
make update-csproj
make package-inputs
As described in msvc/scripts/README
Joao Matos [Mon, 12 May 2014 18:16:54 +0000 (19:16 +0100)]
Added System.IO.Compression implementation based on SharpCompress.
Joao Matos [Mon, 12 May 2014 18:09:37 +0000 (19:09 +0100)]
Added SharpCompress Zip archive implementation.
This copy is based on our own fork at mono/sharpcompress.
Rodrigo Kumpera [Mon, 19 May 2014 14:19:17 +0000 (10:19 -0400)]
[corlib] Fix the 2.0 testsuite.
Atsushi Eno [Mon, 19 May 2014 10:33:52 +0000 (19:33 +0900)]
[MS.Build] add "OS" _undocumented_ predefined property.
It is used by Xamarin.Android to determine which compiler to use (csc or smcs)
and lack of this property simply caused Csc build task failure.
Atsushi Eno [Fri, 16 May 2014 17:52:39 +0000 (02:52 +0900)]
[MS.Build] now ITaskItem impl. in BuildEngine4 behaves consistent with MS.Build.Tasks.
To be precise, now the implementation returns ItemSpec for ToString().
WriteLinesIntoFile task writes ITaskItem[] lines into a file, without calling
ItemSpec.
Maybe it is better to fix Tasks.dll but I'm unsure about xbuild compatibility.
This missing ToString() override caused target framework monikor output
to become invalid source file (i.e. it used to write ItemSpec as code(!) but
this ITaskItem impl. in BuildEngine4 just wrote its type name as .ToString()
result).