Skip to content
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

[iOS] Update podspec to use install_modules_dependencies #1920

Merged
merged 4 commits into from
Oct 17, 2023

Conversation

cipolleschi
Copy link
Contributor

@cipolleschi cipolleschi commented Oct 16, 2023

This change updates the RNScreens.podspec to consume the install_modules_dependencies function provided by React Native to configure the pods dependencies.
Thanks to using this function, whenever we update the function in React Native, the library will automatically benefit from it.
This will make the library more future proof and more resilient to changes in React Native

This allow RNScreens to work also with frameworks, as before the change, it failed to build when use_frameworks! was set in RN 0.72.x

Test plan

Tested locally:

Before changes

  1. Created a new app with npx react-native init RNFrameworks --version latest --skip-install
  2. cd RNFrameworks
  3. yarn add react-native-screens
  4. yarn install
  5. cd ios
  6. NO_FLIPPER=1 USE_FRAMEWORKS=static RCT_NEW_ARCH_ENABLED=1 bundle exec pod install
  7. open RNFrameworks
  8. build and run and observe it failing because it can't find files in react/debug

Apply the changes to local node_modules's RNScreens.podspec changes

  1. Reinstall pods NO_FLIPPER=1 USE_FRAMEWORKS=static RCT_NEW_ARCH_ENABLED=1 bundle exec pod install
  2. open RNFrameworks
  3. build and run and observe it succeeding

Copy link
Member

@WoLewicki WoLewicki left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀 @tboba @kkafar please test it on newer and older versions with new arch enabled/disabled and I think we are ready to merge it then! Thanks for the contribution @cipolleschi ❤️

@cipolleschi
Copy link
Contributor Author

hum... your CI is red. should I make it build with the Example app that is inside the library?

@kkafar
Copy link
Member

kkafar commented Oct 17, 2023

Hey @cipolleschi, thanks for your contribution!

Yeah, the workflows are green on main --> most likely the changes you proposed are causing the builds to fail.

From first glance at logs it looks like some header files are invisible (I believe you should have access to the CI output?)

@cipolleschi
Copy link
Contributor Author

yep yep, I also reproed it locally.

@cipolleschi
Copy link
Contributor Author

Found the issue! I was adding the common subspec also in the Old Architecture and, of course, some pods were missing. 😅

@kkafar
Copy link
Member

kkafar commented Oct 17, 2023

Glad to hear, thank you! I've approved the workflows

@kkafar
Copy link
Member

kkafar commented Oct 17, 2023

Ok, looks like we're good to go then!

@kkafar kkafar merged commit c3d1ae8 into software-mansion:main Oct 17, 2023
5 checks passed
renovate bot added a commit to valora-inc/wallet that referenced this pull request Nov 2, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[react-native-screens](https://togithub.com/software-mansion/react-native-screens)
| [`^3.25.0` ->
`^3.26.0`](https://renovatebot.com/diffs/npm/react-native-screens/3.25.0/3.26.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/react-native-screens/3.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-native-screens/3.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-native-screens/3.25.0/3.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-native-screens/3.25.0/3.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>software-mansion/react-native-screens
(react-native-screens)</summary>

###
[`v3.26.0`](https://togithub.com/software-mansion/react-native-screens/releases/tag/3.26.0)

[Compare
Source](https://togithub.com/software-mansion/react-native-screens/compare/3.25.0...3.26.0)

Minor release adding new useAnimatedHeaderHeight and
useReanimatedHeaderHeight hooks, providing fixes for search bar and
introducing internal changes. *Please note that new hooks introduced in
this release are fully functional on Paper, on Fabric there are few edge
cases we are still working on*.

#### What's Changed

#### 🐛 Bug fixes

- Change implementation of `headerConfig` prop on Android by
[@&#8203;tboba](https://togithub.com/tboba) in
[software-mansion/react-native-screens#1883
- Change elements visibility on search bar open by
[@&#8203;tboba](https://togithub.com/tboba) in
[software-mansion/react-native-screens#1903
- Fix positioning of large header and search bar by
[@&#8203;tboba](https://togithub.com/tboba) in
[software-mansion/react-native-screens#1895
- Change implementation of calculating status bar, refactor methods used
on header height change by [@&#8203;tboba](https://togithub.com/tboba)
in
[software-mansion/react-native-screens#1917
- Fix calculating header height when changing status/action bar
visibility by [@&#8203;tboba](https://togithub.com/tboba) in
[software-mansion/react-native-screens#1922
- Allow Reanimated Screen to check large header by
[@&#8203;tboba](https://togithub.com/tboba) in
[software-mansion/react-native-screens#1915
- Fix issue when emptying nav stack on Windows by
[@&#8203;chrisglein](https://togithub.com/chrisglein) in
[software-mansion/react-native-screens#1890
- Update podspec to use install_modules_dependencies by
[@&#8203;cipolleschi](https://togithub.com/cipolleschi) in
[software-mansion/react-native-screens#1920
- Remove MaxPerm args from JVM invocation by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1888

#### 👍 Improvements

- Calculate values of useHeaderHeight natively by
[@&#8203;tboba](https://togithub.com/tboba) in
[software-mansion/react-native-screens#1802
- Allow for different fragment types inside ScreenContainer by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1887
- Add focused states on page transitions by
[@&#8203;tboba](https://togithub.com/tboba) in
[software-mansion/react-native-screens#1894

#### 🔢 Miscellaneous

- **Create FUNDING.yml by
[@&#8203;aleqsio](https://togithub.com/aleqsio) in
[software-mansion/react-native-screens#1886
- Migrate from deprecated `RCTEventEmitter` by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1867
- Use `require` syntax for resolution of all native components by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1909
- Run Android e2e with JDK 17 by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1892
- Put timelimit on execution of each workflow by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1893
- Trigger e2e tests on JS-only changes by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1910
- Update deprecated expo install instructions to `npx expo install` by
[@&#8203;GabrieldosSantosOliveira](https://togithub.com/GabrieldosSantosOliveira)
in
[software-mansion/react-native-screens#1899
- Bump activesupport from 6.1.7.3 to 7.0.7.2 in /TestsExample by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[software-mansion/react-native-screens#1877
- Update deps & RN in example apps after release by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1878
- Migrate `Example` app & e2e tests to RN 0.72.4 by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1880
- Bump library deps to recent versions (including RN) by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1881
- Bump library native Android deps & config by
[@&#8203;kkafar](https://togithub.com/kkafar) in
[software-mansion/react-native-screens#1891

#### New Contributors

- [@&#8203;chrisglein](https://togithub.com/chrisglein) made their first
contribution in
[software-mansion/react-native-screens#1890
-
[@&#8203;GabrieldosSantosOliveira](https://togithub.com/GabrieldosSantosOliveira)
made their first contribution in
[software-mansion/react-native-screens#1899
- [@&#8203;cipolleschi](https://togithub.com/cipolleschi) made their
first contribution in
[software-mansion/react-native-screens#1920

**Full Changelog**:
software-mansion/react-native-screens@3.25.0...3.26.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 5pm,every weekend" in timezone
America/Los_Angeles, Automerge - "after 5pm,every weekend" in timezone
America/Los_Angeles.

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/valora-inc/wallet).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xOS4yIiwidXBkYXRlZEluVmVyIjoiMzcuMTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: valora-bot <valorabot@valoraapp.com>
Co-authored-by: Silas Boyd-Wickizer <silasbw@gmail.com>
Co-authored-by: Silas Boyd-Wickizer <silas@valora.xyz>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants