Граф коммитов

5301 Коммитов

Автор SHA1 Сообщение Дата
Xamarin Jenkins User dabd7720d0 [master] [msbuild] Implement support for faking the watchOS 4.3 SDK. Fixes #4810. (#4955)
* [msbuild] Implement support for faking the watchOS 4.3 SDK. Fixes #4810.

The App Store requires the arm64_32 architecture when building with Xcode 10.

Unfortunately we don't support arm64_32 quite yet, so we need to make the App
Store think watch extensions were built with Xcode 9.4 in order to pass
validation.

Fixes https://github.com/xamarin/xamarin-macios/issues/4810.

* [msbuild] Remove debug spew.
2018-10-09 13:27:04 -04:00
Rolf Bjarne Kvinge e4db45ed63
[xharness] Add length consistency check when capturing a log file. (#4951)
Sometimes files just shrink, and we must cope.

Two possible causes I can think of:

* System log rotation.
* We erase a simulator when trying to capture its system log.

There are probably many more causes, but two is more than enough to make sure
we don't fail when it happens.
2018-10-09 15:53:51 +02:00
Rolf Bjarne Kvinge 65b21ee48d
[CoreFoundation] Fetch a few static values lazily. (#4924)
* [CoreFoundation] Fetch a few static values lazily.

This avoids using static constructors, and also avoids fetching the values
unless they're needed.

* Generate the code for _dispatch_data_destructor_free instead of using a manual binding.

* [CoreFoundation] Bind kCFBooleanTrue/kCFBooleanFalse using the generator.

Since the generator doesn't know about CFBoolean, bind as IntPtr instead, and
fix most callers to use the handle directly, instead of getting a CFBoolean
object and then immediately getting the handle.

* Add back comment.

* Update xtro.

* Fix typo check.

* Use complete path for the library in the Field attribute.

* Update xtro.
2018-10-09 15:51:17 +02:00
Rolf Bjarne Kvinge 3684204f5a
Improve generator diff to ignore changes we don't care about. (#4947)
This means we'll get an empty diff if there are no generator changes, so
update the logic that detects/reports empty generator diffs.

Also there's no need to ignore mdbs anymore, since we don't create mdbs.
2018-10-09 07:35:00 +02:00
Rolf Bjarne Kvinge 232f9ecc8b
[xharness] Verify that there's at least 1GB of space left before trying to build or run each test. (#4937)
If there's not enough space, then fail the test.

This might help https://github.com/xamarin/maccore/issues/965 (test run hangs).
2018-10-08 07:32:50 +02:00
Rolf Bjarne Kvinge 28b1978387
Bundle Make.version with the packaged XM tests to fix testing. (#4938) 2018-10-08 07:09:09 +02:00
Chris Hamons c41673dce8
Add mmp error when combining partial static registrar and linking (#4932)
- https://github.com/xamarin/xamarin-macios/issues/4825
2018-10-05 09:43:53 -05:00
Rolf Bjarne Kvinge 2b3ef0e183 Try to make version numbers clearer, and establish some ground rules. (#4927) 2018-10-04 13:49:26 -04:00
Rolf Bjarne Kvinge bbbb5ba8a3
[runtime] Only write to NSLog in chunks of max 4096 characters. Fixes maccore#1014. (#4897)
It seems older iOS versions have a bug where big(ish) chunks of string can
cause it to hang.

Fix this by not writing big strings to NSLog, instead split them up in chunks.

Fixes https://github.com/xamarin/maccore/issues/1014.
2018-10-04 17:18:09 +02:00
Chris Hamons 3119129ab7 Remove references to bugzilla and replace with github (#4920)
https://github.com/xamarin/xamarin-macios/issues/3647
2018-10-04 09:43:55 -04:00
Sebastien Pouliot ac776ef924
[mtouch] Fix [InternalsVisibleTo] attribute parsing. Fixes #4895 (#4917)
The input is a "user" string, i.e. not some well formatted metadata.
Spec [1] mention it's comma separated, but spaces are optional.

[1] https://docs.microsoft.com/en-us/dotnet/framework/reflection-and-codedom/specifying-fully-qualified-type-names#specifying-assembly-names

Fixes https://github.com/xamarin/xamarin-macios/issues/4895
2018-10-03 15:00:59 -04:00
Rolf Bjarne Kvinge 946651928b
[Foundation] Add missing availability attribute. (#4913) 2018-10-03 16:06:00 +02:00
Xamarin Jenkins User 31ed3422ff [xcode10.1] [builds] Adjust ifdefs to fix not building device architectures. Fixes maccore#1074. (#4909)
* [builds] Adjust ifdefs to fix not building device architectures. Fixes maccore#1074.

Fixes https://github.com/xamarin/maccore/issues/1074.

* [jenkins] Running configure and then cleaning everything is kind of useless, so reverse the order.
2018-10-03 16:05:54 +02:00
Chris Hamons 183cb81583
Disable known failing device tests using xharness (#4884)
- Add the ability to have Build Only tests - https://github.com/xamarin/maccore/issues/1076
- Set mini and the extensions as build only
2018-10-03 08:33:30 -05:00
Rolf Bjarne Kvinge a76255270e
Reuse Libraries.*.Handle instead of dlopen'ing multiple times the same libraries. (#4911)
I've also verified that calling dlsym with a NULL handle is safe: it just
returns NULL, so we can also skip all the IntPtr.Zero handle checks.
2018-10-03 14:29:42 +02:00
Rolf Bjarne Kvinge 043c31331f
[DispatchObject] Simplify != operator and fix a potential NRE in Equals. (#4912) 2018-10-03 14:29:11 +02:00
Sebastien Pouliot 9f23f4b45a
Bump for Xcode 10.1 beta 2 (#4906) 2018-10-03 08:26:31 -04:00
Connor Adsit fc0de6dee6 Report updateinfo for xamarin.ios and xamarin.mac in artifacts.json (#4871)
Expose the productId and versionId in artifacts.json to autofill this information in while publishing so it's less of a manual process.
2018-10-03 08:25:46 +02:00
Rolf Bjarne Kvinge 832f9a3a5a
[builds] Adjust ifdefs to fix not building device architectures. Fixes maccore#1074. (#4903)
* [builds] Adjust ifdefs to fix not building device architectures. Fixes maccore#1074.

Fixes https://github.com/xamarin/maccore/issues/1074.

* [jenkins] Running configure and then cleaning everything is kind of useless, so reverse the order.
2018-10-03 08:18:11 +02:00
Chris Hamons 8325b083dc
[macos][msbuild] Cache actool results like XI (#4892)
- https://github.com/xamarin/xamarin-macios/issues/3584
- Prevents a 2 second pause on every single launch
- Test added but commented out due to msbuild build machine issue :(
2018-10-02 12:53:19 -05:00
Rolf Bjarne Kvinge 788b63d96f
[NSLayoutManager] Complete bindings for NSLayoutManager. Fixes #4740. (#4853)
Fix numerous issues with NSLayoutManager[Delegate]:

* The classes are available in both AppKit and UIKit, but the bindings are
  duplicated (unsuccessfully) in both appkit.cs and uikit.cs. So create a new
  xkit.cs that is shared between XI and XM, and put a shared version of the
  bindings there.

* Bind everything that hasn't already been bound (or deprecated by Apple).

* Methods that take a nullable NSRangePointer has been bound with three overloads:

	* A protected overridable (exported) method that uses IntPtr.
	* A public method without the parameter.
	* A public method with the parameter typed as 'ref NSRange'.

	This makes sure the native method can be overridden if needed, while at
	the same time making it possible to call without providing the nullable
	parameter.

* Fix numerous ugly bindings:

	* There's a great nint/nuint confusion for parameters referring to
	  'character index' and 'glyph index'. XI seems to prefer nuint, while XM
	  seems to prefer nint. Standardize on nuint, since that's how Apple
	  created them.

	* Many methods have names than sound like Objective-C. Fix them all,
	  either right away when possible, or for XAMCORE_4_0.

	* Several parameter names have been modified to comply with our naming
	  guidelines (no abbreviations).

Fixes https://github.com/xamarin/xamarin-macios/issues/4740.
2018-10-01 14:17:28 +02:00
Sebastien Pouliot e3a39c94bb
[apidiff] Update XM references to match XM 5.0 (#4890) 2018-09-28 14:48:16 -04:00
Sebastien Pouliot 7268716c87
Bump XM to 5.1 and audit fixes from `xcode10` (#4887)
We plan to release XM 5.0 based on 15.8
So xcode10.1 support is bumped to 5.1.x

Backport of
b40230c09d
2018-09-28 08:13:10 -04:00
Matt Sylvia 865ddb1d7a Bump master versions (#4878) 2018-09-27 17:26:55 -04:00
Manuel de la Pena 1dba5722fe [CoreMedia] Add missing attr since we support older versions of Mac OS X. (#4882) 2018-09-26 13:51:47 -05:00
Chris Hamons 4d7bd304e7
Update tests/README to document XM_TEST_NAME (#4880)
- https://github.com/xamarin/xamarin-macios/issues/3609
2018-09-26 10:24:49 -05:00
Chris Hamons 2b85512509
Update MM0134 with url to fix #3577 (#4879) 2018-09-26 10:24:22 -05:00
Xamarin Jenkins User b0acc0c42b [xcode10.1] [msbuild] Implement support for faking the watchOS 4.3 SDK. Fixes #4810. (#4876)
The App Store requires the arm64_32 architecture when building with Xcode 10.

Unfortunately we don't support arm64_32 quite yet, so we need to make the App
Store think watch extensions were built with Xcode 9.4 in order to pass
validation.

Fixes https://github.com/xamarin/xamarin-macios/issues/4810.
2018-09-26 13:02:47 +02:00
Rolf Bjarne Kvinge 8b7db1382d
[xtro] Only return 1 in case of failure in reporter. (#4877)
This solves two problems:

* xharness thinks it crashed if the exit code is neither 0 nor 1, and
  helpfully says so and tries to collect crash reports, which only ends up
  being confusing.

* The exit code is byte-sized on macOS. This means that trying to return 256
  actually returns 0 (success).
2018-09-25 20:32:22 +02:00
Manuel de la Pena ea63e4559c
[CoreMedia] Expose the CMSampleAttachmentKey interface. Fixes #4688 (#4841)
* [CoreMedia] Expose the CMSampleAttachmentKey interface. Fixes #4688

We have an issue when the user wants to use the CMAttachmentSample,
ideally, the user will want to do:

var cameraIntrinsicData = CMAttachmentBearer.GetAttachment(CMSampleAttachmentKey.CameraIntrinsicMatrixKey, sampleBuffer );

Instead of the current workaround:

var att = new CMSampleBufferAttachmentSettings (sampleBuffer.GetAttachments (CMAttachmentMode.ShouldNotPropagate));
var matrix = att.CameraIntrinsicMatrix;

With this push, we can allow the user use the first example provided in
this commit.

Fixes https://github.com/xamarin/xamarin-macios/issues/4688
2018-09-25 16:24:41 +02:00
Rolf Bjarne Kvinge 0d65ed9357
[msbuild] Fix SceneKit asset compilation. Fixes #3766. (#4851)
* [msbuild] Fix SceneKit asset compilation. Fixes #3766.

It seems SceneKit assets must be compiled into a directory whose parent
directory is named like the app.

In addition the `--resource-folder-path` argument is required.

Fixes https://github.com/xamarin/xamarin-macios/issues/3766.

* [msbuild] Use AppBundlePath to get correct .app[ex] variant.

* [msbuild] Fix XM builds.

* [msbuild] Use AppBundleDir instead of AppBundlePath.
2018-09-24 18:42:04 +02:00
Rolf Bjarne Kvinge bdc37fff9f
[CoreFoundation] Remove mtouch-specific code. (#4868)
Once upon a time mtouch was a MonoMac app, and at the same time needed to
be a 64-bit executable. This meant we needed a few hacks to make things work:

* The source code for CoreFoundation was included in mtouch (instead of using them from MonoMac.dll).
* A few changes were required to make the source code work in 64-bit.

These changes were conditionally done with a #if MTOUCH.

mtouch stopped being a MonoMac app a long time ago, so these mtouch-specific
changes are no longer needed, so just remove them.
2018-09-24 18:38:49 +02:00
Rolf Bjarne Kvinge 11d9fe68db
[mtouch/mmp/docs] Improve MT0091 to include how to enable the linker. Fixes #4549. (#4852)
Fixes https://github.com/xamarin/xamarin-macios/issues/4549.
2018-09-21 16:51:23 +02:00
Manuel de la Pena ddb0948376 [Metal] Fixe the size of structures. Fixes #4611 (#4838)
The structs MTLQuadTessellationFactorsHalf and
MTLTriangleTessellationFactorsHalf are wrong as per the header
definition:

```c
typedef struct {
    /* NOTE: edgeTessellationFactor and insideTessellationFactor are interpreted as half (16-bit floats) */
    uint16_t edgeTessellationFactor[4];
    uint16_t insideTessellationFactor[2];
} MTLQuadTessellationFactorsHalf;

typedef struct {
    /* NOTE: edgeTessellationFactor and insideTessellationFactor are interpreted as half (16-bit floats) */
    uint16_t edgeTessellationFactor[3];
    uint16_t insideTessellationFactor;
} MTLTriangleTessellationFactorsHalf;
```

We set the arrays size to be the correct one.

Fixes https://github.com/xamarin/xamarin-macios/issues/4611

* Add tests that ensure that the size of the managed structs is the same
as the native ones.

The values used have been checked against a native app compiled on 32
and 64 (iphone 5 and iphone X).
2018-09-21 09:33:27 -04:00
Manuel de la Pena dd4904f0b6
[QuickLook] Use the correct name properties in QLPreviewItem. Fixes #4450 (#4855)
* [QuickLook] Use the correct name properties in QLPreviewItem. Fixes #4450

Renamed properties for the next time we can make breaking changes.

Fixes https://github.com/xamarin/xamarin-macios/issues/4450
2018-09-21 12:05:06 +02:00
Vincent Dondain 29d90e5ecd [Make.config] Set IOS_PACKAGE_VERSION_REV (#4856)
If this isn't set the `Constants.*.cs.in` files won't have the proper version values. E.g: '12.3.' instead of '12.3.0'.
2018-09-20 16:18:24 -04:00
Michał Żołnieruk 59a1cfbfa4 Added two missing NSString method bindings for splitting text (#4828)
* Added 2 missing NSString methods bindings (componentsSeparatedByString, componentsSeparatedByCharactersInSet)

* Removed redundant methods API versions, changed method names (to include verb), modified NET types to objC types

* Removed binded methods from sharpie tests

* Add whitespace to conform to coding guidelines.
2018-09-20 16:01:49 +02:00
Sebastien Pouliot f333b3aed6
[apidiff] Update API diff to be based on XI 12.0 (#4845)
* XI references updated from `xcode10` (XI 12.0)
* XM references are not updated, we continue to compare with `d15.8`
* references_/* were temporary files that should not have been committed (old mistake)
2018-09-20 09:28:31 -04:00
Sebastien Pouliot 3ad77a3bc5
[apidiff] Update API diff to be based on XI 12.0 (#4843)
* XI references updated from xcode10 (XI 12.0)
* XM references are not updated, we continue 4.99.x previews
* references_/* were temporary files that should not have been committed (old mistake)
2018-09-20 09:18:26 -04:00
Vincent Dondain 49ef936701
Merge pull request #4833 from VincentDondain/master-merge-xcode10
Merge branch 'xcode10' into master
2018-09-19 18:19:35 -04:00
Vincent Dondain 089cb63b7f [tools] Fix merge issue in Frameworks.cs 2018-09-19 12:27:43 -04:00
Vincent Dondain 0038fdfbdf [jenkins] Fix double API diff printf (broken merge) 2018-09-19 11:10:31 -04:00
Vincent Dondain dbb151c63e [docs] Fix errors after broken merge 2018-09-19 11:03:56 -04:00
Rolf Bjarne Kvinge 84756d8cd1
[ObjCRuntime] Make available a version of Runtime.GetINativeObject that takes the target type as a System.Type. (#4839)
Swift-o-matic needs it, see https://github.com/xamarin/maccore/pull/1049/files#diff-eeaff638ac8b77c777e1bde26cdf6a40R1938.

Also remove a FIXME/unneeded comment. The existing Runtime.GetINativeObject
(..., Type) existed because it's hard to call a generic function from native
code, but if one day that could be figured out, then this managed function
could be removed.

Now that the function is public, we can't remove it even if we figure out how
to call the generic version from native code, so the FIXME is no longer needed.
2018-09-19 16:02:13 +02:00
Sebastien Pouliot c53b64da1d
Bump for Xcode 10.1 beta 1 (#4836) 2018-09-19 08:56:43 -04:00
Rolf Bjarne Kvinge 7354052e96
[NSLayoutManager] Fix potential NRE in NSLayoutManager.GetGlyphs when one of the parameters is null, (#4832) 2018-09-19 07:37:26 +02:00
Vincent Dondain 2174ec41a2 Merge branch 'xcode10' 2018-09-18 14:12:39 -04:00
Sebastien Pouliot 84552a4602
Bump to Xcode 10 final (#4830) 2018-09-17 20:59:42 -04:00
Rolf Bjarne Kvinge b07cc7fcfb
Bump maccore to get fix for #4430. (#4827)
Diff: 07fde84362...fbb847be2c

Fixes https://github.com/xamarin/xamarin-macios/issues/4430.
2018-09-17 19:07:22 +02:00
Rolf Bjarne Kvinge 8e32ace58e
[Foundation] Bind NSMutableDictionary's addEntriesFromDictionary:. Fixes #4813. (#4819)
Fixes https://github.com/xamarin/xamarin-macios/issues/4813
2018-09-17 16:14:46 +02:00