From aea2360645886e6dfb828bf6cf4fb56b18a9fab8 Mon Sep 17 00:00:00 2001 From: Terry Tsai Date: Tue, 17 Jul 2018 17:17:58 -0700 Subject: [PATCH] In order to resolve conflicting Mapbox.framework files with MapboxNavigation, we update the podspec to use the same Mapbox iOS dependency as MapboxNavigation v0.16.2 and remove the vendored_framework file and the preinstall script that downloads it. We use MapboxNavigation v0.16.2 because that's the latest version of MapboxNavigation that is still compatible with Mapbox iOS SDK v3.7.3, same as RNMGL. --- package.json | 2 - react-native-mapbox-gl.podspec | 5 ++- ...download-mapbox-gl-native-ios-if-on-mac.js | 18 --------- scripts/download-mapbox-gl-native-ios.sh | 37 ------------------- 4 files changed, 4 insertions(+), 58 deletions(-) delete mode 100644 scripts/download-mapbox-gl-native-ios-if-on-mac.js delete mode 100755 scripts/download-mapbox-gl-native-ios.sh diff --git a/package.json b/package.json index 6d21bbcb4..07758c9ff 100644 --- a/package.json +++ b/package.json @@ -23,10 +23,8 @@ "url": "https://github.com/mapbox/react-native-mapbox-gl" }, "scripts": { - "fetch:ios:sdk": "node ./scripts/download-mapbox-gl-native-ios-if-on-mac.js 3.7.3", "fetch:style:spec": ". ./scripts/download-style-spec.sh", "generate": "node ./scripts/autogenerate", - "preinstall": "npm run fetch:ios:sdk", "test": "npm run lint && npm run unittest", "unittest": "jest --coverage --verbose", "unittest:single": "jest --testNamePattern", diff --git a/react-native-mapbox-gl.podspec b/react-native-mapbox-gl.podspec index b3ecf4f71..eed68426a 100644 --- a/react-native-mapbox-gl.podspec +++ b/react-native-mapbox-gl.podspec @@ -13,6 +13,9 @@ Pod::Spec.new do |s| s.source = { :git => "https://github.com/mapbox/react-native-mapbox-gl.git" } s.source_files = "ios/RCTMGL/**/*.{h,m}" - s.vendored_frameworks = 'ios/Mapbox.framework' + + # Fix to allow this pod to be used alongside MapboxNavigation + # Make sure the versions are matching in both pods + s.dependency "Mapbox-iOS-SDK", "3.7.3" s.dependency 'React' end diff --git a/scripts/download-mapbox-gl-native-ios-if-on-mac.js b/scripts/download-mapbox-gl-native-ios-if-on-mac.js deleted file mode 100644 index eb8acc74d..000000000 --- a/scripts/download-mapbox-gl-native-ios-if-on-mac.js +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env node - -var version = process.argv[2]; -var path = require('path'); - -// only download iOS SDK if on Mac OS -if (process.platform === 'darwin') { - var exec = require('child_process').exec; - var cmd = `"${path.join(__dirname, 'download-mapbox-gl-native-ios.sh')}" ${version}`; - exec(cmd, function(error, stdout, stderr) { - if (error) { - console.error(error); - return; - } - console.log(stdout); - console.log(stderr); - }); -} diff --git a/scripts/download-mapbox-gl-native-ios.sh b/scripts/download-mapbox-gl-native-ios.sh deleted file mode 100755 index 03f3e3f37..000000000 --- a/scripts/download-mapbox-gl-native-ios.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/sh - -cd ios/ - -VERSION=$1 -if type /usr/libexec/PlistBuddy &> /dev/null; then - CURRENT_VERSION=$(/usr/libexec/PlistBuddy -c "Print :MGLSemanticVersionString" Mapbox.framework/Info.plist) -else - CURRENT_VERSION=$(cat .framework_version) -fi - -if [ "$VERSION" == "$CURRENT_VERSION" ]; then - echo "The newest version is already installed. Exiting." - exit 0 -fi - -echo "Downloading Mapbox GL iOS $VERSION, this may take a minute." - -if ! which curl > /dev/null; then echo "curl command not found. Please install curl"; exit 1; fi; -if ! which unzip > /dev/null; then echo "unzip command not found. Please install unzip"; exit 1; fi; - -if [ -d ./Mapbox.framework ]; then - echo "Old Mapbox.framework found. Removing it and installing a $VERSION" - rm -rf ./Mapbox.framework -fi - -curl -sS https://mapbox.s3.amazonaws.com/mapbox-gl-native/ios/builds/mapbox-ios-sdk-$VERSION-dynamic.zip > temp.zip -unzip -o temp.zip -d temp -mv temp/dynamic/Mapbox.framework ./Mapbox.framework -rm -r temp -rm temp.zip - -if ! [ -d ./Mapbox.framework ]; then - echo "Mapbox.framework not found. Please reinstall react-native-mapbox-gl"; exit 1; -fi; - -echo "$VERSION" > .framework_version