mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-26 20:09:19 +00:00
chore: Clean up proc-macro-srv CI job
This commit is contained in:
parent
31e412c290
commit
56c9f331ee
4 changed files with 17 additions and 30 deletions
16
.github/workflows/ci.yaml
vendored
16
.github/workflows/ci.yaml
vendored
|
@ -15,7 +15,7 @@ env:
|
||||||
CARGO_NET_RETRY: 10
|
CARGO_NET_RETRY: 10
|
||||||
CI: 1
|
CI: 1
|
||||||
RUST_BACKTRACE: short
|
RUST_BACKTRACE: short
|
||||||
RUSTFLAGS: "-D warnings -D elided_lifetimes_in_paths -D explicit_outlives_requirements -D unsafe_op_in_unsafe_fn -D unused_extern_crates -D unused_lifetimes -D unreachable_pub"
|
RUSTFLAGS: "-D warnings"
|
||||||
RUSTUP_MAX_RETRIES: 10
|
RUSTUP_MAX_RETRIES: 10
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
@ -58,18 +58,15 @@ jobs:
|
||||||
rustup component add --toolchain nightly rust-src rustfmt
|
rustup component add --toolchain nightly rust-src rustfmt
|
||||||
# https://github.com/actions-rust-lang/setup-rust-toolchain/blob/main/rust.json
|
# https://github.com/actions-rust-lang/setup-rust-toolchain/blob/main/rust.json
|
||||||
- name: Install Rust Problem Matcher
|
- name: Install Rust Problem Matcher
|
||||||
if: matrix.os == 'ubuntu-latest'
|
|
||||||
run: echo "::add-matcher::.github/rust.json"
|
run: echo "::add-matcher::.github/rust.json"
|
||||||
|
|
||||||
- name: Cache Dependencies
|
# We don't cache this job, as it will be invalidated every day due to nightly usage
|
||||||
uses: Swatinem/rust-cache@9bdad043e88c75890e36ad3bbc8d27f0090dd609
|
|
||||||
|
|
||||||
- name: Bump opt-level
|
- name: Bump opt-level
|
||||||
if: matrix.os == 'ubuntu-latest'
|
|
||||||
run: sed -i '/\[profile.dev]/a opt-level=1' Cargo.toml
|
run: sed -i '/\[profile.dev]/a opt-level=1' Cargo.toml
|
||||||
|
|
||||||
- name: Test
|
- name: Test
|
||||||
run: cargo test --features sysroot-abi -p rust-analyzer -p proc-macro-srv -p proc-macro-srv-cli -p proc-macro-api -- --quiet
|
run: cargo test --features sysroot-abi -p proc-macro-srv -p proc-macro-srv-cli -p proc-macro-api -- --quiet
|
||||||
|
|
||||||
rust:
|
rust:
|
||||||
if: github.repository == 'rust-lang/rust-analyzer'
|
if: github.repository == 'rust-lang/rust-analyzer'
|
||||||
|
@ -79,7 +76,6 @@ jobs:
|
||||||
CC: deny_c
|
CC: deny_c
|
||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
matrix:
|
||||||
os: [ubuntu-latest, windows-latest, macos-latest]
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
||||||
|
|
||||||
|
@ -103,7 +99,11 @@ jobs:
|
||||||
run: echo "::add-matcher::.github/rust.json"
|
run: echo "::add-matcher::.github/rust.json"
|
||||||
|
|
||||||
- name: Cache Dependencies
|
- name: Cache Dependencies
|
||||||
uses: Swatinem/rust-cache@9bdad043e88c75890e36ad3bbc8d27f0090dd609
|
uses: Swatinem/rust-cache@27b8ea9368cf428f0bfe41b0876b1a7e809d9844
|
||||||
|
with:
|
||||||
|
workspaces: |
|
||||||
|
. -> target
|
||||||
|
crates/proc-macro-srv/proc-macro-test/imp -> target
|
||||||
|
|
||||||
- uses: taiki-e/install-action@nextest
|
- uses: taiki-e/install-action@nextest
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1 @@
|
||||||
target/
|
target/
|
||||||
Cargo.lock
|
|
||||||
|
|
7
crates/proc-macro-srv/proc-macro-test/imp/Cargo.lock
generated
Normal file
7
crates/proc-macro-srv/proc-macro-test/imp/Cargo.lock
generated
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
# This file is automatically @generated by Cargo.
|
||||||
|
# It is not intended for manual editing.
|
||||||
|
version = 4
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "proc-macro-test-impl"
|
||||||
|
version = "0.0.0"
|
|
@ -1140,26 +1140,12 @@ fn root_contains_symlink_out_dirs_check() {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
#[cfg(any(feature = "sysroot-abi", rust_analyzer))]
|
|
||||||
fn resolve_proc_macro() {
|
fn resolve_proc_macro() {
|
||||||
use expect_test::expect;
|
use expect_test::expect;
|
||||||
use vfs::AbsPathBuf;
|
|
||||||
if skip_slow_tests() {
|
if skip_slow_tests() {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
let mut sysroot = project_model::Sysroot::discover(
|
|
||||||
&AbsPathBuf::assert_utf8(std::env::current_dir().unwrap()),
|
|
||||||
&Default::default(),
|
|
||||||
);
|
|
||||||
let loaded_sysroot =
|
|
||||||
sysroot.load_workspace(&project_model::RustSourceWorkspaceConfig::default_cargo());
|
|
||||||
if let Some(loaded_sysroot) = loaded_sysroot {
|
|
||||||
sysroot.set_workspace(loaded_sysroot);
|
|
||||||
}
|
|
||||||
|
|
||||||
let proc_macro_server_path = sysroot.discover_proc_macro_srv().unwrap();
|
|
||||||
|
|
||||||
let server = Project::with_fixture(
|
let server = Project::with_fixture(
|
||||||
r###"
|
r###"
|
||||||
//- /foo/Cargo.toml
|
//- /foo/Cargo.toml
|
||||||
|
@ -1171,12 +1157,8 @@ edition = "2021"
|
||||||
bar = {path = "../bar"}
|
bar = {path = "../bar"}
|
||||||
|
|
||||||
//- /foo/src/main.rs
|
//- /foo/src/main.rs
|
||||||
#![allow(internal_features)]
|
|
||||||
#![feature(rustc_attrs, decl_macro)]
|
|
||||||
use bar::Bar;
|
use bar::Bar;
|
||||||
|
|
||||||
#[rustc_builtin_macro]
|
|
||||||
macro derive($item:item) {}
|
|
||||||
trait Bar {
|
trait Bar {
|
||||||
fn bar();
|
fn bar();
|
||||||
}
|
}
|
||||||
|
@ -1233,11 +1215,10 @@ pub fn foo(_input: TokenStream) -> TokenStream {
|
||||||
"buildScripts": {
|
"buildScripts": {
|
||||||
"enable": true
|
"enable": true
|
||||||
},
|
},
|
||||||
"sysroot": null,
|
"sysroot": "discover",
|
||||||
},
|
},
|
||||||
"procMacro": {
|
"procMacro": {
|
||||||
"enable": true,
|
"enable": true,
|
||||||
"server": proc_macro_server_path.as_path().as_str(),
|
|
||||||
}
|
}
|
||||||
}))
|
}))
|
||||||
.root("foo")
|
.root("foo")
|
||||||
|
@ -1248,7 +1229,7 @@ pub fn foo(_input: TokenStream) -> TokenStream {
|
||||||
let res = server.send_request::<HoverRequest>(HoverParams {
|
let res = server.send_request::<HoverRequest>(HoverParams {
|
||||||
text_document_position_params: TextDocumentPositionParams::new(
|
text_document_position_params: TextDocumentPositionParams::new(
|
||||||
server.doc_id("foo/src/main.rs"),
|
server.doc_id("foo/src/main.rs"),
|
||||||
Position::new(12, 9),
|
Position::new(8, 9),
|
||||||
),
|
),
|
||||||
work_done_progress_params: Default::default(),
|
work_done_progress_params: Default::default(),
|
||||||
});
|
});
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue