react-native-documents / document-picker

Document Picker for React Native
https://react-native-documents.github.io/
MIT License
1.33k stars 434 forks source link

chore(testapp): bump RNTA to latest 3.x #705

Open gabrieldonadel opened 4 months ago

gabrieldonadel commented 4 months ago

Summary

In order to test bridgeless mode compatibility using react-native-test-app you must be use version 3.1.0 or greater, so this PR bumps RNTA to latest 3.x. Changes were based on https://github.com/react-native-menu/menu/pull/712

Test Plan

 yarn bootstrap
 yarn example start
 yarn example android
 yarn example ios

What's required for testing (prerequisites)?

An iOS device or Simulator and an Android device or Emulator

image

Compatibility

OS Implemented
iOS
Android

Checklist

vonovak commented 4 months ago

Hello @gabrieldonadel thanks for the PR! Let me note that I've done the same kind of changes already as part of https://github.com/rnmods/react-native-document-picker/issues/603

In fact, they are already published as part of a full rewrite, albeit not in OSS. You can read more about it here https://react-native-documents.github.io/

I'm not sure yet about the maintenance of this module from my side, maybe I'll leave it up for the community.

I'm planning to record some video about the new package and then document it in this repo in the next few days. So, um, I'll review this PR if you want but down the line... would you be interested in maintaining it?

gabrieldonadel commented 3 months ago

Hi @vonovak, we're making an effort at Expo along with Meta and the React Native community to make sure that the most popular libraries, including this one, work with the new architecture on 0.74 using bridgeless mode.

From my testing, everything will work out of the box after https://github.com/facebook/react-native/pull/43351 gets included in 0.74 RC3. The only other change that might be necessary is replacing onCatalystInstanceDestroy with invalidate

Regarding the status of this library, I guess we could update the readme file, explaining that this library will no longer be maintained and that new features will be implemented in https://react-native-documents.github.io/?

vonovak commented 3 months ago

@gabrieldonadel thank you for your PR! When I was testing it, I noticed one thing (maybe that's my mistake so please let me know) - when I make changes to the TS files inside src, those changes are not picked up by metro.

This is because the example project has react-native-document-picker in its own node_modules as a dependency.

The developer experience I'm aiming for is that when I make changes in src I want to se them right away. Did I forget some part of the setup? (something with @rnx-kit/metro-config might be at play here)

Thank you