All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
v0.5.0 - 2025-03-17
- (BREAKING CHANGE) Path location of blend lockfiles and artifacts changed:
- Deps path has changed from
blend/deps/example/toblend/example/deps. - Build (compile artifcats) path has changed from
blend/_build/example/toblend/example/_build. - Lockfiles path has changed from
blend/example.mix.locktoblend/example/mix.lock.
- Deps path has changed from
- Update
.gitignoreto correctly ignore artifacts new location
-/blend/_build
-/blend/deps
+/blend/*/_build
+/blend/*/deps- Move existing blend lockfiles and artifacts
You can run the below multi-line command in your project root path.
for lock_file in blend/*.mix.lock; do
blend_name=$(basename "$lock_file" .mix.lock)
mkdir -p "blend/$blend_name"
mv "$lock_file" "blend/$blend_name/mix.lock"
if [ -d "blend/_build/$blend_name" ]; then
mv "blend/_build/$blend_name" "blend/$blend_name/_build/"
fi
if [ -d "blend/deps/$blend_name" ]; then
mv "blend/deps/$blend_name" "blend/$blend_name/deps/"
fi
done- Clean old directories
rm -r blend/deps blend/_build- Update blend in blend locks also
mix blend.update blend- If you have a
blend/premix.exsupdate it as follows:
-maybe_put_env.("MIX_LOCKFILE", "blend/#{blend}.mix.lock")
-maybe_put_env.("MIX_DEPS_PATH", "blend/deps/#{blend}")
-maybe_put_env.("MIX_BUILD_ROOT", "blend/_build/#{blend}")
+maybe_put_env.("MIX_LOCKFILE", "blend/#{blend}/mix.lock")
+maybe_put_env.("MIX_DEPS_PATH", "blend/#{blend}/deps")
+maybe_put_env.("MIX_BUILD_ROOT", "blend/#{blend}/_build")- If you have references to blend files in CI configuration files like
.github/workflows/*.ymlor other, you might need to update those references path.
v0.4.2 - 2025-03-12
mix blend.unlockto unlock dependencies in blend lockfiles, analogous tomix deps.unlock.
v0.4.1 - 2024-09-24
mix blend.installas a rename formix blend.init(soft-deprecated, still works).mix blend.gen.premixas a rename formix blend.premix(soft-deprecated, still works).
v0.4.0 - 2024-08-09
mix blend.cleanto clean stale blend lockfiles and blend build artifacts- Documentation improvements
v0.3.0 - 2024-02-28
mix blend.premixtask to auto generatepremix.exsfile to help in configuring theBLENDenv var
- Support elixir 1.13+
v0.2.0 - 2024-02-23
mix blend.listmix blend.clean
v0.1.3 - 2024-02-15
- Support elixir 1.14+
- Better IO messaging when running blend tasks
v0.1.2 - 2024-02-08
mix blend.geton first run (when_buildfolder is empty) now works
v0.1.1 - 2024-02-06
mix blend.update
v0.1.0 - 2024-02-06
mix blend.initmix blend.get