Skip to content
This repository has been archived by the owner on Dec 29, 2022. It is now read-only.

Commit

Permalink
Merge pull request #1775 from Mark-Simulacrum/fix-rls
Browse files Browse the repository at this point in the history
Fix breakage due to upstream rustc changes
  • Loading branch information
Mark-Simulacrum authored May 17, 2022
2 parents d8478d8 + aaa6866 commit 1acff66
Show file tree
Hide file tree
Showing 47 changed files with 12,643 additions and 132 deletions.
229 changes: 128 additions & 101 deletions Cargo.lock

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ rls-vfs = "0.8"
rls-ipc = { version = "0.1.0", path = "rls-ipc", optional = true }

anyhow = "1.0.26"
cargo = { git = "https://github.com/rust-lang/cargo", rev = "1ef1e0a12723ce9548d7da2b63119de9002bead8" }
cargo-util = { git = "https://github.com/rust-lang/cargo", rev = "1ef1e0a12723ce9548d7da2b63119de9002bead8" }
cargo = { git = "https://github.com/rust-lang/cargo", rev = "3f052d8eed98c6a24f8b332fb2e6e6249d12d8c1" }
cargo-util = { git = "https://github.com/rust-lang/cargo", rev = "3f052d8eed98c6a24f8b332fb2e6e6249d12d8c1" }
cargo_metadata = "0.14"
clippy_lints = { git = "https://github.com/rust-lang/rust-clippy", version = "0.1.60", optional = true }
env_logger = "0.9"
Expand All @@ -43,11 +43,11 @@ lsp-types = { version = "0.60", features = ["proposed"] }
lazy_static = "1"
log = "0.4"
num_cpus = "1"
racer = { version = "2.2", default-features = false }
racer = { path = "racer" }
rand = "0.8"
rayon = "1"
rustc_tools_util = "0.2"
rustfmt-nightly = { git = "https://github.com/rust-lang/rustfmt", rev = "5056f4cfb311a084420f1828cd58af94d143f5e0" }
rustfmt-nightly = { git = "https://github.com/rust-lang/rustfmt", rev = "8a4c05865be17bac75b8d53eae5be18d749a0f5c" }
serde = "1.0"
serde_json = "1.0"
serde_derive = "1.0"
Expand All @@ -58,7 +58,7 @@ regex = "1"
ordslice = "0.3"
crossbeam-channel = "0.5"
toml = "0.5"
toml_edit = { version = "0.13.4", features = ["easy"] }
toml_edit = { version = "0.14.3", features = ["easy"] }
heck = "0.3"

# A noop dependency that changes in the Rust repository, it's a bit of a hack.
Expand Down
49 changes: 49 additions & 0 deletions racer/.github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: CI

on:
pull_request:
types: [opened, synchronize, reopened]
push:
branches:
- master
- '*'
schedule:
- cron: '0 0 * * *' # Nightly at 00:00 UTC

jobs:
build_and_test:
strategy:
fail-fast: false
matrix:
toolchain:
- x86_64-unknown-linux-gnu
- x86_64-apple-darwin
- x86_64-pc-windows-msvc
- i686-pc-windows-msvc
include:
- toolchain: x86_64-unknown-linux-gnu
builder: ubuntu-latest
os: linux
- toolchain: x86_64-apple-darwin
builder: macos-latest
os: macos
- toolchain: x86_64-pc-windows-msvc
builder: windows-latest
os: windows
- toolchain: i686-pc-windows-msvc
builder: windows-latest
os: windows

name: nightly - ${{ matrix.toolchain }}
runs-on: ${{ matrix.builder }}

