-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Added Subspec for Diffing #368
Conversation
@Sherlouk updated the pull request - view changes |
@Sherlouk updated the pull request - view changes |
1 similar comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few follow-ups here:
- We'll need to merge Added compatibility header #369 first and rebase this.
- Definitely need to note this in the changelog
- Let's add
Guides/Installation.md
to explain and let's link to it at the end of the "Installation" section in theREADME
. ("For advanced usage, see our Installation Guide.")
Oh, one last thing: We'll probably need to strip the last commit here (2f90281). Our importing system chokes on |
One more 😊 I noticed you needed to move I'll do that when I merge #369, so your rebase here is easier. |
@jessesquires Superb! I'll revert the last commit and then update documentation, merge 369 whenever and I'll rebase! Obviously not aware how all your internal stuff works, so apologies for that |
This reverts commit 2f90281.
Me either 🤷♂️ 😆 I just know it breaks all the time. 😊 |
@Sherlouk updated the pull request - view changes |
1 similar comment
@Sherlouk updated the pull request - view changes |
Build will continue to fail now until it has been fully merged as: |
# Conflicts: # CHANGELOG.md # IGListKit.xcodeproj/project.pbxproj
@Sherlouk updated the pull request - view changes |
All rebased & conflict free! Do you want me to update docs, or would you rather do that internally? |
@Sherlouk updated the pull request - view changes |
@jessesquires All good! Interesting bug with the facebook bot though, thinks all the changes were made by me! |
We'll do the pod install and docs internally. |
#import <UIKit/UIKit.h> | ||
#else | ||
#import <Cocoa/Cocoa.h> | ||
#endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
import the new compatibility header?
Will update to use compatibility header, also README references wrong file name since rename |
I'll leave your move of |
@Sherlouk updated the pull request - view changes |
@jessesquires This also closes #53? |
'Source/Common/Internal/*.h' | ||
] | ||
s.subspec 'Default' do |cs| | ||
cs.dependency 'IGListKit/Diffing' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Slick!
|
||
```ogdl | ||
github "Instagram/IGListKit" ~> 2.0.0 | ||
``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can followup w/ manual install steps too
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did have that, but @jessesquires removed it -- not sure reasoning behind that?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ha, sorry.
Removed because manual installation doesn't really work -- it's not just "drag and drop" because our test target depends on OCMock via CocoaPods.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably worth just leaving it out then, I'm sure if you really want to manually install it then you'll be able to work it out -- or ask in the issues
|
||
```ogdl | ||
github "Instagram/IGListKit" ~> 2.0.0 | ||
``` | ||
|
||
> **For advanced usage, see our [Installation Guide](https://instagram.github.io/IGListKit/installation.html)**. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we nix the bold?
*/ | ||
FOUNDATION_EXPORT const unsigned char IGListKitVersionString[]; | ||
|
||
// Common (iOS, tvOS, macOS compatible): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: can we remove this?
@@ -17,6 +17,8 @@ This release closes the [2.1.0 milestone](https://github.com/Instagram/IGListKit | |||
|
|||
- Working ranges now work with `IGListStackedSectionController`. [Ryan Nystrom](https://github.com/rnystrom) [(#356)](https://github.com/Instagram/IGListKit/pull/356) | |||
|
|||
- Added CocoaPods subspec for diffing, `IGListKit/Diffing` and an [installation guide](https://instagram.github.io/IGListKit/installation.html). [Sherlouk](https://github.com/Sherlouk) [(#368)](https://github.com/Instagram/IGListKit/pull/368) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔥🔥🔥
@Sherlouk updated the pull request - view changes |
@Sherlouk updated the pull request - view changes |
@Sherlouk updated the pull request - view changes |
@jessesquires has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator. |
@jessesquires has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator. |
Changes in this pull request
So the main Podspec file now has two Subspecs,
Diffing
and for lack of better nameDefault
.Diffing
is purely the files within the common directories (used for Diffing, if in the future we support MacOS NSCollectionView then this may need changing).Default
depends onDiffing
but also adds all the non-common files.To use it via CocoaPods, nothing changes. You
import IGListKit
and you will only have access to the files in the pod you use. (So if you useIGListKit/Diffing
in your Podfile, then you will only get access to the diffing files). If you do a manual installation, or I assume via Carthage, then you will need to import the correct header file (eitherIGListDiffKit.h
orIGListKit.h
depending on what you want).Turns out CocoaPods creates it's own umbrella header (unless you tell it otherwise) meaning our ones are unused by it.
Just to confirm
IGListKit
in your Podfile will give you everything, only if you add/Diffing
will you "opt-out" of the extra functionality. MacOS users can use which ever one they choose, and will get the same functionality (at this point in time)Do I need to update changelog for this?
Leaving myself a few TODOs once we've discussed this
Create new guide in
Guides/
explaining this usageRun
pod install
in theExamples/
dirCloses Add pod subspec for 'IGListKit/Diffing' #365 (Hopefully)
Closes Make diff code available as a separate component #53
Pull request checklist
CHANGELOG.md
for any breaking changes, enhancements, or bug fixes.