nothirst / TICoreDataSync

Automatic synchronization for Core Data apps, between any combination of Mac OS X and iOS: Mac to iPhone to iPad to iPod touch and back again.
https://github.com/nothirst/TICoreDataSync/wiki
807 stars 61 forks source link

Add podspec file to enable TICoreDataSync to work with cocoapods #33

Closed dhennessy closed 11 years ago

dhennessy commented 11 years ago

Once fully integrated, users will be able to include TICoreDataSync by adding this line to their Podfile:

pod 'TICoreDataSync'

For now, there are a few caveats:

  1. It's on the develop branch rather than master. The reason for this is that it requires version 1.3.3 of the Dropbox SDK.
  2. It installs the :head version of TICDS. This makes sense during development but a better practice is to add version tags to the master branch and then have the podspec reference particular versions.
  3. It's not yet in the cocoapods specs repo. This should occur once the podspec is merged to the master branch and a particular tag referenced.

To try it out, create a Podfile like this:

platform :ios, '6.0' pod 'TICoreDataSync', :podspec => "path/to/TICoreDataSync.podspec"

Note: I created the author list by grepping commit names from the git log. It's very possibly incorrect.

MrRooni commented 11 years ago

Hey Denis, thanks for the pull request! We don't use CocoaPods so I am trusting that you've set up everything correctly. :smiley:

We're just about to publish version 1.0.1 of MoneyWell Express and I will merge TICDS back into master at that point and tag it as 1.0.1 as well.

dhennessy commented 11 years ago

Hi Michael,

You're welcome. I'm in the middle of integrating TICDS with one of my apps and it's working out great.

When you're ready to release a new version, change the [:branch => "develop"] part to [:tag => "1.0.1"].

I have commit access to the main cocoapods specs repo so I'll add it there at that point.

If you like, I'm happy to convert one or more of the example projects to use cocoapods instead of using embedded references. It's entirely up to you.

Cheers, Denis

On 20 Feb 2013, at 13:56, Michael Fey notifications@github.com wrote:

Hey Denis, thanks for the pull request! We don't use CocoaPods so I am trusting that you've set up everything correctly.

We're just about to publish version 1.0.1 of MoneyWell Express and I will merge TICDS back into master at that point and tag it as 1.0.1 as well.

— Reply to this email directly or view it on GitHub.

MrRooni commented 11 years ago

Denis,

Do me a favor and verify my change to the podspec file: https://github.com/nothirst/TICoreDataSync/commits/master/TICoreDataSync.podspec

If you think that converting one of the sample projects to use CocoaPods would be useful then go for it. Does it add much overhead to the project? What exactly would you be doing to support CocoaPods?

best, Michael

On Feb 20, 2013, at 9:51 AM, Denis Hennessy notifications@github.com wrote:

Hi Michael,

You're welcome. I'm in the middle of integrating TICDS with one of my apps and it's working out great.

When you're ready to release a new version, change the [:branch => "develop"] part to [:tag => "1.0.1"].

I have commit access to the main cocoapods specs repo so I'll add it there at that point.

If you like, I'm happy to convert one or more of the example projects to use cocoapods instead of using embedded references. It's entirely up to you.

Cheers, Denis

On 20 Feb 2013, at 13:56, Michael Fey notifications@github.com wrote:

Hey Denis, thanks for the pull request! We don't use CocoaPods so I am trusting that you've set up everything correctly.

We're just about to publish version 1.0.1 of MoneyWell Express and I will merge TICDS back into master at that point and tag it as 1.0.1 as well.

— Reply to this email directly or view it on GitHub.

— Reply to this email directly or view it on GitHub.

dhennessy commented 11 years ago

Hi Michael,

Do me a favor and verify my change to the podspec file: https://github.com/nothirst/TICoreDataSync/commits/master/TICoreDataSync.podspec

Your changes to the podspec are fine. The only change I'd recommend is changing the version tag of TICDS from "v1.0.1" to "1.0.1". The reason for this is that cocoapods has support for specifying version constraints, which allows developers to declare compatibility with a specific version, or with a range of versions. In order for this to work, it requires libraries to use semantic versioning when releasing new versions. You can read some more about it at http://semver.org and https://github.com/CocoaPods/CocoaPods/wiki/Dependency-version-workflow

If you think that converting one of the sample projects to use CocoaPods would be useful then go for it. Does it add much overhead to the project? What exactly would you be doing to support CocoaPods?

The changes are fairly minor. They are:

  1. Remove any existing embedded xcode project files.
  2. Remove any copied source files
  3. Remove any copied core data model files, or resources
  4. Create a Podfile with a single reference to the TICDS pod

I'll make the change and let you look at it - you can decide then whether to include it or not. It'll take a few days as we're going away for the weekend.

Cheers, Denis

MrRooni commented 11 years ago

Denis,

Apologies for the long wait. I've pushed a new branch titled 1.0.1 that contains a podspec file that also contains a reference to 1.0.1.

best, Michael