-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
feat: New architecture support #4574
Conversation
7283aab
to
07e8796
Compare
07e8796
to
5bbdbbc
Compare
Thanks for testing my changes 🙂 First issue is mentioned in "known issues" section in PR's description. I described what's the problem. I think we can come back to it later to figure out some kind of workaround after releasing current changes since this regression is not strictly related to the Paper. When it comes to the second issue, there's an existing PR(#4497) that fixes it, so I decided to leave it as it is and review & test the mentioned PR once we merge this PR. |
I'm seeing an extra ripple effect and it is shown at the wrong place extra_ripple_wrong_place.mp4 |
On Android the CVV text input that should be small, they are filling the width and on focus they shrink textinput_should_be_small.mp4 |
On web the Fab is all the way to the bottom, and it has some visual bugs paper_web_fab.mp4 |
[Web] Listitem I can't click checkboxes or switches paper_web_listItem_noClick.mp4 |
Button color on loading state is also not correct please check that issue. |
Little update:iOS:
Android:
Web:
Help is more than welcomed, so if someone wants to work on something from the list above feel free to do that so and just leave a comment to let others be on the same page. |
The issue of the disabled button disappeared after using the latest version of the Expo Go & expo router, if the issue reappears I will give more detailed repro |
.circleci/config.yml
Outdated
yarn --cwd example --frozen-lockfile | ||
yarn --cwd docs --frozen-lockfile | ||
yarn --frozen-lockfile |
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.
--frozen-lockfile
is for yarn 1, --immutable
is for berry
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.
Thanks! Missed that due to backward compatibility. Updated
.circleci/config.yml
Outdated
yarn install --cwd docs --frozen-lockfile | ||
yarn install --frozen-lockfile | ||
sudo corepack enable | ||
yarn set version berry |
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.
CI shouldn't call set version
. It should be already set in the package.json
. CI should use the same package manager everyone else would use when they run yarn
directly in the project.
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.
It is, but currently circleCI image is used and they provide it with yarn1 only, so I had to do it that way to force usage of newer version. I'm thinking about updating the CI config and getting away from circleCI image that seem a bit deprecated
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.
@BogiKay it will be automatically handled if setup like this https://github.com/callstack/react-native-paper/pull/4574/files#r1886705407
But also enabling corepack should already mean that it would use correct package manager from package.json
and install it - so there shouldn't need to be an extra step for setting version.
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.
Extra step setting version explicitly removed. Thanks!
const styles = StyleSheet.create({ | ||
stackWrapper: { | ||
flex: 1, | ||
...Platform.select({ | ||
web: { | ||
overflow: 'scroll', | ||
}, | ||
}), | ||
}, | ||
}); |
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.
Is React Navigation not working on Web? This shouldn't be needed
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.
Scrolling doesn't work without these changes. If I remember correctly it's caused by react-native-screens
changes
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.
It could've something to do with the styles in here that differ from default expo setup
https://github.com/callstack/react-native-paper/blob/main/example/public/index.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.
Tried the default ones from expo and it didn't help. I investigated that in the past and the breaking change is somewhere within components provided by navigation stack
src/components/Button/Button.tsx
Outdated
@@ -331,7 +337,7 @@ const Button = ( | |||
buttonStyle, | |||
style, | |||
!isV3 && !disabled && { elevation }, | |||
] as ViewStyle | |||
] as StyleProp<ViewStyle> |
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.
] as StyleProp<ViewStyle> | |
] satisfies StyleProp<ViewStyle> |
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.
done
Co-authored-by: Satyajit Sahoo <[email protected]>
fc35c95
to
dc6c246
Compare
7fa22ce
to
601fc70
Compare
Found an issue with |
Thanks for catching it. Issue solved 👍 |
Gave it another round, and LGTM |
Motivation
Main motivation is to make Paper great again by supporting new architecture, updating crucial deps and fixing as many as possible issues that occur when new-arch is enabled.
Main changes:
Known issues:
Related issue
#4140
#4544
#4555
#4559
#4520
#4552
Test plan
We need to proceed with general regression testing using new and old architecture for all supported platforms.
Pay extra attention when testing
Menu
andModal
components.