Pros and cons about high and low weapon stocking

This is meant to be more of an open discussion as I'd like to hear your thoughts about what setting is better for an AI and why.
So there is the MaxEquipment parameter that determines how many weapons of one kind are being stocked in the armory before any of these are sold from overproduction. You can store up to 50 weapons per armory and you'd always take a somewhat lower number than that and devide it by the number of weapon types that is build be the AI. An AI that produces 2 types of weapons could technically store up to 25 of each, but there would be no room to temporarily collect more weapons to be sold, so weapon production would stagnate until units are being recruited.
Importan thing to notice: choosing a high or low value should be representated in all castles (AIV) of the respective AI.

Now the main question is:
Is it worth adding a 2nd armory and increase the amount of stocked weapons?
Pros:

Less repurchase of weapons sold for space (increased gold efficiency)
Faster unit recruitment after an attack (no waiting time for a higher amount of equipment)
Possibility of loosing an empty armory instead of a filled one (chance of decreased bombardment vulnerability)

Cons:

(2nd Armory wood costs and replacement costs)

Additional space required (smaller castles possible)
Selling weapons gives gold for other purposes (increased flexibility)
Destroying a filled armory hurts the AI more (decreased average bombardment/fire vulnerability)
Only makes sense if the weapon production is high enough for a real overproduction
Too many unused goods (unused financial value)

MaxEquipment isnt the only parameter that is important, MaxResourceVariance also affects it I guess.
Just wanted to mention it , as nobody has written smth about it in the last two threads.
MaxEquipment can also be seen as MinEquipment, as the AI will only sell up to this amount of equipment.
Correct me if I am wrong.

Any parameters involving Min[something] basically means the AI is buying this object until they have reached the limit. E.g. MinApples = 10 means that the AI will buy apples until reaching 10 once they fall below that value.

What exactly is ResourceVariance? Always wondered what it was.
Also I've noticed with Max(something) fields, the AI will wait until they have 5 more than the max before selling. With MaxEquipment if you set it to 25, they will wait until 30 and then sell back to 25. This is evident with Frederick, I think his MaxEquipment is 20 but he doesn't sell excess weaponry until 25.

What exactly is ResourceVariance? Always wondered what it was.
Also I've noticed with Max(something) fields, the AI will wait until they have 5 more than the max before selling. With MaxEquipment if you set it to 25, they will wait until 30 and then sell back to 25. This is evident with Frederick, I think his MaxEquipment is 20 but he doesn't sell excess weaponry until 25.

I think you pretty much answered your own question. The variance value seems to be the amount of goods that can be stored on top of the max value before they are being sold back to maximum. So the AI doesn't need to constantly sell values of 1 or 2 for goods they are producing.

ResourceVariance refers to the maximum amount of different type of resources stored in the stockpile (without specifying which ones in particular)  unless they are set to be sold (in most cases this was used to have some ai keep pitch in the stockpile.  		MaxResourceOther	= 10 in this case determains how many of the "other" resources are kept in the stockpile at a time

Just some vanilla values:
MaxResourceVariance
Saladin: 2
All others: 4 or 5
MaxResourceOther
Marshal: 12
All others: 10, 15 or 20

I altered a few of my AIs so that they keep a lot of weapons in stock, because they have a defensive character. I want them to hold out in sieges for as long as possible.
But I also have altered some AIs to be more aggressively, so I made them only keep the absolute necessary.

Closed for low participation


Taylor/value type generators on fields

:tada: This PR is included in version 5.0.8 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[ISSUE] SwiftUI preview builds fail due to missing Foundation import

Describe the bug
In a Swift package, which depends on vgs-collect-ios, I cannot use SwiftUI previews. The preview build fails, because CharacterSet.decimalDigits cannot be found. CharacterSet is part of Foundation, which is not imported in the file VGSDateFormat.swift.
To Reproduce
Steps to reproduce the behavior:

Create Swift package with a SwiftUI view
Add dependency to vgs-collect-ios
Try to use SwiftUI preview
See error

Expected behavior
The preview build should not fail.
Screenshots

Environment (please complete the following information):

SDK Version: latest master
iOS Version: [e.g. iOS 13.1+]
Xcode Version: 14.3.1
Device: e.g. iPhone 14 Pro Simulator target
Dependency manager and it's version:

[x] SPM

Possible Solution
Add import Foundation to VGSDateFormat.swift. Pull request incoming… 🙃

@fabianmuecke thanks, we will take a look.


Update manual test case for "Test backing image / Test upload"

Update backing image test upload manual test case with extended tests for uploading through Rancher UI and Ingress Controller.
To covering following issues:

longhorn/longhorn#3129
longhorn/longhorn#2937

Can we move these test cases to v1.3.0 folder?
Hey @khushboo-rancher only one test is for v1.3.0: to access via Rancher URI.
Please check the changes I made if this will be good enough for the current situation.


Remove elevation zones

An extension of #127, since elevation zones would not serve a purpose anymore. This would also involve removing elevation variants of biomes as well, which should be done alongside https://github.com/PolyhedralDev/Terra/issues/336 to prevent existing worlds from breaking.

Closing this, as elevation zones will still serve a purpose for determining flat areas (required for aquatic biomes like marshes) and possibly mountain specific biomes


Add fix for prefer-stateless-function

Fixes #1096.
I've managed to accomplish this fix! Yay!
Also, I had tested this on my codebase and worked nicely.
I've added one module for indentation detection because I'd like to keep original formatting of the elements.
Unfortunately, This solution works only for ES6 components. This code does not handle ES5 ones, but I created a possibility to add later fix for those too.
I'm open for the suggestions :)

(This is awesome, btw, thanks!)

@ljharb Yes, I think it's doable by me. Let me look into this in the next week.
Do you think, that we should merge what we have here and then add support for createClass?
Or should I add fixer for that in a scope of this PR?
For me both options are ok.

Since this needs to wait for other collabs to review before merging, I'd say we'll play it by ear.

I ran this on my code-base which only uses class syntax, no stateless function components at all, and it seems to work pretty well. I found one issue where the prefer-stateless-function rule doesn't detect well, I will create a ticket for that.
I added a tiny comment about a syntactical preference, but it's very personal: https://github.com/yannickcr/eslint-plugin-react/pull/1229/files#r119805697

This doesn't seem to handle the case of context.
For instance,
class MyComponent extends Component {
    render() {

{this.context.thing}

    }
}

could be re-written as
function MyComponent(props, context) {
  return (

{context.thing}

  );
}

I'd like to see a test case that uses context, even if it doesn't support fixing context.

@RiddleMan if you're able to rebase this, it'd be great to land it :-)

I rebased this. https://github.com/golopot/eslint-plugin-react/tree/pr-1229 . (Commits are squashed and the three files are merged to one.)

@RiddleMan would you mind checking the "allow edits" box on the RHS of the PR?

@ljharb I'm worried that I don't have such checkbox on the RHS. The explanation is simple... accidentally I removed my fork :/ Can we just create a new one with golopot's changes? Or anything you find fit.

@RiddleMan oof, that's unfortunate. you could try recreating the fork and see what happens?

@golopot i suppose we'll need to make a new PR. Mind creating one from your branch?

ping @golopot

I've rebased this and added the correct output results here: https://github.com/ljharb/eslint-plugin-react/tree/pr-1229. Test results are here: https://travis-ci.com/github/ljharb/eslint-plugin-react/builds/190413744.
Help is welcome.

It'd be great if someone wants to file a new PR that solves this; but unfortunately this one is unrecoverable.


Android tests yield "[APP_UNREACHABLE] Failed to reach the app over the web socket connection."-error

Describe the bug
So far, all the Android tests I ran have returned an "[APP_UNREACHABLE] Failed to reach the app over the web socket connection." error
Steps To Reproduce

followed the Android Detox setup process. The project uses Android Flavors.
tested on both emulator/real Android device
build the project detox build --configuration android.emulator.staging.release
when I run the built apk on the emulator the app works (no crashes)
I have tested this issue on the latest Detox release and it still reproduces
run tests detox test --configuration android.emulator.staging.release --record-logs all

result:
...
detox[17633] INFO:  [test.js] DETOX_CONFIGURATION="android.emulator.staging.release" DETOX_FORCE_ADB_INSTALL=false DETOX_READ_ONLY_EMU=false DETOX_RECORD_LOGS="all" DETOX_REPORT_SPECS=true DETOX_START_TIMESTAMP=1625063288502 DETOX_USE_CUSTOM_LOGGER=true jest --config e2e/config.json --testNamePattern '^((?!:ios:).)*$' --maxWorkers 1 e2e
detox[17637] INFO:  Example is assigned to emulator-11660 (Pixel_4_API_29)
detox[17637] INFO:  Example: should have welcome screen
detox[17637] INFO:  Example: should have welcome screen [FAIL]

detox[17637] ERROR: [APP_UNREACHABLE] Failed to reach the app over the web socket connection.
...

