mikepenz / FastAdapter

The bullet proof, fast and easy to use adapter library, which minimizes developing time to a fraction...
https://mikepenz.dev
Apache License 2.0
3.84k stars 494 forks source link

Support for Android Paging 3 #913

Open RobbWatershed opened 4 years ago

RobbWatershed commented 4 years ago

https://developer.android.com/topic/libraries/architecture/paging/v3-overview

Not really an urgency as it is still in alpha phase, but definitely something to plan for the middle term imho.

RobbWatershed commented 3 years ago

FYI, Paging 3 stable has been released this week ! 🙃

https://developer.android.com/jetpack/androidx/releases/paging#3.0.0

RobbWatershed commented 3 years ago

@mikepenz is there any honest chance we're getting this, or is that help wanted tag an actual PR request to a fellow enlightened coder ?

Forgive me for insisting, but I have high hopes paging 3 will solve that nasty "out of bounds" issue I've been having with paging 2

https://issuetracker.google.com/issues/135628748#comment10

https://stackoverflow.com/questions/62860503/android-paging-library-index-out-of-bound-exception

(plus not supporting Paging 3 will probably be the slow death of FastAdapter in favour of younger libs that have been built with it... which would be really sad)

mikepenz commented 3 years ago

@RobbWatershed yes you are right, the help wanted flag indeed means that I would appreciate this being contributed by a fellow coder.

As you note slow death. Ultimately with the stable state of Compose, any adapter library is now deprecated on the long term. Compose's LazyList just functions very different compared to the RV. Also the official adapter for RV with the ConcatAdapter cloning some of the FastAdapters feature is also interesting.

As a result to those things, the library is now mainly in support mode to ensure existing apps won't have issues with it. Still happy though to take PRs to improve things, like paging as you noted.

RobbWatershed commented 3 years ago

@mikepenz thanks for the information ! I might give it a try myself, actually.

Before I start, from an architectural point of view, what would be the best way to do that in your opinion ?

mikepenz commented 3 years ago

@RobbWatershed I believe as paging 2 is kinda deprecated (and the dependency would still exist in older FastAdapter versions) the best approach will be to upgrade the paged extension to paging 3 and break compatibility.

People who still needs paging 2 can still get current FA versions which are stable

vladdovgal commented 11 months ago

Hi @mikepenz, @RobbWatershed Are there any updates on supporting Paging 3, or is it out of plans?

mikepenz commented 11 months ago

@vladdovgal it would be a great addition, however, time is currently very limited. It won't be anything I can work on.

Looking for contributors who may would want to contribute this expansion.

RobbWatershed commented 11 months ago

Good news is I've gotten way better at Kotlin since the moment I posted this issue

Not-so-good news is I have the same problem as Mike, i.e. available time + I don't know the inner workings / design of FastAdapter as well as the core team

=> Don't actively count on me, even if the chances of me contributing are still > 0 😉