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

Integrate with large (non-cargo) build systems #401

@sunshowers

Description

@sunshowers

While many Rust open source projects use Cargo, large organizations often use their own build systems. Supporting large build systems is on the Rust roadmap: rust-lang/rust-roadmap-2017#12

At Facebook we use Buck to build our Rust code. Our code is organized into crates (i.e. translation units) just like in open source, but we generally don't use Cargo.toml or Cargo.lock files -- instead, all our dependency management is done within Buck.

I'm trying to get RLS working against our internal Rust code. RLS easily recognizes intra-crate dependencies, but it can't work across crates.

I'm wondering if there's something we can do easily to make non-cargo build systems work. For example, RLS could call out to some code we provide (how? IPC? a dynamic lib loaded into RLS?) when it wonders where a crate is, and our code could return a path that RLS could look at.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementIndicates new feature requests

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions