Fork me on GitHub
#shadow-cljs
<
2018-01-24
>
tony.kay07:01:46

@thheller Not sure how far you are on the HUD, but I noticed that macro errors don’t show in the HUD (only at the CLI). It would also be nice to see the hot reload as an indicator like figwheel does as well…lets you know when you should expect a UI change. Sometimes you don’t know if you failed to make the change correctly, or if the thing is still compiling. A little more browser feedback would be really helpful. The compiler feels a lot more solid, but those little feedback bits really hurt the real-time experience for me (I have to leave a console open instead, which takes valuable screen space). As far as how the HUD looks: I think it’s fine. Yeah, it’s not as pretty as figwheel, but it’s just as useful (if macro errors showed up as well)

robert-stuttaford07:01:10

haha i like the kapow suggestion

thheller09:01:58

planned on doing the tools.deps integration today

thheller09:01:04

can maybe do some HUD work

thheller12:01:12

[email protected] has experimental support for deps.edn. requires a very recent version and still has a couple problems but sort of works.

thheller12:01:41

just add :deps {:aliases [:test :foo]} to shadow-cljs.edn if you want to try

thheller12:01:46

will update docs later

mhuebert12:01:10

i’ve started seeing things happening locally like this:

[2018-01-24 13:55:44 - WARNING] TCP Port 9630 in use.
[2018-01-24 13:55:44 - WARNING] TCP Port 9631 in use.
[2018-01-24 13:55:44 - WARNING] TCP Port 9632 in use.
[2018-01-24 13:55:44 - WARNING] TCP Port 9633 in use.
[2018-01-24 13:55:53 - WARNING] :shadow.cljs.devtools.server.dev-http/start-error resources/public 8700 #error {
 :cause Address already in use
 :via
 [{:type java.lang.RuntimeException
   :message java.net.BindException: Address already in use
   :at [io.undertow.Undertow start Undertow.java 214]}
  {:type java.net.BindException
   :message Address already in use
   :at [ bind0 Net.java -2]}]

mhuebert12:01:19

even when I’ve quit all existing processes as best as I can tell

mhuebert13:01:00

just now I went into Activity Monitor and force quitting all the main processes seemed to work

mhuebert13:01:00

it looks like one of the same issues we had on circle:

> shadow-cljs start; shadow-cljs clj-run web3.build.build/reset-asset-paths;shadow-cljs watch browser;

shadow-cljs - config: /Users/MattPro/Documents/sites2017/web3/shadow-cljs.edn version: 2.0.142
shadow-cljs - server starting ..................................................................................... ready!
shadow-cljs - config: /Users/MattPro/Documents/sites2017/web3/shadow-cljs.edn version: 2.0.142
shadow-cljs - connected to server
shadow-cljs - socket connect failed, server process dead?
deleted pid file, please retry command to start new server

mhuebert13:01:30

a command like shadow-cljs start; shadow-cljs clj-run _SOMETHING_; shadow-cljs watch browser seems to be problematic

mhuebert13:01:13

and manually quitting processes becomes necessary

thheller13:01:39

will look into it. maybe ; messes with the backgrounding of the process somehow

thheller13:01:43

is that on linux?

thheller13:01:54

$ shadow-cljs start; shadow-cljs clj-run test.foo/bar; shadow-cljs watch npm
shadow-cljs - config: /Users/zilence/code/tmp/cljs-bg/shadow-cljs.edn version: 2.0.143
shadow-cljs - server starting ........................................... ready!
shadow-cljs - config: /Users/zilence/code/tmp/cljs-bg/shadow-cljs.edn version: 2.0.143
shadow-cljs - connected to server
:bar


shadow-cljs - config: /Users/zilence/code/tmp/cljs-bg/shadow-cljs.edn version: 2.0.143
shadow-cljs - connected to server
shadow-cljs - watching build :npm
[:npm] Configuring build.
[:npm] Compiling ...

thheller13:01:40

same result on macOs and linux. no idea why any of it would fail.

thheller15:01:11

@mhuebert I now have this reproduced in circleci

thheller15:01:15

no idea what the cancel means yet but thats the issue I guess

thheller15:01:33

looks like a circleci thing

thheller16:01:35

from what I can tell the client just fails to connect to the tcp socket

thheller16:01:46

when I run the build with ssl I can open the port just fine

thheller17:01:32

got it to work it seems

thheller17:01:59

no idea why the added curl fixes it and why that says App not ready. start should only return once the cli-repl.port exists which is written AFTER all the servers were started.

thheller17:01:21

so it really doesn’t make sense to me what is going on

thheller17:01:52

https://circleci.com/gh/thheller/shadow-cljs/101 without curl but still sleep 1 after start. I give up figuring out why this is required.

mhuebert19:01:42

Sorry - was afk. The stuff I posted this morning was on my mac

thheller20:01:55

@tony.kay just watched a bit of your fulcro workflow vid and couldn’t help but notice a lot of dead UI in intellij where figwheel is running. if you were to run shadow-cljs watch build in IntelliJ Terminal (or from REPL) in that place instead you’d get warnings there.

thheller20:01:10

finished a few tweaks to the HUD too though. no Kapow! though.

thheller20:01:42

thats my setup usually

thheller20:01:26

HUD is nice too but mine needs work 😉

thheller21:01:27

@mhuebert the only thing I can think of for your process issue is that something wipes out the target/shadow-cljs directory so you keep starting new instances since the old port info is gone. do you run lein clean or similar things by any chance?

mhuebert22:01:52

@thheller I think an issue may be that processes are not being killed.

mhuebert22:01:10

npx shadow-cljs start; npx shadow-cljs stop; => always adds a new process, doesn’t kill the last one

mhuebert23:01:42

server.pid is always reflecting the last process id created

mhuebert23:01:20

all the .port files are deleted when I ctrl-c, but the process.id file and process itself remain

mhuebert23:01:49

i’m on mac os 10.13.2