oceanbit / GitShark

🦈 A Git client to surf through your repos on mobile
https://gitshark.dev
Mozilla Public License 2.0
137 stars 9 forks source link

[BUG] Crashes trying to open imported repo. #93

Closed l3laze closed 3 years ago

l3laze commented 3 years ago

Describe the bug App crashes trying to open an imported repo.

To Reproduce Steps to reproduce the behavior:

  1. Import a repo.
  2. Try to open it.
  3. Wait for error.
  4. See error.

Error code

**There was an error that occurred while loading staged and unstaged files:**: Error - No virtual method keySet()Ljava/util/concurrent/ConcurrentHashMap$KeySetView; in class Ljava/util/concurrent/ConcurrentHashMap; or its super classes (declaration of 'java.util.concurrent.ConcurrentHashMap' appears in /system/framework/core-oj.jar) index.android.bundle:34:1105 index.android.bundle:985:311 p@index.android.bundle:281:423 index.android.bundle:281:1724 p@index.android.bundle:281:423 o@index.android.bundle:281:900 index.android.bundle:281:1257 c@index.android.bundle:89:205 X@index.android.bundle:89:1586 _@index.android.bundle:89:484 h@index.android.bundle:281:1241 _invoke@index.android.bundle:281:1293 async@index.android.bundle:281:3688 getRepoStatusAndroid@index.android.bundle:985:198 index.android.bundle:984:442 p@index.android.bundle:281:423 index.android.bundle:281:1724 p@index.android.bundle:281:423 o@index.android.bundle:281:900 index.android.bundle:281:1257 c@index.android.bundle:89:205 X@index.android.bundle:89:1586 _@index.android.bundle:89:484 h@index.android.bundle:281:1241 _invoke@index.android.bundle:281:1293 async@index.android.bundle:281:3688 getRepoStatus@index.android.bundle:984:232 index.android.bundle:941:695 p@index.android.bundle:281:423 index.android.bundle:281:1724 p@index.android.bundle:281:423 o@index.android.bundle:281:900 index.android.bundle:281:1257 c@index.android.bundle:89:205 X@index.android.bundle:89:1586 _@index.android.bundle:89:484 h@index.android.bundle:281:1241 _invoke@index.android.bundle:281:1293 async@index.android.bundle:281:3688 index.android.bundle:941:363 index.android.bundle:646:9004 index.android.bundle:646:9211 index.android.bundle:646:9272 index.android.bundle:646:9385 index.android.bundle:1632:583 index.android.bundle:1632:643 $a@index.android.bundle:78:83305 unstable_runWithPriority@index.android.bundle:143:3807 Ia@index.android.bundle:78:75830 Ia@[native code] index.android.bundle:78:26327 unstable_runWithPriority@index.android.bundle:143:3807 ht@index.android.bundle:78:26274 pt@index.android.bundle:78:26209 ke@index.android.bundle:78:93330 _e@index.android.bundle:78:12980 notify@index.android.bundle:1004:860 notifyNestedSubs@index.android.bundle:1004:426 handleChangeWrapper@index.android.bundle:1004:501 [native code] j@index.android.bundle:649:5945 v@index.android.bundle:646:8731 f@index.android.bundle:89:155 index.android.bundle:89:864 p@index.android.bundle:95:498 b@index.android.bundle:95:896 callImmediates@index.android.bundle:95:2991 value@index.android.bundle:42:2780 index.android.bundle:42:938 value@index.android.bundle:42:2460 value@index.android.bundle:42:908 value@[native code] value@[native code]

Screenshots

Smartphone (please complete the following information):

Additional context

l3laze commented 3 years ago

Wow... That really should just draft it and not post the issue immediately.

l3laze commented 3 years ago

Also crashed on this device just trying to clone a repo...lol.

It did manage to clone a repo on my Android 10 device, but I don't code there.

I've refunded for now, but once the app reaches a stable state I would be willing to try again. It looks really nice, it just needs a lot of some work.

Edit: a lot of -> some

crutchcorn commented 3 years ago

Totally understand the want to draft and not publish - my fear was that people would get as far as pushing the button but no further. IMO a stacktrace without further info is more helpful than no stacktrace and not knowing where the issue is coming from

Hmm... I admittedly haven't tested in Android 8 for a while (I did some tests early on but we've refactored a lot since then). I suspect we're unintentionally relying on something with a higher SDK requirement without knowing it. I've got a wild coming up, but this issue is our highest priority right now

You'd mentioned the app needs a lot of work - is there anything you'd noticed on your Android 10 device that you'd like to call out?

EDIT: Seems like it's an issue of JGit, which makes sense why it wasn't caught before. We did a silent upgrade of JGit without testing on older hardware :/

https://www.eclipse.org/forums/index.php?t=msg&th=1096721&goto=1801925&#msg_1801925

l3laze commented 3 years ago

Ah, that makes sense, especially after looking at pricing for sentry.io and competitors.

Good point, "a lot" was probably not the right term there. Edited above.

The only thing I can remember now is that after pressing to perform an action most of the app flashed white before getting filled with whatever it was loading. With the loading error it's a lot more obvious because it gets stuck like that, and it happens each time "Try again" is pressed.

Sorry, I've been so busy recently with a sick dog I'm too tired for retaining memories, lol.

crutchcorn commented 3 years ago

@l3laze are you able to send me an email at (my username)@gmail.com ?

I believe this issue has been fixed (as I was able to reproduce, then solve) as-of c8fb93af86393c82a021a6e7e766dcec89362360, but want to send you an APK to ensure it's fixed on your end.

l3laze commented 3 years ago

Yes, just sent you a hello (similar name with _, yahoo).

crutchcorn commented 3 years ago

@l3laze and I have been talking via email. It seems that this issue can be closed (feel free to reopen if I've misunderstood 😊), but there are other bugs that @l3laze found that will be made into new GitHub issues.

This fix is not published on the app store yet, I will be making a build to publish within the next few days