From b8b765c114a200a5fe48b566c39aaad74425aea3 Mon Sep 17 00:00:00 2001 From: Guy Bedford Date: Mon, 5 Aug 2024 16:34:13 -0700 Subject: [PATCH 1/2] deps: upgrade to latest generator toolchain --- chompfile.toml | 1 + jspm-rollup.js | 17 +++++++---------- package.json | 17 ++++++++--------- test/chunked.js | 2 +- 4 files changed, 17 insertions(+), 20 deletions(-) diff --git a/chompfile.toml b/chompfile.toml index 9f70f02..4a665e6 100644 --- a/chompfile.toml +++ b/chompfile.toml @@ -3,3 +3,4 @@ version = 0.1 [[task]] name = 'test' run = 'node test/test.js' +# env = { JSPM_GENERATOR_LOG = '1' } diff --git a/jspm-rollup.js b/jspm-rollup.js index 07d5be2..729eef2 100644 --- a/jspm-rollup.js +++ b/jspm-rollup.js @@ -152,20 +152,14 @@ export default ({ baseUrl, defaultProvider = 'nodemodules', env = ['browser', 'd cache = Object.create(null); // run the generator phase _first_ - generator = new Generator({ mapUrl: baseUrl, env, defaultProvider, inputMap }); - - // (async () => { - // for await (const { type, message } of generator.logStream()) { - // console.log(`${type}: ${message}`); - // } - // })(); + generator = new Generator({ mapUrl: baseUrl, env, defaultProvider, inputMap, commonJS: true, typeScript: true }); if (minify && !terser) terser = await import('terser'); // always trace process and buffer builtins try { - await Promise.all([generator.traceInstall('process'), generator.traceInstall('buffer'), generator.traceInstall('module')]); + await Promise.all([generator.link('process'), generator.link('buffer'), generator.link('module')]); processBuiltinResolved = generator.importMap.resolve('process'); bufferBuiltinResolved = generator.importMap.resolve('buffer'); moduleBuiltinResolved = generator.importMap.resolve('module'); @@ -175,11 +169,14 @@ export default ({ baseUrl, defaultProvider = 'nodemodules', env = ['browser', 'd } await Promise.all(Object.values(opts.input).map(async specifier => { - await generator.traceInstall(specifier, baseUrl.href); + await generator.link(specifier, baseUrl.href); })); // Pending next Generator update - importMap = new ImportMap(generator.importMap.mapUrl, generator.importMap.toJSON()); + importMap = new ImportMap({ + mapUrl: generator.importMap.mapUrl, + map: generator.importMap.toJSON() + }); if (externals) { externalsMap = new Map(); diff --git a/package.json b/package.json index 513caab..7b92d44 100644 --- a/package.json +++ b/package.json @@ -17,22 +17,21 @@ "identifier.mjs" ], "dependencies": { - "@babel/core": "^7.14.8", - "@babel/preset-typescript": "^7.14.5", + "@babel/core": "^7.25.2", + "@babel/preset-typescript": "^7.24.7", "@jspm/core": "^2.0.0-beta.8", - "@jspm/generator": "^1.0.0-beta.11", - "@jspm/import-map": "^0.1.5", + "@jspm/generator": "^2.1.3", + "@jspm/import-map": "^1.1.0", "babel-plugin-transform-cjs-dew": "github:jspm/babel-plugin-transform-cjs-dew#main", - "cjs-module-lexer": "^1.2.2", - "terser": "^5.7.1", - "typescript": "^4.8.4" + "cjs-module-lexer": "^1.3.1", + "terser": "^5.31.3", + "typescript": "^5.5.4" }, "devDependencies": { "chalk": "^2.3.0", - "cjs-module-lexer": "^1.2.2", "lodash": "^4.17.4", "mocha": "^9.0.2", - "rollup": "^2.55.1" + "rollup": "^4.20.0" }, "type": "module" } diff --git a/test/chunked.js b/test/chunked.js index ae66b01..a3b3546 100644 --- a/test/chunked.js +++ b/test/chunked.js @@ -108,7 +108,7 @@ suite('Chunked builds', () => { const { output: [babel, lodash] } = await bundle.write({ format: 'esm', dir: outFixturesPath }); - assert.strictEqual(Object.keys(babel.modules).length, 277); + assert.strictEqual(Object.keys(babel.modules).length, 306); assert.strictEqual(Object.keys(lodash.modules).length, 138); // test we can execute (assertions in code) From 552838d2a108a11f619d82768afb482c8e839aec Mon Sep 17 00:00:00 2001 From: Guy Bedford Date: Mon, 30 Sep 2024 20:12:14 -0700 Subject: [PATCH 2/2] fixup --- jspm-rollup.js | 1 + package.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/jspm-rollup.js b/jspm-rollup.js index 729eef2..928e5dc 100644 --- a/jspm-rollup.js +++ b/jspm-rollup.js @@ -381,6 +381,7 @@ export default ({ baseUrl, defaultProvider = 'nodemodules', env = ['browser', 'd } if (depId === 'buffer' || depId === 'module' || depId === 'process') return true; + if (depId.endsWith('/')) depId = depId.slice(0, -1); const resolved = importMap.resolve(depId, id); if (!resolved) throw new Error('Could not resolve ' + depId + ' in ' + id); diff --git a/package.json b/package.json index 7b92d44..1e3f54d 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "@babel/core": "^7.25.2", "@babel/preset-typescript": "^7.24.7", "@jspm/core": "^2.0.0-beta.8", - "@jspm/generator": "^2.1.3", + "@jspm/generator": "^2.3.1", "@jspm/import-map": "^1.1.0", "babel-plugin-transform-cjs-dew": "github:jspm/babel-plugin-transform-cjs-dew#main", "cjs-module-lexer": "^1.3.1",