Closed Mikolaj closed 6 years ago
Actually, after removing the dep from .cabal file, it seems, a ton of other changes would be required. How can I help?
In particular, if I read it right, there is no more JSString
(one may use JSVal instead, if really needed) and many operations are moved to https://github.com/ghcjs/ghcjs/blob/ghc-8.4/lib/ghcjs-prim/GHCJS/Prim.hs and/or to patches of the standard base package.
ghcjs-base
has not really been removed, it's just not installed by ghcjs-boot
anymore, and it's not on hackage yet. It's intended to be a regular package now.
The reason was that ghcjs-base
has quite a few dependencies. Picking/shipping a single version of those would often clash with stackage lts or nixos package versions. As a normal package it's more flexible.
Some of the ghcjs-base
functionality is now implemented in ghcjs-prim
. These are typically low level operations, more likely to change between GHCJS versions. The ghcjs-prim
package will continue to ship with the compiler.
Hopefully this will make it easier to maintain compatibility with multiple compiler versions in ghcjs-base
Oh, I panicked too soon. Indeed, after installing ghcjs-base from github, ghcjs-dom compiles fine. Closing.
BTW, I wonder if ghcjs-dom-jsffi automatically takes advantage from the recent optimizations (IIRC) around (constant?) JS strings and properties?
The log: