334 Commits

Author SHA1 Message Date
Jesse Squires
357a28e5cf final docs update for 3.0
Summary: Closes https://github.com/Instagram/IGListKit/pull/738

Differential Revision: D5052802

Pulled By: jessesquires

fbshipit-source-id: b1ace763da9edbb7bc65ecb9af34aa791e617aa7
3.0.0
2017-05-12 10:46:46 -07:00
Jesse Squires
9d102b9639 Fixup project, update README and guides
Summary:
- Fix OCMock issues with tvOS tests
- Update README/guides
Closes https://github.com/Instagram/IGListKit/pull/737

Differential Revision: D5052333

Pulled By: jessesquires

fbshipit-source-id: 958444d892c14dd4c75e244f20ae21bbfeec8290
2017-05-12 09:47:20 -07:00
Ryan Nystrom
32a566d7c9 Regen docs for 3.0
Summary:
~~Land after #661, #730 and D5031184~~

Rebuild the docs from script. Couple notes:

- Went from 100% to 99%, does that matter? Script output says
  - > 99% documentation coverage with 2 undocumented symbols
  - Looks like `NS_SWIFT_NAME` throws documentation for a loop on `IGListDiffOption` and `IGListExperiment`
- Swift names are different, will that be a problem?

Part of #707

Closes https://github.com/Instagram/IGListKit/pull/728

Differential Revision: D5050951

Pulled By: jessesquires

fbshipit-source-id: 19249c1d34e6f253b911965114fd4ae7458d2684
2017-05-12 07:25:00 -07:00
Jesse Squires
ae60df9290 Update CHANGELOG.md
Summary: Closes https://github.com/Instagram/IGListKit/pull/735

Differential Revision: D5048185

Pulled By: jessesquires

fbshipit-source-id: 3f1a6826a4088043d883533f4f933a0a7ea42d60
2017-05-11 16:18:55 -07:00
Ryan Nystrom
0a416914d5 Rename sectionIndex API to just section
Summary:
Quick rename before releasing 3.0 to get this API in parity w/ `isFirstSection` and `isLastSection`. My b I should have caught this in review.

Closes #720

Reviewed By: jessesquires, amonshiz

Differential Revision: D5031184

fbshipit-source-id: 1cd7b00c8b32084fecd861e78808eea0d0056337
2017-05-11 14:49:59 -07:00
Ryan Nystrom
7304fe820d Fix UICollectionView debug dump script
Summary:
Duh, need to import macro

Issue fixed: #722

- [x] All tests pass. Demo project builds and runs.
Closes https://github.com/Instagram/IGListKit/pull/733

Differential Revision: D5040026

Pulled By: jessesquires

fbshipit-source-id: e9e51137ab4f7fa949667e3f3d644cd5c03abf80
2017-05-11 14:31:28 -07:00
Ryan Nystrom
de0fe91ae7 3.0 migration guide
Summary:
Will add to this as we close out the [milestone](https://github.com/Instagram/IGListKit/milestone/3).

Issue fixed: #475
Closes https://github.com/Instagram/IGListKit/pull/661

Differential Revision: D5047071

Pulled By: jessesquires

fbshipit-source-id: 78989529f50c9b281960e5acf843e91198677432
2017-05-11 13:50:49 -07:00
James Sherlock
a8190f3db1 Update version number in docs
Summary:
Part of #707
Closes https://github.com/Instagram/IGListKit/pull/734

Differential Revision: D5046692

Pulled By: jessesquires

fbshipit-source-id: db43f99fd0bbf4186a1bd47070f28a9a446bc2a4
2017-05-11 13:07:11 -07:00
Ryan Nystrom
f743b1c915 Regen example project files
Summary:
Regen example projects w/ pod script file.

Part of #707

Reviewed By: jessesquires

Differential Revision: D5039135

fbshipit-source-id: d29bcf635aea59aa589bd90644fb1ece6279cc10
2017-05-10 14:01:05 -07:00
Ryan Nystrom
b6217a6709 Proof guides for consisntency and name changes
Summary:
Part of #707
Closes https://github.com/Instagram/IGListKit/pull/730

Differential Revision: D5039060

Pulled By: rnystrom

fbshipit-source-id: d54259b2dddbaba0fe2e69c6dd08a37fd17fbc4a
2017-05-10 13:31:19 -07:00
Ryan Nystrom
d1cd23b3d0 Bump pod and project version to 3.0.0
Summary:
Part of #707
Closes https://github.com/Instagram/IGListKit/pull/731

Reviewed By: rnystrom

Differential Revision: D5036877

Pulled By: jessesquires

fbshipit-source-id: f63ce3369019870df87ebde59d6f6b0e95c8ad87
2017-05-10 12:32:05 -07:00
Ryan Nystrom
2363352f07 Fill in tbd in changelog
Summary:
Part of #707

Closes https://github.com/Instagram/IGListKit/pull/729

Reviewed By: rnystrom

Differential Revision: D5036882

Pulled By: jessesquires

fbshipit-source-id: 2fe99b66608fff52bb42cac46073b32d0865d007
2017-05-10 12:32:05 -07:00
Andrew Monshizadeh
1d140e441a Reset all section controllers when a list adapter is deallocated
Summary:
This change will ensure that section controllers have the following properties reset to sensible default values when their owning list adapter is deallocated.

```
isFirstSection = NO
isLastSection = NO
sectionIndex = NSNotFound
```

Issue fixed: #709

- [X] All tests pass. Demo project builds and runs.
- [X] I added tests, an experiment, or detailed why my change isn't tested. (Existing test is updated to ensure this doesn't regress)
- [ ] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [X] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/723

Reviewed By: rnystrom

Differential Revision: D5032445

Pulled By: jessesquires

fbshipit-source-id: 446a30f4206ce02d3ad89fcd9b4586587f396f58
2017-05-10 10:02:55 -07:00
Bas Broek
f94d01ed17 Add isPrefetchingEnabled to debug description
Summary:
Issue fixed: #725

- [x] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/726

Differential Revision: D5032405

Pulled By: jessesquires

fbshipit-source-id: aeda891f09c6aec751daa672258c0b071ea75ae2
2017-05-09 16:20:47 -07:00
Bas Broek
d19b07a0c1 Reference fix PR instead of issue
Summary:
Issue fixed: -

Seem to have referenced the issue instead of the fixing PR during #686.
Closes https://github.com/Instagram/IGListKit/pull/727

Differential Revision: D5032377

Pulled By: jessesquires

fbshipit-source-id: 76ae9b13e6912d8771f413c2f0f3c81e1df42304
2017-05-09 16:02:58 -07:00
Robert Payne
40625f8ff9 Swift name annotations
Summary:
This adds `NS_SWIFT_NAME` annotations to all public API's to provide cleaner integration into Swift:

- Removes the need to prefix classes in Swift code, instead rely on Swift module name spacing
- Adds more argument labels to C function API's like `IGListDiff([], [], .equality)` => `ListDiff(oldArray: [], newArray: [], option: .equality)`

While this is a large API change it should be as easy as:

- Find and replace `(IGList)([^K])` to `List$2` in Xcode with a scope set to Swift
- Build and follow compiler's auto fix corrections for C API's or any missed renames

I have not updated the documentation to reflect this yet, I am totally willing to do so but before I sink that amount of time into it I wanted to see if the Instagram team is even open to this change!

- [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 added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
- [ ] I have updated the documentation
Closes https://github.com/Instagram/IGListKit/pull/593

Reviewed By: jessesquires

Differential Revision: D5028039

Pulled By: rnystrom

fbshipit-source-id: b473d874a1f9574e56b2ebaabd5b73d1b57d4bab
2017-05-09 14:31:28 -07:00
Ryan Nystrom
a4dfe9676e Fix reusing collection views among multiple adapters
Summary:
When multiple `UICollectionView`s are reused among multiple `IGListAdapter`s (horizontal lists embedded in a bigger, vertical list), the mapping between the old view and adapter is not broken. When a new collection view is attached to the old adapter, an unrelated adapter->collection view reference will be erroneously broken.

The unit test in this diff fails on the second `XCTAssertEqual(adapter2.collectionView, collectionView1);` without this patch.

Issue fixed: #699

t15661237 internally

cc amonshiz since we were talking about this

- [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 added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
Closes https://github.com/Instagram/IGListKit/pull/721

Reviewed By: amonshiz

Differential Revision: D5026330

Pulled By: rnystrom

fbshipit-source-id: b2164a4ab39802f7fba870ceab6692b7b501b5c2
2017-05-09 08:08:46 -07:00
Avner
034f162d6d Typo in the comparison
Summary:
Issue fixed: #

- [ ] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [ ] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [ ] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/716

Reviewed By: rnystrom

Differential Revision: D5003529

Pulled By: jessesquires

fbshipit-source-id: e7a0bdcff962f94c33f24f27e1fc9c0a3ed8dbfb
2017-05-05 08:55:43 -07:00
Andrew Monshizadeh
a4e5ad862e Move section index to property
Summary:
This pull request removes the `sectionForSectionController:` method from the `IGListCollectionContext` protocol so that the protocol is exclusively for presentation methods.

This should not add new functionality, but rather makes the index directly accessible on the section controllers themselves. This change makes sense because at no time will there be an update to the list that the list adapter is unaware of and so it will always be able to set and update any indexes for a section controller that has changed.

Issue fixed: #609

- [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 added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [X] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/671

Reviewed By: jessesquires

Differential Revision: D4942159

Pulled By: amonshiz

fbshipit-source-id: d648cfdd381cbf1d9ee7ff549ae27d2972a84622
2017-05-01 07:28:27 -07:00
Ryan Nystrom
f1ebfbdb7d Disable iOS 9.3 tests
Summary:
These tests are timing out all the time. ☠️

Issue fixed: #683
Closes https://github.com/Instagram/IGListKit/pull/688

Differential Revision: D4965525

Pulled By: rnystrom

fbshipit-source-id: ea122e66379646c557d1b8f1c7325894620b88fb
2017-04-27 14:47:43 -07:00
Jesse Squires
f01594005f Update ISSUE_TEMPLATE.md
Summary:
close #701
Closes https://github.com/Instagram/IGListKit/pull/702

Reviewed By: rnystrom

Differential Revision: D4947884

Pulled By: jessesquires

fbshipit-source-id: 597a8fe21bb8870b8260d10e03bab14651279fe5
2017-04-26 13:17:23 -07:00
Ryan Nystrom
ee4f3c95c6 Balance reload delete and insert calls
Summary:
In 073fc073e0 we deduped delete calls, but since we convert reloads into delete+insert when only deduping deletes, we end up with unbalanced delete+insert calls.

Unit test added reproduced a crash we see internally. Fix passes the test.

Not adding a changelog entry since this is a new regression fixed between releases. #trivial

Issue fixed: t17539856

- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
Closes https://github.com/Instagram/IGListKit/pull/687

Differential Revision: D4933545

Pulled By: rnystrom

fbshipit-source-id: d38a900a99b1aa796dd654ddedb42e3cb4ef4378
2017-04-22 12:15:59 -07:00
Ryan Nystrom
5fe27d8809 Add debug dump scripts
Summary:
Got a little time on the plane to mess around with this idea. Very much want comments on this! Some questions:

- We should probably compile out parts of this using `#if DEBUG`.
  - Should I compile out all of the description methods?
  - Maybe I wrap the entire debug files w/ `#if DEBUG ... #endif` so none of it is loaded?
- ryanolsonk I used [FLEX](https://github.com/Flipboard/FLEX/blob/master/Classes/Utility/FLEXHeapEnumerator.m) for searching the heap, lmk if you see any problems w/ this
  - Its lifted w/ only a few changes for my specific needs (including comments 😂)
  - Chalk us up for using [another bit](https://github.com/Instagram/IGListKit/blob/master/Source/Internal/IGListAdapterProxy.m#L77-L82) of your code
- Added a basic test so that the basics of this work and coverage doesn't tank
  - Anything else I should test?
- Is there more data we should be dumping?
- I have to track batch update state on the updater in order to dump it. If this seems dan
Closes https://github.com/Instagram/IGListKit/pull/617

Reviewed By: jessesquires

Differential Revision: D4929426

Pulled By: rnystrom

fbshipit-source-id: fcba0d6f0b7766485440f208cf70ad39dfc7a42e
2017-04-21 16:46:06 -07:00
Bas Broek
ea5a4cc00f Init without working range size
Summary:
Issue fixed: #414

- [x] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [x] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)

What should we do with testing? I changed all the occurrences of the old initializer with the new one, so I think this is good to go?
Closes https://github.com/Instagram/IGListKit/pull/686

Differential Revision: D4931986

Pulled By: jessesquires

fbshipit-source-id: d6f0ac6578c11f8ef37ec0e385bc110e3abd7c91
2017-04-21 14:30:46 -07:00
Artem Goncharov
e729ab8211 Fixed empty space bug in CollectionView
Summary:
Fixed situation when cells with small height don't intersect with the _Rect_ and stop the enumeration that cause empty spaces in _collectionView_.

Issue fixed: # [680](https://github.com/Instagram/IGListKit/issues/680)

- [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 added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/684

Differential Revision: D4929315

Pulled By: rnystrom

fbshipit-source-id: 4437df21772697a9a6421d213f4fed7b8470371b
2017-04-21 08:20:16 -07:00
Ryan Nystrom
fdbe025fe1 Add base test case class for simpler unit testing
Summary:
Making it simpler to setup tests w/ default config and objects. Less LoC in tests, lower setup cost when creating new test suites.

Should I changelog?

Issue fixed: #183

- [x] All tests pass. Demo project builds and runs.
- [x] I added tests, an experiment, or detailed why my change isn't tested.
Closes https://github.com/Instagram/IGListKit/pull/678

Differential Revision: D4921633

Pulled By: rnystrom

fbshipit-source-id: fb4d08acb6ed0ba885cf56ce147f70b304301ff1
2017-04-20 14:36:28 -07:00
Ryan Nystrom
073fc073e0 Prevent duplicate item deletes and drop reload collisions
Summary:
a415ef5552 exposed a bug in `UICollectionView` where its state gets corrupted when deleting the same index path more than once in a single batch update block. This resulted crashes like

```
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x4)
Closes https://github.com/Instagram/IGListKit/pull/657

Reviewed By: jessesquires

Differential Revision: D4913790

Pulled By: rnystrom

fbshipit-source-id: 8f6fcdd2e2438da309fc64ca0ac111b9a0980149
2017-04-19 17:17:41 -07:00
Ryan Nystrom
ad416ecccd Remove refs to IGListSectionType, fix TV app example
Summary:
- Clean up docs
  - Remove `IGListSectionType` and `IGListCollectionView`
- Fix TV app example

Issue fixed: #675

- [x] All tests pass. Demo project builds and runs.
Closes https://github.com/Instagram/IGListKit/pull/676

Differential Revision: D4915634

Pulled By: rnystrom

fbshipit-source-id: 60eb1f1e5ece7fe68f6bf44b465bd5379615d716
2017-04-19 16:21:07 -07:00
Jesse Squires
145327647b Invalidate layout when collection view reused between IGListAdapters
Summary:
Closes #659
Closes https://github.com/Instagram/IGListKit/pull/677

Differential Revision: D4915322

Pulled By: jessesquires

fbshipit-source-id: 2ae6ff4ee1726fe2395233d7d662c0b12956a746
2017-04-19 13:00:47 -07:00
heshamsalman
04e6c1bff1 Increased timeout time, close #669
Summary:
Simple find and replace for `waitForExpectationsWithTimeout:15` and `waitForExpectationsWithTimeout:16`

Issue fixed: #669

- [ ] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [ ] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [ ] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/670

Differential Revision: D4915711

Pulled By: rnystrom

fbshipit-source-id: 7afd990cd5d18844ec1da08c5335f7138feb0b87
2017-04-19 13:00:47 -07:00
Ryan Nystrom
301f1471c9 Add generic type section controller
Summary: Adding and implementing an example of a new section controller that can be configured with a type. This section controller automatically stores its object in `didUpdateToObject:`, and implementations can trust the type-safety of the object!

Reviewed By: jessesquires

Differential Revision: D4914179

fbshipit-source-id: 39e2dce8ca29a1c0c92dc78eb8c25a7ab0a21978
2017-04-19 12:45:36 -07:00
Ryan Nystrom
3102852ce2 Remove IGListSectionType
Summary:
Removing the `IGListSectionType` protocol and adding default implementations into `IGListSectionController`.

- `numberOfItems` returns 1
- `cellForItemAtIndex:` asserts (have to return a cell)
- `didUpdateToObject:` no-ops
- `didSelectItemAtIndex:` no-ops

Fixes #168

Reviewed By: jessesquires

Differential Revision: D4909585

fbshipit-source-id: 8816702504e3fc0683868914ff4dd20e4af7c166
2017-04-19 08:26:30 -07:00
Ryan Nystrom
4441bd84cc Fix crash when requesting OOB layout attributes
Summary: There's a small crash showing up when requesting an index path that doesn't exist. It's totally valid that this could be requested from a product and not the infra. Should fail gracefully.

Differential Revision: D4911349

fbshipit-source-id: eee8891cf9400b3c3cd5539e839296f393f82354
2017-04-19 08:26:30 -07:00
Jesse Squires
693cb8a523 fix NSProxy init
Summary:
`NSProxy` doesn't define `init` because it's abstract.

designated init requires a call to super designated init (which doesn't exist for NSProxy)

sweet
Closes https://github.com/Instagram/IGListKit/pull/667

Differential Revision: D4908034

Pulled By: jessesquires

fbshipit-source-id: c223e05f49ab74d69affe8fdf37e0625e587c8b0
2017-04-18 13:00:55 -07:00
Andrew Monshizadeh
ae11d6af53 Move UICollectionView(DataSource|Delegate) to category
Summary:
This reduces the quantity of the code within IGListAdapter.m and is a bit more in line with Swift style of putting protocol conformance into extensions.

This does not change functionality just rearranges where code lives.

- [X] All tests pass. Demo project builds and runs.
- [X] I added tests, an experiment, or detailed why my change isn't tested.
- [N/A] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [N/A] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/599

Reviewed By: jessesquires

Differential Revision: D4861777

Pulled By: amonshiz

fbshipit-source-id: eaa31aa9438f3892193aeb8b4ae580ba2960ee8b
2017-04-18 11:21:18 -07:00
Bas Broek
edc38c77fe Remove @param alignment from header docs #trivial
Summary:
Issue fixed: #655

- [x] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [ ] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)

I've also addressed a few cases where there was no empty line between the `param`s and `return`.
Closes https://github.com/Instagram/IGListKit/pull/665

Differential Revision: D4906215

Pulled By: jessesquires

fbshipit-source-id: 5693c85eb548644b0b0e2571eea8ff4d9f706b12
2017-04-18 09:46:18 -07:00
Jesse Squires
a4b579a089 Create Working with UICollectionView guide
Summary:
Close #527
Closes https://github.com/Instagram/IGListKit/pull/664

Differential Revision: D4906260

Pulled By: jessesquires

fbshipit-source-id: c849dd17d6161ab121d0d3dd55e59e9e0832be73
2017-04-18 08:47:42 -07:00
Bas Broek
2e3d798870 Fix GitHub capitalization
Summary:
Issue fixed: --

- [x] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [ ] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/666

Differential Revision: D4906205

Pulled By: jessesquires

fbshipit-source-id: b24e187dcc16fda2305804add4129da60197e86c
2017-04-18 08:47:42 -07:00
James Sherlock
df0e538119 Added NS_UNAVAILABLE to new/init
Summary:
Not sure what was expected for a "designated initialiser" feel free to school me and I'll do it!

(Also just had to google difference between + and - in ObjC)

Issue fixed: #654, #652
Closes https://github.com/Instagram/IGListKit/pull/662

Differential Revision: D4900092

Pulled By: jessesquires

fbshipit-source-id: 7858065ecc88a9ad7cb064811f0180d0f84f174d
2017-04-17 15:01:54 -07:00
Ryan Nystrom
63ed50c23c Update FAQ with more Questions
Summary:
Been compiling a list of more questions, adding them to the FAQ. Note that this includes some 3.0-only stuff.
Closes https://github.com/Instagram/IGListKit/pull/660

Differential Revision: D4899942

Pulled By: jessesquires

fbshipit-source-id: c19b2f226285ab9e2734a677ccacd98d33755cbc
2017-04-17 12:18:00 -07:00
James Sherlock
c736a37b5f Fix storyboard example app, Fix example build issue
Summary:
Collection view layout has "user defined runtime attributes" which were left over from the old IG grid layout. I've removed them as we don't use them any more.

Also I couldn't build the project because of the map function in the dependency injection example, so changed that slightly to make it run (tested that and still works)

Issue fixed: #656
Closes https://github.com/Instagram/IGListKit/pull/658

Differential Revision: D4899250

Pulled By: jessesquires

fbshipit-source-id: 04f15399732ce07c6026d07801e228de5d5e47ab
2017-04-17 11:02:36 -07:00
James Sherlock
049b463d2c Replaced placeholders in changelog
Summary:
Travis is complaining about dead links, so this fixes the one in changelog but there's still a broken link in guides to the core data guide which isn't published yet (via Jazzy).

Should we regen docs but reset everything which isn't the guides? Or are we happy to just leave that one until we release 3.0?
Closes https://github.com/Instagram/IGListKit/pull/649

Differential Revision: D4898644

Pulled By: jessesquires

fbshipit-source-id: d1524ef521931471409021ceb23bea7853628294
2017-04-17 10:44:32 -07:00
yuzushioh@gmail.com
74b84da4c3 Added a project link for IGListKit with RxSwift section in the guide
Summary:
I updated IGListKit with RxSwift section in the guide. related to #619
Closes https://github.com/Instagram/IGListKit/pull/648

Differential Revision: D4898650

Pulled By: jessesquires

fbshipit-source-id: 7c3a6913003efe5595155da5c8ca9ba640d1c5cc
2017-04-17 10:44:32 -07:00
heshamsalman
3c41fb15e5 Uniqueness assert of section controllers, close #567
Summary:
Issue fixed: #567

- [ ] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [ ] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/639

Differential Revision: D4878842

Pulled By: jessesquires

fbshipit-source-id: 664648cf4f5e28d0a6af308e30151cb66863962c
2017-04-12 16:15:55 -07:00
Jesse Squires
281e6416b2 Update README.md
Summary:
Adding some more "Getting started" resources
Closes https://github.com/Instagram/IGListKit/pull/640

Differential Revision: D4878807

Pulled By: jessesquires

fbshipit-source-id: d063242af31c91244278c997018d860c88f287ab
2017-04-12 15:04:29 -07:00
Jesse Squires
a415ef5552 Prevent a crash when inserting the same index twice, re-open of #616
Summary:
Original comment:

If you insert or delete into the same index twice **and** update your data source to reflect those changes, we will squash the insert/delete into a single update because we're using `NSSet` internally.

This becomes very apparent when multiple updates are coalesced.

Issue fixed: #483

- [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 added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
Closes https://github.com/Instagram/IGListKit/pull/634

Differential Revision: D4860479

Pulled By: jessesquires

fbshipit-source-id: 3aa271d90fca21b11201f62cefa8d7fbcef6930f
2017-04-11 15:02:13 -07:00
heshamsalman
6758355f0c Chore/variable accessibility, close #618
Summary:
Issue fixed: #618

- [ ] All tests pass. Demo project builds and runs.
- [ ] I added tests, an experiment, or detailed why my change isn't tested.
- [ ] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes.
- [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/master/.github/CONTRIBUTING.md)
Closes https://github.com/Instagram/IGListKit/pull/637

Differential Revision: D4869624

Pulled By: jessesquires

fbshipit-source-id: a9d5623dbb7a032691f3af5a2abf61adc3a42cd0
2017-04-11 13:46:41 -07:00
Jesse Squires
c49511fb4f Update .travis.yml
Summary:
Async tests seem to be consistently failing for these OS/device combinations.

 travis-ci + xcode voodoo 

See:
- https://travis-ci.org/Instagram/IGListKit/builds/220759328
- https://travis-ci.org/Instagram/IGListKit/builds/220614176
- https://travis-ci.org/Instagram/IGListKit/builds/221005278
- https://travis-ci.org/Instagram/IGListKit/builds/218269854
Closes https://github.com/Instagram/IGListKit/pull/638

Differential Revision: D4869620

Pulled By: jessesquires

fbshipit-source-id: 19f93c55bb645cdd138004b7e1ceb59c0f8ad349
2017-04-11 13:46:40 -07:00
Adlai Holler
4a5fd32ad8 Add Nullability to a Few Headers
Summary:
I saw some `!` in the Swift example that we can remove 🙂

Same as I mentioned in my last PR, the iOS examples project can't be opened on my machine, but I believe I updated the examples to be compatible.
Closes https://github.com/Instagram/IGListKit/pull/626

Differential Revision: D4860165

Pulled By: jessesquires

fbshipit-source-id: 74bcac8fc759da8105e658901c3df9e71afc609f
2017-04-10 10:18:20 -07:00
Jesse Squires
d930862c5f updates to README.md file
Summary:
A section added called Examples in the README file
Closes https://github.com/Instagram/IGListKit/pull/628

Differential Revision: D4860149

Pulled By: jessesquires

fbshipit-source-id: c3bad98a827f020b98bf81ada8d678ae8c697329
2017-04-10 09:34:21 -07:00