googlevr / gvr-unity-sdk

Google VR SDK for Unity
http://developers.google.com/vr/unity/
Other
2.71k stars 1.09k forks source link

Updating Podspecs for 1.130.1 #880

Closed alimoeeny closed 6 years ago

alimoeeny commented 6 years ago

I went ahead and created a PR: https://github.com/CocoaPods/Specs/pull/14372 What it lacks is direct download link to dl.google.com

alimoeeny commented 6 years ago

@rusmaxham follow up from the discussion under https://github.com/CocoaPods/Specs/pull/14372 I just copied over the exiting podspec. It looks like, and makes sense, the way to go is to add the podspec to this repo, not to update cocoapods specs directly.

I don't know what your policy is, can I make a PR to this repo with the podspec.

And to answer your question, since unity itself does not keep up with the changes in this repo, we manually update our Podfile pointing to this repo.

rusmaxham commented 6 years ago

Yeah, the CocoaPods are for entirely native iOS code, not Unity plugins. The Unity plugin doesn't come with a podspec and I don't believe there is a way to override the Unity built-in. Unity has a copy of the entire GVR iOS CocoaPod embedded in it so that iOS Unity developers don't need to have CocoaPods installed in order to build for iOS. AFAIK, there is no way for us to override that in our plugin.

alimoeeny commented 6 years ago

@rusmaxham I am not sure if I understand what "entirely native iOS code" is. We have project, which can be called a "plugin", in which it is generated by doing a Unity build and we use cocoapods to add many packages including GVR to it, which I believe overrides Unity's embedded GVR. We have been upgrading out GVR independent of Unity's slow upgrades.

My questions are, 1- do you mind including a .podspecs file in your repo? 2- where can I get the link to the latest binary distribution from dl.google.com like: https://dl.google.com/dl/cpdc/2d6b597cb1a13b1c/GVRSDK-1.120.0.tar.gz but for 1.130.1 ?

Thank you,

rusmaxham commented 6 years ago

I'm not sure that this is even possible. Unity has a copy of the GVR CocoaPod embedded in it that it copies into Cardboard iOS builds so that developers don't need to have CocoaPods installed. Adding a podspec to the GVR SDK for Unity won't change what version of the pod ends up in iOS. Developers will need to have CocoaPods installed on their system and then run pod update after Unity generates the Xcode project to get an updated version of the GVR CocoaPod, and this process doesn't need an updated spec, as the podfile included in Unity specifies version or newer, allowing newer versions to be installed on pod update.

alimoeeny commented 6 years ago

That is exactly what we do. Unity build is the first step of our build system, then we have some custom scripts that we run which includes pod install or pod update (depending on some other conditions) and then an xcode build. For that purpose, we would appreciate an up to date podspec file. Of course we can alternatively just point to the repo on github, but it would be cleaner to have proper pod and podspecs set up.

rusmaxham commented 6 years ago

Does the pod update step not get you the latest iOS CocoaPod? It should. The latest is still 1.120, tho. There was no 1.130 release for iOS this cycle.

alimoeeny commented 6 years ago

It does, it gets up 1.120 I thought the latest version is 1.130.1 based on: https://github.com/googlevr/gvr-unity-sdk/releases/tag/v1.130.1 What am I missing? Sorry I am dragging this conversation, and I appreciate your responses

rusmaxham commented 6 years ago

Ah good, pod update is working.

There are separate releases for the platform SDKs (Android and iOS) and the engine SDKs (Unity and Unreal). Usually platform SDKs both release in sync, but this cycle iOS was skipped for reasons. Engine SDK releases usually trail by a couple of weeks. Unreal is lagging Unity a bit this cycle for reasons.