bazel-coverage-report-renderer v0.9 Release Notes
Release Date: 2019-05-07 // almost 5 years ago-
Highlights
π The minimum supported Bazel version is now v0.24.
The version is available from
nixpkgs unstable
and via
πofficial releases
.π Initial Windows support
π A non-trivial subset of
rules_haskell
is now working on Windows.
See theproject tracker
for finished and ongoing work.π Improved OSX support
Due to the
mach-o
header size limit, we took extra measures to
π make sure generated library paths are as short as possible, so
π linking haskell binaries works even for large dependency graphs.π Better Bindist support
π The default
start
script sets up a
0οΈβ£ bindist-based project by default.rules_nixpkgs
is no longer a required dependency of
rules_haskell
(but can still be used as backend).Full HaskellβCβHaskell Sandwich
A
haskell_library
can be now be used nearly anywhere a
cc_library
can.The old
cc_haskell_import
andhaskell_cc_import
wrapper rules
π are no longer necessary and have been deprecated.π Greatly improved REPL support
A new
haskell_repl
rule allows to load multiple source targets by
source, or compiled, as needed. Example usage:haskell_repl( name = "my-repl", # Collect all transitive Haskell dependencies from these targets. deps = [ "//package-a:target-1", "//package-b:target-2", ], # Load targets by source that match these patterns. include = [ "//package-a/...", "//packaga-b/...", "//common/...", ], # Don't load targets by source that match these patterns. exclude = [ "//package-a/vendored/...", ], )
π Support for GHC plugins
π Each
haskell_*
rule now has aplugins
attribute. It takes a
list of bazel targets, which should behaskell_library
s that
π implement the GHC plugin
specification.π Initial Code Coverage support
π Measure coverage of your Haskell code. See the βChecking Code
β Coverageβ
section in the manual.Compatibility Notice
π
hazel
was merged into
rules_haskell
, but
we are not yet certain about the exact interface we want to expose.
πhazel
is therefore not included in this release, and we canβt
guarantee the original, unmerged version is compatible with this
π release. If you depend onhazel
, please use a recentmaster
commit
ofrules_haskell
.π Changed
haskell_register_ghc_bindists
is no longer re-exported from
//haskell/haskell.bzl
.
You must now load that macro from//haskell:nixpkgs.bzl
.rules_nixpkgs
is no longer a dependency ofrules_haskell
.haskell_import
has been renamed tohaskell_toolchain_library
.
This is a substantial breaking change. But adapting to it should be
as simple assed -i 's/^haskell_import/haskell_toolchain_library/' **/BUILD{,.bazel} sed -i 's/"haskell_import"/"haskell_toolchain_library"/' **/BUILD{,.bazel}
π See #843.
haskell_toolchain
βs tools attribute is now a list of labels.
Earlier entries take precendence. To migrate, add[]
around your
argument.
π See #854.0οΈβ£ The default outputs of
haskell_library
are now the static and/or
π¦ shared library files, not the package database config and cache
files.β Added
haskell_repl
rule that constructs a ghci wrapper that loads
multiple targets by source.
π See #736.- π
plugins
attribute tohaskell_*
rules to load GHC plugins.
π See #799. - The
HaskellInfo
andHaskellLibraryInfo
providers are now
exported and thus accessible by downstream rules.
π See #844. - Generate version macros for preprocessors (
c2hs
,hsc2hs
).
π See #847. bindist_toolchain
rule getshaddock_flags
andrepl_ghci_args
attributes.- π
@repl
targets write json file with build information, usable by
IDE tools.
π See #695.
π Deprecated
haskell_cc_import
; usecc_library
instead.
π See #831.cc_haskell_import
; just usehaskell_library
like acc_library
.
π See #831.
π Fixed