Open kevinvangelder opened 5 years ago
I think this should fix it. https://github.com/infinitered/solidarity-react-native/pull/30
This was my bad. Upgraded envinfo in solidarity but not its usage in this plugin. 🤦♂️
@tabrindle @kevinvangelder I'm still experiencing this issue with the following deps:
"solidarity": "^2.3.1",
"solidarity-react-native": "^2.1.2"
I'm also still getting this.
"solidarity": "^2.3.1",
"solidarity-react-native": "^2.1.2"
I've got my android sdk path setup in ./android/local.properties
the Android section of my snapshot is reading as:
"Android": [
{
"rule": "env",
"variable": "ANDROID_HOME",
"error": "The ANDROID_HOME environment variable must be set to your local SDK. Refer to getting started docs for help."
},
{
"rule": "custom",
"plugin": "React Native",
"name": "androidVersion"
}
],
Solidarity is spitting out this error:
✖ The ANDROID_HOME environment variable must be set to your local SDK. Refer to getting started docs for help.
✖ ./android/app/build.gradle not found
Solidarity checks failed.
error Command failed with exit code 1.
If I remove the Android section from the snapshot, everything passes, but that's obviously a less than ideal solution.
Sorry for the delay on this. I'll be trying to take a look at this whenever I can.
I don't think that the current code actually adheres to local.properties
, but it wouldn't be hard to add it if not. Would you be interested in adding that code? I'd be happy to assist you. If not, I'll keep it on my TODO, and update when I can take care of it.
@GantMan sure, I can do that. Would you mind helping me get started by pointing to where the logic is, or a general idea on what needs to be done?
Yup!
So in solidarity-react-native
located here: https://github.com/infinitered/solidarity-react-native
All the code for checking is here: https://github.com/infinitered/solidarity-react-native/blob/master/extensions/react-native.js
I hope this helps. Feel free to ask questions as you get started.
As @tabrindle mentioned above you can change following lines of code in directory
1st file to modify
node_module/solidarity-react-native/react-native.js
add await before getAndroidEnvData
check: async (rule, context) => {
const {
androidAppGradle,
availableApiVersions,
availableBuildToolsVersions,
projectApiVersion,
projectBuildToolsVersion
} = await getAndroidEnvData(context);
2nd place to add in same file
report: async (rule, context, report) => {
const { print } = context;
const { colors } = print;
const {
androidAppGradle,
availableApiVersions,
availableBuildToolsVersions,
projectApiVersion,
projectBuildToolsVersion
} = await getAndroidEnvData(context);
2nd File to Modify
node_module/solidarity-react-native/helpers/getAndroidEnvData.js changes these lines
availableApiVersions: androidData["API Levels"], availableBuildToolsVersions: androidData["Build Tools"],
like following
availableApiVersions: androidData[1]["API Levels"], availableBuildToolsVersions: androidData[1]["Build Tools"],
Thanks @kaushal9678. Should we merge this ?
Will this be fixed?
Would you like to send the PR? As long as it passes the tests, we can merge.
Thanks, this fix works for me as well 👍🏼
Solidarity & solidarity-react-native are installed globally.
solidarity snapshot
worked fine, butsolidarity
returns: