Skip to content
This repository has been archived by the owner on Apr 25, 2023. It is now read-only.

Move back to canonical isomorphic-git #36

Closed
crutchcorn opened this issue Jul 23, 2020 · 5 comments
Closed

Move back to canonical isomorphic-git #36

crutchcorn opened this issue Jul 23, 2020 · 5 comments
Labels
blocked We're blocked upstream on a dependency we rely on dependencies Pull requests that update a dependency file

Comments

@crutchcorn
Copy link
Member

Currently, we have migrated to using a fork of isomorphic-git with the build artifacts published to a branch. This is due to the lack of the following PRs being merged:

We're currently waiting on these being merged upstream before we're able to move back to stable

@crutchcorn crutchcorn added blocked We're blocked upstream on a dependency we rely on dependencies Pull requests that update a dependency file labels Jul 23, 2020
@chmac
Copy link

chmac commented Dec 10, 2020

@crutchcorn The second PR of yours was merged, but unfortunately into master and not main, so I opened a new PR to copy that and 1 other change into main. isomorphic-git/isomorphic-git#1270 Unfortunately it hasn't been merged yet.

As an aside, I'm using patch-package to fix the issue in my repo.

@crutchcorn
Copy link
Member Author

@chmac I honestly have no idea how I missed this comment from you. I appreciate you opening a new PR to migrate those things for us!

FWIW, instead of using patch-package (which I've used for other scenarios), we've simply forked the repo and am using a copy from there:

https://github.com/oceanbit-dev/GitShark/blob/main/package.json#L43

Also worth noting: We've migrated away from isomorphic-git in favor of native code due to OOM issues we ran into

@chmac
Copy link

chmac commented Mar 9, 2021

@crutchcorn Ahh yes, I see. You forked the package, then presumably you run yarn build in that project and save that into the build branch. Nice strategy. I like the failsafeness of patch package, in that it's less likely I forget to build, etc. But building to a branch is a nice strategy that I hadn't considered, thanks for the tip.

Any plans to extract your git stuff into a separate package. I'm quite heavily invested in isomorphic-git in react-native, and reading about your memory problems was quite worrying! Would be great to see a react-native friendly git implementation out there.

@crutchcorn
Copy link
Member Author

Actually, I'd be happy to migrate my Git codebase to a dedicated RN package once we have more work done on it. You can see the work I've done on the Android side (which is stable for my current usage):

https://github.com/oceanbit/GitShark/tree/main/android/app/src/main/java/dev/oceanbit/gitshark/Git

The work on Android is based off of JGit with some additional usage

But I am also working on iOS versions right now, based on Objective-Git:

https://github.com/oceanbit/GitShark/blob/main/ios/GitModule.m

(I have another few branches that are working on adding more features)

I'd love to talk with you more about what you're using Git for with React Native!

Would you be willing to drop me a line on Twitter: https://twitter.com/crutchcorn

Or, if you'd rather, I'm also on Discord via a coding community I maintain: https://discord.gg/FMcvc6T

I'd love to see ways that we can collaborate, share some of the stories I've run into trying to get everything working, see what your project is, etc! :D

@crutchcorn
Copy link
Member Author

I'm going to close this issue, as I'm realizing that migration to upstream isomorphic-git isn't realistic for our project and we'll likely just replace usage of isomorphic-git in our codebase entirely.

That said, @chmac please don't feel like you can't comment more here (or, like I'd mentioned, joining one of those links to talk more in a more reflective real-time environment)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
blocked We're blocked upstream on a dependency we rely on dependencies Pull requests that update a dependency file
Projects
None yet
Development

No branches or pull requests

2 participants