Skip to content

V0.1.1/stabilize#31

Merged
thanos merged 4 commits into
mainfrom
v0.1.1/stabilize
Jun 17, 2026
Merged

V0.1.1/stabilize#31
thanos merged 4 commits into
mainfrom
v0.1.1/stabilize

Conversation

@thanos

@thanos thanos commented Jun 17, 2026

Copy link
Copy Markdown
Owner

No description provided.

thanos added 4 commits June 17, 2026 15:04
…titled; prompts/prompt-0.1.1.md was empty, so I wrote the spec there first).

What's new
LivebookTest.Preflight — runtime checks for Elixir (>= 1.18.0), OTP (26/27/28), and Livebook (~> 0.19.0 with live_markdown_to_elixir/1). Integrated into mix livebook.test and LivebookTest.run_with_config/2 with actionable troubleshooting messages.

Path dependency patching — in --mode local, DependencyPatcher now rewrites:

 - Hex deps ({:my_lib, "~> 0.5"})
 - Quoted path deps ({:my_lib, path: "../lib"})
 - Path.join(__DIR__, ...) deps

All are expanded to absolute paths for stable CI runs.

Documentation

 - docs/guides/kino_limitations.md — Kino/smart cell caveats
 - README: supported versions, troubleshooting, Kino section
 - Updated local_dependency_testing.md for path dep rewriting

CI — livebook-test job now runs across the full Elixir/OTP matrix (1.18/27, 1.19/27, 1.20/28).

Version bumped to 0.1.1 with CHANGELOG entry.

 - closed #25 Add elixir: "~> 1.18" or document exact support.
 - closed #26 Add preflight checks for Elixir/OTP/Livebook versions.
 - closed #27 Add clear failure message when Livebook cannot compile.
 - closed #28 Patch path: dependencies in --mode local.
 - closed #29 Document Kino limitations
 - closed #30 Add CI matrix proving supported versions.
Preflight — unsupported Elixir/OTP versions, check! raise path, livebook unavailable/missing-export/version overrides, supports_livebook_version?/1, parse_otp_release/1, incompatible version formatting.

Exporter — livebook_unavailable, export exceptions (with/without troubleshooting hints), write_failed via read-only temp dir, injectable markdown_converter and temp_dir for tests.

LivebookTest — preflight: false, verbose logging for export/patch read/patch write failures via TestExporter + exporter_module injection.

Mix task — atom mode, integer timeout, invalid --verbose=not-a-boolean CLI parsing error path.

Test infrastructure
test/support/test_support.ex — with_env/4 helper
test/support/test_exporter.ex — stub exporter for pipeline error paths
The two remaining uncovered preflight lines are the real Code.ensure_loaded?(Livebook) branch and Application.spec(:livebook, :vsn) == nil — both are hard to hit reliably in tests without fragile module unloading.
@thanos thanos merged commit c801a87 into main Jun 17, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant