Remix.run Logo
spankalee 5 hours ago

We just started exploring Mise as a (much) simpler alternative to Nix + Bazel for a polyglot monorepo.

One of my concerns was about how well maintained Mise would be given that it's mostly a single maintainer, so I think this is good news in that respect.

Good luck to Jeff!

blcArmadillo 21 minutes ago | parent | next [-]

Off topic but how are you using Bazel with Nix? Specifically with regards to Bazel's cache. It doesn't seem like that would work well with Nix.

nextaccountic an hour ago | parent | prev | next [-]

Note, you can install some packages from nix in mise https://github.com/jbadeau/mise-nix

xyzzy_plugh 4 hours ago | parent | prev | next [-]

As a proponent of both Nix and Bazel, unless you need them for a specific reason you should totally use Mise. I recommend Mise to everyone.

If everyone on your team gets Mise and you're starting to feel pain at the periphery then it can definitely make sense to adopt a more elaborate toolchain orchestrator.

sangeeth96 3 hours ago | parent | prev | next [-]

Likewise looking to adopt mise at work, have a PR nearly there and especially with all the LLM/skills CLIs, mise looks well positioned. I've been using it for a long time personally and is a delight to work with.

Curious given polyglot monorepo and bazel, does mise have something that solves the build graph/caching stuff that IIUC comes with Bazel or is that something that's not needed for the monorepo you help maintain?

spankalee 3 hours ago | parent [-]

Yeah, Mise has caching: https://mise.jdx.dev/cache-behavior.html

I'm a massive fan of Wireit and its caching behavior, so I'm looking for something to live up to that. I have more testing to do. I think Mise defaults to mtime-keyed cache but has an option for content hashing, which it what Wireit uses and makes it quick to undo a change and get a cache hit.

jdxcode 11 minutes ago | parent [-]

this is probably the better link to what they were asking about: https://mise.jdx.dev/tasks/running-tasks.html#running-on-fil...

mise's sources/outputs is intentionally pretty naive though. It's not bazel/buck2. That may change one day but so far it's more for writing tasks and less trying to be an authoritative build system.

JamesSwift 3 hours ago | parent | prev [-]

Devenv is "mise but nix" and is very good. It is currently undergoing a big migration though, so still a few rough edges. I highly recommend checking it out if you find yourself wanting nix at all.