1919 runs-on : ubuntu-latest
2020 steps :
2121 - name : Checkout
22- uses : actions/checkout@v6
22+ uses : actions/checkout@v4
2323
2424 - name : Install clang-format
2525 run : |
@@ -29,14 +29,14 @@ jobs:
2929 - name : Check C/C++ formatting
3030 run : |
3131 NEEDS_FORMAT=false
32- for file in $(find packages/ compiler/src packages/ compiler/runtime -name "*.cpp" -o -name "*.c" -o -name "*.h" -o -name "*.hpp" 2>/dev/null); do
32+ for file in $(find compiler/src compiler/runtime compiler/include -name "*.cpp" -o -name "*.c" -o -name "*.h" -o -name "*.hpp" 2>/dev/null); do
3333 if ! clang-format --dry-run --Werror "$file" 2>/dev/null; then
3434 echo "Needs formatting: $file"
3535 NEEDS_FORMAT=true
3636 fi
3737 done
3838 if [ "$NEEDS_FORMAT" = true ]; then
39- echo "Some files need formatting. Run ./scripts/ format.sh locally."
39+ echo "Some files need formatting. Run clang- format locally."
4040 exit 1
4141 fi
4242 echo "All files are properly formatted"
4747 runs-on : ubuntu-latest
4848 steps :
4949 - name : Checkout
50- uses : actions/checkout@v6
50+ uses : actions/checkout@v4
5151
5252 - name : Install dependencies
5353 run : |
@@ -64,15 +64,13 @@ jobs:
6464 TML_EXE=$(find build -name "tml" -type f | head -1)
6565 chmod +x "$TML_EXE"
6666 echo "Using TML compiler: $TML_EXE"
67- "$TML_EXE" lint packages examples
67+ "$TML_EXE" lint lib
6868
6969 - name : Run clang-tidy (C++ lint)
7070 continue-on-error : true
7171 run : |
72- # Run on a subset of files to avoid timeout
73- # Include paths match CMakeLists.txt configuration
74- INCLUDE_ARGS="-I packages/compiler/include -I packages/compiler/src"
75- FILES=$(find packages/compiler/src -name "*.cpp" | head -10)
72+ INCLUDE_ARGS="-I compiler/include -I compiler/src"
73+ FILES=$(find compiler/src -name "*.cpp" | head -10)
7674 for file in $FILES; do
7775 echo "Checking: $file"
7876 clang-tidy "$file" -- -std=c++17 $INCLUDE_ARGS 2>/dev/null || true
@@ -89,18 +87,14 @@ jobs:
8987
9088 steps :
9189 - name : Checkout
92- uses : actions/checkout@v6
90+ uses : actions/checkout@v4
9391
9492 - name : Install dependencies (Linux)
9593 if : matrix.os == 'ubuntu-latest'
9694 run : sudo apt-get update && sudo apt-get install -y ninja-build libssl-dev
9795
98- - name : Install dependencies (macOS)
99- if : matrix.os == 'macos-latest'
100- run : brew install ninja openssl
101-
102- - name : Build with tests (Linux/macOS)
103- if : matrix.os != 'windows-latest'
96+ - name : Build with tests (Linux)
97+ if : matrix.os == 'ubuntu-latest'
10498 run : |
10599 chmod +x ./scripts/build.sh
106100 ./scripts/build.sh
@@ -110,8 +104,8 @@ jobs:
110104 shell : cmd
111105 run : scripts\build.bat
112106
113- - name : Run C++ Tests (Linux/macOS )
114- if : matrix.os != 'windows -latest'
107+ - name : Run C++ Tests (Linux)
108+ if : matrix.os == 'ubuntu -latest'
115109 run : |
116110 TEST_EXE=$(find build -name "tml_tests" -type f | head -1)
117111 if [ -n "$TEST_EXE" ]; then
@@ -133,8 +127,8 @@ jobs:
133127 with :
134128 name : tml-${{ matrix.os }}
135129 path : |
136- build/debug/tml*
137- build/Debug/ tml*
130+ build/debug/bin/ tml
131+ build/debug/bin/ tml.exe
138132 if-no-files-found : warn
139133
140134 - name : Upload Test Results
@@ -145,14 +139,14 @@ jobs:
145139 path : test-results.xml
146140 if-no-files-found : ignore
147141
148- # Run TML integration tests (Linux only for simplicity )
142+ # Run TML integration tests (Linux only)
149143 test-tml :
150144 name : TML Tests
151145 needs : build-and-test
152146 runs-on : ubuntu-latest
153147 steps :
154148 - name : Checkout
155- uses : actions/checkout@v6
149+ uses : actions/checkout@v4
156150
157151 - name : Install dependencies
158152 run : |
@@ -163,52 +157,28 @@ jobs:
163157 uses : actions/download-artifact@v4
164158 with :
165159 name : tml-ubuntu-latest
166- path : build/debug
160+ path : build/debug/bin
167161
168162 - name : Run TML Tests
169163 run : |
170- TML_EXE="build/debug/tml"
164+ TML_EXE="build/debug/bin/ tml"
171165 chmod +x "$TML_EXE"
172166 echo "Using TML compiler: $TML_EXE"
173- echo "Running TML integration tests..."
174-
175- # Run compiler tests
176- for test in packages/compiler/tests/compiler/*.test.tml; do
177- if [ -f "$test" ]; then
178- echo "Testing: $test"
179- "$TML_EXE" test "$test" || echo "Test failed: $test"
180- fi
181- done
182-
183- # Run runtime tests
184- for test in packages/compiler/tests/runtime/*.test.tml; do
185- if [ -f "$test" ]; then
186- echo "Testing: $test"
187- "$TML_EXE" test "$test" || echo "Test failed: $test"
188- fi
189- done
190-
191- # Run std tests
192- for test in packages/std/tests/*.test.tml; do
193- if [ -f "$test" ]; then
194- echo "Testing: $test"
195- "$TML_EXE" test "$test" || echo "Test failed: $test"
196- fi
197- done
167+ "$TML_EXE" test compiler/tests lib/core/tests lib/std/tests
198168
199- # Spell check (moved from separate file)
169+ # Spell check
200170 codespell :
201171 name : Spell Check
202172 runs-on : ubuntu-latest
203173 steps :
204174 - name : Checkout
205- uses : actions/checkout@v6
175+ uses : actions/checkout@v4
206176
207177 - name : Install Codespell
208178 run : python -m pip install --upgrade 'codespell[toml]'
209179
210180 - name : Run Codespell
211181 run : |
212182 codespell \
213- --skip="*.lock,*.json,*.map,*.yaml,*.yml,*.csv,*.bib,*.md,target,node_modules,.git,dist,venv,build,benchmarks,coverage,*.ll,*.bc,*.o,*.obj,*.exe,docs,rulebook" \
214- --ignore-words-list="crate,ser,deser,upToDate,optIn,shouldBe,Bloc,strbuilder,LPAR,RPAR,LBRACE,RBRACE,LBRACKET,RBRACKET,inout,hte,teh "
183+ --skip="*.lock,*.json,*.map,*.yaml,*.yml,*.csv,*.bib,*.md,target,node_modules,.git,dist,venv,build,benchmarks,coverage,*.ll,*.bc,*.o,*.obj,*.exe,docs,rulebook,.sandbox,backup,src/gcc,src/llvm-project,compiler/third_party,compiler/cranelift " \
184+ --ignore-words-list="crate,ser,deser,upToDate,optIn,shouldBe,Bloc,strbuilder,LPAR,RPAR,LBRACE,RBRACE,LBRACKET,RBRACKET,inout,olt,ogt,oge,ole,oeq,une,statics,inferrable,implementors,SEH,PassT,clos,hel,fo,bu,Nd,nd,te,aNULL,ShiftIn,Implementor,OtherWrite "
0 commit comments