About

Metadata

  • Last updated , by hls_team
  • License Apache-2.0
  • Categories Development
  • Maintained by: The Haskell IDE Team

  • Lottery factor: 2

Links

Installation

Package Flags

Use the -f option with cabal commands to enable flags

    pedantic (off by default)

    Enable -Werror

    embed-files (off by default)

    Embed data files into the shake library

    stm-stats (off by default)

    Collect STM transaction stats

Readme

hls-graph - a limited reimplementation of Shake for in-memory build graphs

ghcide was originally built on top of Shake, a Haskell build system. Nowadays Shake has been replaced by a special purpose implementation of a build graph called hls-graph, which drops all the persistency features in exchange for simplicity and performance.

Features:

  • Dynamic dependencies
  • User defined rules (there are no predefined File rules as in Shake)
  • Build reports (a la Shake profiling)
  • "Reactive" change tracking for minimal rebuilds (not available in Shake)

What's missing:

  • Persistence
  • A default set of rules for file system builds
  • A testsuite
  • General purpose application - many design decisions make assumptions specific to ghcide