steps:
- uses: actions/checkout@v2
- name: Use latest nightly on scheduled builds
if: github.event_name == 'schedule'
run: echo "nightly" > rust-toolchain
- run: rustup set default-host ${{ matrix.toolchain }}
- run: rustup component add rust-src
- run: rustc -vV
- run: cargo build --verbose --all
- run: cargo test --all
9 changes: 9 additions & 0 deletions racer/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
\#*
src/scopes
!.travis.yml
*tmpfile*
*.racertmp
target/
*.py[cod]
.vscode/**
*.log
Empty file added racer/.rustfmt.toml
Empty file.
235 changes: 235 additions & 0 deletions racer/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,235 @@
Change Log
==========

All notable changes to this project will be documented in this file. This
project adheres to [Semantic Versioning](https://semver.org/).

# 2.1.37
- Bump rustc-ap-* version to 677.0
- Account for new standard library source directory layout

# 2.1.37
- Bump rustc-ap-* version to 671.0

# 2.1.36
- Bump rustc-ap-* version to 669.0

# 2.1.35
- Bump rustc-ap-* version to 664.0

# 2.1.34
- Bump rustc-ap-* version to 659.0
- Fix submodule search (#1107)

# 2.1.33
- Bump rustc-ap-* version to 654.0

# 2.1.32
- Bump rustc-ap-* version to 651.0

# 2.1.31
- Bump rustc-ap-* version to 642.0

# 2.1.30
- Support for union(#1086)

# 2.1.29
- Support async/await syntax(#1083, #1085)

# 2.1.28
- Update the version of rustc-ap-syntax

# 2.1.27
- Update the version of rustc-ap-syntax

# 2.1.26
- Update the version of rustc-ap-syntax

# 2.1.25
- Update the version of rustc-ap-syntax

# 2.1.24
- Rust 2018 (#1051)
- Update the version of rustc-ap-syntax

# 2.1.22
- Fix completion for `super::super::...`(#1053)

# 2.1.20, 2.1.21
- Fix completion in testdir for Rust 2018(#1022)
- Fix enum variant completion for pub(crate) enum(#1025)

# 2.1.18, 2.1.19
- Update rustc-ap-syntax

# 2.1.17, 2.1.18
- Fix doc comment parsing(#1010)

# 2.1.15. 2.1.16
- Handle CRLF correctly(#1007)

# 2.1.14
- Completion for binary operation(#976)

# 2.1.10, 2.1.11, 2.1.12, 2.1.13
- Completion for impl trait(#985, #986)
- Completion for use as(#988)

# 2.1.8, 2.1.9
- Completion for trait objects(#972)
- Completion for simple closure return types(#973)

# 2.1.7
- Lots of refactoring(#961, #963, #965)
- Add `is_use_statement` for RLS(#965)

# 2.1.6
- Completion based on impl<T: Bound> #948
- Fix for argument completion #943
- Trait bound in where clause #937

# 2.1.5
- migrate to cargo metadata #930

# 2.1.3
- Make cargo optional for RLS #910

## 2.1.2
- Fix bug around getting `use` context #906
- Update rustc-ap-syntax to fix build in current nightly #911

## 2.1.1
- Fix coordinate bug
- Get doc string for macro #905

## 2.1.0
- Support completions for stdlib macros #902
- Support extern "~" block #895
- Support `crate_in_paths` #891
- Fix bug of getting completion context from `use` statement #886
- Handle const unsafe fn #879
- Limit recursion depth through glob imports #875
- Enable completion based on trait bound for function args #871
- Fix bug in search_closure_args #862
- Replace cargo.rs with cargo crate #855
- Migrate over to rustc_ap_syntax #854
- Make RUST_SRC_PATH optional #808
- Refactor based on clippy #860

## 2.0.14
- Cache generic impls #839
- Cache parsed TOML file and cargo crate roots #838
- Skip `pub` keyword as a temporary fix for #624 #850
- Remove complex generic type by impl trait #848
- Fix bug for array expression #841
- Support completion for enum variants without type annotation #825
- Fix bug for raw string #822

## 2.0.13
- Fix bug for finding the start of match statement #819

## 2.0.12
- Fix bug that broke completions in previous release #807

## 2.0.11

- Use `rustup` to find libstd path even when used as library #799

## 2.0.10

- Support resolving `use as` aliases declared in multi-element `use` statements #753
- Provide suggestions for global paths in more cases #765
- Suggestions imported via `use as` statements now return their in-scope alias as the match string #767
- Add new commands for converting between points and coordinates in files #776
- Return fewer duplicate suggestions #778
- Handle cases where mod names and trait methods collide, such as `fmt` #781

## 2.0.9

- Support completion after using try operator `?` #726
- Find methods on cooked string literals #728
- Fix bug caused by closure completions feature #734
- Find static methods on enums #737
- Find doc comments on named and indexed struct fields #739
- Find `pub(restricted)` items #748

## 2.0.8

- Fix bug finding definitions where impl contains bang #717
- Find definition for closures #697
- Resolve types for tuple struct fields #722
- Resolve types for let patterns #724
- Fix completions for reference fields #723

## 2.0.7

- Fix panic with macros called `impl*` #701
- Relax semver specs

## 2.0.6

- resolve Self (e.g. in-impl function calls like Self::myfunction())
- Fix stack overflow issue on unresolvable imports :tada: #698

## 2.0.5

- Chained completions on separate lines now work #686

## 2.0.4

- Fix for find-doc not always returning full doc string #675

## 2.0.3

- Fix for recursion in certain `use foo::{self, ..}` cases #669

## 2.0.2

- Internal fixes so we can publish on crates.io

## 2.0.1

- Syntex 0.52 #643

- Fix `racer --help` bug from 2.0 refactor #662

- Support short revision identifiers for git checkout paths #664

- Handle self resolution when using `use mymod::{self, Thing}` #665

- Fix type alias resolution #666

## 2.0

- Rework public API to hide many implementation details and allow the project to
move forward without breaking changes.

- Many fixes that didn't make it into the changelog, but we're going to work on
that in the future!

## 1.2

- Added basic 'daemon' mode, racer process can be kept running between
invocations

- now uses clap to parse command line options

- Adds caching of file source and code indices

- Adds an alternative 'tabbed' mode where inputs and outputs can be tab
separated for easier parsing

- emacs and vim support split out into their own git projects [emacs-racer] and
[vim-racer], respectively.

- Fix issue resolving some `std::*` modules in latest rust source: (rust std lib
implicitly imports core with `#![no_std]`)

- Searches multirust overrides when locating cargo src directories

## 1.0.0 2015-07-29

- First release

[vim-racer]: https://github.com/racer-rust/vim-racer
[emacs-racer]: https://github.com/racer-rust/emacs-racer
43 changes: 43 additions & 0 deletions racer/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
[package]
name = "racer"
version = "2.2.2"
license = "MIT"
description = "Code completion for Rust"
authors = ["Phil Dawes <[email protected]>", "The Racer developers"]
homepage = "https://github.com/racer-rust/racer"
repository = "https://github.com/racer-rust/racer"
edition = "2018"

[lib]
name = "racer"
path = "src/racer/lib.rs"

[profile.release]
debug = false # because of #1005

[dependencies]
bitflags = "1.0"
log = "0.4"
env_logger = "0.7.1"
clap = "2.32"
lazy_static = "1.2"
humantime = "2.0.0"
derive_more = "0.99.2"
rls-span = "0.5.1"
lazycell = { version = "1.2", optional = true }

[dependencies.racer-cargo-metadata]
version = "0.1"
optional = true
path = "metadata"

[features]
default = ["metadata"]
metadata = ["lazycell", "racer-cargo-metadata"]

[workspace]
members = ["interner", "metadata"]

[package.metadata.rust-analyzer]
# This package uses #[feature(rustc_private)]
rustc_private = true
Loading

0 comments on commit 1acff66

Please sign in to comment.