firefly-compiler 0.5.84 → 0.5.86

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -153,7 +153,8 @@ startApp(
153
153
  runner.lock.do {
154
154
  if(taskIteration == runner.iteration):
155
155
  try {
156
- Builder.buildViaBuildSystem(system, fireflyPath, mainPaths, target, moduleCache, printMeasurements = False)
156
+ let moduleCacheAlreadyEmittedWorkaround = moduleCache.ModuleCache(emittedModules = Map.new())
157
+ Builder.buildViaBuildSystem(system, fireflyPath, mainPaths, target, moduleCacheAlreadyEmittedWorkaround, printMeasurements = False)
157
158
  forkedProcess->send(Js->(ffDevelopMode = "internalCompile"))
158
159
  Unit
159
160
  } tryCatch {| CompileError(at, message), error =>
@@ -164,11 +164,11 @@ extend self: JsEmitter {
164
164
  liner.writeLines()
165
165
  self.emitInstanceDefinition(_)
166
166
  }
167
- let ignoreJsImports = if(self.emitTarget == EmitExecutable && self.moduleKey.packagePair.isCore()) {
167
+ let ignoreJsImports = [] /* if(self.emitTarget == EmitExecutable && self.moduleKey.packagePair.isCore()) {
168
168
  ["esbuild"]
169
169
  } else {
170
170
  []
171
- }
171
+ }*/
172
172
  let jsImports = self.jsImporter.generateImports(ignoreJsImports.toSet())
173
173
  if(!jsImports.isEmpty()) {
174
174
  self.writeAnchorLines(anchor, jsImports)
@@ -195,7 +195,7 @@ extend self: JsEmitter {
195
195
 
196
196
  makeRun(moduleName: String, functions: List[DFunction], mainPackagePair: PackagePair, bootstrapping: Bool): List[String] {
197
197
  let buildMainFunction = functions.find {_.signature.name == "buildMain"}.filter {_ =>
198
- self.emitTarget != EmitBrowser && self.emitTarget != EmitExecutable
198
+ self.emitTarget != EmitBrowser
199
199
  }
200
200
  let willRunOnNode = self.emitTarget != EmitBrowser
201
201
  let targetMain = if(willRunOnNode) {"nodeMain"} else {"browserMain"}
@@ -207,6 +207,7 @@ extend self: JsEmitter {
207
207
  }.toList()
208
208
  "import {" + escapeKeyword(mainName) + "$} from './" + moduleName + ".mjs'"
209
209
  self.emitImport(ModuleKey(PackagePair("ff", "core"), [], "Error"))
210
+ self.emitImport(ModuleKey(PackagePair("ff", "core"), [], "BuildSystem"))
210
211
  "export async function $run$(fireflyPath_, arguments_) {"
211
212
  "Error.stackTraceLimit = 50"
212
213
  "const $task = {controller_: new AbortController(), subtasks_: new Set(), promise_: new Promise(() => {}), started_: performance.now() * 0.001}"
@@ -225,11 +226,11 @@ extend self: JsEmitter {
225
226
  ...if(!buildMainFunction.isEmpty()) {[
226
227
  "await buildMain_$(system, $task)"]
227
228
  } else {[]}
228
- ...if(self.emitTarget != EmitBuild) {[
229
+ ...if(self.emitTarget != EmitBuild && self.emitTarget != EmitExecutable) {[
229
230
  "await " + mainName + "_$(system, $task)"
230
231
  ]} else {[]}
231
- ...if(self.emitTarget == EmitBuild) {[
232
- // "await $firefly_compiler.internalCreateExecutable_$(system, '.firefly/output/executable/Main.bundle.js', '.firefly/output', ['host'], system.assets_, $task)"
232
+ ...if(self.emitTarget == EmitExecutable) {[
233
+ "if(system.assets_) await ff_core_BuildSystem.internalWriteAssets_$(system, system.assets_, $task)"
233
234
  ]} else {[]}
234
235
  ...if(!willRunOnNode) {[]} else {[
235
236
  "} catch(error) {"
@@ -256,11 +257,11 @@ extend self: JsEmitter {
256
257
  "await $run$(fireflyPath_, process.argv.slice(2))"
257
258
  "})"
258
259
  ]
259
- | EmitExecutable => [
260
+ /*| EmitExecutable => [
260
261
  "queueMicrotask(async () => {"
261
262
  "await $run$(null, process.argv.slice(2))"
262
263
  "})"
263
- ]
264
+ ]*/
264
265
  | _ => []
265
266
  }
266
267
  ].join("\n")]}.else {[]}
package/compiler/Main.ff CHANGED
@@ -67,9 +67,10 @@ main(system: NodeSystem): Unit {
67
67
  )
68
68
  prepareFireflyDirectory(system.path("."))
69
69
  let mainPath = system.path(mainFile)
70
- let moduleKey = buildScript(system, mainPath, resolvedDependencies.mainPackagePair, EmitExecutable, resolvedDependencies)
70
+ let moduleKey =
71
+ buildScript(system, mainPath, resolvedDependencies.mainPackagePair, EmitExecutable, resolvedDependencies)
71
72
  bundleForExecutable(system, resolvedDependencies.mainPackagePair, moduleKey)
72
- importAndRun(system, fireflyPath, "build", moduleKey, [])
73
+ importAndRun(system, fireflyPath, "executable", moduleKey, [])
73
74
 
74
75
  | CheckCommand(filePath) =>
75
76
  let errors = Builder.check(
@@ -175,7 +176,7 @@ buildScript(
175
176
  } else {
176
177
  resolvedDependencies.packagePaths.add(PackagePair("ff", "core"), fireflyPath.slash("core"))
177
178
  }
178
- let compilerModulePath = if(emitTarget != EmitBrowser && emitTarget != EmitExecutable) {
179
+ let compilerModulePath = if(emitTarget != EmitBrowser) {
179
180
  fireflyPath.slash("output").slash("js").slash("ff").slash("compiler/Builder.mjs")
180
181
  }
181
182
  let targetName = emitTarget.{
@@ -209,3 +209,18 @@ internalCompile(buildSystem: BuildSystem, mainFiles: List[Path], target: String)
209
209
  internalMainPackagePair(buildSystem: BuildSystem): Pair[String, String] {
210
210
  Pair(buildSystem!->"mainPackagePair_"->"group_"?, buildSystem!->"mainPackagePair_"->"name_"?)
211
211
  }
212
+
213
+ internalWriteAssets(system: NodeSystem, assetSystem: AssetSystem): Unit {
214
+ let path = system.path(".").slash(".firefly").path("output").slash("assets")
215
+ if(path.exists()) {path.delete()}
216
+ path.createDirectory()
217
+ Log.debug("Writing assets to " + path.absolute())
218
+ assetSystem.files.each {p, s =>
219
+ Log.debug(p)
220
+ if(!p.contains("..")) {
221
+ let assetPath = path.slash(p)
222
+ assetPath.parent().grab().createDirectory(createParentDirectories = True)
223
+ assetPath.writeStream(s())
224
+ }
225
+ }
226
+ }
@@ -1,18 +1,16 @@
1
- FROM node:22
2
- # See https://cheatsheetseries.owasp.org/cheatsheets/NodeJS_Docker_Cheat_Sheet.html
3
- RUN apt update
4
- RUN apt install dumb-init
1
+ FROM node:22-slim
2
+ RUN apt update && apt install dumb-init
5
3
  USER node
6
- RUN mkdir /home/node/app
7
- RUN mkdir /home/node/firefly
4
+ RUN mkdir /home/node/firefly && mkdir /home/node/app
8
5
  WORKDIR /home/node/firefly
9
6
  RUN npm install firefly-compiler
10
7
  WORKDIR /home/node/app
11
8
  COPY --chown=node:node . .
12
9
  RUN [ "/home/node/firefly/node_modules/.bin/firefly", "build", "Main.ff" ]
13
10
  EXPOSE 8080
14
- ENTRYPOINT [ "dumb-init", "node", "--harmony-temporal", ".firefly/output/executable/Main.bundle.js", "0.0.0.0", "8080" ]
11
+ ENTRYPOINT [ "dumb-init", "node", "--harmony-temporal", ".firefly/output/executable/ff/fireflysite/Main.run.js", "0.0.0.0", "8080" ]
15
12
 
16
13
  # Test it with
17
14
  # podman build -t fireflysite .
18
15
  # podman run -p 8080:8080 --rm -it fireflysite
16
+ # podman run --entrypoint /bin/bash --rm -it fireflysite
@@ -54,7 +54,6 @@ nodeMain(system: NodeSystem): Unit {
54
54
  buildMain(system: BuildSystem) {
55
55
  mutable assets = AssetSystem.create()
56
56
  let browserAssets = system.bundleForBrowser(Router.modulesWithBrowserMain().map {_ + ".ff"}, sourceMaps = True)
57
- //let browserAssets = system.compileForBrowser(Router.modulesWithBrowserMain().map {_ + ".ff"})
58
57
  assets = assets.addAssets("/js/", browserAssets)
59
58
  assets = assets.addAssets("/assets/", system.packageAssets().assets("/assets/"))
60
59
  system.setAssets(assets)
@@ -257,7 +257,10 @@ const target_ = message_.target;
257
257
  ff_core_Lock.Lock_do(runner_.lock_, (() => {
258
258
  if((taskIteration_ === runner_.iteration_)) {
259
259
  return ff_core_Option.Some(ff_core_Try.Try_catchAny(ff_core_Try.Try_tryCatch(ff_core_Try.Try_tryCatch(ff_core_Core.try_((() => {
260
- ff_compiler_Builder.buildViaBuildSystem_(system_, fireflyPath_, mainPaths_, target_, moduleCache_, false);
260
+ const moduleCacheAlreadyEmittedWorkaround_ = (((_c) => {
261
+ return ff_compiler_ModuleCache.ModuleCache(_c.version_, _c.parsedModules_, _c.resolvedModules_, _c.derivedModules_, _c.inferredModules_, ff_core_Map.new_())
262
+ }))(moduleCache_);
263
+ ff_compiler_Builder.buildViaBuildSystem_(system_, fireflyPath_, mainPaths_, target_, moduleCacheAlreadyEmittedWorkaround_, false);
261
264
  forkedProcess_.send({ffDevelopMode: "internalCompile"})
262
265
  })), ((_1, _2) => {
263
266
  {
@@ -542,7 +545,10 @@ const target_ = message_.target;
542
545
  (await ff_core_Lock.Lock_do$(runner_.lock_, (async ($task) => {
543
546
  if((taskIteration_ === runner_.iteration_)) {
544
547
  return ff_core_Option.Some(ff_core_Try.Try_catchAny(ff_core_Try.Try_tryCatch(ff_core_Try.Try_tryCatch((await ff_core_Core.try_$((async ($task) => {
545
- (await ff_compiler_Builder.buildViaBuildSystem_$(system_, fireflyPath_, mainPaths_, target_, moduleCache_, false, $task));
548
+ const moduleCacheAlreadyEmittedWorkaround_ = (((_c) => {
549
+ return ff_compiler_ModuleCache.ModuleCache(_c.version_, _c.parsedModules_, _c.resolvedModules_, _c.derivedModules_, _c.inferredModules_, ff_core_Map.new_())
550
+ }))(moduleCache_);
551
+ (await ff_compiler_Builder.buildViaBuildSystem_$(system_, fireflyPath_, mainPaths_, target_, moduleCacheAlreadyEmittedWorkaround_, false, $task));
546
552
  forkedProcess_.send({ffDevelopMode: "internalCompile"})
547
553
  }), $task)), ((_1, _2) => {
548
554
  {
@@ -4,7 +4,7 @@
4
4
  "../../../../compiler/DevelopMode.ff"
5
5
  ],
6
6
  "sourcesContent": [
7
- "import Main\r\nimport ModuleCache\r\nimport Dependencies\r\nimport DependencyLock\r\nimport Syntax\r\nimport JsEmitter\r\nimport Builder from ff:compiler\r\n\r\ncapability Runner(\r\n lock: Lock\r\n lockCondition: LockCondition\r\n mutable iteration: Int\r\n mutable state: RunnerState\r\n mutable changedSinceCompilationStarted: Set[String]\r\n mutable recompile: Bool\r\n mutable appRunning: Bool\r\n)\r\n\r\ndata RunnerState {\r\n CompilingState\r\n CompileErrorState(at: Option[Location], output: String)\r\n ApplicationRunningState\r\n ApplicationCrashedState(output: String)\r\n}\r\n\r\nclass EsbuildContext(mutable jsValue: Option[JsValue])\r\n\r\nrun(\r\n system: NodeSystem\r\n fireflyPath: Path\r\n proxyPort: Int\r\n targetPort: Int\r\n mainFile: String\r\n arguments: List[String]\r\n) {\r\n let esbuildContext = EsbuildContext(None)\r\n let lock = system.mainTask().lock()\r\n let lockCondition = lock.condition()\r\n let runner = Runner(lock, lockCondition, 1, CompilingState, Set.new(), False, False)\r\n startProxy(system, runner, proxyPort, targetPort)\r\n startChangeListener(system, runner, system.path(\".\"))\r\n let moduleCache = ModuleCache.new(0)\r\n while {True} {\r\n let moduleKey = build(system, runner, mainFile, moduleCache)\r\n let task = moduleKey.{\r\n | None => \r\n system.mainTask().spawn {_ => }\r\n | Some(key) => \r\n runner.lock.do {\r\n runner.state = ApplicationRunningState\r\n }\r\n startApp(system, runner, fireflyPath, esbuildContext, moduleCache, key, mainFile, arguments)\r\n }\r\n runner.lock.do {\r\n if(runner.appRunning) {\r\n while {runner.appRunning} {\r\n runner.lockCondition.sleep()\r\n }\r\n }\r\n while {!runner.recompile} {\r\n runner.lockCondition.sleep()\r\n }\r\n task.abort()\r\n runner.changedSinceCompilationStarted.each {key =>\r\n moduleCache.invalidate(key)\r\n }\r\n runner.state = CompilingState\r\n runner.recompile = False\r\n runner.changedSinceCompilationStarted = Set.new()\r\n runner.iteration += 1\r\n }\r\n }\r\n}\r\n\r\nbuild(system: NodeSystem, runner: Runner, mainFile: String, moduleCache: ModuleCache): Option[ModuleKey] {\r\n try {\r\n Main.prepareFireflyDirectory(system.path(\".\"))\r\n let resolvedDependencies = Dependencies.process(\r\n system.httpClient()\r\n DependencyLock.new(system.mainTask())\r\n system.path(mainFile)\r\n )\r\n let mainPath = system.path(mainFile)\r\n Some(Main.buildScript(\r\n system\r\n mainPath\r\n resolvedDependencies.mainPackagePair\r\n EmitNode\r\n resolvedDependencies\r\n moduleCache\r\n printMeasurements = False\r\n ))\r\n } tryCatch {| CompileError(at, message), error =>\r\n Log.debug(message)\r\n Log.debug(\" at \" + at.file.replace(\"./\", \"\") + \":\" + at.line + \":\" + at.column)\r\n runner.lock.do {\r\n runner.state = CompileErrorState(Some(at), message)\r\n }\r\n None\r\n } tryCatch {| CompileErrors(compileErrors), error =>\r\n compileErrors.each {| CompileError(at, message) =>\r\n Log.debug(message)\r\n Log.debug(\" at \" + at.file.replace(\"./\", \"\") + \":\" + at.line + \":\" + at.column)\r\n runner.lock.do {\r\n runner.state = CompileErrorState(Some(at), message)\r\n }\r\n }\r\n None\r\n } catchAny {error =>\r\n Log.debug(error.message())\r\n runner.lock.do {\r\n runner.state = CompileErrorState(None, error.message())\r\n }\r\n None\r\n }\r\n}\r\n\r\nstartApp(\r\n system: NodeSystem\r\n runner: Runner\r\n fireflyPath: Path\r\n esbuildContext: EsbuildContext\r\n moduleCache: ModuleCache\r\n moduleKey: ModuleKey\r\n mainFile: String\r\n arguments: List[String]\r\n): Task {\r\n let taskIteration = runner.iteration\r\n system.mainTask().spawn {task =>\r\n try {\r\n let runFile = Main.locateRunFile(system, \"node\", moduleKey)\r\n let runFilePath = if(runFile.contains(\"://\")) {system.pathFromUrl(runFile)} else {system.path(runFile)}\r\n let startPath = runFilePath.parent().grab().slash(runFilePath.base() + \".start.mjs\")\r\n startPath.writeText(\r\n \"import * as run from \" + Json.string(\"./\" + runFilePath.base()).write() + \"\\n\" + \r\n \"globalThis.ffDevelopMode = true\\n\" + \r\n // The following should be awaited, but esbuild doesn't support top level await - still seems to work though\r\n \"run.$run$(\" + Json.string(fireflyPath.absolute()).write() + \", \" + Json.toJson(arguments).write() + \")\"\r\n )\r\n let esBuildPath = runFilePath.parent().grab().slash(runFilePath.base() + \".minified.js\")\r\n let context = esbuildContext.jsValue.else {\r\n let jsValue = BuildSystem.internalNodeCallEsBuildContext(system, startPath.absolute(), esBuildPath.absolute(), minify = True)\r\n esbuildContext.jsValue = Some(jsValue)\r\n jsValue\r\n }\r\n Js.await(context->rebuild())\r\n let relativeStartFile = esBuildPath.relativeTo(system.path(\".\"))\r\n let result = system.execute(relativeStartFile, arguments, node = Some({message, forkedProcess =>\r\n if(message->ffDevelopMode === \"internalCompile\") {\r\n let mainFiles: List[String] = message->mainFiles?\r\n let mainPaths = mainFiles.map {system.path(_)}\r\n let target: String = message->target?\r\n runner.lock.do {\r\n if(taskIteration == runner.iteration):\r\n try {\r\n Builder.buildViaBuildSystem(system, fireflyPath, mainPaths, target, moduleCache, printMeasurements = False)\r\n forkedProcess->send(Js->(ffDevelopMode = \"internalCompile\"))\r\n Unit\r\n } tryCatch {| CompileError(at, message), error =>\r\n runner.state = CompileErrorState(Some(at), message)\r\n } tryCatch {| CompileErrors(compileErrors), error =>\r\n compileErrors.each {| CompileError(at, message) =>\r\n runner.state = CompileErrorState(Some(at), message)\r\n }\r\n } catchAny {error =>\r\n runner.state = CompileErrorState(None, error.message())\r\n }\r\n }\r\n }\r\n }))\r\n let standardOut = result.standardOut.toString()\r\n let standardError = result.standardError.toString()\r\n runner.lock.do {\r\n runner.appRunning = False\r\n runner.state.{\r\n | ApplicationRunningState {taskIteration == runner.iteration} => \r\n runner.state = ApplicationCrashedState(\r\n \"Exited with code: \" + result.exitCode + \"\\n\\n\" + standardOut + \"\\n\\n\" + standardError\r\n )\r\n | _ => \r\n }\r\n runner.lockCondition.wakeAll()\r\n }\r\n } catchAny {error =>\r\n runner.lock.do {\r\n runner.appRunning = False\r\n runner.lockCondition.wakeAll()\r\n }\r\n }\r\n }\r\n}\r\n\r\nstartChangeListener(\r\n system: NodeSystem\r\n runner: Runner\r\n path: Path\r\n) {\r\n let fs = Js.import(\"node:fs\")\r\n fs->watch(path.absolute(), Js->(recursive = True), Js->{eventType, fileName =>\r\n if(!fileName.isNullOrUndefined()):\r\n let file: String = fileName?\r\n if(file.endsWith(\".ff\") || file.endsWith(\".firefly-workspace\")) {\r\n let key = system.path(file).absolute()\r\n runner.lock.do {\r\n // Probably we should also listen for other files, e.g. resources\r\n runner.changedSinceCompilationStarted = runner.changedSinceCompilationStarted.add(key)\r\n }\r\n }\r\n })\r\n}\r\n\r\nstartProxy(\r\n system: NodeSystem\r\n runner: Runner\r\n proxyPort: Int\r\n targetPort: Int\r\n) {\r\n let net = Js.import(\"node:net\")\r\n let targetServer = \"localhost\" // 127.0.0.1\r\n let proxyServer = net->createServer(Js->(pauseOnConnect = True), Js->{clientSocket =>\r\n mutable targetSocket = Js.undefined()\r\n mutable connected = False\r\n clientSocket->on(\"error\", Js->{err =>\r\n if(!targetSocket.isUndefined()) {targetSocket->end()}\r\n // Mute \"Error: write EPIPE\" and other errors that happen while writing a custom response to the client\r\n //Log.debugDynamic(err)\r\n })\r\n function serveWaiterHtml() {\r\n if(runner.changedSinceCompilationStarted.size() != 0) {\r\n runner.recompile = True\r\n system.mainTask().spawn {task =>\r\n runner.lock.do {\r\n runner.lockCondition.wakeAll()\r\n }\r\n }\r\n }\r\n function escapeHtml(html: String): String {\r\n html.replace(\"&\", \"&amp;\")\r\n .replace(\"'\", \"&#039;\")\r\n .replace(\"\\\"\", \"&quot;\")\r\n .replace(\"<\", \"&lt;\")\r\n .replace(\">\", \"&gt;\")\r\n }\r\n let status = runner.state.{\r\n | _ {runner.recompile} => \"Restarting...\"\r\n | ApplicationCrashedState(output) => \"Application crashed!<br>\" + escapeHtml(output)\r\n | ApplicationRunningState => \"Starting application...\"\r\n | CompileErrorState(Some(at), output) => \r\n let location = escapeHtml(at.file + \":\" + at.line + \":\" + at.column)\r\n let relativeFile = system.path(at.file).relativeTo(system.path(\".\"))\r\n let relativeLocation = escapeHtml(relativeFile + \":\" + at.line + \":\" + at.column)\r\n let link = \"<a href='vscode://file/\" + escapeHtml(location) + \"'>\" + relativeLocation + \"</a>\"\r\n escapeHtml(output) + \"<br><br>at \" + link\r\n | CompileErrorState(None, output) => \"Compiler crashed!<br>\" + escapeHtml(output)\r\n | CompilingState => \"Compiling...\"\r\n }\r\n \r\n let waiterBuffer = waiterHtml.replace(\"[STATUS]\", status).toBuffer()\r\n clientSocket->write(\"HTTP/1.1 200 OK\\r\\n\")\r\n clientSocket->write(\"Content-Type: text/html\\r\\n\")\r\n clientSocket->write(\"Content-Length: \" + waiterBuffer.size() + \"\\r\\n\")\r\n clientSocket->write(\"x-firefly-develop-mode: true\\r\\n\")\r\n clientSocket->write(\"Connection: close\\r\\n\")\r\n clientSocket->write(\"\\r\\n\")\r\n clientSocket->write(\r\n Js->Buffer->from(waiterBuffer!->buffer, waiterBuffer!->byteOffset, waiterBuffer!->byteLength)\r\n )\r\n clientSocket->end()\r\n }\r\n targetSocket = net->createConnection(targetPort, targetServer, Js->{\r\n connected = True\r\n let direct = runner.state.{\r\n | ApplicationRunningState => !runner.recompile && runner.changedSinceCompilationStarted.size() == 0\r\n | _ => False\r\n }\r\n if(direct) {\r\n clientSocket->pipe(targetSocket)->pipe(clientSocket)\r\n clientSocket->resume()?\r\n } else {\r\n serveWaiterHtml()\r\n }\r\n })\r\n targetSocket->on(\"error\", Js->{err =>\r\n if(connected) {\r\n clientSocket->end()?\r\n } else {\r\n serveWaiterHtml()\r\n }\r\n })?\r\n })\r\n \r\n proxyServer->listen(proxyPort, Js->{\r\n //print(system, \"Proxy server running on port \" + proxyPort)\r\n })\r\n}\r\n\r\nwaiterHtml = \"\"\"<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n <meta charset=\"UTF-8\">\r\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n <title>Firefly develop mode</title>\r\n <style>\r\n body {\r\n background-color: #121212;\r\n color: #e0e0e0;\r\n font-family: 'Courier New', monospace;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n height: 100vh;\r\n margin: 0;\r\n background-image: radial-gradient(circle at center, #1a1a2e, #121212);\r\n }\r\n\r\n h1 {\r\n color: #00f2ff;\r\n text-shadow: 0 0 10px #00f2ff;\r\n font-size: 3rem;\r\n margin-bottom: 20px;\r\n animation: glow 2s ease-in-out infinite alternate;\r\n }\r\n\r\n p {\r\n background-color: #1a1a2e;\r\n color: #00f2ff;\r\n padding: 15px 30px;\r\n border-radius: 25px;\r\n font-size: 1.2rem;\r\n border: 2px solid #00f2ff;\r\n box-shadow: 0 0 15px #00f2ff;\r\n animation: pulse 1.5s infinite;\r\n }\r\n \r\n a {\r\n color: #00f2ff;\r\n }\r\n\r\n @media only screen and (max-width: 600px) {\r\n h1 {\r\n font-size: 1.7rem;\r\n }\r\n p {\r\n padding: 10px 20px;\r\n border-radius: 50px;\r\n font-size: 1.1rem;\r\n max-width: 100%;\r\n box-sizing: border-box;\r\n }\r\n }\r\n \r\n @keyframes glow {\r\n from {\r\n text-shadow: 0 0 10px #00f2ff;\r\n }\r\n to {\r\n text-shadow: 0 0 20px #00f2ff, 0 0 30px #00f2ff;\r\n }\r\n }\r\n\r\n @keyframes pulse {\r\n 0% {\r\n box-shadow: 0 0 0 0 rgba(0, 242, 255, 0.7);\r\n }\r\n 70% {\r\n box-shadow: 0 0 0 10px rgba(0, 242, 255, 0);\r\n }\r\n 100% {\r\n box-shadow: 0 0 0 0 rgba(0, 242, 255, 0);\r\n }\r\n }\r\n </style>\r\n <script>\r\n let start = Date.now()\r\n let appStarted = null\r\n let delay = 10\r\n let poll = async () => {\r\n //delay *= 1.1\r\n try {\r\n let response = await fetch(\".\", {cache: 'no-store'})\r\n if(!response.headers.has('x-firefly-develop-mode')) {\r\n let now = Date.now()\r\n let compiling = appStarted - start\r\n let appStarting = now - appStarted\r\n //window.alert(\"Reloading after: \" + (now - start) + \" ms. Compiling: \" + compiling + \" ms. Starting application: \" + appStarting + \" ms.\")\r\n window.location.reload(true)\r\n return\r\n } else {\r\n let html = await response.text()\r\n if(appStarted == null && html.includes(\"Starting application...\")) appStarted = Date.now()\r\n let parser = new DOMParser()\r\n let d = parser.parseFromString(html, 'text/html')\r\n let bodyHtml = d.body.innerHTML\r\n if(document.body.innerHTML !== bodyHtml) {\r\n document.body.innerHTML = bodyHtml\r\n }\r\n setTimeout(poll, delay)\r\n }\r\n } catch (error) {\r\n console.error(\"Polling error:\", error)\r\n setTimeout(poll, delay)\r\n }\r\n }\r\n setTimeout(poll, delay)\r\n </script>\r\n</head>\r\n<body>\r\n <h1>Firefly develop mode</h1>\r\n <p>[STATUS]</p>\r\n</body>\r\n</html>\r\n\"\"\"\r\n"
7
+ "import Main\r\nimport ModuleCache\r\nimport Dependencies\r\nimport DependencyLock\r\nimport Syntax\r\nimport JsEmitter\r\nimport Builder from ff:compiler\r\n\r\ncapability Runner(\r\n lock: Lock\r\n lockCondition: LockCondition\r\n mutable iteration: Int\r\n mutable state: RunnerState\r\n mutable changedSinceCompilationStarted: Set[String]\r\n mutable recompile: Bool\r\n mutable appRunning: Bool\r\n)\r\n\r\ndata RunnerState {\r\n CompilingState\r\n CompileErrorState(at: Option[Location], output: String)\r\n ApplicationRunningState\r\n ApplicationCrashedState(output: String)\r\n}\r\n\r\nclass EsbuildContext(mutable jsValue: Option[JsValue])\r\n\r\nrun(\r\n system: NodeSystem\r\n fireflyPath: Path\r\n proxyPort: Int\r\n targetPort: Int\r\n mainFile: String\r\n arguments: List[String]\r\n) {\r\n let esbuildContext = EsbuildContext(None)\r\n let lock = system.mainTask().lock()\r\n let lockCondition = lock.condition()\r\n let runner = Runner(lock, lockCondition, 1, CompilingState, Set.new(), False, False)\r\n startProxy(system, runner, proxyPort, targetPort)\r\n startChangeListener(system, runner, system.path(\".\"))\r\n let moduleCache = ModuleCache.new(0)\r\n while {True} {\r\n let moduleKey = build(system, runner, mainFile, moduleCache)\r\n let task = moduleKey.{\r\n | None => \r\n system.mainTask().spawn {_ => }\r\n | Some(key) => \r\n runner.lock.do {\r\n runner.state = ApplicationRunningState\r\n }\r\n startApp(system, runner, fireflyPath, esbuildContext, moduleCache, key, mainFile, arguments)\r\n }\r\n runner.lock.do {\r\n if(runner.appRunning) {\r\n while {runner.appRunning} {\r\n runner.lockCondition.sleep()\r\n }\r\n }\r\n while {!runner.recompile} {\r\n runner.lockCondition.sleep()\r\n }\r\n task.abort()\r\n runner.changedSinceCompilationStarted.each {key =>\r\n moduleCache.invalidate(key)\r\n }\r\n runner.state = CompilingState\r\n runner.recompile = False\r\n runner.changedSinceCompilationStarted = Set.new()\r\n runner.iteration += 1\r\n }\r\n }\r\n}\r\n\r\nbuild(system: NodeSystem, runner: Runner, mainFile: String, moduleCache: ModuleCache): Option[ModuleKey] {\r\n try {\r\n Main.prepareFireflyDirectory(system.path(\".\"))\r\n let resolvedDependencies = Dependencies.process(\r\n system.httpClient()\r\n DependencyLock.new(system.mainTask())\r\n system.path(mainFile)\r\n )\r\n let mainPath = system.path(mainFile)\r\n Some(Main.buildScript(\r\n system\r\n mainPath\r\n resolvedDependencies.mainPackagePair\r\n EmitNode\r\n resolvedDependencies\r\n moduleCache\r\n printMeasurements = False\r\n ))\r\n } tryCatch {| CompileError(at, message), error =>\r\n Log.debug(message)\r\n Log.debug(\" at \" + at.file.replace(\"./\", \"\") + \":\" + at.line + \":\" + at.column)\r\n runner.lock.do {\r\n runner.state = CompileErrorState(Some(at), message)\r\n }\r\n None\r\n } tryCatch {| CompileErrors(compileErrors), error =>\r\n compileErrors.each {| CompileError(at, message) =>\r\n Log.debug(message)\r\n Log.debug(\" at \" + at.file.replace(\"./\", \"\") + \":\" + at.line + \":\" + at.column)\r\n runner.lock.do {\r\n runner.state = CompileErrorState(Some(at), message)\r\n }\r\n }\r\n None\r\n } catchAny {error =>\r\n Log.debug(error.message())\r\n runner.lock.do {\r\n runner.state = CompileErrorState(None, error.message())\r\n }\r\n None\r\n }\r\n}\r\n\r\nstartApp(\r\n system: NodeSystem\r\n runner: Runner\r\n fireflyPath: Path\r\n esbuildContext: EsbuildContext\r\n moduleCache: ModuleCache\r\n moduleKey: ModuleKey\r\n mainFile: String\r\n arguments: List[String]\r\n): Task {\r\n let taskIteration = runner.iteration\r\n system.mainTask().spawn {task =>\r\n try {\r\n let runFile = Main.locateRunFile(system, \"node\", moduleKey)\r\n let runFilePath = if(runFile.contains(\"://\")) {system.pathFromUrl(runFile)} else {system.path(runFile)}\r\n let startPath = runFilePath.parent().grab().slash(runFilePath.base() + \".start.mjs\")\r\n startPath.writeText(\r\n \"import * as run from \" + Json.string(\"./\" + runFilePath.base()).write() + \"\\n\" + \r\n \"globalThis.ffDevelopMode = true\\n\" + \r\n // The following should be awaited, but esbuild doesn't support top level await - still seems to work though\r\n \"run.$run$(\" + Json.string(fireflyPath.absolute()).write() + \", \" + Json.toJson(arguments).write() + \")\"\r\n )\r\n let esBuildPath = runFilePath.parent().grab().slash(runFilePath.base() + \".minified.js\")\r\n let context = esbuildContext.jsValue.else {\r\n let jsValue = BuildSystem.internalNodeCallEsBuildContext(system, startPath.absolute(), esBuildPath.absolute(), minify = True)\r\n esbuildContext.jsValue = Some(jsValue)\r\n jsValue\r\n }\r\n Js.await(context->rebuild())\r\n let relativeStartFile = esBuildPath.relativeTo(system.path(\".\"))\r\n let result = system.execute(relativeStartFile, arguments, node = Some({message, forkedProcess =>\r\n if(message->ffDevelopMode === \"internalCompile\") {\r\n let mainFiles: List[String] = message->mainFiles?\r\n let mainPaths = mainFiles.map {system.path(_)}\r\n let target: String = message->target?\r\n runner.lock.do {\r\n if(taskIteration == runner.iteration):\r\n try {\r\n let moduleCacheAlreadyEmittedWorkaround = moduleCache.ModuleCache(emittedModules = Map.new())\r\n Builder.buildViaBuildSystem(system, fireflyPath, mainPaths, target, moduleCacheAlreadyEmittedWorkaround, printMeasurements = False)\r\n forkedProcess->send(Js->(ffDevelopMode = \"internalCompile\"))\r\n Unit\r\n } tryCatch {| CompileError(at, message), error =>\r\n runner.state = CompileErrorState(Some(at), message)\r\n } tryCatch {| CompileErrors(compileErrors), error =>\r\n compileErrors.each {| CompileError(at, message) =>\r\n runner.state = CompileErrorState(Some(at), message)\r\n }\r\n } catchAny {error =>\r\n runner.state = CompileErrorState(None, error.message())\r\n }\r\n }\r\n }\r\n }))\r\n let standardOut = result.standardOut.toString()\r\n let standardError = result.standardError.toString()\r\n runner.lock.do {\r\n runner.appRunning = False\r\n runner.state.{\r\n | ApplicationRunningState {taskIteration == runner.iteration} => \r\n runner.state = ApplicationCrashedState(\r\n \"Exited with code: \" + result.exitCode + \"\\n\\n\" + standardOut + \"\\n\\n\" + standardError\r\n )\r\n | _ => \r\n }\r\n runner.lockCondition.wakeAll()\r\n }\r\n } catchAny {error =>\r\n runner.lock.do {\r\n runner.appRunning = False\r\n runner.lockCondition.wakeAll()\r\n }\r\n }\r\n }\r\n}\r\n\r\nstartChangeListener(\r\n system: NodeSystem\r\n runner: Runner\r\n path: Path\r\n) {\r\n let fs = Js.import(\"node:fs\")\r\n fs->watch(path.absolute(), Js->(recursive = True), Js->{eventType, fileName =>\r\n if(!fileName.isNullOrUndefined()):\r\n let file: String = fileName?\r\n if(file.endsWith(\".ff\") || file.endsWith(\".firefly-workspace\")) {\r\n let key = system.path(file).absolute()\r\n runner.lock.do {\r\n // Probably we should also listen for other files, e.g. resources\r\n runner.changedSinceCompilationStarted = runner.changedSinceCompilationStarted.add(key)\r\n }\r\n }\r\n })\r\n}\r\n\r\nstartProxy(\r\n system: NodeSystem\r\n runner: Runner\r\n proxyPort: Int\r\n targetPort: Int\r\n) {\r\n let net = Js.import(\"node:net\")\r\n let targetServer = \"localhost\" // 127.0.0.1\r\n let proxyServer = net->createServer(Js->(pauseOnConnect = True), Js->{clientSocket =>\r\n mutable targetSocket = Js.undefined()\r\n mutable connected = False\r\n clientSocket->on(\"error\", Js->{err =>\r\n if(!targetSocket.isUndefined()) {targetSocket->end()}\r\n // Mute \"Error: write EPIPE\" and other errors that happen while writing a custom response to the client\r\n //Log.debugDynamic(err)\r\n })\r\n function serveWaiterHtml() {\r\n if(runner.changedSinceCompilationStarted.size() != 0) {\r\n runner.recompile = True\r\n system.mainTask().spawn {task =>\r\n runner.lock.do {\r\n runner.lockCondition.wakeAll()\r\n }\r\n }\r\n }\r\n function escapeHtml(html: String): String {\r\n html.replace(\"&\", \"&amp;\")\r\n .replace(\"'\", \"&#039;\")\r\n .replace(\"\\\"\", \"&quot;\")\r\n .replace(\"<\", \"&lt;\")\r\n .replace(\">\", \"&gt;\")\r\n }\r\n let status = runner.state.{\r\n | _ {runner.recompile} => \"Restarting...\"\r\n | ApplicationCrashedState(output) => \"Application crashed!<br>\" + escapeHtml(output)\r\n | ApplicationRunningState => \"Starting application...\"\r\n | CompileErrorState(Some(at), output) => \r\n let location = escapeHtml(at.file + \":\" + at.line + \":\" + at.column)\r\n let relativeFile = system.path(at.file).relativeTo(system.path(\".\"))\r\n let relativeLocation = escapeHtml(relativeFile + \":\" + at.line + \":\" + at.column)\r\n let link = \"<a href='vscode://file/\" + escapeHtml(location) + \"'>\" + relativeLocation + \"</a>\"\r\n escapeHtml(output) + \"<br><br>at \" + link\r\n | CompileErrorState(None, output) => \"Compiler crashed!<br>\" + escapeHtml(output)\r\n | CompilingState => \"Compiling...\"\r\n }\r\n \r\n let waiterBuffer = waiterHtml.replace(\"[STATUS]\", status).toBuffer()\r\n clientSocket->write(\"HTTP/1.1 200 OK\\r\\n\")\r\n clientSocket->write(\"Content-Type: text/html\\r\\n\")\r\n clientSocket->write(\"Content-Length: \" + waiterBuffer.size() + \"\\r\\n\")\r\n clientSocket->write(\"x-firefly-develop-mode: true\\r\\n\")\r\n clientSocket->write(\"Connection: close\\r\\n\")\r\n clientSocket->write(\"\\r\\n\")\r\n clientSocket->write(\r\n Js->Buffer->from(waiterBuffer!->buffer, waiterBuffer!->byteOffset, waiterBuffer!->byteLength)\r\n )\r\n clientSocket->end()\r\n }\r\n targetSocket = net->createConnection(targetPort, targetServer, Js->{\r\n connected = True\r\n let direct = runner.state.{\r\n | ApplicationRunningState => !runner.recompile && runner.changedSinceCompilationStarted.size() == 0\r\n | _ => False\r\n }\r\n if(direct) {\r\n clientSocket->pipe(targetSocket)->pipe(clientSocket)\r\n clientSocket->resume()?\r\n } else {\r\n serveWaiterHtml()\r\n }\r\n })\r\n targetSocket->on(\"error\", Js->{err =>\r\n if(connected) {\r\n clientSocket->end()?\r\n } else {\r\n serveWaiterHtml()\r\n }\r\n })?\r\n })\r\n \r\n proxyServer->listen(proxyPort, Js->{\r\n //print(system, \"Proxy server running on port \" + proxyPort)\r\n })\r\n}\r\n\r\nwaiterHtml = \"\"\"<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n <meta charset=\"UTF-8\">\r\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n <title>Firefly develop mode</title>\r\n <style>\r\n body {\r\n background-color: #121212;\r\n color: #e0e0e0;\r\n font-family: 'Courier New', monospace;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n height: 100vh;\r\n margin: 0;\r\n background-image: radial-gradient(circle at center, #1a1a2e, #121212);\r\n }\r\n\r\n h1 {\r\n color: #00f2ff;\r\n text-shadow: 0 0 10px #00f2ff;\r\n font-size: 3rem;\r\n margin-bottom: 20px;\r\n animation: glow 2s ease-in-out infinite alternate;\r\n }\r\n\r\n p {\r\n background-color: #1a1a2e;\r\n color: #00f2ff;\r\n padding: 15px 30px;\r\n border-radius: 25px;\r\n font-size: 1.2rem;\r\n border: 2px solid #00f2ff;\r\n box-shadow: 0 0 15px #00f2ff;\r\n animation: pulse 1.5s infinite;\r\n }\r\n \r\n a {\r\n color: #00f2ff;\r\n }\r\n\r\n @media only screen and (max-width: 600px) {\r\n h1 {\r\n font-size: 1.7rem;\r\n }\r\n p {\r\n padding: 10px 20px;\r\n border-radius: 50px;\r\n font-size: 1.1rem;\r\n max-width: 100%;\r\n box-sizing: border-box;\r\n }\r\n }\r\n \r\n @keyframes glow {\r\n from {\r\n text-shadow: 0 0 10px #00f2ff;\r\n }\r\n to {\r\n text-shadow: 0 0 20px #00f2ff, 0 0 30px #00f2ff;\r\n }\r\n }\r\n\r\n @keyframes pulse {\r\n 0% {\r\n box-shadow: 0 0 0 0 rgba(0, 242, 255, 0.7);\r\n }\r\n 70% {\r\n box-shadow: 0 0 0 10px rgba(0, 242, 255, 0);\r\n }\r\n 100% {\r\n box-shadow: 0 0 0 0 rgba(0, 242, 255, 0);\r\n }\r\n }\r\n </style>\r\n <script>\r\n let start = Date.now()\r\n let appStarted = null\r\n let delay = 10\r\n let poll = async () => {\r\n //delay *= 1.1\r\n try {\r\n let response = await fetch(\".\", {cache: 'no-store'})\r\n if(!response.headers.has('x-firefly-develop-mode')) {\r\n let now = Date.now()\r\n let compiling = appStarted - start\r\n let appStarting = now - appStarted\r\n //window.alert(\"Reloading after: \" + (now - start) + \" ms. Compiling: \" + compiling + \" ms. Starting application: \" + appStarting + \" ms.\")\r\n window.location.reload(true)\r\n return\r\n } else {\r\n let html = await response.text()\r\n if(appStarted == null && html.includes(\"Starting application...\")) appStarted = Date.now()\r\n let parser = new DOMParser()\r\n let d = parser.parseFromString(html, 'text/html')\r\n let bodyHtml = d.body.innerHTML\r\n if(document.body.innerHTML !== bodyHtml) {\r\n document.body.innerHTML = bodyHtml\r\n }\r\n setTimeout(poll, delay)\r\n }\r\n } catch (error) {\r\n console.error(\"Polling error:\", error)\r\n setTimeout(poll, delay)\r\n }\r\n }\r\n setTimeout(poll, delay)\r\n </script>\r\n</head>\r\n<body>\r\n <h1>Firefly develop mode</h1>\r\n <p>[STATUS]</p>\r\n</body>\r\n</html>\r\n\"\"\"\r\n"
8
8
  ],
9
9
  "names": [
10
10
  "Runner",
@@ -103,6 +103,14 @@
103
103
  "map",
104
104
  "w1",
105
105
  "target",
106
+ "moduleCacheAlreadyEmittedWorkaround",
107
+ "c",
108
+ "ModuleCache",
109
+ "version",
110
+ "parsedModules",
111
+ "resolvedModules",
112
+ "derivedModules",
113
+ "inferredModules",
106
114
  "buildViaBuildSystem",
107
115
  "send",
108
116
  "standardOut",
@@ -178,5 +186,5 @@
178
186
  "grabUint8",
179
187
  "DeserializationChecksumException"
180
188
  ],
181
- "mappings": "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"
189
+ "mappings": "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"
182
190
  }
@@ -763,9 +763,7 @@ const _w1 = for_a[for_i];
763
763
  ff_compiler_JsEmitter.Liner_writeLines(liner_);
764
764
  ff_compiler_JsEmitter.JsEmitter_emitInstanceDefinition(self_, _w1)
765
765
  };
766
- const ignoreJsImports_ = ((ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget.equals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable()) && ff_compiler_Syntax.PackagePair_isCore(self_.moduleKey_.packagePair_))
767
- ? ["esbuild"]
768
- : []);
766
+ const ignoreJsImports_ = [];
769
767
  const jsImports_ = ff_compiler_JsImporter.JsImporter_generateImports(self_.jsImporter_, ff_core_List.List_toSet(ignoreJsImports_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String));
770
768
  if((!ff_core_List.List_isEmpty(jsImports_))) {
771
769
  ff_compiler_JsEmitter.JsEmitter_writeAnchorLines(self_, anchor_, jsImports_)
@@ -796,7 +794,7 @@ export function JsEmitter_makeRun(self_, moduleName_, functions_, mainPackagePai
796
794
  const buildMainFunction_ = ff_core_Option.Option_filter(ff_core_List.List_find(functions_, ((_w1) => {
797
795
  return (_w1.signature_.name_ === "buildMain")
798
796
  })), ((_) => {
799
- return (ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget) && ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget))
797
+ return ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
800
798
  }));
801
799
  const willRunOnNode_ = ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget);
802
800
  const targetMain_ = (willRunOnNode_
@@ -814,7 +812,7 @@ return _w1.signature_.name_
814
812
  })), ((mainName_) => {
815
813
  return [ff_core_List.List_join([...ff_core_Option.Option_toList(ff_core_Option.Option_map(buildMainFunction_, ((buildMain_) => {
816
814
  return (((("import {" + ff_compiler_JsEmitter.escapeKeyword_(buildMain_.signature_.name_)) + "$} from './") + moduleName_) + ".mjs'")
817
- }))), (((("import {" + ff_compiler_JsEmitter.escapeKeyword_(mainName_)) + "$} from './") + moduleName_) + ".mjs'"), ff_compiler_JsEmitter.JsEmitter_emitImport(self_, ff_compiler_Syntax.ModuleKey(ff_compiler_Syntax.PackagePair("ff", "core"), [], "Error")), "export async function $run$(fireflyPath_, arguments_) {", "Error.stackTraceLimit = 50", "const $task = {controller_: new AbortController(), subtasks_: new Set(), promise_: new Promise(() => {}), started_: performance.now() * 0.001}", ...(ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
815
+ }))), (((("import {" + ff_compiler_JsEmitter.escapeKeyword_(mainName_)) + "$} from './") + moduleName_) + ".mjs'"), ff_compiler_JsEmitter.JsEmitter_emitImport(self_, ff_compiler_Syntax.ModuleKey(ff_compiler_Syntax.PackagePair("ff", "core"), [], "Error")), ff_compiler_JsEmitter.JsEmitter_emitImport(self_, ff_compiler_Syntax.ModuleKey(ff_compiler_Syntax.PackagePair("ff", "core"), [], "BuildSystem")), "export async function $run$(fireflyPath_, arguments_) {", "Error.stackTraceLimit = 50", "const $task = {controller_: new AbortController(), subtasks_: new Set(), promise_: new Promise(() => {}), started_: performance.now() * 0.001}", ...(ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
818
816
  ? ["let interval = setInterval(() => {}, 24 * 60 * 60 * 1000)"]
819
817
  : []), "let system = {", "task_: $task,", "array_: arguments_,", "fireflyPath_: fireflyPath_,", (((("mainPackagePair_: {group_: \"" + mainPackagePair_.group_) + "\", name_: \"") + mainPackagePair_.name_) + "\"},"), (("executableMode_: " + (ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget.equals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable())
820
818
  ? "true"
@@ -822,10 +820,10 @@ return (((("import {" + ff_compiler_JsEmitter.escapeKeyword_(buildMain_.signatur
822
820
  ? "true"
823
821
  : "false")), "}", "try {", ...((!ff_core_Option.Option_isEmpty(buildMainFunction_))
824
822
  ? ["await buildMain_$(system, $task)"]
825
- : []), ...(ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBuild(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
823
+ : []), ...((ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBuild(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget) && ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget))
826
824
  ? [(("await " + mainName_) + "_$(system, $task)")]
827
- : []), ...(ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget.equals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBuild())
828
- ? []
825
+ : []), ...(ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget.equals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable())
826
+ ? ["if(system.assets_) await ff_core_BuildSystem.internalWriteAssets_$(system, system.assets_, $task)"]
829
827
  : []), ...((!willRunOnNode_)
830
828
  ? []
831
829
  : ["} catch(error) {", "console.error(ff_core_Error.Error_stack(error))", "process.exit(1)"]), "} finally {", ...(ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
@@ -837,9 +835,6 @@ return ["queueMicrotask(async () => {", "await $run$(null, [])", "})"]
837
835
  if(_1.EmitNode && bootstrapping_) {
838
836
  return ["import * as path from 'node:path'", "queueMicrotask(async () => {", "let fireflyPath_ = path.dirname(path.dirname(path.dirname(path.dirname(path.dirname(process.argv[1])))))", "await $run$(fireflyPath_, process.argv.slice(2))", "})"]
839
837
  }
840
- if(_1.EmitExecutable) {
841
- return ["queueMicrotask(async () => {", "await $run$(null, process.argv.slice(2))", "})"]
842
- }
843
838
  {
844
839
  return []
845
840
  }
@@ -4377,9 +4372,7 @@ const _w1 = for_a[for_i];
4377
4372
  ff_compiler_JsEmitter.Liner_writeLines(liner_);
4378
4373
  ff_compiler_JsEmitter.JsEmitter_emitInstanceDefinition(self_, _w1)
4379
4374
  };
4380
- const ignoreJsImports_ = ((ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget.equals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable()) && ff_compiler_Syntax.PackagePair_isCore(self_.moduleKey_.packagePair_))
4381
- ? ["esbuild"]
4382
- : []);
4375
+ const ignoreJsImports_ = [];
4383
4376
  const jsImports_ = ff_compiler_JsImporter.JsImporter_generateImports(self_.jsImporter_, ff_core_List.List_toSet(ignoreJsImports_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String));
4384
4377
  if((!ff_core_List.List_isEmpty(jsImports_))) {
4385
4378
  ff_compiler_JsEmitter.JsEmitter_writeAnchorLines(self_, anchor_, jsImports_)
@@ -4410,7 +4403,7 @@ export async function JsEmitter_makeRun$(self_, moduleName_, functions_, mainPac
4410
4403
  const buildMainFunction_ = ff_core_Option.Option_filter(ff_core_List.List_find(functions_, ((_w1) => {
4411
4404
  return (_w1.signature_.name_ === "buildMain")
4412
4405
  })), ((_) => {
4413
- return (ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget) && ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget))
4406
+ return ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
4414
4407
  }));
4415
4408
  const willRunOnNode_ = ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget);
4416
4409
  const targetMain_ = (willRunOnNode_
@@ -4428,7 +4421,7 @@ return _w1.signature_.name_
4428
4421
  })), ((mainName_) => {
4429
4422
  return [ff_core_List.List_join([...ff_core_Option.Option_toList(ff_core_Option.Option_map(buildMainFunction_, ((buildMain_) => {
4430
4423
  return (((("import {" + ff_compiler_JsEmitter.escapeKeyword_(buildMain_.signature_.name_)) + "$} from './") + moduleName_) + ".mjs'")
4431
- }))), (((("import {" + ff_compiler_JsEmitter.escapeKeyword_(mainName_)) + "$} from './") + moduleName_) + ".mjs'"), ff_compiler_JsEmitter.JsEmitter_emitImport(self_, ff_compiler_Syntax.ModuleKey(ff_compiler_Syntax.PackagePair("ff", "core"), [], "Error")), "export async function $run$(fireflyPath_, arguments_) {", "Error.stackTraceLimit = 50", "const $task = {controller_: new AbortController(), subtasks_: new Set(), promise_: new Promise(() => {}), started_: performance.now() * 0.001}", ...(ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
4424
+ }))), (((("import {" + ff_compiler_JsEmitter.escapeKeyword_(mainName_)) + "$} from './") + moduleName_) + ".mjs'"), ff_compiler_JsEmitter.JsEmitter_emitImport(self_, ff_compiler_Syntax.ModuleKey(ff_compiler_Syntax.PackagePair("ff", "core"), [], "Error")), ff_compiler_JsEmitter.JsEmitter_emitImport(self_, ff_compiler_Syntax.ModuleKey(ff_compiler_Syntax.PackagePair("ff", "core"), [], "BuildSystem")), "export async function $run$(fireflyPath_, arguments_) {", "Error.stackTraceLimit = 50", "const $task = {controller_: new AbortController(), subtasks_: new Set(), promise_: new Promise(() => {}), started_: performance.now() * 0.001}", ...(ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
4432
4425
  ? ["let interval = setInterval(() => {}, 24 * 60 * 60 * 1000)"]
4433
4426
  : []), "let system = {", "task_: $task,", "array_: arguments_,", "fireflyPath_: fireflyPath_,", (((("mainPackagePair_: {group_: \"" + mainPackagePair_.group_) + "\", name_: \"") + mainPackagePair_.name_) + "\"},"), (("executableMode_: " + (ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget.equals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable())
4434
4427
  ? "true"
@@ -4436,10 +4429,10 @@ return (((("import {" + ff_compiler_JsEmitter.escapeKeyword_(buildMain_.signatur
4436
4429
  ? "true"
4437
4430
  : "false")), "}", "try {", ...((!ff_core_Option.Option_isEmpty(buildMainFunction_))
4438
4431
  ? ["await buildMain_$(system, $task)"]
4439
- : []), ...(ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBuild(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
4432
+ : []), ...((ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBuild(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget) && ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget))
4440
4433
  ? [(("await " + mainName_) + "_$(system, $task)")]
4441
- : []), ...(ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget.equals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBuild())
4442
- ? []
4434
+ : []), ...(ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget.equals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitExecutable())
4435
+ ? ["if(system.assets_) await ff_core_BuildSystem.internalWriteAssets_$(system, system.assets_, $task)"]
4443
4436
  : []), ...((!willRunOnNode_)
4444
4437
  ? []
4445
4438
  : ["} catch(error) {", "console.error(ff_core_Error.Error_stack(error))", "process.exit(1)"]), "} finally {", ...(ff_core_Equal.notEquals_(self_.emitTarget_, ff_compiler_JsEmitter.EmitBrowser(), ff_compiler_JsEmitter.ff_core_Equal_Equal$ff_compiler_JsEmitter_EmitTarget)
@@ -4451,9 +4444,6 @@ return ["queueMicrotask(async () => {", "await $run$(null, [])", "})"]
4451
4444
  if(_1.EmitNode && bootstrapping_) {
4452
4445
  return ["import * as path from 'node:path'", "queueMicrotask(async () => {", "let fireflyPath_ = path.dirname(path.dirname(path.dirname(path.dirname(path.dirname(process.argv[1])))))", "await $run$(fireflyPath_, process.argv.slice(2))", "})"]
4453
4446
  }
4454
- if(_1.EmitExecutable) {
4455
- return ["queueMicrotask(async () => {", "await $run$(null, process.argv.slice(2))", "})"]
4456
- }
4457
4447
  {
4458
4448
  return []
4459
4449
  }