Fork me on GitHub
#shadow-cljs
<
2022-05-01
>
p-himik09:05:54

Oh wow. I just had an issue that made me think I was going insane. Trying to migrate my release build process so it uses Docker containers. Ran podman build ..., got an image, but... the build artifacts aren't there. So RUN npm run buid-ui works just fine but RUN ls target/prod shows no files. As you can probably guess, the build-ui NPM script relies on shadow-cljs run. Turns out, running shadow-cljs run within a container actually uses a shadow-cljs server instance outside the container, if there's one running.

thheller09:05:41

hmm did you mount the .shadow-cljs dir in the container? otherwise it shouln't be able to find or use the outside server?

p-himik09:05:11

No mounts at all, only COPY statements and .shadow-cljs is ignored. I'll have to debug it a bit further before understanding why it works that way. Maybe it's intentional, or maybe there's something wrong with podman build.

thheller10:05:20

thats the only thing that is checked whether or not a server is used

thheller10:05:49

if they don't exist then it doesn't go out looking for a server at all

p-himik10:05:49

Thanks. Hmm, seems like "`.shadow-cljs` is ignored" statement is incorrect... The way I was reading docs and discussions about .containerignore, all dot files are ignored by default. But apparently that's not the case, so I gotta fix that.

p-himik17:05:34

An unrelated issue - after upgrading to 2.18.0 (I think), I started getting this warning about at least once a day, regardless of whether I actually follow the recommendation in it:

Browserslist: caniuse-lite is outdated. Please run:
  npx browserslist@latest --update-db
  Why you should do it regularly: 
No clue whether it's something on the shadow-cljs' side at all.

thheller18:05:18

fixed recently. will be gone with next release

🎉 1