mirror of
https://github.com/clangd/clangd.git
synced 2025-12-15 11:43:30 +00:00
Compare commits
No commits in common. "master" and "snapshot_20240602" have entirely different histories.
master
...
snapshot_2
3
.github/ISSUE_TEMPLATE/bug_report.md
vendored
3
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@ -17,9 +17,6 @@ If you can, provide a minimal chunk of code that shows the problem (either inlin
|
|||||||
Please attach the clangd stderr log if you can. (Usually available from the editor)
|
Please attach the clangd stderr log if you can. (Usually available from the editor)
|
||||||
If possible, run with `--log=verbose` - note that the logs will include the contents of open files!
|
If possible, run with `--log=verbose` - note that the logs will include the contents of open files!
|
||||||
If this is a crash, try to put `llvm-symbolizer` on your PATH per the troubleshooting instructions.
|
If this is a crash, try to put `llvm-symbolizer` on your PATH per the troubleshooting instructions.
|
||||||
(If you're using Windows, place the associated PDB file (debug symbols) in the same directory as
|
|
||||||
clangd.exe and rerun again. For official releases, download symbols from the
|
|
||||||
[release page](https://github.com/clangd/clangd/releases).)
|
|
||||||
|
|
||||||
**System information**
|
**System information**
|
||||||
|
|
||||||
|
|||||||
61
.github/workflows/autobuild.yaml
vendored
61
.github/workflows/autobuild.yaml
vendored
@ -5,8 +5,6 @@
|
|||||||
# Because the build takes more than an hour, our GITHUB_TOKEN credentials may
|
# Because the build takes more than an hour, our GITHUB_TOKEN credentials may
|
||||||
# expire. A token `secrets.RELEASE_TOKEN` must exist with public_repo scope.
|
# expire. A token `secrets.RELEASE_TOKEN` must exist with public_repo scope.
|
||||||
name: Build release binaries
|
name: Build release binaries
|
||||||
env:
|
|
||||||
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
|
|
||||||
on:
|
on:
|
||||||
# Run weekly on sunday at 21:37 UTC (arbitrary)
|
# Run weekly on sunday at 21:37 UTC (arbitrary)
|
||||||
schedule:
|
schedule:
|
||||||
@ -70,7 +68,7 @@ jobs:
|
|||||||
run: >
|
run: >
|
||||||
echo "RELEASE_DESCRIPTION=Unstable snapshot of clangd on ${{ env.RELEASE_DATE }}." >> commit.env
|
echo "RELEASE_DESCRIPTION=Unstable snapshot of clangd on ${{ env.RELEASE_DATE }}." >> commit.env
|
||||||
- name: Upload result
|
- name: Upload result
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: env
|
name: env
|
||||||
path: commit.env
|
path: commit.env
|
||||||
@ -87,7 +85,7 @@ jobs:
|
|||||||
echo "RELEASE_NAME=${{ github.event.inputs.release_name }}" >> commit.env
|
echo "RELEASE_NAME=${{ github.event.inputs.release_name }}" >> commit.env
|
||||||
echo "RELEASE_DESCRIPTION=${{ github.event.inputs.description }}" >> commit.env
|
echo "RELEASE_DESCRIPTION=${{ github.event.inputs.description }}" >> commit.env
|
||||||
- name: Upload result
|
- name: Upload result
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: env
|
name: env
|
||||||
path: commit.env
|
path: commit.env
|
||||||
@ -101,12 +99,10 @@ jobs:
|
|||||||
if: always() && (needs.schedule_environment.result == 'success' || needs.workflow_dispatch_environment.result == 'success')
|
if: always() && (needs.schedule_environment.result == 'success' || needs.workflow_dispatch_environment.result == 'success')
|
||||||
steps:
|
steps:
|
||||||
- name: Fetch environment variables
|
- name: Fetch environment variables
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v1
|
||||||
with:
|
with:
|
||||||
name:
|
name:
|
||||||
env
|
env
|
||||||
path:
|
|
||||||
env
|
|
||||||
- name: Set environment variables
|
- name: Set environment variables
|
||||||
run: |
|
run: |
|
||||||
cat env/commit.env >> $GITHUB_ENV
|
cat env/commit.env >> $GITHUB_ENV
|
||||||
@ -130,7 +126,7 @@ jobs:
|
|||||||
echo "TAG_NAME=${{ env.TAG_NAME }}" >> release.env
|
echo "TAG_NAME=${{ env.TAG_NAME }}" >> release.env
|
||||||
echo "RELEASE_ID=${{ steps.create_release.outputs.id }}" >> release.env
|
echo "RELEASE_ID=${{ steps.create_release.outputs.id }}" >> release.env
|
||||||
- name: Upload result
|
- name: Upload result
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: release
|
name: release
|
||||||
path: release.env
|
path: release.env
|
||||||
@ -147,22 +143,20 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
config:
|
config:
|
||||||
- name: windows
|
- name: windows
|
||||||
os: windows-2022
|
os: windows-2019
|
||||||
preinstall: choco install ninja nasm
|
preinstall: choco install ninja nasm
|
||||||
vcvars: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
vcvars: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat
|
||||||
cflags: /O2 /DNDEBUG
|
cflags: /O2 /DNDEBUG
|
||||||
cmake: >-
|
cmake: >-
|
||||||
"-DCMAKE_C_COMPILER=cl"
|
"-DCMAKE_C_COMPILER=cl"
|
||||||
"-DCMAKE_CXX_COMPILER=cl"
|
"-DCMAKE_CXX_COMPILER=cl"
|
||||||
"-DLLVM_ENABLE_ZLIB=OFF"
|
"-DLLVM_ENABLE_ZLIB=OFF"
|
||||||
"-DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded"
|
"-DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded"
|
||||||
"-DLLVM_ENABLE_PDB=ON"
|
|
||||||
"-DLLVM_PARALLEL_LINK_JOBS=1"
|
|
||||||
grpc_cmake: >-
|
grpc_cmake: >-
|
||||||
"-DgRPC_MSVC_STATIC_RUNTIME=ON"
|
"-DgRPC_MSVC_STATIC_RUNTIME=ON"
|
||||||
binary_extension: ".exe"
|
binary_extension: ".exe"
|
||||||
- name: mac
|
- name: mac
|
||||||
os: macos-13
|
os: macos-latest
|
||||||
preinstall: brew install ninja zlib p7zip
|
preinstall: brew install ninja zlib p7zip
|
||||||
cflags: -O3 -gline-tables-only -DNDEBUG
|
cflags: -O3 -gline-tables-only -DNDEBUG
|
||||||
cmake: >-
|
cmake: >-
|
||||||
@ -170,27 +164,26 @@ jobs:
|
|||||||
"-DCMAKE_CXX_COMPILER=clang++"
|
"-DCMAKE_CXX_COMPILER=clang++"
|
||||||
"-DLLVM_ENABLE_ZLIB=FORCE_ON"
|
"-DLLVM_ENABLE_ZLIB=FORCE_ON"
|
||||||
"-DCMAKE_OSX_ARCHITECTURES=x86_64;arm64"
|
"-DCMAKE_OSX_ARCHITECTURES=x86_64;arm64"
|
||||||
"-DCMAKE_OSX_DEPLOYMENT_TARGET=10.13"
|
"-DCMAKE_OSX_DEPLOYMENT_TARGET=10.9"
|
||||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
|
|
||||||
# BoringSSL doesn't support universal binaries when building with ASM.
|
# BoringSSL doesn't support universal binaries when building with ASM.
|
||||||
grpc_cmake: >-
|
grpc_cmake: >-
|
||||||
"-DOPENSSL_NO_ASM=ON"
|
"-DOPENSSL_NO_ASM=ON"
|
||||||
- name: linux
|
- name: linux
|
||||||
os: ubuntu-latest
|
os: ubuntu-latest
|
||||||
container: ubuntu:20.04
|
container: ubuntu:18.04
|
||||||
preinstall: >-
|
preinstall: >-
|
||||||
apt-get update &&
|
apt-get update &&
|
||||||
apt-get install -y ninja-build libz-dev libc-ares-dev wget clang-10
|
apt-get install -y ninja-build libz-dev libc-ares-dev wget clang-9
|
||||||
software-properties-common p7zip-full curl &&
|
software-properties-common p7zip-full curl &&
|
||||||
add-apt-repository ppa:git-core/ppa &&
|
add-apt-repository ppa:git-core/ppa &&
|
||||||
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | apt-key add - &&
|
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | apt-key add - &&
|
||||||
apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main' &&
|
apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main' &&
|
||||||
apt-get update &&
|
apt-get update &&
|
||||||
apt-get install -y git cmake python3.8 python3.8-dev
|
apt-get install -y git cmake
|
||||||
cflags: -O3 -gline-tables-only -DNDEBUG -include $GITHUB_WORKSPACE/.github/workflows/lib_compat.h
|
cflags: -O3 -gline-tables-only -DNDEBUG -include $GITHUB_WORKSPACE/.github/workflows/lib_compat.h
|
||||||
cmake: >-
|
cmake: >-
|
||||||
"-DCMAKE_C_COMPILER=clang-10"
|
"-DCMAKE_C_COMPILER=clang-9"
|
||||||
"-DCMAKE_CXX_COMPILER=clang++-10"
|
"-DCMAKE_CXX_COMPILER=clang++-9"
|
||||||
"-DCMAKE_EXE_LINKER_FLAGS_RELEASE=-static-libgcc -Wl,--compress-debug-sections=zlib"
|
"-DCMAKE_EXE_LINKER_FLAGS_RELEASE=-static-libgcc -Wl,--compress-debug-sections=zlib"
|
||||||
"-DLLVM_STATIC_LINK_CXX_STDLIB=ON"
|
"-DLLVM_STATIC_LINK_CXX_STDLIB=ON"
|
||||||
"-DLLVM_ENABLE_ZLIB=FORCE_ON"
|
"-DLLVM_ENABLE_ZLIB=FORCE_ON"
|
||||||
@ -246,19 +239,15 @@ jobs:
|
|||||||
|
|
||||||
ninja -C grpc-build install
|
ninja -C grpc-build install
|
||||||
- name: Fetch target commit
|
- name: Fetch target commit
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v1
|
||||||
with:
|
with:
|
||||||
name:
|
name:
|
||||||
env
|
env
|
||||||
path:
|
|
||||||
env
|
|
||||||
- name: Fetch release info
|
- name: Fetch release info
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v1
|
||||||
with:
|
with:
|
||||||
name:
|
name:
|
||||||
release
|
release
|
||||||
path:
|
|
||||||
release
|
|
||||||
- name: Put release info into env
|
- name: Put release info into env
|
||||||
run: |
|
run: |
|
||||||
cat env/commit.env >> $GITHUB_ENV
|
cat env/commit.env >> $GITHUB_ENV
|
||||||
@ -312,12 +301,6 @@ jobs:
|
|||||||
${{ env.CLANGD_DIR }}/LICENSE.TXT
|
${{ env.CLANGD_DIR }}/LICENSE.TXT
|
||||||
${{ env.CLANGD_DIR }}/bin/clangd${{ matrix.config.binary_extension }}
|
${{ env.CLANGD_DIR }}/bin/clangd${{ matrix.config.binary_extension }}
|
||||||
${{ env.CLANGD_DIR }}/lib/clang
|
${{ env.CLANGD_DIR }}/lib/clang
|
||||||
- name: Archive clangd PDB symbols
|
|
||||||
if: matrix.config.name == 'windows'
|
|
||||||
run: >
|
|
||||||
7z a clangd-pdb.7z -t7z -m0=LZMA2
|
|
||||||
${{ env.CLANGD_DIR }}/LICENSE.TXT
|
|
||||||
${{ env.CLANGD_DIR }}/bin/clangd.pdb
|
|
||||||
- name: Archive indexing-tools
|
- name: Archive indexing-tools
|
||||||
run: >
|
run: >
|
||||||
7z a indexing-tools.zip
|
7z a indexing-tools.zip
|
||||||
@ -335,16 +318,6 @@ jobs:
|
|||||||
asset_name: clangd-${{ matrix.config.name }}-${{ env.TAG_NAME }}.zip
|
asset_name: clangd-${{ matrix.config.name }}-${{ env.TAG_NAME }}.zip
|
||||||
asset_path: clangd.zip
|
asset_path: clangd.zip
|
||||||
asset_content_type: application/zip
|
asset_content_type: application/zip
|
||||||
- name: Upload clangd PDB asset
|
|
||||||
if: matrix.config.name == 'windows'
|
|
||||||
uses: actions/upload-release-asset@v1.0.1
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}
|
|
||||||
with:
|
|
||||||
upload_url: ${{ env.UPLOAD_URL }}
|
|
||||||
asset_name: clangd-debug-symbols-${{ matrix.config.name }}-${{ env.TAG_NAME }}.7z
|
|
||||||
asset_path: clangd-pdb.7z
|
|
||||||
asset_content_type: application/zip
|
|
||||||
- name: Upload indexing-tools asset
|
- name: Upload indexing-tools asset
|
||||||
uses: actions/upload-release-asset@v1.0.1
|
uses: actions/upload-release-asset@v1.0.1
|
||||||
env:
|
env:
|
||||||
@ -364,12 +337,10 @@ jobs:
|
|||||||
if: always() && needs.build.result == 'success'
|
if: always() && needs.build.result == 'success'
|
||||||
steps:
|
steps:
|
||||||
- name: Fetch release info
|
- name: Fetch release info
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v1
|
||||||
with:
|
with:
|
||||||
name:
|
name:
|
||||||
release
|
release
|
||||||
path:
|
|
||||||
release
|
|
||||||
- name: Update the env variables
|
- name: Update the env variables
|
||||||
run: >
|
run: >
|
||||||
cat release/release.env >> $GITHUB_ENV
|
cat release/release.env >> $GITHUB_ENV
|
||||||
|
|||||||
1
.github/workflows/lib_compat.h
vendored
1
.github/workflows/lib_compat.h
vendored
@ -16,6 +16,5 @@ FORCE_SYMBOL_VERSION(expf, GLIBC_2.2.5);
|
|||||||
FORCE_SYMBOL_VERSION(log, GLIBC_2.2.5);
|
FORCE_SYMBOL_VERSION(log, GLIBC_2.2.5);
|
||||||
FORCE_SYMBOL_VERSION(log2, GLIBC_2.2.5);
|
FORCE_SYMBOL_VERSION(log2, GLIBC_2.2.5);
|
||||||
FORCE_SYMBOL_VERSION(pow, GLIBC_2.2.5);
|
FORCE_SYMBOL_VERSION(pow, GLIBC_2.2.5);
|
||||||
FORCE_SYMBOL_VERSION(exp, GLIBC_2.2.5);
|
|
||||||
|
|
||||||
#undef FORCE_SYMBOL_VERSION
|
#undef FORCE_SYMBOL_VERSION
|
||||||
|
|||||||
54
.github/workflows/winget.yml
vendored
54
.github/workflows/winget.yml
vendored
@ -1,54 +0,0 @@
|
|||||||
name: Publish on Windows Package Manager
|
|
||||||
|
|
||||||
on:
|
|
||||||
release:
|
|
||||||
types: [released]
|
|
||||||
workflow_dispatch:
|
|
||||||
inputs:
|
|
||||||
tag_name:
|
|
||||||
description: Release tag (version)
|
|
||||||
required: true
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
publish-winget:
|
|
||||||
name: Publish
|
|
||||||
runs-on: windows-latest
|
|
||||||
steps:
|
|
||||||
- name: Configure parameters
|
|
||||||
id: params
|
|
||||||
run: |
|
|
||||||
if ("${{ github.event_name }}" -eq "release") {
|
|
||||||
# Sometimes assets aren't immediately available, so we wait a bit for the first run
|
|
||||||
${{ github.run_attempt == 1 && 'Start-Sleep -Seconds 300' || '' }}
|
|
||||||
|
|
||||||
echo "assets_url=${{ github.event.release.assets_url }}" >> $env:GITHUB_OUTPUT
|
|
||||||
echo "version=${{ github.event.release.tag_name }}" >> $env:GITHUB_OUTPUT
|
|
||||||
} else {
|
|
||||||
$releaseUrl = "$env:GITHUB_API_URL/repos/clangd/clangd/releases/tags/${{ github.event.inputs.tag_name }}"
|
|
||||||
$assetsUrl = curl -sL $releaseUrl | ConvertFrom-Json | Select-Object -ExpandProperty assets_url
|
|
||||||
|
|
||||||
echo "assets_url=$assetsUrl" >> $env:GITHUB_OUTPUT
|
|
||||||
echo "version=${{ github.event.inputs.tag_name }}" >> $env:GITHUB_OUTPUT
|
|
||||||
}
|
|
||||||
|
|
||||||
- name: Set up Komac
|
|
||||||
run: |
|
|
||||||
$releaseUrl = "$env:GITHUB_API_URL/repos/russellbanks/Komac/releases/latest"
|
|
||||||
$downloadUrl = curl -sL $releaseUrl | ConvertFrom-Json
|
|
||||||
| Select-Object -ExpandProperty assets
|
|
||||||
| Where-Object -Property name -like "komac-*-x86_64-pc-windows-msvc.exe"
|
|
||||||
| Select-Object -ExpandProperty browser_download_url
|
|
||||||
| Select-Object -First 1
|
|
||||||
curl -sL $downloadUrl -o komac.exe
|
|
||||||
./komac --version
|
|
||||||
|
|
||||||
- name: Submit package
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.WINGET_TOKEN }}
|
|
||||||
run: |
|
|
||||||
$releaseUrl = curl -sL ${{ steps.params.outputs.assets_url }} | ConvertFrom-Json
|
|
||||||
| Where-Object -Property name -like "clangd-windows-*.zip"
|
|
||||||
| Select-Object -ExpandProperty browser_download_url
|
|
||||||
|
|
||||||
./komac sync-fork
|
|
||||||
./komac update LLVM.clangd -v ${{ steps.params.outputs.version }} -u $releaseUrl -s
|
|
||||||
Loading…
Reference in New Issue
Block a user