summaryrefslogtreecommitdiff
path: root/cli/tsc
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tsc')
-rw-r--r--cli/tsc/99_main_compiler.js19
-rw-r--r--cli/tsc/mod.rs10
2 files changed, 10 insertions, 19 deletions
diff --git a/cli/tsc/99_main_compiler.js b/cli/tsc/99_main_compiler.js
index 8f76425c1..d795e542b 100644
--- a/cli/tsc/99_main_compiler.js
+++ b/cli/tsc/99_main_compiler.js
@@ -519,6 +519,7 @@ delete Object.prototype.__proto__;
if (logDebug) {
debug(`host.fileExists("${specifier}")`);
}
+ // TODO(bartlomieju): is this assumption still valid?
// this is used by typescript to find the libs path
// so we can completely ignore it
return false;
@@ -963,6 +964,9 @@ delete Object.prototype.__proto__;
* @param {number} id
* @param {any} data
*/
+ // TODO(bartlomieju): this feels needlessly generic, both type chcking
+ // and language server use it with inefficient serialization. Id is not used
+ // anyway...
function respond(id, data = null) {
ops.op_respond({ id, data });
}
@@ -1046,6 +1050,7 @@ delete Object.prototype.__proto__;
}
}
+ let hasStarted = false;
/** @param {{ debug: boolean; }} init */
function serverInit({ debug: debugFlag }) {
if (hasStarted) {
@@ -1063,19 +1068,6 @@ delete Object.prototype.__proto__;
debug("serverRestart()");
}
- let hasStarted = false;
-
- /** Startup the runtime environment, setting various flags.
- * @param {{ debugFlag?: boolean; legacyFlag?: boolean; }} msg
- */
- function startup({ debugFlag = false }) {
- if (hasStarted) {
- throw new Error("The compiler runtime already started.");
- }
- hasStarted = true;
- setLogDebug(!!debugFlag, "TS");
- }
-
// A build time only op that provides some setup information that is used to
// ensure the snapshot is setup properly.
/** @type {{ buildSpecifier: string; libs: string[]; nodeBuiltInModuleNames: string[] }} */
@@ -1161,7 +1153,6 @@ delete Object.prototype.__proto__;
// checking TypeScript.
/** @type {any} */
const global = globalThis;
- global.startup = startup;
global.exec = exec;
global.getAssets = getAssets;
diff --git a/cli/tsc/mod.rs b/cli/tsc/mod.rs
index 2a820a6ee..6a239c1e9 100644
--- a/cli/tsc/mod.rs
+++ b/cli/tsc/mod.rs
@@ -326,6 +326,8 @@ pub struct Response {
pub stats: Stats,
}
+// TODO(bartlomieju): we have similar struct in `tsc.rs` - maybe at least change
+// the name of the struct to avoid confusion?
#[derive(Debug)]
struct State {
hash_data: u64,
@@ -764,6 +766,8 @@ struct RespondArgs {
pub stats: Stats,
}
+// TODO(bartlomieju): this mechanism is questionable.
+// Can't we use something more efficient here?
#[op2]
fn op_respond(state: &mut OpState, #[serde] args: RespondArgs) {
let state = state.borrow_mut::<State>();
@@ -822,7 +826,6 @@ pub fn exec(request: Request) -> Result<Response, AnyError> {
},
);
- let startup_source = ascii_str!("globalThis.startup({ legacyFlag: false })");
let request_value = json!({
"config": request.config,
"debug": request.debug,
@@ -841,9 +844,6 @@ pub fn exec(request: Request) -> Result<Response, AnyError> {
..Default::default()
});
- runtime
- .execute_script(located_script_name!(), startup_source)
- .context("Could not properly start the compiler runtime.")?;
runtime.execute_script(located_script_name!(), exec_source)?;
let op_state = runtime.op_state();
@@ -1007,7 +1007,7 @@ mod tests {
.execute_script_static(
"<anon>",
r#"
- if (!(startup)) {
+ if (!(globalThis.exec)) {
throw Error("bad");
}
console.log(`ts version: ${ts.version}`);