Document mise, add tooling-agnostic mix desktop.check_toolchain (#67)#71
Open
dominicletz wants to merge 4 commits intomainfrom
Open
Document mise, add tooling-agnostic mix desktop.check_toolchain (#67)#71dominicletz wants to merge 4 commits intomainfrom
dominicletz wants to merge 4 commits intomainfrom
Conversation
Introduce Desktop.ToolVersions and Desktop.Toolchain to compare the running OTP major and Elixir semver against project .tool-versions without shelling out to mise/asdf. Mix task fails fast with actionable messages when mismatched. Adds ExUnit coverage for parsing edge cases and verification behavior. Refs #67 Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Linux getting started treats mise and asdf equally for .tool-versions, explains manager-agnostic shell wrappers, and documents mix desktop.check_toolchain. README notes contributor toolchain pinning. Refs #67 Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
|
Important Installation incomplete: to start using Gemini Code Assist, please ask the organization owner(s) to visit the Gemini Code Assist Admin Console and sign the Terms of Services. |
MainWindow was passed as an atom but the API expects String.t(), which made Dialyzer infer igniter/1 had no successful return and flagged the rest of the module as dead code. Use "MainWindow" consistently. Fixes CI Compile & Lint (dialyzer). Co-authored-by: Dominic Letz <dominicletz@users.noreply.github.com>
Collaborator
Author
|
Demo screenshots are embedded in the PR description (terminal run of Thanks for using cursor-automation.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
Addresses issue #67 by decoupling contributor docs from asdf-only wording and adding a tooling-agnostic check that compares the running Erlang/OTP major and Elixir version to
.tool-versions.Approach (business case)
Developers use mise, asdf, distro packages, or CI images. Hard-coding asdf paths in docs or scripts breaks those setups. The fix defines
.tool-versionsas the project contract (same file format mise and asdf understand), documents both managers for Linux, and addsmix desktop.check_toolchainwhich reads.tool-versionsand compares toSystem.otp_release/0andSystem.version/0—no shelling out to mise/asdf, so CI and minimal images stay valid.Changes
Desktop.ToolVersions— parseerlang/elixirlines (supports trailing tokens such assystem).Desktop.Toolchain—verify/2andverify_file/2with injectable OTP/Elixir for tests.mix desktop.check_toolchain— Mix task at project root; exits non-zero with actionable errors on mismatch.mise exec --/asdf exec), README pointer + changelog entry.Demo screenshots
CLI verification (
mix desktop.check_toolchainwith the toolchain matching.tool-versions):Linux getting started guide — Version managers (optional) section (mise / asdf examples and the verification command):
Tests
test/desktop/tool_versions_test.exsandtest/desktop/toolchain_test.exscover parsing and verification (includingerlang … systemstyle lines).Validated with
mise exec -- xvfb-run -a mix test test/desktop/.Note:
Mix.Tasks.Desktop.InstallTeststill fails withoutmix archive.install hex phx_new(pre-existing environment constraint per AGENTS.md).Closes #67.
Thanks for using cursor-automation.com