`hace` shard

Now I feel guilty about not working on Hace for MONTHS :-D

2 Likes

Haha it works nicely! I haven’t benched it but Im pretty sure it’s faster than go-task which was my tool of choice before discovering hace!

Although it is not compiling on the latest crystal version so Im copying an older binary I have around as a work around rn, I need to find sometime to look into whats breaking in crinja and upstream a fix :frowning:

1 Like

Oh, it needs to switch to crinja master with latest crystal. New release today.

UPDATE: Also Crinja now has some trouble with YAML::Any but worked around it, release in progress.

2 Likes

hi @ralsina just wanted to share I wanted to try hace out for macOS apple Silicon and ran into a snag with shards build, something internally with croupier i think. here is the GitHub issue I created: building hace from source on macOS apple silicon · Issue #3 · ralsina/hace · GitHub just wanted to send a message here for more visibility. but not urgent at all, just would be cool to switch over to instead of make! happy to help contribute if you’re strapped on time or anything, or don’t care for macOS etc. thanks :slight_smile:

I don’t have a mac so I can’t really test it but I will take a look tomorrow.

thanks!

Here’s how we handled inotify in my kubernetes shard: feat(client): Cache service account token by pfeifferj · Pull Request #5 · jgaskins/kubernetes · GitHub

1 Like

If I understand correctly, reading a file on other platforms versus using inotify watcher on linux. maybe I can do the same with a croupier fork / PR if it makes sense for that lib, haven’t looked at the internals yet. But thanks, this usage helps me understand a little more what’s going on :+1:t2:

Easiest thing is to just disable “watch” mode when not on Linux.

Medium is switch to fswatch (but I don’t want to because static builds for Linux are handy)

Hardest is to have a -D flag that switches to fswatch when not on Linux

SOMETHING should be in place and released today or tomorrow

2 Likes

Wow thanks for the quick turnaround! Those options make sense. Easiest for now? And for the future think about whether it’s worth it to support watch in other platforms? Granted I am not familiar with how it’s used in hace and whether not having watch mode is very important to it

The “auto” mode lets you just run it and it will rebuild things as needed whenever a file changes. It’s nice but not fundamental (and can be emulated using something like entr) so I will probably just disable it in non-Linux operating systems for a bit.

However, it’s not just a Hace feature, it’s in the underlying croupier library, so I need to do 2 releases so it’s a bit of work.

1 Like

good to know

However, it’s not just a Hace feature, it’s in the underlying croupier library, so I need to do 2 releases so it’s a bit of work

Yes, totally understood, take your time. I appreciate you even considering it

yayyy, thanks @ralsina it works great on macOS with latest commit! very nice of you to jump on this so quickly! I closed the GitHub issue :slight_smile:

I’ll shut up now :shushing_face: , and stop hijacking this thread haha