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: prepare xcconfig files for all conigurations #4559

Merged
merged 2 commits into from
Apr 23, 2019

Conversation

rosen-vladimirov
Copy link
Contributor

@rosen-vladimirov rosen-vladimirov commented Apr 22, 2019

Currently CLI merges and prepares xcconfig files only for the current build configuration, i.e. debug or release. However, the pod install command works with both configurations. This leads to problem when some property is set in the project's (plugin's) build.xcconfig file as CLI will prepare the native iOS project only for one configuration. When pod install is executed, if the Pods project uses the property set in the build.xcconfig file, it will fail with error, as the value for debug and release will be different (i.e. it will be set only for one of them). Pods project does not support this behavior, so the build operation fails.

So, ensure CLI merges all xcconfig files for both debug and release configurations. This way, the Pods project will be in sync, so it should continue its execution. This is important when using Cocoapods 1.6.0+ where some changes are applied for Swift support, which can be workarounded by setting SWIFT_VERSION in project's build.xcconfig file.

PR Checklist

What is the current behavior?

What is the new behavior?

Related to: #4553
Fixes issue: #4561

@rosen-vladimirov rosen-vladimirov self-assigned this Apr 22, 2019
@cla-bot cla-bot bot added the cla: yes label Apr 22, 2019
@ghost ghost added the new PR label Apr 22, 2019
@rosen-vladimirov
Copy link
Contributor Author

test cli-smoke cli-templates cli-plugin

@rosen-vladimirov rosen-vladimirov force-pushed the vladimirov/prepare-xcconfig-all-configs branch from fc3a281 to 7cc6b60 Compare April 22, 2019 15:23
@rosen-vladimirov
Copy link
Contributor Author

test cli-smoke cli-templates cli-plugin

.vscode/launch.json Outdated Show resolved Hide resolved
    Currently CLI merges and prepares xcconfig files only for the current build configuration, i.e. debug or release. However, the `pod install` command works with both configurations. This leads to problem when some property is set in the project's (plugin's) build.xcconfig file as CLI will prepare the native iOS project only for one configuration. When `pod install` is executed, if the Pods project uses the property set in the build.xcconfig file, it will fail with error, as the value for debug and release will be different (i.e. it will be set only for one of them). Pods project does not support this behavior, so the build operation fails.

    So, ensure CLI merges all xcconfig files for both debug and release configurations. This way, the Pods project will be in sync, so it should continue its execution. This is important when using Cocoapods 1.6.0+ where some changes are applied for Swift support, which can be workarounded by setting SWIFT_VERSION in project's build.xcconfig file.
@rosen-vladimirov rosen-vladimirov force-pushed the vladimirov/prepare-xcconfig-all-configs branch from 7cc6b60 to afdb021 Compare April 23, 2019 06:50
@rosen-vladimirov
Copy link
Contributor Author

test cli-smoke cli-plugin

@rosen-vladimirov rosen-vladimirov merged commit 53d0741 into release Apr 23, 2019
@rosen-vladimirov rosen-vladimirov deleted the vladimirov/prepare-xcconfig-all-configs branch April 23, 2019 10:10
@ghost ghost removed the new PR label Apr 23, 2019
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.

2 participants