My Xcode bot integrations fail with the following error.
Assertion: Running task was terminated because it produced no activity for too long.
From the bottom of the log:
Sampling completed, processing symbols...
Sample analysis of process 4470 written to file /Library/Developer/XcodeServer/Integrations/Integration-ef7a2c98cd2307fc71923f1123ea23f7/4470.sample
sample[5774]: sample cannot find any existing process you have access to which has a name like 'Interface Builder Cocoa Touch Tool'; try running with `sudo`.
sample[5775]: sample cannot find any existing process you have access to which has a name like 'ibtool'; try running with `sudo`.
sample[5776]: sample cannot find any existing process you have access to which has a name like 'ibtoold'; try running with `sudo`.
** BUILD INTERRUPTED **
Interestingly, the integrations worked the day before and started failing today without any known changes to the server configuration. Is there a way to fix those errors and make the integrations run?
OS X 10.11 (15A244d), Xcode 7.0 (7A176x), OS X Server 4.1.56 (15S2186i)
This did the trick for us when we ran into the same issue today:
https://stackoverflow.com/a/22637896/43996
Created a new bot with exact configuration and that did the trick for me. Stackoverflow xcode-server-ibtool-build-failures
I created a new simple project to test Xcode Bot and the same problem happened.
I have try several ways including allow all items to access keychain, however, it didn't work until I unchecked the Code coverage.
Related
I have developed (on a Mac) a small Flutter app to learn the technology. Now, I would like to build it and use it on Mac, Linux and Android. The few packages I have used claim compatibility with all systems.
So the first thing I did was to run flutter build macos. I indeed obtain an application under build/macos/Build/Products/Release/nameofmyapp.app. It seems this runs correctly, but it fails, for instance, loading data from a DB, which is the first thing it should do.
I have a few questions:
are there any other steps that I should take? I see a long guide about the release process, but to be frank I don't need or want any of that: I only want to use the app myself. Is there something else to do other than flutter build macos?
am I looking for the built app in the right place?
if I did everything correctly, could it be that I need to authorize the app to access to the file in some way? Should I manage this workflow myself, or is there a standard way to perform this action in Flutter?
Sorry for asking more than one question, but I am not sure whether what I am doing wrong is
the build process
where to look for the built app, or
(not) handling the app permissions.
EDIT
Following a suggestion by Madhavam, I tried flutter run --release. The result is identical to running the built application: nothing is loaded from the database, and no errors appear in the console.
To be clear, these are the libraries that are not working:
sqflite should load data from a database (in my Documents folder) but does not show anything
file picker cross should allow me to load data from a JSON file, but when I try this interaction, I an not shown any dialog to load a file
shared preferences should read some settings, but they all appear as null
In short, anything that has to do with interacting with external files or storage does not seem to work
Yup, you have to manage it yourself. Take a look at this package
:https://pub.dev/packages/permission_handler
If you're using Firebase then you probably need to add the release keys.
One thing too, if you face an error only in the release build then I recommend running the app with flutter run --release so that you can see the errors that are being thrown.
So it seems that this is related to the default being an app that runs in sandbox. Since I do not want to distribute the app, it was fine for me to disable this setting. Details are in this answer
I have an App that uses Admod and Firebase from Google. Since I am using Swift they want me to use frameworks when loading them from CocoaPods. When I try to archive/validate the App I get the error:
No suitable application records were found. Verify your bundle identifier 'org.cocoapods.GoogleToolboxForMac'
What is the correct way to provision an app that uses someone else's frameworks so it can be uploaded to iTunes Connect? I tried to find something in Apple's documentation but I haven't found anything.
UPDate:
I previously had answered my own question, since I had thought I had found a solution. My reply was:
Problem Solved. Turns out I was using an App-ID that I am having Apple look into as being corrupt. I had already created a new App-ID to prove the one I want to use is not working and retried with that and it Validates. This required a lot of help from the Google Ads Mobile SDK team. Thanks.
So the correct answer is: Now Incorrect
You should not get this error unless you are using a Bundle-ID that is not already registered on iTunes Connect, but, you should never be able to create an archive that does not have a Bundle-ID that is not already registered on iTunes Connect. So this is caused by an abnormal situation.
This is no longer true
I used my new working project and got 4 whole builds out of it and into iTunes Connect. In the process I was trying to clean up the mess caused by trying to solve this problem, like loosing my git history. I tried to modify my old App to get it to work and without modifying my new working project, But my new project started failing with the above error. I even used my time machine and went back to the directory as it was when I made the last build, but no help. So, any answers?
Further Update:
I pulled all the code related to Google Firebase and Admob out of the code and removed the cocoaPods and Archived/Validated and now I get the error:
You must supply a CFBundleIdentifer for this request.
Which is the error message I was getting with my other App-ID that tracked that App-ID in iTunesConnect. This time it does not track the App-ID so it must be something in my project. Will report what I find.
UpDate:
I think Apple has been modifying their code for validation at the same time I was trying different things. At one point it told me I was using CFBundleSignature instead of CFBundlePackageType set to APP and I fixed this and got the code to validate. Understand I am copying complete projects and renaming everything to debug this problem, so this must have come from the original program. I ended up with a project that was renamed from my original but archived/validated but when I went to compile for Test I got errors that I debugged until I got lots of Mach-O link errors. I decided to complete the loop and go back to my original code and try using the new Bundle-ID which points to the new App-ID, the one that works, and add all the knowledge I have learned. But when I get it done I have an project that can test but does not validate. The only difference is this project has the old identifier which has the same name as the suffix of the App-ID that has a bug.
Am I missing something?
Final UpDate?
On a whim I renamed the Scheme file to be the same as my Suffix to the Bundle-ID and I got my original Project to Validate! I have worked on this for over a month and you might not believe the astonishment I feel in this.
Back to Unit Test!
I have come to the conclusion that the Identity of the App, the name at the far top of the right side Utilities window, has something to do with the way iTunes Connect validates the App. This is the name in the left hand column of the Organizer window. It is like it overrides the suffix of the Bundle-ID and since I can't use that Identifier because the associated App-ID is corrupt. Or the name of the Scheme.
I am using Xcode 8 and I am trying to submit a newer version of my app to iTunesConnect. However I could not select any build version even though I tried to change the build number. See screenshot
I also tried waiting for a couple of hours with no impact.
Surprisingly Apple started sending out emails which tells you why your build wasn't accepted. I didn't see this email until the next day.
Dear developer,
We have discovered one or more issues with your recent delivery for . To process your delivery, the following issues must be corrected:
This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSContactsUsageDescription key with a string value explaining to the user how the app uses this data.
Once these issues have been corrected, you can then redeliver the corrected binary.
Regards,
The App Store team
Once I fixed the issues and re-submitted the binary, I didn't see my build instantly. However after 10min or so, I get an email from Apple
iTunes Connect: Version 5.2 has completed processing.
Now when I look at iTunes .. the plus symbol next to the 'Build' section appears.
Hope this post helps others who run into the same issue.
I am suddenly running into the error when testing my iOS 10 app in Xcode 8.
dyld: could not load inserted library
'__PLATFORMS__/iPhoneOS.platform/Developer/Library/PrivateFrameworks/IDEBundleInjection.framework/IDEBundleInjection'
because image not found
The app's tests ran successfully before. I had then deleted the skeleton UI Test Case class that was created together with the project, so this may have caused the problem (somehow). I have since recreated that class, but the problem remains.
What exactly does the error message indicate and how can I overcome the problem, i.e. successfully run the app's unit tests again.
UPDATE There must be another root case, for if I create another (empty) Single View Application project in Xcode and run its unit tests, the same error occurs.
The error only occurs when running unit tests on a device, not on simulators.
UPDATE This response from Apple to a similar report suggests the error is related to code signing. The app itself runs fine on the same device, so how could there be a code signing issue in my case?
Try these one by one:
Try to create a new UnitTest target, copying everything over, and removing the old one.
In General Tab Panel, do not leave the Team to "None". Select your team. And select the correct Code Signing Identity from Settings. It was set to a non default - changed to 'IOS Developer' for the Debug setting entry.
Disable "Enable guard Malloc" from diagnostics to run app in device.
This may be because Xcode mount wrong DeveloperImage. If you open the Settings-> Developer you will see that the "Enable UIAutomation» and others are missing. To fix:
(A) move all folders from "/Applications/Xcode8.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport" except "10.0 (12A4297e)" to safe place
(B) reboot the phone
(C) connect your phone to xCode 8
(D) restore folders in DeviceSupport
This is the only thing that helped me. Even re-flashing on ios10 does not helps.
This is old, but it may help you: In the target's General tab, there is an Embedded Binaries field. When you add the framework there the crash is resolved.
Reference is https://devforums.apple.com/message/991384#991384 on Apple Developer Forums.
Best of luck!
There is a restart mechanism in Xcode testing infrastructure that detects crashes during tests and attempts to restart testing to complete any remaining tests. There may be an issue with how that mechanism is setting up DYLD_INSERT_LIBRARIES following a crash in your tests - please file a report at https://bugreport.apple.com and attach your project if possible.
I have a build server setup with Xcode 7.2 and Server 5.0.15 so we can have CI. I'm able to create an Xcode Bot that creates an archive, but it's not able to finish the last step, which is exporting the ipa archive to the Server so it can be downloaded via ad hoc builds.
I'm able to create an archive from a local machine, but whenever I run a build bot using Distribution as the scheme, I get this error...
Bot Issue for TEST-BUILD-BOT-3 (build service warning)
Integration #8 of TEST-BUILD-BOT-3
Open in Xcode: xcbot://(null)/botID/fa5f2ef869edbde2181109e01843e862/integrationID/fa5f2ef869edbde2181109e01847dbb0
Assertion: exportArchive: ipatool failed with an exception: #<Errno::EEXIST: File exists - /var/folders/3x/8t3j9vnj48530fxd4g4djp14000087/T/ipatool20160318-45875-5xq2zz/MachOs/iphoneos/armv7/(dylibs)/libswiftContacts.dylib>
File: (null):(null)
Full logs for this integration are attached.
For one thing, I'm not sure where the full logs are attached (this error is shown in the Xcode build bot window).
Some information on my project:
The project consists of an app with three extensions (share photo, share safari and watch).
I'm using Cocoapods with some swift frameworks, so I'm using the use_frameworks! keyword in my podfile.
I've tried the following:
Made sure all targets (including pods) were using the Distribution certificate.
Tried w/ and w/o Bitcode enabled.
The worst part about trying to fix this issue is that the build bot takes 20-30 minutes each time I want to test some changes I made.
Any suggestions would be much appreciated!
I had the same error, in the watchapp and watchapp extension targets, i changed the setting, under Build Settings
Embedded Content Contains Swift Code No
And the error was gone
I found this technical post from apple that says any embedded content needs to be set to No to prevent multiple copies of the swift library being added. I interpreted that as a watch target would be embedded content, (not sure if thats what they meant)