Permalink
Commits on Aug 17, 2018
  1. Use modern API to get dep's extern crate name

    matklad committed Aug 17, 2018
Commits on Aug 16, 2018
  1. Introduce Project Model

    matklad committed Aug 16, 2018
Commits on Aug 7, 2018
  1. fix windows build

    matklad committed Aug 7, 2018
Commits on Jul 27, 2018
  1. Move vfs-racer impls to RLS

    matklad committed Jul 27, 2018
    That way, we don't need to maintain racer version in VFS.
  2. use US spelling

    matklad committed Jul 27, 2018
Commits on Jul 26, 2018
  1. use standard way to silence unused warning

    matklad committed Jul 26, 2018
Commits on Jul 20, 2018
  1. ⬆️ crossbeam-channel

    matklad committed Jul 20, 2018
    Notably, this includes
    crossbeam-rs/crossbeam-channel@591d316,
    which is a fix for unsoundness we've actually hit in RLS!
  2. Make the workspace hack local to RLS

    matklad committed Jul 20, 2018
  3. Fix warnings

    matklad committed Jul 20, 2018
    Building rls inside of rust-lang rust fails due to these
Commits on Jul 18, 2018
  1. Filter out duplicate symbols

    matklad committed Jul 1, 2018
    Sometimes analysis returns duplicate symbols for the same location. It
    can be a bug in the analysis, however in general it might be the case
    that two logically different symbols correspond to the same location,
    if we use `include!` or something like that.
    
    So, let's do duplicate detection before submitting results to the user
    for the time being
Commits on Jul 17, 2018
  1. Add concurrency module

    matklad committed Jun 30, 2018
    RLS is going to be a highly concurrent application, with three main
    concurrency sources:
    
    * user input/requests from the client editor
    * changes from the file system
    * internal parallelisation of CPU-heavy tasks
    
    Because developing, debugging and testing concurrent applications is
    hard, it makes sense to try to establish good concurrency patterns
    from the start.
    
    One concurrency anti-pattern is "fire & forget" spawning of background
    tasks. This is problematic: without the ability to check if the task
    is finished, you have to resort to busy-waiting in tests.
    
    `concurrency` module introduces a `ConcurrentJob` object, which is a
    handle to background job, which can be used to check if the job is
    running and to wait for it to finish.
    
    The idea is that any function, which schedules some job off the
    current thread, should return a `ConcurrentJob`. Jobs are stored
    inside the `Jobs` table, which gives a nice overview of all currently
    active tasks and can be used to wait for all active tasks to finish.
    
    All `ConcurrentJob`s must be stored in a `Jobs` table, it's and error
    to drop a job on the floor.
  2. Don't build bors .tmp branch

    matklad committed Jul 17, 2018
    We should exclude the staging.tmp branch from CI according to
    https://bors.tech/documentation/getting-started/
  3. ⬆️ clippy

    matklad committed Jul 17, 2018
Commits on Jul 16, 2018
  1. ⬆️ clippy

    matklad committed Jul 16, 2018
Commits on Jun 30, 2018
  1. Better navigate to symbol

    matklad committed Jun 29, 2018
    * uses fuzzy search instead of prefix matching
    
    * limits the number of results, so as to avoid freezing the IDE on an
      empty query
Commits on Jun 29, 2018
  1. Exit server cleanly

    matklad committed Jun 29, 2018
    Doing `::std::process::exit` deep in the call stack is problematic,
    because that won't unwind the stack and call desstructors, which can
    cause problems like unflushed files, unclosed sockets and such.
  2. Enable bors

    matklad committed Jun 29, 2018
Commits on Jun 28, 2018
  1. Fix the test

    matklad committed Jun 28, 2018
  2. Ignore lens tests on windows

    matklad committed Jun 28, 2018
Commits on Jun 27, 2018
  1. Opt-in for "Run Tests" code lens

    matklad committed Jun 27, 2018
  2. Initial CodeLens support

    matklad committed Jun 26, 2018
    The only code lens we provide atm is "run a single test"
Commits on Apr 13, 2018
  1. Update Cargo to the latest master

    matklad committed Apr 13, 2018
Commits on Jan 19, 2017
  1. Use new `rls_vfs::Change` API.

    matklad committed Jan 19, 2017
    We now can express "this is a new file" exactly.
Commits on Nov 23, 2016
  1. Remove dead code

    matklad committed Nov 23, 2016
Commits on Nov 14, 2016
  1. Fix tests

    matklad committed Nov 14, 2016
Commits on Nov 9, 2016