Summary:
`SingleSectionStoryboardViewController` class should be used rather using `SingleSectionViewController` class twice in `DemosViewController` class
- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/220
Differential Revision: D4204505
Pulled By: rnystrom
fbshipit-source-id: d70922d57943eab5275af1b939176307c8c3cbeb
Summary:
Unit testing moves in sets so their `hash` and `isEqual` functions provide uniqueness.
Fixes#187, #188
- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/217
Differential Revision: D4201042
Pulled By: jessesquires
fbshipit-source-id: 9c4803ca11e04bb86a7745d6ebc63d173e8ac814
Summary:
I optimistically updated to Xcode 8.1 for travis.
Builds are failing 😢
Fix it. Close#214
~~Let's revert back to 8 and I'll dig into this later. Follow-up: #214~~
Closes https://github.com/Instagram/IGListKit/pull/215
Differential Revision: D4202729
Pulled By: jessesquires
fbshipit-source-id: 02439a0084565eb065a7d647c8c41c36c7464a0a
Summary:
Swapped NSUInteger to NSInteger in public headers. Fixed a test in IGListSectionMapTests.m to pass with NSInteger. For issue #200!
- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/205
Differential Revision: D4191521
Pulled By: rnystrom
fbshipit-source-id: 3f15c5ee3f8ed2d382de2602912a2e998bfbcbba
Summary:
- Fixed broken links in README.md and CHANGELOG.md
- Also updated to use relative links
- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/212
Differential Revision: D4192912
Pulled By: rnystrom
fbshipit-source-id: 991e0637ce36772801f3c4ab6146980f2930973d
Summary:
- Created a new workspace for tvOS examples w/ Cocoapods & dependency on IGListKit
- Created a demo chooser across the same lines as the iOS equivalent
- Duplicated the 'Nested Adapter' example from iOS pack to the tvOS example
- Uses native navigation to get around, created focus/active states for cells
- Updated `travis.yml` to optionally build tvOS example pack
Note: Not added any imagery/icons/etc due to the much larger & different sizes required - If they're desired then someone with skills will need to provide them!
Closes#138
Relates to #137
- [x] All tests pass. Demo project builds and runs.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/141
Differential Revision: D4189645
Pulled By: rnystrom
fbshipit-source-id: 7a2b8e7a50ed2a9bbbf68d5f446a4e0077214ffa
Summary:
Did a full pass on documentation.
- Clean up
- Fixes
- Better markdown
> **NOTE:** this PR does not re-gen docs. I will do that next. Before we cut 2.0
Closes https://github.com/Instagram/IGListKit/pull/198
Reviewed By: rnystrom
Differential Revision: D4181253
Pulled By: jessesquires
fbshipit-source-id: 133c4af392bb396ecc6eff0c895c55e6d18730b7
Summary:
- Removed dead code in batch data and updater
- Tested updating with empty index sets
- Tested updating with not-found section controller
- Tested reloading when collection view or data source are not set
- Tested `-[IGListAdapter sectionForObject:]`
- Tested index path return for not-found section controller
- Tested pointer comparison with `NSObject+IGListDiffable` category
Fixes#190, #189
- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/191
Differential Revision: D4172781
Pulled By: rnystrom
fbshipit-source-id: c25cc917e9a1ebc5fc94fa022e01f99c80c2466c
Summary:
Changing the API to avoid overiding `-[NSObject isEqual:]` because of the side effects it brings (e.g. `-hash`). Not to mention the problems with Swift 2.3.
Fixes#65.
Reviewed By: jessesquires
Differential Revision: D4138570
fbshipit-source-id: 804af6c468c4c273adb73377e9bfda22515121d1
Summary:
Changes if to guard;
Uses forEach instead of for loop.
- [x] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Changes if to guard;
Uses forEach instead of for loop.
Closes https://github.com/Instagram/IGListKit/pull/178
Differential Revision: D4153631
Pulled By: rnystrom
fbshipit-source-id: 077a64f7c92a8d8acdb3626047b602b12a9ebe17
Summary:
I like that we ref the PRs in the changelog. Updating the log with missing revs from internal diffs (no PRs).
Closes https://github.com/Instagram/IGListKit/pull/172
Differential Revision: D4143816
Pulled By: rnystrom
fbshipit-source-id: 57844b0724b11f461ccc6e675946ea04b128fa21
Summary: Rare crashers that take `NSNotFound` from `sectionFor...` API and then immediately look up the object w/out checking for not found. Instead return nil.
Reviewed By: dshahidehpour
Differential Revision: D4142946
fbshipit-source-id: ca80f87729b5ee6699740de897d73b819d27d132
Summary: Adding this API to make querying visible objects a little easier. Fixes#164.
Reviewed By: dshahidehpour
Differential Revision: D4138472
fbshipit-source-id: 0136c39e17c72941b85284b7f3b5494b1ddabf68
Summary:
Saw this pop up in coverage reports. We don't log or assert `NSIndexPath` at all so this doesn't really seem necessary.
- [x] All tests pass. Demo project builds and runs.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/165
Differential Revision: D4138474
Pulled By: rnystrom
fbshipit-source-id: ad8375e47d1584f594d3df29f07a1d5d1a53f3c5
Summary:
Continuing the work on #90. I don't believe I can push directly to that PR since the origin is `master` of a repo I don't have access to.
https://help.github.com/articles/checking-out-pull-requests-locally/
I went ahead and added another supplementary view test copying the old one we had.
cc jessesquires in case there's something else I can do here. I believe this will still give rawlinxx credit?
Closes https://github.com/Instagram/IGListKit/pull/162
Differential Revision: D4137364
Pulled By: rnystrom
fbshipit-source-id: d8418ac5728fd6d9570fa1d1568f4343f5c4112b
Summary:
Implements isEqual func with guard statement
- [x] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/151
Differential Revision: D4120016
Pulled By: rnystrom
fbshipit-source-id: a769071f788b1acc1f2fade5606859a5d91f1bfd
Summary:
Removes exsessive casting in unit test.
- [x] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/150
Differential Revision: D4115391
Pulled By: rnystrom
fbshipit-source-id: 10048491f074ad69d5095ea8d9271f47d3677202
Summary:
Miss this in the previous PR #92. Will add unit test soon.
Closes https://github.com/Instagram/IGListKit/pull/123
Differential Revision: D4101594
Pulled By: rnystrom
fbshipit-source-id: 820030358532b0878f6d9e9092834266c9260a38
Summary:
Offering this open to a bit of a discussion based on the comments at #77.
- Created two new schemes (IGListKitTodayExample, IGListKitMessageExample) in which respectively correspond to their app extension.
- Updated the Podfile to ensure they have IGListKit as a dependency
- Added a super simple example reusing the `LabelSectionController` from the main app
Done more as a 'yes it can be done' as opposed to 'look at what can be done' hence the basic functionality but I can see ways to improve if necessary!
- [x] All tests pass. Demo project builds and runs.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/112
Differential Revision: D4066698
Pulled By: rnystrom
fbshipit-source-id: 64c5cc6f34cc9107f4f6e52ebc57596101eb695c
Summary: Don't need support for iOS 7 anymore, save some cycles on layout.
Reviewed By: ocrickard
Differential Revision: D4098229
fbshipit-source-id: eeaaf875acda1229f9622f11acc7c77ccad75cf0
Summary:
According to rnystrom 's comment on #125 , we leave only two small changes in this PR.
1. Call copy method to avoid a potential issue for an `NSString` property.
2. fix a typo.
close#125
- [x] All tests pass. Demo project builds and runs.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/131
Differential Revision: D4095492
Pulled By: rnystrom
fbshipit-source-id: b162842a38850c826685efd0746022daabe9d2b8
Summary:
- Add missing docs in `IGListAdapterUpdaterDelegate`, fix#128.
- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/130
Differential Revision: D4095494
Pulled By: rnystrom
fbshipit-source-id: 49acb065b61e3837a9624a4d7e9b50fcd08351e8
Summary:
Rename *ItemController unit tests to *SectionController, addressing issue #126
- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/129
Differential Revision: D4095496
Pulled By: rnystrom
fbshipit-source-id: 277be38ed2789f14199cee9d711a838552921f10
Summary:
This commit changes some assertion texts. No behavior is changed; no assertions are added (just reworded). Some of them were short or contained no real meaningful informations, where the error probably is.
Ref: #113
- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/122
Differential Revision: D4090470
Pulled By: rnystrom
fbshipit-source-id: 96f492a1efd258ec3424ce334802229fdbdee191
Summary: Not sure why the build badge is green. Also need to get this to block landing internally.
Reviewed By: jessesquires
Differential Revision: D4084875
fbshipit-source-id: 67603f7db379f7311dc9c99d77c2e7ce08aff9b1
Summary: Adding an example of how to use diffing by itself w/ `UITableView` batch updates.
Reviewed By: jessesquires
Differential Revision: D4077768
fbshipit-source-id: 313193cdcadd337e08f74e90713fa127a5365112
Summary:
Replacing the move+update API with a batch-updates-safe API on the diff results object. This makes using the diff results w/out the rest of IGListKit infra much easier when working with `UITableView` or `UICollectionView`.
- Added unit tests
- Removed outdated unit tests
Reviewed By: dshahidehpour
Differential Revision: D4065798
fbshipit-source-id: 30da8a7b483d56d5acc497da9320dc07a6d0b7ad