From the sentence "Shards master tries to follow Crystal master" stems 2 issues:
To improve this, we should:
Follow up from https://github.com/crystal-lang/crystal/issues/5083.
I don't see this as an issue. Crystal master is a temporary thing that changes all the time. People shouldn't use it. They should use releases. And releases are guaranteed to have a compatible shards working because we make sure it builds before a release.
Not an issue for me (and I'm sure it's not an issue for you, @ysbaddaden )
Sure, 1. sure ain't a real problem, but being notified with a daily or weekly cron-job may be nice. But 2. means CI is broken until the next release, which can be problematic (e.g. git push and pull requests will always fail).
by issuing a homebrew formula you somewhat accepted that one can/ attempts to build from the master and for certain tests it might be good, not general usage, sure
(after all, this is actually an easy way to do it)
the issues with shards always will have to be fixed anyway, may as well see them in CI
@monouser7dig I don't think that just because we have a homebew formula, we should expect HEAD to work. Having a homebrew formula is a nicety to install releases, not a requirement for us not to break it with --HEAD.
We should not expect it to work flawlesslesly but a minimium of effort could be spend to detect breaking changes and eventually fix them.
Realistically these breaking changes will not occur that frequently?
If you think this is too much workload/ slows down other areas it is ok to leave it as is but a running CI job that detects work that has to be done anyway seems reasonably lightweight.
Alternatively, if building bin/shards fails, we could download+build crystal master then retry. If someone has some time to lose on this, please open a pull request :)
With the new CI setup of crystal, there are finally nightly builds available. At least the nightly docker image should be usable pretty easy.
There is also bcardiff/test-ecosystem would it make sense to add shards there, too? Or run the shards specs directly with the crystal nightlies. At least for the latest stable (I'm not sure, maybe this is already implemented)?