Skip to content

Commit

Permalink
Merge pull request #10 from nikomatsakis/roadmap5
Browse files Browse the repository at this point in the history
add more details about rustc-integration-mvp and other roadmap items
  • Loading branch information
nikomatsakis authored Mar 6, 2020
2 parents 82318c8 + 9ecbb51 commit 5946f38
Showing 1 changed file with 39 additions and 6 deletions.
45 changes: 39 additions & 6 deletions roadmap.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@ items = [
name = "impl-trait"
label = "Model `impl Trait`"
items = [
{ label = "Preliminary model for opaque types where hidden types are known", status="Assigned", ref = "https://github.com/rust-lang/chalk/issues/335" }
{ label = "Preliminary model for opaque types where hidden types are known", status="Assigned", ref = "https://github.com/rust-lang/chalk/issues/335" },
{ label = "Sketch out the integration plan", status="Assigned" },
]

[[group]]
Expand Down Expand Up @@ -55,17 +56,39 @@ items = [
{ label = "Align placeholders and ty::Param", status="Blocked" },
{ label = "Move Identifier to TypeFamily", status="Complete" },
{ label = "Adapt rustc's debruijn index model", port="debruijn", status="Assigned", href="https://github.com/rust-lang/chalk/issues/334" },
{ label = "Adapt rustc's representation of regions", status="Blocked" },
{ label = "Remove all vectors, boxes" },
{ label = "Introduce a `Visit` trait", href="https://github.com/rust-lang/chalk/issues/333", port="visit" },
{ label = "Add and integrate flags into types and elsewhere" },
]

[[group]]
name = "chalk-builtin-traits"
label = "Extend chalk-solve with knowledge of builtin-traits"
items = [
{ label="support the `Sized` trait", status="Blocked", href="https://github.com/rust-lang/chalk/issues/261" },
{ label="support the `Clone` trait", status="Blocked" },
{ label="support the `Copy` trait", status="Blocked" },
{ label="support the `Unsized` trait", status="Blocked" },
]

[[group]]
name = "chalk-const"
label = "Extend chalk to support constants"
items = [
{ label="introduce constant 'kind', alongside types and lifetimes", status="Blocked" },
]

[[group]]
name = "rustc-integration-mvp"
label = "Integrate chalk-solve into rustc"
requires = [ "map-chalk-types-to-rustc-types" ]
requires = [ "map-chalk-types-to-rustc-types", "chalk-const", "chalk-builtin-traits" ]
items = [
{ label="remove old chalk support" },
{ label="create" },
{ label="remove old chalk support", status="Complete", href="https://github.com/rust-lang/rust/pull/69247" },
{ label="exploratory integration to better uncover requirements", href="https://github.com/rust-lang/rust/pull/69406", status="Assigned" },
{ label="map rustc types to chalk types", status="Blocked" },
{ label="map rustc predicates to chalk goals, clauses", status="Blocked" },
{ label="implement RustIrDatabase in trait", status="Blocked" },
]

[[group]]
Expand All @@ -74,13 +97,23 @@ label = "Explore proposed language features"
requires = [ "rustc-integration-mvp", "rust-analyzer-integration" ]
status = "Blocked"
items = [
{ label="implied bounds" },
{ label="Implied bounds" },
{ label="Specialization", href="https://github.com/rust-lang/chalk/issues/9" },
]

[[group]]
name = "chalk-debugging"
label = "Improve ability to debug chalk from within rustc or rust-analyzer"
requires = [ ]
items = [
{ label="Integrate tracing library", href="https://github.com/rust-lang/chalk/issues/337", status="Assigned" },
{ label="Extract standalone examples automatically" },
]

[[goal]]
name = "library"
label = "Chalk usable as a standalone library for traits solving"
requires = [ "rustc-integration-mvp", "rust-analyzer-integration" ]
requires = [ "rustc-integration-mvp", "rust-analyzer-integration", "chalk-debugging" ]

[[goal]]
name = "gats"
Expand Down

0 comments on commit 5946f38

Please sign in to comment.