unimodules install on React native hybrid app

I found this check:
if (new File(rootProject.projectDir.parentFile, ‘package.json’).exists()) {
apply from: project(":unimodules-core").file("…/unimodules-core.gradle")
} else {
throw new GradleException(
"‘unimodules-core.gradle’ was not found in the usual React Native dependency location. " +
“This package can only be used in such projects. Are you sure you’ve installed the dependencies properly?”)
}
in expo-file-system build.gradle file,
this check is wrong as hybrid apps can have react project anywhere.

is there any work around this?

can you explain how you are trying to structure your project and why?

I have an existing android project and inside that, we have added a submodule for all of React native codebase, only a few of the activities use react-native screens, the rest all are native flows.

So the structure is like this:

android
– React-Native
–Module1
–Module2

As to why we are doing this is because originally we had Android as a base project and react-native was added as a subfolder to it, since it was started as an experiment with react-native, later on with all the benefits of the react-native project was extracted out, since all configurations assumed by that point that react native folder is inside the Android project hence we continued with the structure(PS- it has been more than 3 years now running with this config).

that makes sense. if you want to open a pr or issue with a RFC for how to support this kind of project structure, it would be welcome!

I have not contributed to any open source project till now, I can submit a pr but will require a bit of help in discussing the solution first, would that be possible?
Also on the expo I am not able to raise issues on a specific sub package, is it that all issues are raised on the expo project only?

the best way to discuss would be in a pr - just take your best educated guess at what might be a good solution and then we can go from there.

issues and prs for every sub-package are all on the same repository, this is known as a “monorepo”