Expected behavior
Test successfully runs
Detox Trace-Logs
MacBook-Pro-2:project admin$ detox test --configuration android.emulator.staging.release --loglevel trace
detox[17938] INFO:  [test.js] DETOX_CONFIGURATION="android.emulator.staging.release" DETOX_FORCE_ADB_INSTALL=false DETOX_LOGLEVEL="trace" DETOX_READ_ONLY_EMU=false DETOX_REPORT_SPECS=true DETOX_START_TIMESTAMP=1625064540944 DETOX_USE_CUSTOM_LOGGER=true jest --config e2e/config.json --testNamePattern '^((?!:ios:).)*$' --maxWorkers 1 e2e
detox[17939] TRACE: [DETOX_CREATE] created a Detox instance with config:
{"artifactsConfig":{"rootDir":"artifacts/android.emulator.staging.release.2021-06-30 14-49-00Z","plugins":{"log":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"screenshot":{"enabled":true,"shouldTakeAutomaticSnapshots":false,"keepOnlyFailedTestsArtifacts":false},"video":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"instruments":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"timeline":{"enabled":false},"uiHierarchy":{"enabled":false,"keepOnlyFailedTestsArtifacts":false}},"pathBuilder":{"_rootDir":"artifacts/android.emulator.staging.release.2021-06-30 14-49-00Z"}},"appsConfig":{"default":{"type":"android.apk","binaryPath":"android/app/build/outputs/apk/staging/release/app-staging-release.apk","build":"cd android && ./gradlew assembleStagingRelease assembleStagingReleaseAndroidTest -DtestBuildType=release && cd .."}},"behaviorConfig":{"init":{"reinstallApp":true,"exposeGlobals":true},"cleanup":{"shutdownDevice":false},"launchApp":"auto"},"cliConfig":{"configuration":"android.emulator.staging.release","forceAdbInstall":"false","loglevel":"trace","useCustomLogger":"true"},"deviceConfig":{"type":"android.emulator","device":{"avdName":"Pixel_4_API_29"}},"runnerConfig":{"testRunner":"jest","runnerConfig":"e2e/config.json","specs":"e2e"},"sessionConfig":{"autoStart":true,"server":"ws://localhost:56066","sessionId":"b7d0782d-897b-e09d-69c1-1b9faa8eb699","debugSynchronization":10000},"errorComposer":{"configurationName":"android.emulator.staging.release","filepath":"/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/.detoxrc.json","contents":{"testRunner":"jest","runnerConfig":"e2e/config.json","apps":{"android.staging.release":{"type":"android.apk","binaryPath":"android/app/build/outputs/apk/staging/release/app-staging-release.apk","build":"cd android && ./gradlew assembleStagingRelease assembleStagingReleaseAndroidTest -DtestBuildType=release && cd .."},"android.staging.debug":{"type":"android.apk","binaryPath":"android/app/build/outputs/apk/staging/debug/app-staging-debug.apk","build":"cd android && ./gradlew assembleStagingDebug assembleStagingDebugAndroidTest -DtestBuildType=debug && cd .."}},"devices":{"simulator":{"type":"ios.simulator","device":{"type":"iPhone 11"}},"emulator":{"type":"android.emulator","device":{"avdName":"Pixel_4_API_29"}},"android.device":{"type":"android.attached","device":{"adbName":"e387cc68"}}},"configurations":{"android.emulator.staging.release":{"device":"emulator","app":"android.staging.release"},"android.device.staging.release":{"device":"android.device","app":"android.staging.release"},"android.emulator.staging.debug":{"device":"emulator","app":"android.staging.debug"}}},"_extends":false}}
detox[17939] DEBUG: [WSS_CREATE] Detox server listening on localhost:56066...
detox[17939] DEBUG: [WSS_CONNECTION, #56067] registered a new connection.
detox[17939] TRACE: [WS_OPEN] opened web socket to: ws://localhost:56066
detox[17939] TRACE: [WS_SEND] {"type":"login","params":{"sessionId":"b7d0782d-897b-e09d-69c1-1b9faa8eb699","role":"tester"},"messageId":0}
detox[17939] TRACE: [WSS_GET_FROM, #56067] {"type":"login","params":{"sessionId":"b7d0782d-897b-e09d-69c1-1b9faa8eb699","role":"tester"},"messageId":0}
detox[17939] TRACE: [SESSION_CREATED] created session b7d0782d-897b-e09d-69c1-1b9faa8eb699
detox[17939] TRACE: [WSS_SEND_TO, #tester] {"type":"loginSuccess","params":{"testerConnected":true,"appConnected":false},"messageId":0}
detox[17939] TRACE: [SESSION_JOINED] tester joined session b7d0782d-897b-e09d-69c1-1b9faa8eb699
detox[17939] TRACE: [WS_MESSAGE] {"type":"loginSuccess","params":{"testerConnected":true,"appConnected":false},"messageId":0}

detox[17939] DEBUG: [EXEC_CMD, #0] "/Users/admin/Library/Android/sdk/emulator/emulator" -list-avds --verbose
detox[17939] TRACE: [EXEC_SUCCESS, #0] Pixel_4_API_29
Pixel_API_28

detox[17939] DEBUG: [EXEC_CMD, #1] "/Users/admin/Library/Android/sdk/emulator/emulator" -version
detox[17939] TRACE: [EXEC_SUCCESS, #1] Android emulator version <IP_ADDRESS> (build_id 7324830) (CL:N/A)
Copyright (C) 2006-2017 The Android Open Source Project and many others.
This program is a derivative of the QEMU CPU emulator (www.qemu.org).

  This software is licensed under the terms of the GNU General Public
  License version 2, as published by the Free Software Foundation, and
  may be copied, distributed, and modified under those terms.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

detox[17939] DEBUG: [EMU_BIN_VERSION_DETECT] Detected emulator binary version { major: 30, minor: 6, patch: 5, toString: [Function: toString] }
detox[17939] DEBUG: [ALLOCATE_DEVICE] Trying to allocate a device based on "Pixel_4_API_29"
detox[17939] DEBUG: [EXEC_CMD, #2] "/Users/admin/Library/Android/sdk/platform-tools/adb"  devices
detox[17939] DEBUG: [EXEC_SUCCESS, #2] List of devices attached
emulator-11660  device

detox[17939] TRACE: [TELNET_CONNECTING] port: 11660, host: localhost
detox[17939] DEBUG: [DEVICE_LOOKUP] Found a matching & free device emulator-11660
detox[17939] DEBUG: [ALLOCATE_DEVICE] Settled on emulator-11660
detox[17939] DEBUG: [EXEC_CMD, #3] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "getprop dev.bootcomplete"
detox[17939] TRACE: [EXEC_SUCCESS, #3] 1

detox[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBootDevice({ coldBoot: false, deviceId: 'emulator-11660', type: 'Pixel_4_API_29' })
detox[17939] DEBUG: [EXEC_CMD, #4] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "getprop ro.build.version.sdk"
detox[17939] TRACE: [EXEC_SUCCESS, #4] 29

detox[17939] DEBUG: [EXEC_CMD, #5] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "settings put global animator_duration_scale 0"
detox[17939] TRACE: [EXEC_SUCCESS, #5]
detox[17939] DEBUG: [EXEC_CMD, #6] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "settings put global window_animation_scale 0"
detox[17939] TRACE: [EXEC_SUCCESS, #6]
detox[17939] DEBUG: [EXEC_CMD, #7] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "settings put global transition_animation_scale 0"
detox[17939] TRACE: [EXEC_SUCCESS, #7]
detox[17939] DEBUG: [EXEC_CMD, #8] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "dumpsys power | grep \"^[ ]*m[UW].*=\""
detox[17939] TRACE: [EXEC_SUCCESS, #8]   mWakefulness=Awake
  mWakefulnessChanging=false
  mWakeLockSummary=0x0
  mUserActivitySummary=0x1
  mWakeUpWhenPluggedOrUnpluggedConfig=false
  mWakeUpWhenPluggedOrUnpluggedInTheaterModeConfig=false
  mUserActivityTimeoutOverrideFromWindowManager=-1
  mUserInactiveOverrideFromWindowManager=false

detox[17939] DEBUG: [EXEC_CMD, #9] "/Users/admin/Library/Android/sdk/build-tools/29.0.3/aapt" dump badging "/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/staging/release/app-staging-release.apk" | grep -e "package: name="
detox[17939] TRACE: [EXEC_SUCCESS, #9] package: name='com.project.mobile.staging' versionCode='16001' versionName='1.6.6' compileSdkVersion='30' compileSdkVersionCodename='11'

detox[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeTerminateApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[17939] DEBUG: [EXEC_CMD, #10] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "am force-stop com.project.mobile.staging"
detox[17939] TRACE: [EXEC_SUCCESS, #10]
detox[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onTerminateApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeUninstallApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[17939] DEBUG: [EXEC_CMD, #11] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm list packages com.project.mobile.staging"
detox[17939] TRACE: [EXEC_SUCCESS, #11] package:com.project.mobile.staging.test
package:com.project.mobile.staging

detox[17939] DEBUG: [EXEC_CMD, #12] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 uninstall com.project.mobile.staging
detox[17939] TRACE: [EXEC_SUCCESS, #12] Success

detox[17939] DEBUG: [EXEC_CMD, #13] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm list packages com.project.mobile.staging.test"
detox[17939] TRACE: [EXEC_SUCCESS, #13] package:com.project.mobile.staging.test

detox[17939] DEBUG: [EXEC_CMD, #14] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 uninstall com.project.mobile.staging.test
detox[17939] TRACE: [EXEC_SUCCESS, #14] Success

detox[17939] DEBUG: [EXEC_CMD, #15] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "rm -fr /data/local/tmp/detox"
detox[17939] TRACE: [EXEC_SUCCESS, #15]
detox[17939] DEBUG: [EXEC_CMD, #16] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "mkdir -p /data/local/tmp/detox"
detox[17939] TRACE: [EXEC_SUCCESS, #16]
detox[17939] DEBUG: [EXEC_CMD, #17] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 push "/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/staging/release/app-staging-release.apk" "/data/local/tmp/detox/Application.apk"
detox[17939] TRACE: [EXEC_SUCCESS, #17] /Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/staging/release/app-staging-release.apk: 1 file pushed, 0 skipped. 240.4 MB/s (33772870 bytes in 0.134s)

detox[17939] DEBUG: [EXEC_CMD, #18] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm install -r -g -t /data/local/tmp/detox/Application.apk"
detox[17939] TRACE: [EXEC_SUCCESS, #18] Success

detox[17939] DEBUG: [EXEC_CMD, #19] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 push "/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/androidTest/staging/release/app-staging-release-androidTest.apk" "/data/local/tmp/detox/Test.apk"
detox[17939] TRACE: [EXEC_SUCCESS, #19] /Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/androidTest/staging/release/app-staging-release-androidTest.apk: 1 file pushed, 0 skipped. 451.1 MB/s (1848527 bytes in 0.004s)

detox[17939] DEBUG: [EXEC_CMD, #20] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm install -r -g -t /data/local/tmp/detox/Test.apk"
detox[17939] TRACE: [EXEC_SUCCESS, #20] Success

ROOT_DESCRIBE_BLOCK[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onRunDescribeStart({ name: 'ROOT_DESCRIBE_BLOCK' })
Example[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onRunDescribeStart({ name: 'Example' })
detox[17939] INFO:  Example is assigned to emulator-11660 (Pixel_4_API_29)
detox[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeTerminateApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[17939] DEBUG: [EXEC_CMD, #21] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "am force-stop com.project.mobile.staging"
detox[17939] TRACE: [EXEC_SUCCESS, #21]
detox[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onTerminateApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeLaunchApp({
  deviceId: 'emulator-11660',
  bundleId: 'com.project.mobile.staging',
  launchArgs: {
    detoxServer: 'ws://localhost:56066',
    detoxSessionId: 'b7d0782d-897b-e09d-69c1-1b9faa8eb699'
  }
})
detox[17939] DEBUG: [EXEC_CMD, #22] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "date +\"%m-%d %T.000\""
detox[17939] TRACE: [EXEC_SUCCESS, #22] 06-30 16:49:06.000

detox[17939] DEBUG: [EXEC_CMD, #23] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 reverse tcp:56066 tcp:56066
detox[17939] TRACE: [EXEC_SUCCESS, #23] 56066

detox[17939] DEBUG: [EXEC_CMD, #24] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm list instrumentation"
detox[17939] TRACE: [EXEC_SUCCESS, #24] instrumentation:com.project.mobile.staging.test/androidx.test.runner.AndroidJUnitRunner (target=com.project.mobile.staging)

detox[17939] DEBUG: [SPAWN_CMD, #17975] /Users/admin/Library/Android/sdk/platform-tools/adb -s emulator-11660 shell am instrument -w -r -e detoxServer ws://localhost:56066 -e detoxSessionId b7d0782d-897b-e09d-69c1-1b9faa8eb699 -e debug false com.project.mobile.staging.test/androidx.test.runner.AndroidJUnitRunner
detox[17939] DEBUG: [EXEC_CMD, #25] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "ps | grep \"com\.project\.mobile\.staging$\""
detox[17939] TRACE: [EXEC_SUCCESS, #25] u0_a182      22083  1781 1892880 119100 0                   0 R com.project.mobile.staging

detox[22083] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onLaunchApp({
  deviceId: 'emulator-11660',
  bundleId: 'com.project.mobile.staging',
  launchArgs: {
    detoxServer: 'ws://localhost:56066',
    detoxSessionId: 'b7d0782d-897b-e09d-69c1-1b9faa8eb699'
  },
  pid: 22083
})
detox[17939] TRACE: [SPAWN_STDOUT, #17975] INSTRUMENTATION_RESULT: stream=

Time: 0.001

OK (0 tests)

INSTRUMENTATION_CODE: -1

detox[17939] DEBUG: [SPAWN_END, #17975] /Users/admin/Library/Android/sdk/platform-tools/adb -s emulator-11660 shell am instrument -w -r -e detoxServer ws://localhost:56066 -e detoxSessionId b7d0782d-897b-e09d-69c1-1b9faa8eb699 -e debug false com.project.mobile.staging.test/androidx.test.runner.AndroidJUnitRunner finished with code = 0
detox[17939] DEBUG: [EXEC_CMD, #26] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 reverse --remove tcp:56066
detox[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onHookFailure({
  error: DetoxRuntimeError: Failed to run application on the device

  HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.
      at _callee$ (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/e2e/firstTest.e2e.js:3:18)
      at tryCatch (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:63:40)
      at Generator.invoke [as _invoke] (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:293:22)
      at Generator.next (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:118:21)
      at tryCatch (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:63:40)
      at invoke (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:154:20)
      at /Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:189:11
      at new Promise (<anonymous>)
      at callInvokeWithMethodAndArg (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:188:16)
      at AsyncIterator.enqueue (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:211:13)
      at AsyncIterator.next (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:118:21)
      at Object.<anonymous>.exports.async (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:238:14)
      at _callee (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/e2e/firstTest.e2e.js:2:13)
      at Promise.then.completed (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/jest-circus/build/utils.js:316:28),
  hook: 'beforeAll'
})
detox[17939] INFO:  Example: should have welcome screen
detox[17939] INFO:  Example: should have welcome screen [FAIL]
Example[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onRunDescribeFinish({ name: 'Example' })

ROOT_DESCRIBE_BLOCK[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onRunDescribeFinish({ name: 'ROOT_DESCRIBE_BLOCK' })
detox[17939] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeCleanup()
detox[17939] ERROR: [APP_UNREACHABLE] Failed to reach the app over the web socket connection.

HINT:

1. If you don't see your app running on the device, there's a chance
   that your app has crashed prematurely. To get the crash details,
   you can run Detox tests with "--record-logs all" CLI option
   and then inspect the device logs in the artifacts folder.

2. If your app IS running on the device, yet you see this message:
a) The native part of Detox failed to connect to the Detox server over
   web sockets. If this is the case, the device's logs should contain
   messages about those failed connection attempts.

b) The app is running without Detox native code injected.
   Make sure you don't launch it manually. If you don't, examine the logs
   from the device. If you see a crash related to Detox native code, you
   are welcome to report it on our GitHub tracker.
   In case if you are debugging your native code integration with Detox,
   these guides may prove helpful:

   * https://github.com/wix/Detox/blob/master/docs/Guide.DebuggingInAndroidStudio.md
   * https://github.com/wix/Detox/blob/master/docs/Guide.DebuggingInXcode.md

detox[17939] TRACE: [EXEC_SUCCESS, #26]
detox[17939] TRACE: [SESSION_TORN] tester exited session b7d0782d-897b-e09d-69c1-1b9faa8eb699
detox[17939] DEBUG: [WSS_CLOSE] Detox server has been closed gracefully
 FAIL  e2e/firstTest.e2e.js (5.875 s)
  Example
    ✕ should have welcome screen (1 ms)

  ● Example › should have welcome screen

    DetoxRuntimeError: Failed to run application on the device

    HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.

      1 | describe('Example', () => {
      2 |   beforeAll(async () => {
    > 3 |     await device.launchApp();
        |                  ^
      4 |   });
      5 |
      6 |   beforeEach(async () => {

      at _callee$ (firstTest.e2e.js:3:18)
      at tryCatch (../node_modules/regenerator-runtime/runtime.js:63:40)
      at Generator.invoke [as _invoke] (../node_modules/regenerator-runtime/runtime.js:293:22)
      at Generator.next (../node_modules/regenerator-runtime/runtime.js:118:21)
      at tryCatch (../node_modules/regenerator-runtime/runtime.js:63:40)
      at invoke (../node_modules/regenerator-runtime/runtime.js:154:20)
      at ../node_modules/regenerator-runtime/runtime.js:189:11
      at callInvokeWithMethodAndArg (../node_modules/regenerator-runtime/runtime.js:188:16)
      at AsyncIterator.enqueue (../node_modules/regenerator-runtime/runtime.js:211:13)
      at AsyncIterator.next (../node_modules/regenerator-runtime/runtime.js:118:21)
      at Object.<anonymous>.exports.async (../node_modules/regenerator-runtime/runtime.js:238:14)
      at _callee (firstTest.e2e.js:2:13)

detox[17938] ERROR: [cli.js] Command failed: jest --config e2e/config.json --testNamePattern '^((?!:ios:).)*$' --maxWorkers 1 e2e

Device logs (adb logcat)
detox_pid_18018.log
detox[18018] TRACE: [DETOX_CREATE] created a Detox instance with config:
{"artifactsConfig":{"rootDir":"artifacts/android.emulator.staging.release.2021-06-30 14-53-54Z","plugins":{"log":{"enabled":true,"keepOnlyFailedTestsArtifacts":false},"screenshot":{"enabled":true,"shouldTakeAutomaticSnapshots":false,"keepOnlyFailedTestsArtifacts":false},"video":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"instruments":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"timeline":{"enabled":false},"uiHierarchy":{"enabled":false,"keepOnlyFailedTestsArtifacts":false}},"pathBuilder":{"_rootDir":"artifacts/android.emulator.staging.release.2021-06-30 14-53-54Z"}},"appsConfig":{"default":{"type":"android.apk","binaryPath":"android/app/build/outputs/apk/staging/release/app-staging-release.apk","build":"cd android && ./gradlew assembleStagingRelease assembleStagingReleaseAndroidTest -DtestBuildType=release && cd .."}},"behaviorConfig":{"init":{"reinstallApp":true,"exposeGlobals":true},"cleanup":{"shutdownDevice":false},"launchApp":"auto"},"cliConfig":{"recordLogs":"all","configuration":"android.emulator.staging.release","forceAdbInstall":"false","useCustomLogger":"true"},"deviceConfig":{"type":"android.emulator","device":{"avdName":"Pixel_4_API_29"}},"runnerConfig":{"testRunner":"jest","runnerConfig":"e2e/config.json","specs":"e2e"},"sessionConfig":{"autoStart":true,"server":"ws://localhost:56467","sessionId":"0e15c519-b92a-8ece-2493-bf95c4f57345","debugSynchronization":10000},"errorComposer":{"configurationName":"android.emulator.staging.release","filepath":"/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/.detoxrc.json","contents":{"testRunner":"jest","runnerConfig":"e2e/config.json","apps":{"android.staging.release":{"type":"android.apk","binaryPath":"android/app/build/outputs/apk/staging/release/app-staging-release.apk","build":"cd android && ./gradlew assembleStagingRelease assembleStagingReleaseAndroidTest -DtestBuildType=release && cd .."},"android.staging.debug":{"type":"android.apk","binaryPath":"android/app/build/outputs/apk/staging/debug/app-staging-debug.apk","build":"cd android && ./gradlew assembleStagingDebug assembleStagingDebugAndroidTest -DtestBuildType=debug && cd .."}},"devices":{"simulator":{"type":"ios.simulator","device":{"type":"iPhone 11"}},"emulator":{"type":"android.emulator","device":{"avdName":"Pixel_4_API_29"}},"android.device":{"type":"android.attached","device":{"adbName":"e387cc68"}}},"configurations":{"android.emulator.staging.release":{"device":"emulator","app":"android.staging.release"},"android.device.staging.release":{"device":"android.device","app":"android.staging.release"},"android.emulator.staging.debug":{"device":"emulator","app":"android.staging.debug"}}},"_extends":false}}
detox[18018] DEBUG: [WSS_CREATE] Detox server listening on localhost:56467...
detox[18018] DEBUG: [WSS_CONNECTION, #56468] registered a new connection.
detox[18018] TRACE: [WS_OPEN] opened web socket to: ws://localhost:56467
detox[18018] TRACE: [WS_SEND] {"type":"login","params":{"sessionId":"0e15c519-b92a-8ece-2493-bf95c4f57345","role":"tester"},"messageId":0}
detox[18018] TRACE: [WSS_GET_FROM, #56468] {"type":"login","params":{"sessionId":"0e15c519-b92a-8ece-2493-bf95c4f57345","role":"tester"},"messageId":0}
detox[18018] TRACE: [SESSION_CREATED] created session 0e15c519-b92a-8ece-2493-bf95c4f57345
detox[18018] TRACE: [WSS_SEND_TO, #tester] {"type":"loginSuccess","params":{"testerConnected":true,"appConnected":false},"messageId":0}
detox[18018] TRACE: [SESSION_JOINED] tester joined session 0e15c519-b92a-8ece-2493-bf95c4f57345
detox[18018] TRACE: [WS_MESSAGE] {"type":"loginSuccess","params":{"testerConnected":true,"appConnected":false},"messageId":0}

detox[18018] DEBUG: [EXEC_CMD, #0] "/Users/admin/Library/Android/sdk/emulator/emulator" -list-avds --verbose
detox[18018] TRACE: [EXEC_SUCCESS, #0] Pixel_4_API_29
Pixel_API_28

detox[18018] DEBUG: [EXEC_CMD, #1] "/Users/admin/Library/Android/sdk/emulator/emulator" -version
detox[18018] TRACE: [EXEC_SUCCESS, #1] Android emulator version <IP_ADDRESS> (build_id 7324830) (CL:N/A)
Copyright (C) 2006-2017 The Android Open Source Project and many others.
This program is a derivative of the QEMU CPU emulator (www.qemu.org).

 This software is licensed under the terms of the GNU General Public
 License version 2, as published by the Free Software Foundation, and
 may be copied, distributed, and modified under those terms.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

detox[18018] DEBUG: [EMU_BIN_VERSION_DETECT] Detected emulator binary version { major: 30, minor: 6, patch: 5, toString: [Function: toString] }
detox[18018] DEBUG: [ALLOCATE_DEVICE] Trying to allocate a device based on "Pixel_4_API_29"
detox[18018] DEBUG: [EXEC_CMD, #2] "/Users/admin/Library/Android/sdk/platform-tools/adb"  devices
detox[18018] DEBUG: [EXEC_SUCCESS, #2] List of devices attached
emulator-11660	device

detox[18018] TRACE: [TELNET_CONNECTING] port: 11660, host: localhost
detox[18018] DEBUG: [DEVICE_LOOKUP] Found a matching & free device emulator-11660
detox[18018] DEBUG: [ALLOCATE_DEVICE] Settled on emulator-11660
detox[18018] DEBUG: [EXEC_CMD, #3] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "getprop dev.bootcomplete"
detox[18018] TRACE: [EXEC_SUCCESS, #3] 1

detox[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBootDevice({ coldBoot: false, deviceId: 'emulator-11660', type: 'Pixel_4_API_29' })
detox[18018] DEBUG: [EXEC_CMD, #4] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "getprop ro.build.version.sdk"
detox[18018] TRACE: [EXEC_SUCCESS, #4] 29

detox[18018] DEBUG: [EXEC_CMD, #5] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "settings put global animator_duration_scale 0"
detox[18018] TRACE: [EXEC_SUCCESS, #5]
detox[18018] DEBUG: [EXEC_CMD, #6] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "settings put global window_animation_scale 0"
detox[18018] TRACE: [EXEC_SUCCESS, #6]
detox[18018] DEBUG: [EXEC_CMD, #7] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "settings put global transition_animation_scale 0"
detox[18018] TRACE: [EXEC_SUCCESS, #7]
detox[18018] DEBUG: [EXEC_CMD, #8] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "dumpsys power | grep \"^[ ]*m[UW].*=\""
detox[18018] TRACE: [EXEC_SUCCESS, #8]   mWakefulness=Awake
 mWakefulnessChanging=false
 mWakeLockSummary=0x0
 mUserActivitySummary=0x1
 mWakeUpWhenPluggedOrUnpluggedConfig=false
 mWakeUpWhenPluggedOrUnpluggedInTheaterModeConfig=false
 mUserActivityTimeoutOverrideFromWindowManager=-1
 mUserInactiveOverrideFromWindowManager=false

detox[18018] DEBUG: [EXEC_CMD, #9] "/Users/admin/Library/Android/sdk/build-tools/29.0.3/aapt" dump badging "/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/staging/release/app-staging-release.apk" | grep -e "package: name="
detox[18018] TRACE: [EXEC_SUCCESS, #9] package: name='com.project.mobile.staging' versionCode='16001' versionName='1.6.6' compileSdkVersion='30' compileSdkVersionCodename='11'

detox[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeTerminateApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[18018] DEBUG: [EXEC_CMD, #10] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "am force-stop com.project.mobile.staging"
detox[18018] TRACE: [EXEC_SUCCESS, #10]
detox[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onTerminateApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeUninstallApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[18018] DEBUG: [EXEC_CMD, #11] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm list packages com.project.mobile.staging"
detox[18018] TRACE: [EXEC_SUCCESS, #11] package:com.project.mobile.staging.test
package:com.project.mobile.staging

detox[18018] DEBUG: [EXEC_CMD, #12] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 uninstall com.project.mobile.staging
detox[18018] TRACE: [EXEC_SUCCESS, #12] Success

detox[18018] DEBUG: [EXEC_CMD, #13] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm list packages com.project.mobile.staging.test"
detox[18018] TRACE: [EXEC_SUCCESS, #13] package:com.project.mobile.staging.test

detox[18018] DEBUG: [EXEC_CMD, #14] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 uninstall com.project.mobile.staging.test
detox[18018] TRACE: [EXEC_SUCCESS, #14] Success

detox[18018] DEBUG: [EXEC_CMD, #15] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "rm -fr /data/local/tmp/detox"
detox[18018] TRACE: [EXEC_SUCCESS, #15]
detox[18018] DEBUG: [EXEC_CMD, #16] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "mkdir -p /data/local/tmp/detox"
detox[18018] TRACE: [EXEC_SUCCESS, #16]
detox[18018] DEBUG: [EXEC_CMD, #17] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 push "/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/staging/release/app-staging-release.apk" "/data/local/tmp/detox/Application.apk"
detox[18018] TRACE: [EXEC_SUCCESS, #17] /Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/staging/release/app-staging-release.apk: 1 file pushed, 0 skipped. 155.8 MB/s (33772870 bytes in 0.207s)

detox[18018] DEBUG: [EXEC_CMD, #18] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm install -r -g -t /data/local/tmp/detox/Application.apk"
detox[18018] TRACE: [EXEC_SUCCESS, #18] Success

detox[18018] DEBUG: [EXEC_CMD, #19] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 push "/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/androidTest/staging/release/app-staging-release-androidTest.apk" "/data/local/tmp/detox/Test.apk"
detox[18018] TRACE: [EXEC_SUCCESS, #19] /Users/admin/Documents/admin/Projects/20201020_project/project/source/project/android/app/build/outputs/apk/androidTest/staging/release/app-staging-release-androidTest.apk: 1 file pushed, 0 skipped. 407.2 MB/s (1848527 bytes in 0.004s)

detox[18018] DEBUG: [EXEC_CMD, #20] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm install -r -g -t /data/local/tmp/detox/Test.apk"
detox[18018] TRACE: [EXEC_SUCCESS, #20] Success

ROOT_DESCRIBE_BLOCK[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onRunDescribeStart({ name: 'ROOT_DESCRIBE_BLOCK' })
Example[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onRunDescribeStart({ name: 'Example' })
detox[18018] INFO:  Example is assigned to emulator-11660 (Pixel_4_API_29)
detox[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeTerminateApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[18018] DEBUG: [EXEC_CMD, #21] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "am force-stop com.project.mobile.staging"
detox[18018] TRACE: [EXEC_SUCCESS, #21]
detox[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onTerminateApp({ deviceId: 'emulator-11660', bundleId: 'com.project.mobile.staging' })
detox[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeLaunchApp({
 deviceId: 'emulator-11660',
 bundleId: 'com.project.mobile.staging',
 launchArgs: {
   detoxServer: 'ws://localhost:56467',
   detoxSessionId: '0e15c519-b92a-8ece-2493-bf95c4f57345'
 }
})
detox[18018] DEBUG: [EXEC_CMD, #22] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "date +\"%m-%d %T.000\""
detox[18018] TRACE: [EXEC_SUCCESS, #22] 06-30 16:54:00.000

detox[18018] DEBUG: [EXEC_CMD, #23] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 reverse tcp:56467 tcp:56467
detox[18018] TRACE: [EXEC_SUCCESS, #23] 56467

detox[18018] DEBUG: [EXEC_CMD, #24] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "pm list instrumentation"
detox[18018] TRACE: [EXEC_SUCCESS, #24] instrumentation:com.project.mobile.staging.test/androidx.test.runner.AndroidJUnitRunner (target=com.project.mobile.staging)

detox[18018] DEBUG: [SPAWN_CMD, #18055] /Users/admin/Library/Android/sdk/platform-tools/adb -s emulator-11660 shell am instrument -w -r -e detoxServer ws://localhost:56467 -e detoxSessionId 0e15c519-b92a-8ece-2493-bf95c4f57345 -e debug false com.project.mobile.staging.test/androidx.test.runner.AndroidJUnitRunner
detox[18018] DEBUG: [EXEC_CMD, #25] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "ps | grep \"com\.project\.mobile\.staging$\""
detox[18018] TRACE: [EXEC_SUCCESS, #25] u0_a184      22331  1781 1897512 107884 0                   0 R com.project.mobile.staging

detox[22331] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onLaunchApp({
 deviceId: 'emulator-11660',
 bundleId: 'com.project.mobile.staging',
 launchArgs: {
   detoxServer: 'ws://localhost:56467',
   detoxSessionId: '0e15c519-b92a-8ece-2493-bf95c4f57345'
 },
 pid: 22331
})
detox[18018] TRACE: [ARTIFACT_START] starting ADBLogcatRecording
detox[18018] DEBUG: [SPAWN_CMD, #18057] /Users/admin/Library/Android/sdk/platform-tools/adb -s emulator-11660 shell "logcat -T \"06-30 16:54:00.000\" --pid=22331 -f /sdcard/16535624_0.log"
detox[18018] DEBUG: [EXEC_CMD, #26] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell du /sdcard/16535624_0.log
detox[18018] TRACE: [EXEC_SUCCESS, #26] 16	/sdcard/16535624_0.log

detox[18018] TRACE: [SPAWN_STDOUT, #18055] INSTRUMENTATION_RESULT: stream=

Time: 0

OK (0 tests)

INSTRUMENTATION_CODE: -1

detox[18018] DEBUG: [SPAWN_END, #18055] /Users/admin/Library/Android/sdk/platform-tools/adb -s emulator-11660 shell am instrument -w -r -e detoxServer ws://localhost:56467 -e detoxSessionId 0e15c519-b92a-8ece-2493-bf95c4f57345 -e debug false com.project.mobile.staging.test/androidx.test.runner.AndroidJUnitRunner finished with code = 0
detox[18018] DEBUG: [EXEC_CMD, #27] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 reverse --remove tcp:56467
detox[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onHookFailure({
 error: DetoxRuntimeError: Failed to run application on the device

 HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.
     at _callee$ (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/e2e/firstTest.e2e.js:3:18)
     at tryCatch (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:63:40)
     at Generator.invoke [as _invoke] (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:293:22)
     at Generator.next (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:118:21)
     at tryCatch (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:63:40)
     at invoke (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:154:20)
     at /Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:189:11
     at new Promise (<anonymous>)
     at callInvokeWithMethodAndArg (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:188:16)
     at AsyncIterator.enqueue (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:211:13)
     at AsyncIterator.next (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:118:21)
     at Object.<anonymous>.exports.async (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/regenerator-runtime/runtime.js:238:14)
     at _callee (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/e2e/firstTest.e2e.js:2:13)
     at Promise.then.completed (/Users/admin/Documents/admin/Projects/20201020_project/project/source/project/node_modules/jest-circus/build/utils.js:316:28),
 hook: 'beforeAll'
})
detox[18018] INFO:  Example: should have welcome screen
detox[18018] INFO:  Example: should have welcome screen [FAIL]
Example[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onRunDescribeFinish({ name: 'Example' })
ROOT_DESCRIBE_BLOCK[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onRunDescribeFinish({ name: 'ROOT_DESCRIBE_BLOCK' })
detox[18018] TRACE: [ARTIFACTS_LIFECYCLE] artifactsManager.onBeforeCleanup()
detox[18018] TRACE: [ARTIFACT_SAVE] saving ADBLogcatRecording to: artifacts/android.emulator.staging.release.2021-06-30 14-53-54Z/emulator-11660 2021-06-30 14-54-01Z.startup.log
detox[18018] TRACE: [ARTIFACT_STOP] stopping ADBLogcatRecording
detox[18018] DEBUG: [EXEC_CMD, #28] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "date +\"%m-%d %T.000\""
detox[18018] TRACE: [EXEC_SUCCESS, #27]
detox[18018] TRACE: [EXEC_SUCCESS, #28] 06-30 16:54:01.000

detox[18018] TRACE: [SPAWN_KILL, #18057] sending SIGINT to: /Users/admin/Library/Android/sdk/platform-tools/adb -s emulator-11660 shell logcat -T "06-30 16:54:00.000" --pid=22331 -f /sdcard/16535624_0.log
detox[18018] DEBUG: [SPAWN_END, #18057] /Users/admin/Library/Android/sdk/platform-tools/adb -s emulator-11660 shell "logcat -T \"06-30 16:54:00.000\" --pid=22331 -f /sdcard/16535624_0.log" terminated with SIGINT
detox[18018] DEBUG: [EXEC_CMD, #29] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 pull "/sdcard/16535624_0.log" "artifacts/android.emulator.staging.release.2021-06-30 14-53-54Z/emulator-11660 2021-06-30 14-54-01Z.startup.log"
detox[18018] TRACE: [EXEC_SUCCESS, #29] /sdcard/16535624_0.log: 1 file pulled, 0 skipped. 7.5 MB/s (10555 bytes in 0.001s)

detox[18018] DEBUG: [EXEC_CMD, #30] "/Users/admin/Library/Android/sdk/platform-tools/adb" -s emulator-11660 shell "rm  \"/sdcard/16535624_0.log\""
detox[18018] TRACE: [EXEC_SUCCESS, #30]
detox[18018] TRACE: [ARTIFACT_START] starting FileArtifact
detox[18018] TRACE: [ARTIFACT_STOP] stopping FileArtifact
detox[18018] TRACE: [ARTIFACT_SAVE] saving FileArtifact to: artifacts/android.emulator.staging.release.2021-06-30 14-53-54Z/detox_pid_18018.json.log { append: true }
detox[18018] TRACE: [ARTIFACT_START] starting FileArtifact
detox[18018] TRACE: [ARTIFACT_STOP] stopping FileArtifact
detox[18018] TRACE: [ARTIFACT_SAVE] saving FileArtifact to: artifacts/android.emulator.staging.release.2021-06-30 14-53-54Z/detox_pid_18018.log { append: true }
detox[18018] DEBUG: [MOVE_FILE] moving "/private/var/folders/kf/z32vgqkn16ddr9hj6ybmhrhw0000gn/T/cdfb6d8c-2eff-4904-ba6c-c5c7183f91c5.detox.log" to artifacts/android.emulator.staging.release.2021-06-30 14-53-54Z/detox_pid_18018.json.log
detox[18018] DEBUG: [MOVE_FILE] moving "/private/var/folders/kf/z32vgqkn16ddr9hj6ybmhrhw0000gn/T/0371ea26-ad1f-4901-a654-9ffa34c49e4b.detox.log" to artifacts/android.emulator.staging.release.2021-06-30 14-53-54Z/detox_pid_18018.log
detox[18018] ERROR: [APP_UNREACHABLE] Failed to reach the app over the web socket connection.

HINT:

1. If you don't see your app running on the device, there's a chance
  that your app has crashed prematurely. To get the crash details,
  you can run Detox tests with "--record-logs all" CLI option
  and then inspect the device logs in the artifacts folder.

2. If your app IS running on the device, yet you see this message:
a) The native part of Detox failed to connect to the Detox server over
  web sockets. If this is the case, the device's logs should contain
  messages about those failed connection attempts.

b) The app is running without Detox native code injected.
  Make sure you don't launch it manually. If you don't, examine the logs
  from the device. If you see a crash related to Detox native code, you
  are welcome to report it on our GitHub tracker.
  In case if you are debugging your native code integration with Detox,
  these guides may prove helpful:

  * https://github.com/wix/Detox/blob/master/docs/Guide.DebuggingInAndroidStudio.md
  * https://github.com/wix/Detox/blob/master/docs/Guide.DebuggingInXcode.md

detox[18018] DEBUG: [WSS_CLOSE] Detox server has been closed gracefully
detox[18018] TRACE: [SESSION_TORN] tester exited session 0e15c519-b92a-8ece-2493-bf95c4f57345

emulator-11660 2021-06-30 14-54-01Z.startup log
--------- beginning of main
06-30 16:54:00.314 22331 22331 W .mobile.stagin: Unexpected CPU variant for X86 using defaults: x86
06-30 16:54:00.322 22331 22331 E .mobile.stagin: Not starting debugger since process cannot load the jdwp agent.
--------- beginning of system
06-30 16:54:00.360 22331 22331 W ActivityThread: Package uses different ABI(s) than its instrumentation: package[com.project.mobile.staging]: x86, null instrumentation[com.project.mobile.staging.test]: null, null
06-30 16:54:00.363 22331 22331 I .mobile.stagin: The ClassLoaderContext is a special shared library.
06-30 16:54:00.363 22331 22331 I .mobile.stagin: The ClassLoaderContext is a special shared library.
06-30 16:54:00.394 22331 22331 W .mobile.stagin: ClassLoaderContext classpath size mismatch. expected=0, found=3 (PCL[] | PCL[/system/framework/android.test.runner.jar*3312018701:/system/framework/android.test.mock.jar*3601177991:/data/app/com.project.mobile.staging.test-xDMPFlqUU-VB4KP0Q1OgJQ==/base.apk*3404337873])
06-30 16:54:00.395 22331 22331 I .mobile.stagin: Failed to add image file Rejecting application image due to class loader mismatch: 'Mismatch in dex files'
06-30 16:54:00.401 22331 22331 I .mobile.stagin: The ClassLoaderContext is a special shared library.
06-30 16:54:00.402 22331 22331 I .mobile.stagin: The ClassLoaderContext is a special shared library.
06-30 16:54:00.437 22331 22331 W .mobile.stagin: ClassLoaderContext classpath size mismatch. expected=0, found=3 (PCL[] | PCL[/system/framework/android.test.runner.jar*3312018701:/system/framework/android.test.mock.jar*3601177991:/data/app/com.project.mobile.staging.test-xDMPFlqUU-VB4KP0Q1OgJQ==/base.apk*3404337873];PCL[/system/framework/android.test.runner.jar*3312018701:/system/framework/android.test.mock.jar*3601177991:/data/app/com.project.mobile.staging.test-xDMPFlqUU-VB4KP0Q1OgJQ==/base.apk*3404337873:/data/app/com.project.mobile.staging-kZ41thdx4SKLC0zH-VB32Q==/base.apk*2639139098:/data/app/com.project.mobile.staging-kZ41thdx4SKLC0zH-VB32Q==/base.apk!classes2.dex*3833259993])
06-30 16:54:00.437 22331 22331 W .mobile.stagin: Found duplicate classes, falling back to extracting from APK : /data/app/com.project.mobile.staging-kZ41thdx4SKLC0zH-VB32Q==/base.apk
06-30 16:54:00.437 22331 22331 W .mobile.stagin: NOTE: This wastes RAM and hurts startup performance.
06-30 16:54:00.437 22331 22331 W .mobile.stagin: Found duplicated class when checking oat files: 'Landroid/support/v4/app/INotificationSideChannel$Default;' in /data/app/com.project.mobile.staging-kZ41thdx4SKLC0zH-VB32Q==/base.apk and /data/app/com.project.mobile.staging-kZ41thdx4SKLC0zH-VB32Q==/base.apk
06-30 16:54:00.437 22331 22331 W .mobile.stagin:
06-30 16:54:00.689 22331 22331 I FirebaseInitProvider: FirebaseApp initialization successful
06-30 16:54:00.707 22331 22331 I MonitoringInstr: Instrumentation started!
06-30 16:54:00.726 22331 22331 D SoLoader: init start
06-30 16:54:00.727 22331 22331 D SoLoader: adding system library source: /vendor/lib
06-30 16:54:00.727 22331 22331 D SoLoader: adding system library source: /system/lib
06-30 16:54:00.727 22331 22331 D SoLoader: adding application source: com.facebook.soloader.DirectorySoSource[root = /data/app/com.project.mobile.staging-kZ41thdx4SKLC0zH-VB32Q==/lib/x86 flags = 0]
06-30 16:54:00.728 22331 22331 D SoLoader: adding backup source from : com.facebook.soloader.ApkSoSource[root = /data/data/com.project.mobile.staging/lib-main flags = 1]
06-30 16:54:00.728 22331 22331 D SoLoader: Preparing SO source: com.facebook.soloader.DirectorySoSource[root = /system/lib flags = 2]
06-30 16:54:00.728 22331 22331 D SoLoader: Preparing SO source: com.facebook.soloader.DirectorySoSource[root = /vendor/lib flags = 2]
06-30 16:54:00.728 22331 22331 D SoLoader: Preparing SO source: com.facebook.soloader.DirectorySoSource[root = /data/app/com.project.mobile.staging-kZ41thdx4SKLC0zH-VB32Q==/lib/x86 flags = 0]
06-30 16:54:00.728 22331 22331 D SoLoader: Preparing SO source: com.facebook.soloader.ApkSoSource[root = /data/data/com.project.mobile.staging/lib-main flags = 1]
06-30 16:54:00.729 22331 22331 V fb-UnpackingSoSource: locked dso store /data/user/0/com.project.mobile.staging/lib-main
06-30 16:54:00.731 22331 22331 V fb-UnpackingSoSource: deps mismatch on deps store: regenerating
06-30 16:54:00.732 22331 22331 V fb-UnpackingSoSource: so store dirty: regenerating
06-30 16:54:00.733 22331 22369 D NetworkSecurityConfig: Using Network Security Config from resource network_security_config debugBuild: false
06-30 16:54:00.755 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libc++_shared.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libfb.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libfbjni.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libfolly_futures.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libfolly_json.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libglog.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libglog_init.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libhermes-executor-common-debug.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libhermes-executor-common-release.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libhermes-executor-debug.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libhermes-executor-release.so: deferring to libdir
06-30 16:54:00.756 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libhermes-inspector.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libimagepipeline.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libjsc.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libjscexecutor.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libjsijniprofiler.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libjsinspector.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libnative-filters.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libnative-imagetranscoder.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libreact_codegen_reactandroidspec.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libreact_nativemodule_core.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libreactnativeblob.so: deferring to libdir
06-30 16:54:00.757 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libreactnativejni.so: deferring to libdir
06-30 16:54:00.758 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libreactnativeutilsjni.so: deferring to libdir
06-30 16:54:00.758 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libreactperfloggerjni.so: deferring to libdir
06-30 16:54:00.758 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libturbomodulejsijni.so: deferring to libdir
06-30 16:54:00.758 22331 22331 D ApkSoSource: not allowing consideration of lib/x86/libyoga.so: deferring to libdir
06-30 16:54:00.758 22331 22331 V fb-UnpackingSoSource: regenerating DSO store com.facebook.soloader.ApkSoSource
06-30 16:54:00.759 22331 22331 V fb-UnpackingSoSource: Finished regenerating DSO store com.facebook.soloader.ApkSoSource
06-30 16:54:00.759 22331 22331 V fb-UnpackingSoSource: starting syncer worker
06-30 16:54:00.768 22331 22331 V fb-UnpackingSoSource: releasing dso store lock for /data/user/0/com.project.mobile.staging/lib-main (from syncer thread)
06-30 16:54:00.768 22331 22331 V fb-UnpackingSoSource: not releasing dso store lock for /data/user/0/com.project.mobile.staging/lib-main (syncer thread started)
06-30 16:54:00.768 22331 22331 D SoLoader: init finish: 4 SO sources prepared
06-30 16:54:00.768 22331 22331 D SoLoader: init exiting
06-30 16:54:00.773 22331 22331 D AppCenterCrashes: Creating crashes module with crashListener DO_NOT_ASK_JAVASCRIPT
06-30 16:54:00.777 22331 22331 D SoLoader: init exiting
06-30 16:54:00.778 22331 22331 D SoLoader: About to load: libjscexecutor.so
06-30 16:54:00.778 22331 22331 D SoLoader: libjscexecutor.so not found on /data/data/com.project.mobile.staging/lib-main
06-30 16:54:00.778 22331 22331 D SoLoader: libjscexecutor.so found on /data/app/com.project.mobile.staging-kZ41thdx4SKLC0zH-VB32Q==/lib/x86
06-30 16:54:00.778 22331 22331 D SoLoader: Not resolving dependencies for libjscexecutor.so
06-30 16:54:00.801 22331 22331 D JavaScriptCore.Version: 245459.0.0
06-30 16:54:00.801 22331 22331 D SoLoader: Loaded: libjscexecutor.so
06-30 16:54:00.801 22331 22331 D SoLoader: init exiting
06-30 16:54:00.804 22331 22331 I MonitoringInstr: No JSBridge.
06-30 16:54:00.854 22331 22370 I UsageTrackerFacilitator: Usage tracking enabled
06-30 16:54:00.860 22331 22370 I TestRequestBuilder: Scanning classpath to find tests in paths [/data/app/com.project.mobile.staging.test-xDMPFlqUU-VB4KP0Q1OgJQ==/base.apk]
06-30 16:54:00.861 22331 22370 W .mobile.stagin: Opening an oat file without a class loader. Are you using the deprecated DexFile APIs?
06-30 16:54:00.990 22331 22370 D TestExecutor: Adding listener androidx.test.internal.runner.listener.LogRunListener
06-30 16:54:00.990 22331 22370 D TestExecutor: Adding listener androidx.test.internal.runner.listener.InstrumentationResultPrinter
06-30 16:54:00.990 22331 22370 D TestExecutor: Adding listener androidx.test.internal.runner.listener.ActivityFinisherRunListener
06-30 16:54:00.991 22331 22370 I TestRunner: run started: 1 tests
06-30 16:54:00.991 22331 22370 I TestRunner: run finished: 0 tests, 0 failed, 0 ignored
06-30 16:54:01.070 22331 22370 I MonitoringInstr: waitForActivitiesToComplete() took: 0ms

Environment (please complete the following information):

Detox:  18.18.1
React Native: 0.64.2
Node: v14.15.3
Build machine: MacBook Pro (15-inch, 2019) running macOs 11.2.2
Device: Android emulator (tried on Pixel_4_API_29, Pixel_API_28 and even API_27) and Android real Device
OS: Android
Test-runner (select one): jest-circus

./e2e/config.json
{
    "testEnvironment": "./environment",
    "testRunner": "jest-circus/runner",
    "testTimeout": 120000,
    "testRegex": "\\.e2e\\.js$",
    "reporters": ["detox/runners/jest/streamlineReporter"],
    "verbose": true
}

test file I run
./e2e/firstTest.e2e.js
describe('Example', () => {
  beforeAll(async () => {
    await device.launchApp();
  });

  beforeEach(async () => {
    await device.reloadReactNative();
  });

  it('should have welcome screen', async () => {
    await expect(element(by.text('Continue'))).toBeVisible();
  });
});

.detoxrc.json
running a staging flavor here
{
  "testRunner": "jest",
  "runnerConfig": "e2e/config.json",
  "apps": {
    "android.staging.release": {
      "type": "android.apk",
      "binaryPath": "android/app/build/outputs/apk/staging/release/app-staging-release.apk",
      "build": "cd android && ./gradlew assembleStagingRelease assembleStagingReleaseAndroidTest -DtestBuildType=release && cd .."
    }
  },
  "devices": {
    "emulator": {
      "type": "android.emulator",
      "device": {
        "avdName": "Pixel_4_API_29"
      }
    }
  },
  "configurations": {
    "android.emulator.staging.release": {
      "device": "emulator",
      "app": "android.staging.release"
    }
  }
}

./android/build.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext {
        kotlinVersion = '1.4.21'
        buildToolsVersion = "29.0.3"
        minSdkVersion = 21
        compileSdkVersion = 30
        targetSdkVersion = 30
    }
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath("com.android.tools.build:gradle:4.0.0")
        classpath 'com.google.gms:google-services:4.3.5'  // Google Services plugin
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        mavenLocal()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url("$rootDir/../node_modules/react-native/android")
        }
        maven {
            // Android JSC is installed from npm
            url("$rootDir/../node_modules/jsc-android/dist")
        }

        google()
        maven {
            // All of Detox' artifacts are provided via the npm module
            url "$rootDir/../node_modules/detox/Detox-android"
        }
        jcenter()
        maven { url 'https://www.jitpack.io' }
    }
}

./android/app/build.gradle
...
   buildTypes {
       debug {
            ...
       }
       release {
           signingConfig signingConfigs.release
           minifyEnabled enableProguardInReleaseBuilds
           proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
           // Detox-specific additions to pro-guard
           proguardFile "${rootProject.projectDir}/../node_modules/detox/android/detox/proguard-rules-app.pro"
       }
   }

Solutions I tried that failed too

using --debug-synchronization 500
launching the test manually

"configurations": {
    "android.emulator.staging.release": {
      "device": "emulator",
      "app": "android.staging.release",
      "behavior": {
        "launchApp": "manual"
      }
    }
  }

building on older Android API versions (29,28,27)

Thanks for your help!

Problem found: I had saved DetoxTest.java in
/android/app/androidTest/java/com/project/DetoxTest.java
instead of
/android/app/src/androidTest/java/com/project/DetoxTest.java


Remove legacy .apk build.

Print out an error message telling the user to upgrade the project if
it's not Gradle-based. Removed all the obvious traces of the legacy
build.
Added support for Dart VM kernel snapshots in Gradle builds.
Fixed Android installs to verify that the app is actually installed, and
not just rely on the presence of the .sha1 file.
Fixes #8455
Fixes #8684

This is the text that's printed out when you try to flutter build apk or flutter run an old project:
Launching lib/main.dart on Android SDK built for x86 64 in debug mode...
The build process for Android has changed, and the current project configuration
is no longer valid. Please consult

  https://github.com/flutter/flutter/wiki/Upgrading-Flutter-projects-to-build-with-gradle

for details on how to upgrade the project.

LGTM but I'm not 100% sure about the kernel stuff.

I'm not 100% sure about the kernel stuff either, but I've now fixed it so it seems to work. Except I don't know how to build a kernel snapshot. I'm hoping @danrubel will help test it once it's landed.

The kernel based changes look good. I'm happy to fix any issues that crop up in that area in subsequent PRs.


Clearer information regarding what is supported input/output

Looking at this project there two things still aren't clear to me:

Up to what version of TypeScript code is accepted
what versions of JS can be output

Can these be on the readme.md? The biggest decision adopters need to make is compatibility and change management, this will help.

All version of typecript code is supported. Typically swc is patched when the typescript team writes a post about the release candidate.
Output is also every es version, starting from es3.


⚠ 366.ru has degraded performance

In d56cbe6, 366.ru (https://366.ru) experienced degraded performance:

HTTP code: 200
Response time: 5853 ms

Resolved: 366.ru performance has improved in 628ed87.


OpenFAST ZMQ connection (1 WT)

yes

Feature or improvement description

This update enables ZMQ communication with OpenFAST. Two connections are possible:

PUB-SUB: OpenFAST results are published to a socket and all subscriber can receive updates in real-time
REQ-REP: OpenFAST can query with specific requests a socket.

Both updates can follow different time steps, default is intended to be the DT input of openfast.
FAST_Registry has been modified to handle all variables that are useful in the context of these communications. The .fst templates are to be found in /zmq_coupling_tests/templatesDir/.
In this PR, the communication is possible for only single wind turbines; developments to FAST.Farm is going to follow.
Related issue, if one exists

Impacted areas of the software

Most of the modifications made are in FAST_Subs. However, minor adjustments have also been made to ServoDyn to handle possible override from ZMQ.
Additional supporting information

Needs two requirements:

cJSON: to compact inbound and outbound message with JSON format
ZMQ: to open connection sockets in C Language. The connections are handled by C modules and imported in Fortran.

A brief white paper will be added in the documentation to use this module.
Test results, if applicable

ex01 tests consistency between received values via PUB-SUB socket and output of OpenFAST.
ex02 tests consistency between sent values via REQ-REP socket and input received by OpenFAST.
ex03 tests both connections at the same time.

Does this PR add to #2153, or replace it?
Apologies for our delays on merging #2153.  I am a little behind on merges.

Hello Andy,
No problems at all! It replaces is, we can delete the previous one.


Fixed matrix strategy failing-fast

Description about the changes
Before, if one or more jobs from one task failed, others would also immediatly cancel. This is now fixed by setting fail-fast to false as it's set to true on default. See https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs#handling-failures

Oops, wrong branch


listPkgs bugfix

Codecov Report

Merging #53 (c33e72d) into main (87b6076) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main      #53   +/-   ##
=======================================
  Coverage   93.53%   93.53%
=======================================
  Files          13       13
  Lines        5291     5293    +2
=======================================
+ Hits         4949     4951    +2
  Misses        263      263
  Partials       79       79

Impacted Files
Coverage Δ

packages/load.go
97.34% <100.00%> (+0.12%)
:arrow_up:

packages/loaddeps.go
100.00% <100.00%> (ø)

packages/loadpkgs.go
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 87b6076...c33e72d. Read the comment docs.


fix(DetailsSection): fixes close section on body click

closes #120

you shouldn't need to add headers to all those test cases. you just need to find the component with the rs-detail-section-header class and simulate a click on that

also, reference the issue that is being closed in the footer of your commit message

:+1:


Cooler README

You guys ain't ready for this
Closes #46

Aah, I didn't notice the auto-merge!
Oh well..


src: now using ubi8/nodejs-10

Pull Request Test Coverage Report for Build 288

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 95.313%

Totals

Change from base Build 286:
0.0%

Covered Lines:
93

Relevant Lines:
97

💛  - Coveralls


Semantic roles by language

So you can search for all IF or JAVA_IF/PYTHON_IF

This is likely related to #48. Partitioning out the schema allows for a wide flexibility of queries but is resulting in massive schemas. I think the ideal solution here would be to use the type of artifact in conjunction with the IF semantic role to determine if it's a specific language or not.


239 | Sliding Window Maximum | Python

Title - Sliding Window Maximum
What will change -
Type of Issue -
Please add/delete options that are not relevant.

[x] Adding New Code

Programming Language
Please add/delete options that are not relevant.

[x] Python

Self Check

Ask for issue assignment and wait to get assigned to it before making Pull Request.
Add your file in the proper folder
Clean Code and Documentation for better readability
Add Title and Description of the program in the file

:star2: Star it :fork_and_knife:Fork it :handshake: Contribute to it!
Discord server ✉ - https://discord.gg/CXksGdn
Happy Coding,

Please Assign this to me.


 AltLayer token (ALT) is set to launch on Binance on January 25, 2024. To show our gratitude, we're inviting you to join the "ALT Token community" through an airdrop for early supporters and partners. Below is a summary:

Total Allocated ALT Tokens: 300,000,000 (3% of total supply)
Distribution Categories:

NFT Holders
Altitude Campaign Participants
EigenLayer Restakers
EigenLayer Ecosystem Partners
Celestia Stakers and others
Ethereum Mainnet
Binance Mainnet

For detailed criteria and information, check the full announcement here.
Claim Airdrop Altlayer opens from January 25 to February 02, 2024. Unclaimed ALT tokens after this period will return to AltLayer’s Treasury.
Thank you for being part of AltLayer's success! More to come in Season One, stay tuned.
Note: Certain regions are restricted from the airdrop. Please review the disclaimer before participating.
skyler254, @leowiebusch, @Fareed-Ahmad7, @JordanMalan, @portellaa, @prasoonrajpoot, @quanfeifan, @JustnonDev, @thjesht, @Louis0723, @TataBra, @jarntz, @coolstand, @EdwinValdezHD, @4ndrexyz, @gmcavalheiro, @ndreca, @horakdave, @jay-0510, @iitaakash


remove repo name from spec, use object name

We made the decision to remove the RepositoryName field from the spec. Instead the repo name will be based on the name of the object. In the case of the mpas-project-controller this will be <prefix(default=mpas)>-<project_name>

Looks like the gitlab provider wasn't updated along with the others.

Good catch @phoban01, I actually had already done the GitLab changes, but somehow missed them when git adding to the original commit.


Regex with nested group seems to have exponential runtime based on input

With current master (af9f249e0299ef79c514fe2876e86662ee16e481), add the following to tests/matching.rs:
#[test]
fn bad_regex() {
    let regex = Regex::new(r"(?x)
^(?=
  (
    (
      [^|]+(?=[|]|$)
    )+
  )*
  \|
)").unwrap();
    assert_eq!(Some(false), regex.is_match("hi this is a test").ok());
}

Running it doesn't finish, killed it after a minute. Oniguruma handles it fine. When using a shorter input text such as "test", it completes, so the runtime is based on the input length.
Experimenting with the regex, the problem seems to be the nested groups that have this pattern: ((a)+)*. When removing one of those groups, the problem goes away.
A nested group like that doesn't make a lot of sense if it was written in one regex, but it's from a regex that is generated from multiple components here: https://github.com/sublimehq/Packages/blob/66bf9ac00d3cde7296182b84aec2702477c5fc40/Markdown/Markdown.sublime-syntax#L78-L94

I believe Oniguruma (and most industrial-strength RE engines) optimize these, as a pure backtracking implementation has pathological performance.
If it's just a recognizer, ie you don't care about captures, then the optimization is trivial, (a+)* can just be rewritten as a*. I think that (a+)? is equivalent in all senses (including captures) and efficient; this would be an easy optimization as well (ie to generate code for * just check whether the expr being repeated is a repetition).
Anyone care to check these assertions? If valid, I can do the optimization.

Captures are an interesting point, yeah. I haven't yet checked what Oniguruma does with captures in that case, will do some experiments tomorrow.
I had a look at the source code and this looks like the place where Oniguruma handles that case:

check in set_quantifier function
optimization logic in onig_reduce_nested_quantifier

So I tested that Oniguruma handles captures correctly.
Turning (a+)* into (a+)? sounds good to me. We should probably think about some more cases though, e.g. does (a*)+ turn into (a*)? as well? What about ((a+)*)*? Would that have to be turned into ((a+)?)??

@keith-hall I looked into this and the reason why this is fast in Oniguruma is that it has an optimization where it detects literals in the regex. In this example, it figures out that if the input doesn't contain ", it will never match. I've raised a pull request to document that, see above.
But if you change the input to ""test test test test test [world], hello[test]);, it defeats the optimization and will be slow in Oniguruma too.

Closing this, as it's documented now and there will always be cases like these no matter what we do. So what we really need is a way to limit backtracking and aborting matching, see this issue: https://github.com/fancy-regex/fancy-regex/issues/6
We could optimize this specific case in the future but we don't need an open issue for that.


[VOTE] Release Apache TVM (incubating) v0.6.1.rc1

Dear TVM community,
This is a call for vote to release Apache TVM (incubating) version 0.6.1. This is a maintenance release incorporating important bug fixes. All users of Apache TVM (incubating) 0.6.0 are advised to upgrade.
Link to release notes:
https://github.com/apache/incubator-tvm/releases/tag/v0.6.1.rc1
Link to release candidate:
https://dist.apache.org/repos/dist/dev/incubator/tvm/tvm-v0.6.1-rc1
The vote will be open for at least 72 hours. Everyone is welcomed to vote. Please vote by replying to this thread explicitly.
+1 = approve
+0 = no opinion
-1 = disapprove (provide reason)
NOTE: this thread is being mirrored in dev@

+1 (binding), I checked

Signatures and hashes good
DISCLAIMER, LICENSE
NOTICE is good
No unexpected binary files
Code compiles and runs

TQ

+1

+1

+1

+1

+1

+1

+1

+1

+1 (binding)
I checked hashes and performed a default build on Ubuntu 20.04 on Windows 2004.
Markus
On Mon, Jun 29, 2020 at 12:57 PM Cody Yu<EMAIL_ADDRESS>wrote:

+1
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/apache/incubator-tvm/issues/5947#issuecomment-651326848

Thanks everyone for voting. The voting result has been sent out.


Added subject_object_switch

Naively switches the position of the subject and object of an English sentence

Okay! Here is my overall review: I think the PR's robustness numbers speak for themselves! I hope we have taken care of all aspects of code to not find a bug cause a 30% drop is quite impressive! :) Without looking at the actual subjects and objects, my best guess would be that the changing of subject and object might have had sometimes been an interchange of a noun and pronoun.. it would be interesting to hear from @Sotwi if he has looked at some examples randomly to see why this performance gap exists!
The robustness evaluation is conducted.
(If the test cases don't work on try testing this command locally pytest -s --t=light --f=light . If they still don't, feel free to add a blank test.json and add them to the README.)
All changes look fine to me :)

Hello @kaustubhdhole and thank you for your review and your work.
Without looking at the actual subjects and objects, my best guess would be that the changing of subject and object might have had sometimes been an interchange of a noun and pronoun.. it would be interesting to hear from @Sotwi if he has looked at some examples randomly to see why this performance gap exists!
I haven't looked at the specific data in this case, but if I have some time I will definitely give it a look. That being said, I've been working on paraphrase evaluation for the last couple of months and a problem we encountered on models for semantic similarity was that similar inputs with slight changes that affected the meaning (like this one) would obtain high semantic similarity all the same. The PAWS dataset is an attempt to solve that by presenting very similar sentences with high semantic similarity variation. Hopefully this transformation can help produce more of those samples and impact semantic similarity models in the future.

Hi, I have been assigned a reviewer to this PR. I would brief my findings
Correctness: merged
Interface: I think you have chosen the correct interface(s).
Applicable Tasks & Keywords: relevant
Specificity: sentence with subject and object
Novelty:  new
Adding New Libraries: No
Description: The README is clear and explains what the transformation is aiming to do.
Data and code source: Data and code provided
Test Cases: well documented
Evaluating Robustness: good performance
Languages other than English: No


Feature - Add project Avatar

Hi,
and thanks for this addon. Very helpful.
In order to quickly identify the project, we'd like to have the project avatar in the tile.
Do you think it is possible ?

Hi h4wkmoon, i'll try to bring the project avatar in next version, ok?

Hi,
that would be nice, indeed. But, obviously it is not a key feature.


NSString rangeOfComposedCharacterSequencesForRange: not implemented.

AFNetworking uses [NSString rangeOfComposedCharacterSequencesForRange:] when percent escaping URL query string.
https://github.com/AFNetworking/AFNetworking/blob/2.x/AFNetworking/AFURLRequestSerialization.m#L99
This method is currently unimplemented.

@rupertdaniel  the functionality is available now.
closing as per commit 2bb45ad334d58198a8927d889c1ca04c2a786222.


Changed deps tool output format to make syntax

The new output format contains the same information and is almost exactly the same as before but it adheres to the makefile syntax which increases its operability. This change allows the generated output to be directly used in makefiles or
other tools capable of dealing with makefile syntax.

Also check the output of clang-scan-deps which uses the makefile dependency file syntax.
For some reason ninja chose to deviate slightly from that.


make facette build BSD-friendly

At least NetBSD sed does not support some of the flags used in this Makefile, use gsed instead
pax is more portable and exists on any BSD and OSX

Tested OK, thank you for your contribution @iMilnb!


文档中所说部署到 coding.net 上的分支为什么是 coding-pages ？？

It was defined by hexo-deployer-git. (https://github.com/hexojs/hexo-deployer-git/blob/2900ca51abc682b37919f443f3a005aa55668617/lib/parse_config.js#L69-L70)


Makes the to_range method work with or without parentheses

In response to #81.
This pull request makes it so you can pass in your numbers with or without parentheses
"(10..20)".to_range # 10..20
"10..20".to_range # 10..20

Thanks @QuintinAdam, add to master branch for now. I also add some additional tiny model specs for this.


Update process flow diagrams for Charge Price List Flow

This story is about bringing the following process flows up to date with implementation:

Charge Price List Flow

Located here.
Acceptance criteria:

[ ] 1 Process flow diagram and associated text have been updated to reflect current implementation, link
[ ] 2 Charge Price Architecture drawing updated to current implementation, link

Ready for testing. Documentation links are located next to the ACs.


kong-oidc or native OP (Operation Provider) adapters ?.

Hi all,
I built an authentication infra with kong + kong-oidc + keycloak, this is working fine, but I have seen that keycloak provides some adapters (see keycloak-client-adapters). What are pros and cons about using kong-oidc rather than some keycloak-client-adapters.

One of the biggest advantages IMO is that your protected app does not have to know anything about OIDC/OAUTH, you may not need to configure anything or write any code for it.
Just put a reverse proxy on top, enhanced with a filter plugin like kong-oidc for kong - or openidc-lua-resty for nginx - or mod_auth_openidc for Apache HTTPD - and you will have instant AuthZ.
Another one is that this plugin - and actually the great library lua-resty-openidc that powers it - acts as an opaque middleman, so no tokens are exposed to the user-agent, increasing security.


Why "External Workflow Signaled" shown as an endless event on the graph?

Relates to #99
Will be fixed as part of 3.18.0 release.


Create housekeeping command structure typedefs (consistency, futureproof)

Is your feature request related to a problem? Please describe.
CFE_XX_HousekeepingCmd_t doesn't typically exist, just uses CFE_MSG_CommandHeader_t.  More consistent to have a typedef (less future changes if unique elements needed).
Describe the solution you'd like
Add housekeeping command typedefs for the services.
Describe alternatives you've considered
None.
Additional context
https://github.com/nasa/cFE/pull/1015#discussion_r534401433
Requester Info
Jacob Hageman - NASA/GSFC from discussion on #1015

Duplicate #1037


UI: Implement routing management module

Task description
We need to create a new ng module called routing-management which should have the following pages:

List all existing Artifact Routing Rules
Add / Edit page from where you can update the route

Listing routes page
The listing of the routes should look like localhost:4200/admin/users - a table with the following columns:

URL Pattern (i.e. *./org/carlspring/strongbox*)
Rule type - either accept or denied
Storage Id - if empty it should display any
Repository Id - if empty it should display any
"Actions column" - should have a an edit and delete icons.

When you click the delete icon - it should bring a modal which asks for confirmation and upon confirmation it should send a request to the backend to delete the pattern using the uuid.
The edit icon should be a routerLink=.... which points to the edit page

Add / Edit page
This page should be the same for both cases. It should have a form which has the following fields:

URL Pattern - required field, must not be null
Type - required field, select with two options - accept and deny
Ordered list of group repositories

Ordered list of group repositories
There is an example of this at http://localhost:4200/admin/storages/public/maven-group/update.
This is a list of group repositories which can be selected in an ordered manner. The code from the storage component is not re-usable at this moment. You can either copy/paste it or create a shared component which can be used in both cases.
Additional notes

The backend controller which is responsible for the routing management is located here. You can check it out to see what are the endpoints.
Follow the structure the other modules have (i.e. user-management, settings-management, etc)
Create a service which handles the interaction with the backend

Help

Our chat
Points of contact:

@steve-todorov

I can take this task

Thanks for offering to help, @LeifBrooks ! :)

Hey @fuss86! Would you mind looking over this first PR whenever you have a few minutes?


Any way to get header information?

First off, thanks for the great work with vips, swapped out my GraphicsMagick implementation and it's faster and probably more secure :)
The only thing I'm missing is getting the header data, I've searched through the documentation but can't find anything that seem to give me what vipsheader -a file.jpg does, am I missing something or is this not possible with ruby-vips?

Hello, I'm glad it's working for you. You need get_fields:
irb(main):001:0> require 'vips'
=> true
irb(main):002:0> x = Vips::Image.new_from_file "k2.jpg"
=> #<Image 1450x2048 uchar, 3 bands, srgb>
irb(main):003:0> x.get_fields
=> ["width", "height", "bands", "format", "coding", "interpretation", "xoffset", "yoffset", "xres", "yres", "filename", "vips-loader", "jpeg-multiscan", "exif-data", "resolution-unit", "exif-ifd0-Orientation", "exif-ifd0-XResolution", "exif-ifd0-YResolution", "exif-ifd0-ResolutionUnit", "exif-ifd2-ExifVersion", "exif-ifd2-FlashPixVersion", "exif-ifd2-ColorSpace", "exif-ifd2-PixelXDimension", "exif-ifd2-PixelYDimension", "orientation", "vips-sequential"]
irb(main):004:0> x.get "exif-ifd2-ColorSpace"
=> "65535 (Internal error (unknown value 65535), Short, 1 components, 2 bytes)"

It was added in libvips 8.5, so you'll need to have that installed for ruby-vips to pick it up.

Ah, it was that simple :) Thanks for the quick reply!


[SPARK-31589][INFRA][2.4] Use r-lib/actions/setup-r in GitHub Action

What changes were proposed in this pull request?
This PR aims to use r-lib/actions/setup-r because it's more stable and maintained by 3rd party.
Why are the changes needed?
This will recover the current outage. In addition, this will be more robust in the future.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Pass the GitHub Actions, especially Linter R and Generate Documents.

Test build #121953 has started for PR 28384 at commit 67d3423.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/26628/
Test PASSed.

Thank you, @HyukjinKwon .

Merged to branch-2.4 because GitHub Action passed.

cc @holdenk since she is the release manager of 2.4.6.
(This is just for GitHub Action infra which is irrelevant to our code.)

Test build #121953 has finished for PR 28384 at commit 67d3423.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/121953/
Test FAILed.


Added webhook API to display a cmd dependency

This commit is to display the hint message when the administrator
of CI server does not install the required packages.
Signed-off-by: Geunsik Lim<EMAIL_ADDRESS>

:memo: Version: 1.20190225. Thank you for submitting PR #548. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnsuite.mooo.com/.

after this PR: The result is okay.


Tusk not working on Ubuntu 20.04

Since 09.02.2021 Tusk has stopped working on my Ubuntu laptop running 20.04 LTS.
When I start the app, I & some of my colleagues are presented with a blank white screen.
No errors appear to being displayed.

It works with this solution:
https://github.com/klaussinani/tusk/issues/308


Creating empty circuit in REPL error when using Quantikz

If you try to create an empty circuit in the REPL, an error will be thrown. It looks like this is due to the function calling Quantikz.

Using ; to suppress output (and I think the Quantikz call is a current workaround)

This also occurs when declaring Pauli strings it seems:

Again using ; and then printing works:


New version: Downloads v1.5.3

Registering package: Downloads
Repository: https://github.com/JuliaLang/Downloads.jl
Created by: @DilumAluthge
Version: v1.5.3
Commit: b0f23d0ed40cf7c5c5896f957d8163a68dfbc805
Reviewed by: @DilumAluthge
Reference: https://github.com/JuliaLang/Downloads.jl/commit/b0f23d0ed40cf7c5c5896f957d8163a68dfbc805#commitcomment-67841474

[noblock]
cc: @StefanKarpinski @ericphanson

[noblock]
AutoMerge is expected to fail here because Downloads is a stdlib.


Hi :-) any plans for angular 17/18?

Hi any plans to update this awesome library to use/excapt angular v17/18?

Thank you sincerely for your tireless work on this repo. Your contributions are invaluable to the open source community. Could you kindly confirm if the repository is still actively maintained?

Hello @out-dev
ngx-mfe v17 released
MR #25

Angular version 18 has not been released yet, target date is 2024-05-20
You can check it here https://angular.io/guide/releases#release-schedule


Introduce words

Need to make a new machine for that, need a collection of pics first

Machine is up, now needs to be connected at app level

Words are now part of the application