ClojureScript Figwheel - REPL fails to recover prompt after error - clojurescript

I'm wondering how to get figwheel to recover after an error is thrown in the REPL. I'm starting figwheel from a cli tools set up (no lein).
=> clojure -m figwheel.main --build somebuild --repl
Once an error is thrown (this doesn't happen with every error tho) I lose the REPL prompt and have to ctrl-c kill and reboot figwheel (which is terrible for productivity).
Here is an example.
cljs.user=> (swap! throw an unrecoverable error)
This shows some obvious error messages (non of those vars bind to anything), returns a #object[Error: ...], but then the prompt is gone and I can't recover the REPL.
I've tried refreshing the browser tab, hot reloading files, nothing recovers the prompt. Is there a particular set up for figwheel to insure this doesn't happen?
Fighweel version below.
{:deps {com.bhauman/figwheel-main {:mvn/version "0.2.3"}
com.bhauman/rebel-readline-cljs {:mvn/version "0.1.4"}}}

This is a known issue.
See issue https://github.com/bhauman/figwheel-main/issues/161

Related

Getting logs/more information during start-build command execution

Jenkins pipeline is building Docker images. OpenShift plugin(s) are used for the same.
An example command:
openshift.selector(BUILD_CONFIG_NAME, "${appBcName}").startBuild("--from-dir=${artifactPath}", '--wait','--follow')
While this works smoothly most of the time, whenever this command fails due to some underlying platform issues, almost no information is seen in the Jenkins build job console:
[Pipeline] }
[start-build:buildconfig/amld5-car-reporting-spacetime-ubi-openshift-java-runtimejd] ............................................................
[start-build:buildconfig/amld5-car-reporting-spacetime-ubi-openshift-java-runtimejd] Uploading finished
[start-build:buildconfig/amld5-car-reporting-spacetime-ubi-openshift-java-runtimejd] Error from server (BadRequest): unable to wait for build amld5-car-reporting-spacetime-ubi-openshift-java-runtimejd-857 to run: timed out waiting for the condition
[Pipeline] }
ERROR: Error running start-build on at least one item: [buildconfig/amld5-car-reporting-spacetime-ubi-openshift-java-runtimejd];
{err=, verb=start-build, cmd=oc --server=https://api.scp-west-zone02-z01.net:6443 --certificate-authority=/var/run/secrets/kubernetes.io/serviceaccount/ca.crt --namespace=sb-1166-amld5-car-service-se --token=XXXXX start-build buildconfig/amld5-car-reporting-spacetime-ubi-openshift-java-runtimejd --from-dir=./build/libs --wait --follow -o=name , out=Uploading directory "build/libs" as binary input for the build ...
............................................................
Uploading finished
Error from server (BadRequest): unable to wait for build amld5-car-reporting-spacetime-ubi-openshift-java-runtimejd-857 to run: timed out waiting for the condition
, status=1}
[Pipeline] // catchError
I need more verbosity, detailed error information. I checked the start-build command reference, and I thought --build-loglevel [0-5] might help here. When I used it, I got a warning that since I am using source type as 'Binary' in the BuildConfig, logging isn't supported(seriously???)
NOTE: the selector returned when -F/--follow is supplied to startBuild() will be inoperative for the various selector operations.
Consider removing those options from startBuild and using the logs() command to follow the build output.
[start-build:buildconfig/casc-docs-spacetime-ubi-openshift-java-runtimeadoptopenjdk] WARNING: Specifying --build-loglevel with binary builds is not supported.
[start-build:buildconfig/casc-docs-spacetime-ubi-openshift-java-runtimeadoptopenjdk] WARNING: Specifying environment variables with binary builds is not supported.
[start-build:buildconfig/casc-docs-spacetime-ubi-openshift-java-runtimeadoptopenjdk] Uploading directory "build/libs" as binary input for the build ...
[start-build:buildconfig/casc-docs-spacetime-ubi-openshift-java-runtimeadoptopenjdk] ..
How do I get more logs, info. while executing the start-build command?
I was facing the same problem, I just used something like:
def build = openshift.selector(BUILD_CONFIG_NAME, "${appBcName}").startBuild("--from-dir=${artifactPath}", '--wait','--follow')
build.logs('-f')
And so far it seems to work, I got the logs from my openshift build in my Jenkins pipeline. Now I'll try to get the logs only if build does not Complete, to reduce the overall logs.
(for future searchers like me ^^)

Backstop timeout causes fatal, prevents any results: how can I get backstop / puppeteer to show which URL is failing?

Running a backstop test, I get the following output and backstop fails to generate a report:
COMMAND | Command "test" ended with an error after [195.665s]
COMMAND | TimeoutError: waiting for target failed: timeout 30000ms exceeded
at Function.waitWithTimeout (/usr/local/lib/node_modules/backstopjs/node_modules/puppeteer/lib/helper.js:228:26)
at Browser.waitForTarget (/usr/local/lib/node_modules/backstopjs/node_modules/puppeteer/lib/Browser.js:214:27)
at Browser.<anonymous> (/usr/local/lib/node_modules/backstopjs/node_modules/puppeteer/lib/helper.js:112:23)
at ChromeLauncher.launch (/usr/local/lib/node_modules/backstopjs/node_modules/puppeteer/lib/Launcher.js:247:21)
at process._tickCallback (internal/process/next_tick.js:68:7)
x Close Browser
How do I tell which scenario is failing, so that I can debug it?
Puppeteer is the engine I'm using.
** Update: I've noticed a pattern between these failing pages: most of them include iframes (mostly youtube). I've worked around the issue in most cases by instructing backstop to ignore iframes, by using the removeSelectors directive:
"removeSelectors": [
"iframe"
]
I'm not thrilled with this solution, so leaving open in case someone has a better answer.
The only thing that helped resolve it for me was reinstalling my node packages.
rm -rf node_modules
npm install

Rendering Error when executing Yarn Run with Boilerplate and Electron-React

I am very new to this and will probably have a hard time explaining the problem well. I am using boilerplate and electron react to open a webpage. Up until today it was working fine, however all of a sudden my console reads an error when using
yarn run
The error is:
Failed to load resource: the server responded with a status of 404 (Not Found) renderer.dev.js:1
The window appears but nothing renders.
I've tried to revert my commits but the problem doesn't go away, I'm unsure of what route to pursue with the problem.
Any guidance would be appreciated
EDIT
It looks like sajad saderi's suggestion of removing node_modules and reinstalling it removed the specific error message, and my renderer.dev.js file has loaded. However, now the following appears
Uncaught Error: None of the binaries loaded successfully. Is your node version >= 10.15 ?
at failIfNoBinaryExported (renderer.dev.js:192034)
at Object.liveLoad (renderer.dev.js:192030)
at Object../node_modules/msnodesqlv8/lib/bootstrap.js (renderer.dev.js:192050)
at __webpack_require__ (renderer.dev.js:771)
at fn (renderer.dev.js:131)
at renderer.dev.js:192072
at Object../node_modules/msnodesqlv8/lib/connection.js (renderer.dev.js:192508)
at __webpack_require__ (renderer.dev.js:771)
at fn (renderer.dev.js:131)
at Object.<anonymous> (renderer.dev.js:194552)
The program is meant to gather data from an SQL Server using Electron React, Boilerplate, and msnodesqlv8

KWrite installation/ usage errors

I used to be able to use KWrite in the Fedora terminal fine, a few permission issues raised but weren't too problematic. However, I have been unable to open KWrite, although I can run scripts written in it fine. Whenever I try to open KWrite, I am given the message:
Qt: Session management error: None of the authentication protocols specified are supported "Session bus not found
To circumvent this problem try the following command (with Linux and bash)
export $(dbus-launch)"
This command does not seem to do anything helpful. Any ideas?

Error log for Octave "panic: Illegal instruction -- stopping myself"

Is there an error log where I can figure out the error message and line of code in my file which makes the Octave interpreter post the following messages in Emacs?
panic: Illegal instruction -- stopping myself...
panic: attempted clean up apparently failed -- aborting...
Process Inferior Octave aborted (core dumped)
You must use the Octave debugger (take a look at the Debugging section of the Octave manual).
If this was an error message, you could activate debug_on_error. Since it is not, it's a proper crash, you must start on debug mode (enter the keyboard command) and step line by line (enter the command dbstep) until you find which one causes the issue.