dominicstop / react-native-ios-context-menu

A react-native component to use context menu's (UIMenu) on iOS 13/14+
MIT License
572 stars 29 forks source link

RN 0.73 compatibility for Android #68

Closed fobos531 closed 1 year ago

fobos531 commented 1 year ago

@dominicstop

See: https://github.com/react-native-community/discussions-and-proposals/issues/671#issuecomment-1597386954

nandorojo commented 1 year ago

We're migrating this to expo modules so that should hopefully address this.

fobos531 commented 1 year ago

We're migrating this to expo modules so that should hopefully address this.

https://github.com/dominicstop/react-native-ios-context-menu/blob/master/android/build.gradle#L65

Yep, great stuff! Best of luck with the migration, looking forward to it! Closing this one until further notice.

SudoPlz commented 10 months ago

@nandorojo is there an article or a comment anywhere in this repo that discusses the reasons behind depending on expo modules were?

We're not using expo in our react-native project and I'm wondering if it's worth the overhead of dealing with expo modules since the only library that requires it is this one.

Thanks for all your great work. 🙏

nandorojo commented 10 months ago

Hey, there are a number of reasons.

TLDR, updating native libraries without expo is so annoying and hard that most libraries go entirely unmaintained.

Expo made it super easy to support the new/old architectures together and use JSI, all while writing Swift directly.

I understand that not everyone has expo installed; however, it's becoming increasingly easier for a vanilla RN app to simply install expo-modules into their app in order to use third party modules.

Ultimately, the maintenance burden of spending days working on config files and dealing with React Native's unreasonable breaking changes from one update to another just isn't worth it.

Conversely, working with expo modules makes a library actually maintainable, and updating RN versions becomes easy.

SudoPlz commented 10 months ago

@nandorojo got it, I appreciate your quick response, that makes sense. Thank you 🙏