Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
116 commits
Select commit Hold shift + click to select a range
a1c5542
Supersede with minhqdao/setup-fortran implementation
minhqdao Aug 21, 2026
1a4080d
Remove leftover files
minhqdao Aug 21, 2026
fa12d54
Change authorship and versions
minhqdao Aug 21, 2026
002eba0
Replace mise.toml by .nvmrc
minhqdao Aug 21, 2026
e2dd294
Upgrade npm packages
minhqdao Aug 21, 2026
90a7e38
Spcify node version
minhqdao Aug 21, 2026
3e40f4b
Move migration guide to the top, remove develop branch from ci
minhqdao Aug 21, 2026
e1cf446
Fix lfortran linking issue on Windows
minhqdao Aug 22, 2026
ba6d058
Support ifort on macos-arm
minhqdao Aug 22, 2026
4eac614
Fix companion compilers for ifort on macos-arm
minhqdao Aug 22, 2026
7083a0e
Temporarily disable canary tests
minhqdao Aug 22, 2026
5ba8357
Add cxx companion integration test
minhqdao Aug 22, 2026
e9c1af3
Disable legacy icpc companion tests
minhqdao Aug 22, 2026
e1e294f
Fix flags and disable unsupported legacy compilers
minhqdao Aug 22, 2026
adf1b5c
Disable for unsupported or unavailable c++ companions
minhqdao Aug 22, 2026
fba5a8a
Disable older glibc versions
minhqdao Aug 22, 2026
cf6e52d
Temporarily disable canary tests
minhqdao Aug 22, 2026
d74ea57
Fix nvfortran cxx companions
minhqdao Aug 22, 2026
1dfd3cb
Test all compilers
minhqdao Aug 22, 2026
416ac35
Disabler ci on develop [skip ci]
minhqdao Aug 22, 2026
e96a688
Refactor run_fortran_tests.ts for increased readability
minhqdao Aug 23, 2026
04240db
Add unit tests for ordering supported versions
minhqdao Aug 23, 2026
984e7ae
Fix tests to make sure SUPPORTED_VERSIONS isn't empty
minhqdao Aug 23, 2026
e745613
Format tests, too
minhqdao Aug 23, 2026
69367ab
Add tests for negative cases
minhqdao Aug 23, 2026
146796c
Add unit tests to make sure CI has no version gaps
minhqdao Aug 24, 2026
eaac17d
Add unit tests to make sure that supported versions are always repres…
minhqdao Aug 24, 2026
95cc15c
Add maintenance section to readme
minhqdao Aug 24, 2026
554d7a6
Try fixing gfortran tests
minhqdao Aug 24, 2026
cb5312b
Add retry to tarball installation of nvfortran
minhqdao Aug 24, 2026
22f9190
Reinstate --retry-all-errors
minhqdao Aug 24, 2026
7915760
Add lfortran on ubuntu-arm
minhqdao Aug 25, 2026
49c0238
Wrap conda create with retry
minhqdao Aug 25, 2026
575abdb
Test all compilers
minhqdao Aug 25, 2026
61c855a
Add lfortran 0.65.0
minhqdao Aug 27, 2026
f22ed6a
Fix unit test that detects missing ci entries
minhqdao Aug 27, 2026
8bc199e
Remove never supported version
minhqdao Aug 27, 2026
3367da2
Harden installations and loosen nvfortran timeouts
minhqdao Aug 28, 2026
9a522b5
Nit readme [skip ci]
minhqdao Sep 1, 2026
1f552c7
Support flang 23.1
minhqdao Sep 6, 2026
a21f0b3
Merge main: supersede v1 content with the v2 rewrite
minhqdao Sep 6, 2026
dedfce3
Fix tests
minhqdao Sep 6, 2026
44c1c5f
Enable entire matrix
minhqdao Sep 6, 2026
d322f83
Remove addition to readme [skip ci]
minhqdao Sep 6, 2026
c823356
Add support for Flang 23 on macOS arm
minhqdao Sep 8, 2026
c36c055
Rebuild artifacts
minhqdao Sep 8, 2026
b2424f6
Revert the addition of Flang 23 on macOS-arm
minhqdao Sep 8, 2026
9fd85e2
Test integration tests with cl-linking on windows for ifx companions
minhqdao Sep 8, 2026
d2bf654
Test entire matrix
minhqdao Sep 8, 2026
257cfc4
Increase ifx installation timeout
minhqdao Sep 9, 2026
4b164ff
Upgrade npm packages and rebuild
minhqdao Sep 9, 2026
38441c2
Nit warning message
minhqdao Sep 9, 2026
c6f1619
Degrade missing flang digest warning to info
minhqdao Sep 9, 2026
f1b088d
Degrade cache restoration failure warning to info
minhqdao Sep 9, 2026
41b1ab3
Add hardcoded companions to migration guide [skip ci]
minhqdao Sep 9, 2026
c5b1c32
Add path construction change to migration guide [skip ci]
minhqdao Sep 9, 2026
908ab66
Fix GITHUB_ENV migration note [skip ci]
minhqdao Sep 9, 2026
a2e73c2
Run CI on push to develop
minhqdao Sep 10, 2026
60a8706
Prevent duplicated runs
minhqdao Sep 10, 2026
da7ca6c
Change concurrency
minhqdao Sep 10, 2026
7212d73
Try another concurrency rule
minhqdao Sep 10, 2026
f6014ae
Use without concurrency
minhqdao Sep 10, 2026
bac42ce
Support for armflang 23.1
minhqdao Sep 10, 2026
6667e27
Rebuild
minhqdao Sep 10, 2026
9adf482
Increase ifort installation timeout
minhqdao Sep 11, 2026
da0723d
Try ifort offline installers to reduce flakiness
minhqdao Sep 11, 2026
34a00aa
Throw ifort installation where error occurs
minhqdao Sep 11, 2026
1e618cf
Use uppercase links
minhqdao Sep 11, 2026
d483a44
Test entire matrix
minhqdao Sep 11, 2026
e8d0597
Add timeout to integration tests in case runner hangs for some reason…
minhqdao Sep 11, 2026
af8dd47
Verify `dist/` is reproducible across Windows and Linux (#256)
minhqdao Sep 11, 2026
0fa61e9
Improve migration note (#255)
minhqdao Sep 11, 2026
bac62fb
Add retries for dns resolution
minhqdao Sep 12, 2026
d251e5f
Only run ifort tests
minhqdao Sep 12, 2026
d4f0f31
Enable full matrix
minhqdao Sep 12, 2026
b2840a0
Nit docs
minhqdao Sep 12, 2026
7bc9e2f
Rebuild
minhqdao Sep 12, 2026
423a42d
fix(tests): build expected Windows paths the same way the source buil…
djkees Sep 12, 2026
20901aa
Use Windows paths on Windows
minhqdao Sep 12, 2026
d1392d9
Validate on Windows in CI
minhqdao Sep 12, 2026
e21987e
Exclude posix installer suites on windows
minhqdao Sep 12, 2026
4dac4e7
Use path.posix.join to run npm test on win without exclusion
minhqdao Sep 12, 2026
1955cc1
Degrade most warning to info logs
minhqdao Sep 13, 2026
488f1ca
Support lfortran 0.66.0
minhqdao Sep 14, 2026
74aa9ee
Add retry to flang installation
minhqdao Sep 14, 2026
f0c73c3
Add --retry-all-errors to miniforge installers
minhqdao Sep 14, 2026
fcbc7b6
Upgrade npm packages
minhqdao Sep 14, 2026
66cea78
Harden tc download tool
minhqdao Sep 14, 2026
4dfef09
test(windows): cover flang ARM64 native install and clang64 MSYS2 ins…
djkees Sep 14, 2026
c99ad8f
Revert waiting for dns resolution because it never helped
minhqdao Sep 15, 2026
c055d94
fix(darwin): verify ifort DMG checksum before mounting (#266)
djkees Sep 15, 2026
4eac766
Merge branch 'develop' of github.com:fortran-lang/setup-fortran into …
minhqdao Sep 15, 2026
da9184f
fix(windows): dedupe PATH entries before ifort/ifx export (#260)
djkees Sep 15, 2026
e6f4e4b
fix(aocc): retry apt-get install -f with timeout options (#267)
djkees Sep 15, 2026
72179ec
test(ifort): assert PATH is exported in the win32 env test (#270)
djkees Sep 15, 2026
0e3182e
ci: cancel stale in-progress runs on new pushes (#269)
djkees Sep 15, 2026
45e0fae
Address ifort-macos flakiness
minhqdao Sep 16, 2026
ac9cd5d
Add new files
minhqdao Sep 16, 2026
6128bc4
Retry on cache hit (gfortran-ubuntu)
minhqdao Sep 22, 2026
2667677
Resolve latest flang version that contains requested binary
minhqdao Sep 22, 2026
23ee7fe
Support nvfortran 26.9
minhqdao Sep 24, 2026
b637979
Retry gfortran PPA update on warning-only fetch failure
minhqdao Sep 24, 2026
1db8b60
Add ifx/ifort notes on slow installations on windows-2022 [skip ci]
minhqdao Sep 29, 2026
3e8b461
Nit text [skip ci]
minhqdao Sep 29, 2026
52147f3
libgomp needed since 16.2 on ucrt64
minhqdao Sep 30, 2026
513fa44
Upgrade packages
minhqdao Sep 30, 2026
ea215bd
Identify libgomp
minhqdao Oct 1, 2026
fee9afe
Support lfortran 0.67.0
minhqdao Oct 7, 2026
ae2c41a
Upgrade npm packages
minhqdao Oct 7, 2026
d8419d1
Drop dist source map to avoid rebase conflicts (#271) (#279)
djkees Oct 8, 2026
2c9a37b
Fall back to DNS-over-HTTPS when resolution fails
minhqdao Oct 8, 2026
b1ab05e
Note ifort discontinuation in README (#280)
djkees Oct 8, 2026
4dd46b9
Fix tests
minhqdao Oct 9, 2026
835792e
Skip polymorphism test for flang-win-ucrt
minhqdao Oct 9, 2026
c762721
Test gfortran on ubuntu-26.04 ahead of ubuntu-latest migration (#281)
djkees Oct 9, 2026
1fc1e58
Add retry to installer downloads/installs that had none (#274)
djkees Oct 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 0 additions & 46 deletions .github/actions/test-cc/action.yml

This file was deleted.

46 changes: 0 additions & 46 deletions .github/actions/test-cxx/action.yml

This file was deleted.

96 changes: 0 additions & 96 deletions .github/actions/test-fc/action.yml

This file was deleted.

123 changes: 123 additions & 0 deletions .github/actions/verify-windows-shells/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
name: Verify Windows Shell Invocation
description: |
Verifies that FC, CC, CXX, F77, and F90 environment variables are correctly
set and that all compiler executables are callable from PowerShell, CMD,
and Bash. Uses --version with a /? fallback for MSVC-style compilers
(e.g. icl).
inputs:
fc:
description: Full path to the Fortran compiler ($FC)
required: true
cc:
description: Full path to the C companion compiler ($CC)
required: true
cxx:
description: Full path to the C++ companion compiler ($CXX)
required: true
runs:
using: composite
steps:
- name: Verify compiler invocation under pwsh (Windows only)
shell: pwsh
env:
OUTPUT_FC: ${{ inputs.fc }}
OUTPUT_CC: ${{ inputs.cc }}
OUTPUT_CXX: ${{ inputs.cxx }}
run: |
$fc = $Env:OUTPUT_FC
$cc = $Env:OUTPUT_CC
$cxx = $Env:OUTPUT_CXX
Write-Host "FC: $fc"
Write-Host "CC: $cc"
Write-Host "CXX: $cxx"

# Verify F77 and F90 legacy aliases are set and match FC
$f77 = $Env:F77
$f90 = $Env:F90
Write-Host "F77: $f77"
Write-Host "F90: $f90"
if ($f77 -ne $fc) {
Write-Error "F77='$f77' does not match FC='$fc'"
exit 1
}
if ($f90 -ne $fc) {
Write-Error "F90='$f90' does not match FC='$fc'"
exit 1
}

# Verify executables are callable under PowerShell.
# Try --version; fall back to /? for MSVC-style compilers (e.g. icl,
# ifort, cl), which reject --version on Windows.
& "$fc" --version 2>$null
if ($LASTEXITCODE -ne 0) { & "$fc" /? 2>$null }
& "$cc" --version 2>$null
if ($LASTEXITCODE -ne 0) { & "$cc" /? 2>$null }
& "$cxx" --version 2>$null
if ($LASTEXITCODE -ne 0) { & "$cxx" /? 2>$null }
& "$f77" --version 2>$null
if ($LASTEXITCODE -ne 0) { & "$f77" /? 2>$null }
& "$f90" --version 2>$null
if ($LASTEXITCODE -ne 0) { & "$f90" /? 2>$null }

- name: Verify compiler invocation under cmd (Windows only)
shell: cmd
env:
OUTPUT_FC: ${{ inputs.fc }}
OUTPUT_CC: ${{ inputs.cc }}
OUTPUT_CXX: ${{ inputs.cxx }}
run: |
echo FC: %OUTPUT_FC%
echo CC: %OUTPUT_CC%
echo CXX: %OUTPUT_CXX%
echo F77: %F77%
echo F90: %F90%
if not "%F77%" == "%OUTPUT_FC%" (
echo "::error::F77='%F77%' does not match FC='%OUTPUT_FC%'"
exit /b 1
)
if not "%F90%" == "%OUTPUT_FC%" (
echo "::error::F90='%F90%' does not match FC='%OUTPUT_FC%'"
exit /b 1
)
REM Try --version; fall back to /? for MSVC-style compilers (e.g. icl,
REM ifort, cl), which reject --version on Windows.
"%OUTPUT_FC%" --version 2>nul
if errorlevel 1 "%OUTPUT_FC%" /? 2>nul
"%OUTPUT_CC%" --version 2>nul
if errorlevel 1 "%OUTPUT_CC%" /? 2>nul
"%OUTPUT_CXX%" --version 2>nul
if errorlevel 1 "%OUTPUT_CXX%" /? 2>nul
"%F77%" --version 2>nul
if errorlevel 1 "%F77%" /? 2>nul
"%F90%" --version 2>nul
if errorlevel 1 "%F90%" /? 2>nul

- name: Verify compiler invocation under bash (Windows only)
shell: bash
env:
OUTPUT_FC: ${{ inputs.fc }}
OUTPUT_CC: ${{ inputs.cc }}
OUTPUT_CXX: ${{ inputs.cxx }}
run: |
fc="$OUTPUT_FC"
cc="$OUTPUT_CC"
cxx="$OUTPUT_CXX"
echo "FC: $fc"
echo "CC: $cc"
echo "CXX: $cxx"

# F77/F90 legacy aliases must match FC.
if [ "$F77" != "$fc" ] || [ "$F90" != "$fc" ]; then
echo "::error::F77='$F77' or F90='$F90' does not match FC='$fc'"
exit 1
fi

# Try --version; fall back to /? for MSVC-style compilers (e.g. icl,
# ifort, cl), which reject --version on Windows. This step also proves
# the toolchain directories are reachable from Git Bash, where /usr/bin
# precedes every GITHUB_PATH entry.
"$fc" --version >/dev/null 2>&1 || "$fc" /? >/dev/null 2>&1
"$cc" --version >/dev/null 2>&1 || "$cc" /? >/dev/null 2>&1
"$cxx" --version >/dev/null 2>&1 || "$cxx" /? >/dev/null 2>&1
"$F77" --version >/dev/null 2>&1 || "$F77" /? >/dev/null 2>&1
"$F90" --version >/dev/null 2>&1 || "$F90" /? >/dev/null 2>&1
13 changes: 0 additions & 13 deletions .github/compat/compat.csv

This file was deleted.

52 changes: 0 additions & 52 deletions .github/compat/latest-versions.sh

This file was deleted.

Loading
Loading