Running Development Branches or Forked Versions react-native-firebase in Applications #5944
-
I was just wondering how I can go about testing out non-published versions of react-native-firebase in my organization's application? A little background information: My work wants to start tracking downloads from paid marketing campaigns, so we want to use the new utmParameters feature of the dynamic-links module to do this in our app. However, this new feature doesn't seem to work on Android, so I think there might be a bug in react-native-firebase for Android which will need to be fixed in order to get this working. My plan was to try and fork react-native-firebase and start working on a fix, but I wasn't able to get my fork to work. So my main question is: how would you guys go about tackling a problem like this? If you needed to test out (or even use) an unofficial build of react-native-firebase, how would you go about doing this? If there's a standard or best way to go about doing this, please let me know and I can add it to the docs for future reference. Any help would be appreciated, thanks! P.S. I was able to get the monorepo by itself up and running, and could run tests, etc. I just couldn't get an alternative version up and running in a separate application. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hey 👋 - yes, being a monorepo makes this kind of uncomfortable. I'm not aware of any really good developer experiences. Here's what I've done personally:
I implemented the patch-package generator specifically to address this issue and make the 1 + 2 cases somewhat comfortable. Hopefully something in here works for you? Would love collaborate on a repair of anything if the UTM params aren't working. Obviously, they should work :-) Cheers |
Beta Was this translation helpful? Give feedback.
Hey 👋 - yes, being a monorepo makes this kind of uncomfortable. I'm not aware of any really good developer experiences.
Here's what I've done personally:
I've just worked directly in node_modules using https://github.com/ds300/patch-package as my "version control" for the changes. This...actually works really well :-). In practice it is not gross at all, just a different way of thinking about how you're mashing the code around and what a patch or version control is. This is great for small items. (generate clean patches via
npx patch-package @react-native-firebase/dynamic-links
(or whatever) after you docd android && ./gradlew clean
)I've worked directly with our e2e setup when I hav…