From 0c64995ea28febcc7d38e1519da8d93391ce2e7d Mon Sep 17 00:00:00 2001 From: Yong He Date: Tue, 7 Jun 2022 14:10:49 -0700 Subject: Major language server features. (#2264) * Major language server features. * Include slangd in binary release. * Fix compiler issues. * Fix compiler error. * Completion resolve. * Various improvements. * Update diagnostic test expected output. * Bug fix for source locations. * Adjust diagnostic update frequency. * Update github actions to store artifacts. * Fix infinite parser loop. * Fix parser recovery. * Fix parser recovery. * Update test. * Fix test. * Disable IR gen for language server. * Allow commit characters in auto completion. * Fix lookup for invoke exprs. * More parser robustness fixes. * update solution file Co-authored-by: Yong He --- .github/workflows/linux.yml | 9 +++++++++ .github/workflows/release-linux.yml | 4 ++-- .github/workflows/release-windows.yml | 1 + .github/workflows/verify-solution-file.yml | 2 +- .github/workflows/windows.yml | 12 +++++++++++- 5 files changed, 24 insertions(+), 4 deletions(-) (limited to '.github') diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index d9d0a7b66..e25d03908 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -26,6 +26,15 @@ jobs: CONFIGURATION=${{matrix.configuration}} ARCH=${{matrix.platform}} source ./github_build.sh + - uses: actions/upload-artifact@v3 + with: + name: slang-build-${{matrix.configuration}}-${{matrix.platform}}-${{matrix.compiler}} + path: | + bin/**/*.dll + bin/**/*.exe + bin/**/*.so + bin/**/slangc + bin/**/slangd - name: test run: CONFIGURATION=${{matrix.configuration}} diff --git a/.github/workflows/release-linux.yml b/.github/workflows/release-linux.yml index db8879757..3f5feeaef 100644 --- a/.github/workflows/release-linux.yml +++ b/.github/workflows/release-linux.yml @@ -40,9 +40,9 @@ jobs: export SLANG_BINARY_ARCHIVE=slang-${SLANG_TAG}-${SLANG_OS_NAME}-${SLANG_ARCH_NAME}.zip export SLANG_BINARY_ARCHIVE_TAR=slang-${SLANG_TAG}-${SLANG_OS_NAME}-${SLANG_ARCH_NAME}.tar.gz echo "creating zip" - zip -r ${SLANG_BINARY_ARCHIVE} bin/*/*/slangc bin/*/*/libslang.so bin/*/*/libslang-glslang.so bin/*/*/libgfx.so bin/*/*/libslang-llvm.so docs/*.md README.md LICENSE slang.h slang-com-helper.h slang-com-ptr.h slang-tag-version.h slang-gfx.h prelude/*.h + zip -r ${SLANG_BINARY_ARCHIVE} bin/*/*/slangc bin/*/*/slangd bin/*/*/libslang.so bin/*/*/libslang-glslang.so bin/*/*/libgfx.so bin/*/*/libslang-llvm.so docs/*.md README.md LICENSE slang.h slang-com-helper.h slang-com-ptr.h slang-tag-version.h slang-gfx.h prelude/*.h echo "creating tar" - tar -czf ${SLANG_BINARY_ARCHIVE_TAR} bin/*/*/slangc bin/*/*/libslang.so bin/*/*/libslang-glslang.so bin/*/*/libgfx.so bin/*/*/libslang-llvm.so docs/*.md README.md LICENSE slang.h slang-com-helper.h slang-com-ptr.h slang-tag-version.h slang-gfx.h prelude/*.h + tar -czf ${SLANG_BINARY_ARCHIVE_TAR} bin/*/*/slangc bin/*/*/slangd bin/*/*/libslang.so bin/*/*/libslang-glslang.so bin/*/*/libgfx.so bin/*/*/libslang-llvm.so docs/*.md README.md LICENSE slang.h slang-com-helper.h slang-com-ptr.h slang-tag-version.h slang-gfx.h prelude/*.h echo "::set-output name=SLANG_BINARY_ARCHIVE::${SLANG_BINARY_ARCHIVE}" echo "::set-output name=SLANG_BINARY_ARCHIVE_TAR::${SLANG_BINARY_ARCHIVE_TAR}" - name: UploadBinary diff --git a/.github/workflows/release-windows.yml b/.github/workflows/release-windows.yml index 9237441ff..fdad2d73e 100644 --- a/.github/workflows/release-windows.yml +++ b/.github/workflows/release-windows.yml @@ -72,6 +72,7 @@ jobs: 7z a "$binArchive" bin\*\*\gfx.dll 7z a "$binArchive" bin\*\*\gfx.lib 7z a "$binArchive" bin\*\*\slangc.exe + 7z a "$binArchive" bin\*\*\slangd.exe 7z a "$binArchive" docs\*.md $srcArchive = "slang-$slangVersion-source.zip" diff --git a/.github/workflows/verify-solution-file.yml b/.github/workflows/verify-solution-file.yml index 7610e05fd..66c2d00a7 100644 --- a/.github/workflows/verify-solution-file.yml +++ b/.github/workflows/verify-solution-file.yml @@ -16,7 +16,7 @@ jobs: fetch-depth: '1' - name: verify run: | - & .\premake.bat vs2019 + & .\premake.bat vs2019 --deps=true $diff = & git diff if ($diff.length -ne 0) { diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 1637640e8..2d6b7c413 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -29,6 +29,15 @@ jobs: - name: build run: MSBuild.exe slang.sln -v:m -m -property:Configuration=${{matrix.configuration}} -property:Platform=${{matrix.platform}} -property:WindowsTargetPlatformVersion=10.0.19041.0 + - uses: actions/upload-artifact@v3 + with: + name: slang-build-${{matrix.configuration}}-${{matrix.platform}}-${{matrix.compiler}} + path: | + bin/**/*.dll + bin/**/*.exe + bin/**/*.so + bin/**/slangc + bin/**/slangd - name: test run: | if ("${{matrix.configuration}}" -eq "Debug") { @@ -50,4 +59,5 @@ jobs: $env:Path += ";$slangTestBinDir"; Invoke-WebRequest -uri "https://github.com/shader-slang/swiftshader/releases/download/v1.0/vk_swiftshader_windows_$testPlatform.zip" -Method "GET" -Outfile "swiftshader.zip"; Expand-Archive "swiftshader.zip" -DestinationPath $slangTestBinDir; - & "$slangTestBinDir\slang-test.exe" -api all-dx12 -appveyor -bindir "$slangTestBinDir\" -platform $testPlatform -configuration ${{matrix.configuration}} -category $testCategory 2>&1; \ No newline at end of file + & "$slangTestBinDir\slang-test.exe" -api all-dx12 -appveyor -bindir "$slangTestBinDir\" -platform $testPlatform -configuration ${{matrix.configuration}} -category $testCategory 2>&1; + \ No newline at end of file -- cgit v1.2.3