Document mise, add tooling-agnostic toolchain check (closes #67)#68
Closed
dominicletz wants to merge 4 commits intomainfrom
Closed
Document mise, add tooling-agnostic toolchain check (closes #67)#68dominicletz wants to merge 4 commits intomainfrom
dominicletz wants to merge 4 commits intomainfrom
Conversation
Introduce Desktop.ToolVersions and Desktop.Toolchain to compare the active OTP major and Elixir release against .tool-versions without invoking asdf or mise, so CI and shell wrappers can fail fast with a clear message. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Update Linux getting started to cover mise and asdf equally, point README readers at .tool-versions and mix desktop.check_toolchain, and note wrapper scripts should use mise exec or asdf exec rather than asdf-only paths. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
|
@gemini review this PR |
ExUnit only injects context.tmp_dir when :tmp_dir is tagged; add @moduletag so Desktop.ToolchainTest setup runs. Stop mapping all File.read failures to :enoent; surface real I/O errors via Desktop.Toolchain.verify with a clear message for the Mix task. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
The Mix task should not suggest mise/asdf when failure is an I/O error from File.read. Document read failures in Toolchain.verify/2 and add a regression test using a directory named .tool-versions. Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This change addresses issue #67 by decoupling developer guidance and automation from asdf-only assumptions.
Documentation
.tool-versions, with copy-paste examples for both.run_mix) should not hard-code asdf paths; usemise exec --orasdf execso the same version file drives the runtime..tool-versionsand the new Mix task.mix desktop.check_toolchainCompares the already active Erlang/OTP major and Elixir semver from
System.otp_release/0andSystem.version/0toerlang/elixirlines in.tool-versions. It does not shell out to mise or asdf, so CI and scripts stay portable: activate the runtime however you prefer, then run the task to fail fast with an actionable message.Tests
Desktop.ToolVersionsparsing (including theerlang … systemline format) andDesktop.Toolchain.verify/2are covered by ExUnit tests undertest/desktop/.Closes #67.