about summary refs log tree commit diff
path: root/third_party/bazel/rules_haskell/ROADMAP.md
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/bazel/rules_haskell/ROADMAP.md')
-rw-r--r--third_party/bazel/rules_haskell/ROADMAP.md47
1 files changed, 47 insertions, 0 deletions
diff --git a/third_party/bazel/rules_haskell/ROADMAP.md b/third_party/bazel/rules_haskell/ROADMAP.md
new file mode 100644
index 000000000000..4e234bddb1cb
--- /dev/null
+++ b/third_party/bazel/rules_haskell/ROADMAP.md
@@ -0,0 +1,47 @@
+# Feature roadmap
+
+In the following list, each feature is associated with a corresponding
+milestone. The convention for the priorities are:
+
+* P0 feature will block the milestone; we will delay the milestone
+  date until the feature is shipped.
+* P1 feature can delay the milestone if the feature can be shipped
+  with a reasonable delay.
+* P2 feature will be dropped and rescheduled for later rather than
+  delaying the milestone.
+
+We will update this list when reaching each milestone. Some milestones
+may also be refined if appropriate.
+
+## Planned feature list
+
+### 1.0
+
+* P1. Backpack support.
+* P2. Define official GHC bindists as toolchains for each Tier-1
+  platform.
+* P2. Define cross-compiler toolchains.
+* P2. Support multiple build flavours: fastbuild, opt, dbg/profiling.
+
+## Previous milestones
+
+### Initial support
+
+* P0. Ensure legalese is in place from the beginning to make project
+  upstreamable to official `bazelbuild` org eventually.
+* P0. `haskell_library` able to compile single file library.
+* P0. `haskell_binary` able to compile single file binary.
+* P1. Basic binary build with a library dependency.
+* P2. Transitive library dependencies.
+* P2. Basic documentation with rule descriptions.
+
+### Build and test inline-java
+
+* P0. Can build and run inline-java spec and jvm-streaming spec.
+* P0. Can use inline-java packages as dependencies in bigger product
+  (sparkle).
+
+### Build and test sparkle
+
+* P0. Able to build sparkle executable. This includes building all
+  relevant Java.