Julia: support language_version

This commit is contained in:
Eric Hanson 2025-07-21 18:16:15 +02:00
parent a1d7bed86f
commit e7509272b3
3 changed files with 28 additions and 2 deletions

View file

@ -67,7 +67,12 @@ jobs:
if: matrix.language == 'haskell'
- uses: r-lib/actions/setup-r@v2
if: matrix.os == 'ubuntu-latest' && matrix.language == 'r'
- uses: julia-actions/install-juliaup@v2
if: matrix.language == 'julia'
with:
channel: 'release'
- run: juliaup add 1.10.10
if: matrix.language == 'julia'
- name: install deps
run: python -mpip install -e . -r requirements-dev.txt
- name: run tests

View file

@ -49,8 +49,13 @@ def run_hook(
def get_env_patch(target_dir: str, version: str) -> PatchesT:
return (
('JULIA_LOAD_PATH', target_dir),
# May be set, remove it to not interfer with LOAD_PATH
# May be set, remove it to not interfere with LOAD_PATH
('JULIA_PROJECT', UNSET),
# Only set JULIAUP_CHANNEL if we don't want use the system's default
*(
(('JULIAUP_CHANNEL', version),)
if version not in ('system', 'default') else ()
),
)

View file

@ -28,6 +28,22 @@ def test_julia_hook(tmp_path):
assert run_language(tmp_path, julia, 'src/main.jl') == expected
def test_julia_hook_version(tmp_path):
code = """
using Example
function main()
println("Hello, Julia $(VERSION)!")
end
main()
"""
_make_hook(tmp_path, code)
expected = (0, b'Hello, Julia 1.10.10!\n')
assert run_language(
tmp_path, julia, 'src/main.jl',
version='1.10.10',
) == expected
def test_julia_hook_manifest(tmp_path):
code = """
using Example