Uh oh!
There was an error while loading. Please reload this page.
feat: Move virtualized lists to @react-native/virtualized-lists - #35406
feat: Move virtualized lists to @react-native/virtualized-lists#35406gabrieldonadel wants to merge 17 commits into
Conversation
c2dfa4a to
b942261Compare
Base commit: 1fef376 |
Base commit: 621969b |
pull-bot
commented
Nov 20, 2022
PR build artifact for b9422618deebaf5478a5391246807d6cb85c4966 is ready. |
pull-bot
commented
Nov 20, 2022
PR build artifact for 59fea619e6fed4c8af5207e8aab122415f057bf6 is ready. |
gabrieldonadel
commented
Nov 20, 2022
@cortinico and @necolas, any thoughts on how to set up |
hoxyq
commented
Nov 21, 2022
Right now I am using Verdaccio and publishing necessary packages to local proxy. You can check how I did it in this commit. I am currently working on first phase of monorepo project #34692, this should unblock you after we will merge my proposed changes |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Left some comments. Would also like some feedback from @necolas, but my sense is that we shouldn't extract to a separate package if both packages are still relying on each others private APIs. The package would not yet be reusable (even across different versions of RN), and the boundaries between the two are not enforced.
Copying the set of internal transitive dependencies to VirtualizedList so it doesn't rely on the internals seems like a potential start for migrating though, and it would allow us to shim between different platforms more easily in the VirtualizedList package.
1f3dec5 to
d689da0Comparepull-bot
commented
Nov 22, 2022
PR build artifact for d689da0f4bccfd4888d98d721656fb9a23cdf588 is ready. |
pull-bot
commented
Nov 22, 2022
PR build artifact for 518cf0332a47fe9107fa96f09b1a20e9afdd8578 is ready. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
dd308f1 to
536e6a0Compare536e6a0 to
b52ee19Comparegabrieldonadel
commented
Jan 26, 2023
@NickGerleman any updates on this? I know that this impacts a bunch of internal Meta code that references old VirtualizedList paths, but I was wondering, is there something I can help with? |
NickGerleman
commented
Jan 26, 2023
I haven't been able to dedicate much time to pushing this internally. I spent a day a while back trying to find everywhere the previous structure was relied on, and I don't think we could safely ship the refactoring without staging it a bit more. Like, leaving old files around which forward to the new ones, so we can change product code more piecemeal. It looked like a weekish of work dedicated to internal cleanup. Because it's all Meta code, we will need someone on our side to do the work, and figure out how to stage. @hoxyq has worked through some similar headaches with lean core modules, and also has been looking at monorepo work. Might have a take on if there is a way we could stage this, where we could move to this structure in OSS without ripping up too much code out there. |
Will take a look at it next week |
facebook-github-bot
commented
Jan 26, 2023
@hoxyq has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator. |
necolas
commented
Jan 26, 2023
Isn't this what the PR does now? Maybe I missed something? |
gabrieldonadel
commented
Jan 26, 2023
I think the problem is that there are internal projects importing from specific internal paths like |
NickGerleman
commented
Jan 26, 2023
Yeah, amazingly enough, there were even multiple cases of product code including the VirtualizedList utils helper to get a I remember @lunaleaps was looking at what it would take to enforce the public boundaries more. |
hoxyq
commented
Feb 3, 2023
So I've made some changes both internally and in frames of this PR (exported in #36035), this is now accepted by @NickGerleman Planning to merge this PR early next week 🤞 Meanwhile you can grep the difference between this PR and #36035 to check if everything is expected There should be not that much, mostly re-exporting something, most of the work was made on the internal side |
gabrieldonadel
commented
Feb 5, 2023
Thanks for awesome work @hoxyq! Should I cherry-pick your commit to this PR? |
hoxyq
commented
Feb 5, 2023
No, this will be automatically resolved when I will merge internal changes, your commit will be merged in main branch together with mine and this PR will be closed and marked as merged |
Summary
This PR moves
VirtualizedList,VirtualizedSectionList, and its files to a separate package called@react-native/virtualized-listslocated underpackages/virtualized-listsas proposed on #35263Changelog
[General] [Changed] - Move virtualized lists to @react-native/virtualized-lists package
Test Plan
FlatListorSectionListpageScreen.Recording.2022-11-19.at.22.46.13.mov