Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(ios): be able to build Titanium project from Xcode again #13032

Open
wants to merge 15 commits into
base: master
Choose a base branch
from

Conversation

hansemannn
Copy link
Collaborator

@hansemannn hansemannn commented Aug 21, 2021

JIRA: https://jira.appcelerator.org/browse/TIMOB-26807

Open issues:

  • Production builds fail to compile with the following error (only when including some legacy modules):
[TRACE] error: Build input file cannot be found: '<project>/build/iphone/Build/Intermediates.noindex/
ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/MyApp.app/MyApp' (in target 'MyApp'
from project 'MyApp')

It seems like there is some kind of static file reference leftover in the _build.js that causes this. Can someone help here?

✅ Building the source from Xcode works again (without wild copying and re-referencing files / build settings)
✅ Incremental builds still work
✅ This also fixes the annoying ARM64 error where one had to manually add "arm64" to the "Excluded Architectures" build setting. The reason was that it was added to the xcodebuild command instead of the build setting, so it could not be properly reused from Xcode.

@build build added this to the 10.1.0 milestone Aug 21, 2021
@build
Copy link
Contributor

build commented Aug 21, 2021

Warnings
⚠️ Tests have failed, see below for more information.
⚠️ This PR has milestone set to 10.1.0, but the version defined in package.json is 10.2.0 Please either: - Update the milestone on the PR - Update the version in package.json - Hold the PR to be merged later after a release and version bump on this branch
Messages
📖 ✊ The commits in this PR match our conventions! Feel free to Rebase and Merge this PR when ready.
📖 ❌ 3 tests have failed There are 3 tests failing and 1157 skipped out of 20838 total tests.
📖 🎉 Another contribution from our awesome community member, hansemannn! Thanks again for helping us make Titanium SDK better. 👍
📖

💾 Here's the generated SDK zipfile.

Tests:

ClassnameNameTimeError
android.emulator.5.0.Titanium.UI.View"after all" hook for "rgba fallback" (5.0.2)20.306
Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (app.js)
android.emulator.5.0.Titanium.UI.View"after each" hook for "getOrCreateView() should always return a View" (5.0.2)10.302
Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (app.js)
android.emulator.main.Titanium.UI.WebViewbasic authentication should work properly (12)30.015
Error: Timeout of 30000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (app.js)

Generated by 🚫 dangerJS against 98eb753

@hansemannn hansemannn marked this pull request as ready for review August 21, 2021 20:35
@hansemannn hansemannn marked this pull request as draft August 22, 2021 08:58
@jasonkneen
Copy link
Sponsor Contributor

Will this be available soon?

@hansemannn
Copy link
Collaborator Author

hansemannn commented Nov 16, 2021

I haven't had the chance to finish the PR, yet and have to fix the remaining production build issue

@jasonkneen
Copy link
Sponsor Contributor

I haven't had the chance to finish the PR, yet and have to fix the remaining production builr issue

Awesome -- thanks for all your efforts!

@hansemannn hansemannn marked this pull request as ready for review February 26, 2022 14:30
@hansemannn
Copy link
Collaborator Author

hansemannn commented Feb 26, 2022

Hi everyone! This one is now ready for review!

iphone/cli/commands/_build.js Outdated Show resolved Hide resolved
iphone/cli/commands/_build.js Outdated Show resolved Hide resolved
@hansemannn
Copy link
Collaborator Author

@cb1kenobi Done, thank you! I noticed that the error: Build input file cannot be found: error is still happening with some iOS modules. But after repackaging with the latest tooling, it does work. So I guess I'll have to do some more research to offer either an autoatic migration or better error logging to let devs know whats wrong.

Copy link
Contributor

@cb1kenobi cb1kenobi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CR'd, looks good! Thanks!

@hansemannn hansemannn modified the milestones: 10.1.0, 10.2.0 Mar 21, 2022
@caspahouzer
Copy link
Contributor

Can this be merged? Or are there any obstructions?

@hansemannn hansemannn marked this pull request as draft April 8, 2022 10:00
@hansemannn
Copy link
Collaborator Author

There is still one open issue which I couldn't solve so far (see the open To-do in the first post)

@hansemannn hansemannn modified the milestones: 11.0.0, 11.1.0 May 27, 2022
@hansemannn hansemannn modified the milestones: 11.1.0, 12.0.0 Oct 7, 2022
@hansemannn hansemannn marked this pull request as ready for review November 26, 2022 18:59
@hansemannn
Copy link
Collaborator Author

hansemannn commented Nov 26, 2022

Ready for review! @janvennemann and/or @cb1kenobi, can you take a look? I disabled the project generation for prod builds for now, so it doesn't interfere with sensitive production CLI settings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants