You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
So I am just trying to understand how the daemon works. I can run the Daemon using gauge daemon 1234 but how do I tell gauge run to use that specific port?
Does running the Daemon tell gauge run to use that instance which would avoid Gauge having to parse step implementations every time we do a gauge run?
gauge daemon is meant to feed input to an IDE where the parsed information can be used to enrich the editing experience. There are two modes for the daemon, one which uses protobuf messages over a tcp socket (old way, used only for Intellij IDEA at the moment), and the second mode is LSP (Language Server Protocol). In the LSP mode, gauge daemon spins up a gauge language server that is used by editors like vscode which has an LSP client.
Does running the Daemon tell gauge run to use that instance which would avoid Gauge having to parse step implementations every time we do a gauge run?
gauge run does not depend on gauge daemon, they share some steps, but that is internal to gauge. I am curious about the use case though, do you see parsing step implementations to be an expensive task? Usually the bulk of time in gauge run is spent at the language runner/test code side. You can timegauge validate and gauge run for the same project to get a relative sense of execution time
I see lots of time spent in the parsing, I actually posted on the getgauge python repo because the implementation for Python 3.8 and beyond takes even longer (approx 1 min sometimes) than the Python 3.7 implementation. So we are sticking with Python 3.7 to save on about 30 seconds every time we call gauge run. I still wonder if there is a faster way than how it is currently implemented. I am not sure if this happens for other languages but for Python it is an issue, we have a pretty big test repo since we use same repo across all products and a lot of tests for us can be re-used for new products.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
So I am just trying to understand how the daemon works. I can run the Daemon using
gauge daemon 1234
but how do I tellgauge run
to use that specific port?Does running the Daemon tell
gauge run
to use that instance which would avoid Gauge having to parse step implementations every time we do agauge run
?Beta Was this translation helpful? Give feedback.
All reactions