anchor.diff:              Fable2Babel.Compiler.createFacade fileName lastFile
           |> addLogs com |> toJson
       else
  -        let com =
  -            // Resolve the fable-core location if not defined by user
  -            if com.Options.fableCore = "fable-core" then
  -                match project.FableCoreJsDir with
  -                | Some fableCoreJsDir ->
  -                    Compiler({ com.Options with fableCore = Parser.makePathRelative fableCoreJsDir }, com.Plugins)
  -                | None ->
  -                    failwith "Cannot find fable-core directory"
  -            else com
  -        let json =
  -            FSharp2Fable.Compiler.transformFile com project project.CheckedProject fileName
  -            |> Fable2Babel.Compiler.transformFile com project
  -            |> addLogs com
  -            |> toJson
  -        Log.logVerbose("Compiled: " + fileName)
  -        json
  +        let com = resolveFableCoreLocation com project
  +        FSharp2Fable.Compiler.transformFile com project project.CheckedProject fileName
  +        |> Fable2Babel.Compiler.transformFile com project
  +        |> addLogs com |> toJson
   
   type Command = string * (string -> unit)
   
  
positive.code:             then logs.[severity] <- formattedMsg::logs.[severity]
              else logs.Add(severity, [formattedMsg])
          member __.GetUniqueVar() =
  #if FABLE_COMPILER
              id <- id + 1; "$var" + (string id)
  #else
              // Actually this shouldn't be necessary as we've only
              // one compiler instance per file
              "$var" + (System.Threading.Interlocked.Increment(&id).ToString())
  #endif
  
  #if !FABLE_COMPILER
  
  
negative.code: 
  /// Type with utilities for compiling F# files to JS
  /// No thread-safe, an instance must be created per file
  type Compiler(?options, ?plugins, ?logs) =
      let mutable id = 0
      let options = defaultArg options <| getDefaultOptions()
      let plugins: PluginInfo list = defaultArg plugins []
      let logs =
          let dic = Dictionary<string, string list>()
          logs |> Option.iter (fun logs ->
              for KeyValue(key,value) in logs do
                  dic.Add(key, value))
          dic
      member __.Logs: Map<string, string list> =
          logs |> Seq.map (fun kv -> kv.Key, List.rev kv.Value) |> Map
      member __.Options = options
  