Running `npm test` for VSCode extension in Jenkins CI crashes - visual-studio-code

I have a Jenkins CI setup to run tests for my VS Code extension. I setup the container as is detailed in the Continuous Integration page in the VS Code documentation https://code.visualstudio.com/api/working-with-extensions/continuous-integration.
apt update
apt install -y libasound2 libgbm1 libgtk-3-0 libnss3 xvfb
I then run tests as follows
xvfb-run -a npm run test
This was working fine up until very recently when my tests starting taking a little longer than they did before. I now get the following error messages half way through my test run.
16:27:34 [main 2023-02-06T15:27:34.720Z] CodeWindow: renderer process gone (reason: crashed, code: 133)
16:27:34
16:27:34 [main 2023-02-06T15:27:34.723Z] [UtilityProcess id: 1, type: extensionHost, pid: 413]: waiting to exit...
16:27:34
16:27:34 [main 2023-02-06T15:27:34.736Z] [UtilityProcess id: 1, type: extensionHost, pid: 413]: received exit event with code 0
16:27:34 [main 2023-02-06T15:27:34.737Z] Extension host with pid 413 exited with code: 0, signal: unknown.
16:27:34
16:27:34 Error sending from webFrameMain: Error: Render frame was disposed before WebFrameMain could be accessed
16:27:34 at s.send (node:electron/js2c/browser_init:173:631)
16:27:34 at g.send (node:electron/js2c/browser_init:169:2657)
16:27:34 at E.send (/tmp/code/.vscode-test/vscode-linux-x64-1.75.0/VSCode-linux-x64/resources/app/out/vs/code/electron-main/main.js:16:77328)
...
and the test run fails. This doesn't seem related to the tests as it can occur at slightly different times in the test run. It just seems like running VS Code tests will fail if they take too long.
What can I do to avoid this?

Related

Error: Failed to start debug session! in vscode-ros with ROS Melodic

I am trying to debug a ROS node inside VSCode but it seems that the debugger is not working. Please see below screen recordings:
Attaching a running node
Launching nodes
I noticed that attaching a node is requesting authentication. But after providing the correct password, nothing happens. Similarly, the launching nodes show processes for a second but die/disappear immediately.
Below is the version related information:
Visual Studio Code v1.74.3
VSCode-ROS Extension v0.8.4
ROS Melodic
GCC v7.5.0
Python v2.7.17
Ubuntu OS v18.04.6 LTS
Ubuntu OS Kenel v5.4.0-137-generic
The developer tools are showing following following error:
[Extension Host] rejected promise not handled within 1 second: Error: Failed to start debug session!
[Extension Host] stack trace: Error: Failed to start debug session!
at LaunchResolver.<anonymous> (/home/ravi/.vscode/extensions/ms-iot.vscode-ros-0.8.4/out/src/debugger/configuration/resolvers/ros1/launch.js:310:32)
at Generator.next (<anonymous>)
at fulfilled (/home/ravi/.vscode/extensions/ms-iot.vscode-ros-0.8.4/out/src/debugger/configuration/resolvers/ros1/launch.js:7:58)
at process.processTicksAndRejections (node:internal/process/task_queues:96:5)
Please see a screenshot below:

Github CI UITest gives flaky tests 'Unable to monitor event loop'

I am running my UI Tests on Github CI and the tests are flaky. I don't understand how I can fix it. The animations are disabled and I am running the tests on a iPhone 13 plus. A lot of tests are running green, but some are not working. Locally, I got everything working.
These are some logs:
2022-06-21T13:42:23.2627250Z t = 63.34s Tap Cell
2022-06-21T13:42:23.2707530Z t = 63.34s Wait for com.project.project to idle
2022-06-21T13:42:23.2733620Z t = 63.41s Unable to monitor event loop
2022-06-21T13:42:23.2734250Z t = 63.41s Unable to monitor animations
2022-06-21T13:42:23.2734800Z t = 63.42s Find the Cell
2022-06-21T13:42:24.1158670Z t = 64.45s Find the Cell (retry 1)
2022-06-21T13:42:24.1287900Z t = 64.45s Collecting extra data to assist test failure triage
2022-06-21T13:42:24.2022460Z /Users/runner/work/project/UITestCase.swift:665: error: -[project.UserTagTest testTapInTextView] : Failed to get matching snapshot: Lost connection to the application (pid 12676). (Underlying Error: Couldn’t communicate with a helper application. Try your operation again. If that fails, quit and relaunch the application and try again. The connection to service created from an endpoint was invalidated: failed to check-in, peer may have been unloaded: mach_error=10000003.)
It can not find the cell because of these logs:
Unable to monitor event loop
Unable to monitor animations
I know this because I sometimes get different errors than the error above, which says that the connection to the application is lost, right below the Unable to monitor... error logging.
Is there anything I can try? I don't have a reproduction project. This is the command that is executed:
xcodebuild test -project project.xcodeproj -scheme project-iosUITests -destination 'platform=iOS Simulator,name=iPhone 13 Pro,OS=15.5'
The CI runs 35 tests and 5 fails randomly with the Unable to errors. Is there any suggestion to fix this problem?

Getting this error when running ng e2e on mac with visual studio code

Setup :
#angular/cli#8.1.2
#ionic/cli#6.12.3
cordova#10.0.0
npm#6.14.10
“protractor”: “~5.4.0
Mac OS : Catalina
This is the error I am getting
** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
:information_source: 「wdm」: Compiled successfully.
[12:08:58] I/launcher - Running 1 instances of WebDriver
[12:08:58] I/direct - Using ChromeDriver directly...
[12:08:58] E/runner - Unable to start a WebDriver session.
[12:08:58] E/launcher - Error: Error: spawn Unknown system error -86
at ChildProcess.spawn (internal/child_process.js:403:11)
at Object.spawn (child_process.js:553:9)
at exec (/Users/sunilharan/Documents/Projects/IONIC/App_NAME/node_modules/selenium-webdriver/io/exec.js:116:27)
at /Users/sunilharan/Documents/Projects/IONIC/App_NAME/node_modules/selenium-webdriver/remote/index.js:219:25
at processTicksAndRejections (internal/process/task_queues.js:93:5)
[12:08:58] E/launcher - Process exited with error code 100
This same setup is working on another machine running on M1 chip. I have tried on different computers but not working on any of them except my M1 Macbook Pro.
This is an issue with the latest chromedriver on MacOS. Please see detailed resolutions in this ticket.
"As a general solution, simply avoid using the chromedriver that has _m1 in its filename if you are on an Intel mac."
OSX fix Selenium Chromedriver launch error spawn Unknown system error -86 Bad CPU type in executable?

Starting Parpool in MATLAB

I tried starting parpool in MATLAB 2015b. Command as follows,
parpool('local',3);
This command should allocate 3 workers. Whereas I received an error stating failure to start parpool. The error message as follows,
Error using parpool (line 94)
Failed to start a parallel pool. (For information in addition to
the causing error, validate the profile 'local' in the Cluster Profile
Manager.)
A similar query was posted in (https://nl.mathworks.com/matlabcentral/answers/196549-failed-to-start-a-parallel-pool-in-matlab2015a). I followed the same procedure, to validate the local profile as per the suggestions.
Using distcomp.feature( 'LocalUseMpiexec', false); or distcomp.feature( 'LocalUseMpiexec', true) in startup.m didn't create any improvement. Also when attempting to validate local profile still gives error message as follows,
VALIDATION DETAILS
Profile: local
Scheduler Type: Local
Stage: Cluster connection test (parcluster)
Status: Passed
Description:Validation Passed
Command Line Output:(none)
Error Report:(none)
Debug Log:(none)
Stage: Job test (createJob)
Status: Failed
Description:The job errored or did not reach state finished.
Command Line Output:
Failed to determine if job 24 belongs to this cluster because: Unable to
read file 'C:\Users\varad001\AppData\Roaming\MathWorks\MATLAB
\local_cluster_jobs\R2015b\Job24.in.mat'. No such file or directory..
Error Report:(none)
Debug Log:(none)
Stage: SPMD job test (createCommunicatingJob)
Status: Failed
Description:The job errored or did not reach state finished.
Command Line Output:
Failed to determine if job 25 belongs to this cluster because: Unable to
read file 'C:\Users\varad001\AppData\Roaming\MathWorks\MATLAB
\local_cluster_jobs\R2015b\Job25.in.mat'. No such file or directory..
Error Report:(none)
Debug Log:(none)
Stage: Pool job test (createCommunicatingJob)
Status: Skipped
Description:Validation skipped due to previous failure.
Command Line Output:(none)
Error Report:(none)
Debug Log:(none)
Stage: Parallel pool test (parpool)
Status: Skipped
Description:Validation skipped due to previous failure.
Command Line Output:(none)
Error Report:(none)
Debug Log:(none)
I am receiving these error only in my cluster machine. But launching parpool in my standalone PC is working perfectly. Is there a way to rectify this issue?

Why does Chef-Client have different outputs in PowerShell?

When I run Chef-Client in PowerShell and allow the process to output to the screen using the following command:
& Chef-Client -z -r "chef-cookbook"
I get this output:
[2014-11-10T07:20:40-08:00] WARN: No config file found or specified on command line, using command line options.
Starting Chef Client, version 11.16.4
resolving cookbooks for run list: ["chef-cookbook"]
Synchronizing Cookbooks:
- chef-cookbook
- powershell-automation
Compiling Cookbooks...
Converging 2 resources
Recipe: powershell-automation::Port_Configuration
* powershell_script[Port_Configuration] action run (skipped due to not_if)
Recipe: powershell-automation::IIS_InstallAutomation
* powershell_script[IIS_InstallAutomation] action run (skipped due to not_if)
Running handlers:
Running handlers complete
Chef Client finished, 0/0 resources updated in 43.69728 seconds
When I run the same command, but capture it to a variable, using the following command:
$chefOutput = & Chef-Client -z -r "chef-cookbook"
The $chefOutput variable contains:
[2014-11-10T07:23:01-08:00] WARN: No config file found or specified on command line, using command line options.
[2014-11-10T07:23:01-08:00] INFO: Auto-discovered chef repository at C:/Temp
[2014-11-10T07:23:01-08:00] INFO: Starting chef-zero on host localhost, port 8889 with repository at repository at C:/Temp
One version per cookbook
[2014-11-10T07:23:06-08:00] INFO: *** Chef 11.16.4 ***
[2014-11-10T07:23:06-08:00] INFO: Chef-client pid: 3364
[2014-11-10T07:23:37-08:00] INFO: Setting the run_list to [recipe[chef-cookbook]] from CLI options
[2014-11-10T07:23:37-08:00] INFO: Run List is [recipe[chef-cookbook]]
[2014-11-10T07:23:37-08:00] INFO: Run List expands to [chef-cookbook]
[2014-11-10T07:23:37-08:00] INFO: Starting Chef Run for XXXXX.XXX.XXX.XXX.com
[2014-11-10T07:23:37-08:00] INFO: Running start handlers
[2014-11-10T07:23:37-08:00] INFO: Start handlers complete.
[2014-11-10T07:23:37-08:00] INFO: HTTP Request Returned 404 Not Found : Object not found: /reports/nodes/XXXXX.XX.XX.XX.com/runs
[2014-11-10T07:23:37-08:00] INFO: Loading cookbooks [chef-cookbook#2015.1.0, powershell-automation#2015.1.0]
[2014-11-10T07:23:37-08:00] INFO: Processing powershell_script[Port_Configuration] action run (powershell-automation::Port_Configuration line 22)
[2014-11-10T07:23:37-08:00] INFO: Processing bash[Guard resource] action run (dynamically defined)
[2014-11-10T07:23:38-08:00] INFO: bash[Guard resource] ran successfully
[2014-11-10T07:23:38-08:00] INFO: Processing powershell_script[IIS_InstallAutomation] action run (powershell-automation::IIS_InstallAutomation line 16)
[2014-11-10T07:23:43-08:00] INFO: Chef Run complete in 6.346486 seconds
[2014-11-10T07:23:43-08:00] INFO: Running report handlers
[2014-11-10T07:23:43-08:00] INFO: Report handlers complete
Why does this discrepancy between outputs happen?
Note: I am seeing that the output in the variable also contains the time stamps and INFO tags for each line. Based on this, I believe this is something to do with how Chef outputs vs something to do with PowerShell.
It checks if stdout is a TTY.