diff --git a/History.md b/History.md index c2a1f3a7d7..adc688bc50 100644 --- a/History.md +++ b/History.md @@ -68,9 +68,13 @@ N/A planning a quick follow-up Meteor 1.8.1 release, which can be obtained by running the command ```bash - meteor update --release 1.8.1 + meteor update --release 1.8.1-beta.n ``` + where `-beta.n` is the latest beta release according to the + [releases](https://github.com/meteor/meteor/releases) page (currently + `-beta.6`). [Issue #10216](https://github.com/meteor/meteor/issues/10216) + [PR #10248](https://github.com/meteor/meteor/pull/10248) * Meteor 1.7 introduced a new client bundle called `web.browser.legacy` in addition to the `web.browser` (modern) and `web.cordova` bundles. diff --git a/packages/dynamic-import/dynamic-versions.js b/packages/dynamic-import/dynamic-versions.js index 41b749a2f7..93494a9a7f 100644 --- a/packages/dynamic-import/dynamic-versions.js +++ b/packages/dynamic-import/dynamic-versions.js @@ -69,7 +69,9 @@ function precacheOnLoad(event) { return module.prefetch(id); })).then(function () { if (modules.length > 0) { - prefetchInChunks(modules, amount); + setTimeout(function () { + prefetchInChunks(modules, amount); + }, 0); } }); } diff --git a/packages/dynamic-import/package.js b/packages/dynamic-import/package.js index b57a77067b..0c87536f80 100644 --- a/packages/dynamic-import/package.js +++ b/packages/dynamic-import/package.js @@ -1,6 +1,6 @@ Package.describe({ name: "dynamic-import", - version: "0.5.0", + version: "0.5.1", summary: "Runtime support for Meteor 1.5 dynamic import(...) syntax", documentation: "README.md" }); diff --git a/packages/oauth/end_of_popup_response.js b/packages/oauth/end_of_popup_response.js index fd6a1ae20b..ed554160db 100644 --- a/packages/oauth/end_of_popup_response.js +++ b/packages/oauth/end_of_popup_response.js @@ -9,8 +9,8 @@ if (config.isCordova) { var credentialString = JSON.stringify({ - credentialToken, - credentialSecret, + credentialToken: credentialToken, + credentialSecret: credentialSecret }); window.location.hash = credentialString; diff --git a/packages/oauth/package.js b/packages/oauth/package.js index 524b0aeed9..841f327a07 100644 --- a/packages/oauth/package.js +++ b/packages/oauth/package.js @@ -1,6 +1,6 @@ Package.describe({ summary: "Common code for OAuth-based services", - version: "1.2.6" + version: "1.2.7" }); Package.onUse(api => { diff --git a/packages/webapp/package.js b/packages/webapp/package.js index 66327cca2d..58617b104f 100644 --- a/packages/webapp/package.js +++ b/packages/webapp/package.js @@ -1,6 +1,6 @@ Package.describe({ summary: "Serves a Meteor app over HTTP", - version: '1.7.2-beta181.6' + version: '1.7.2' }); Npm.depends({"basic-auth-connect": "1.0.0", diff --git a/packages/webapp/webapp_server.js b/packages/webapp/webapp_server.js index 1fa2daa65c..1037d44aa7 100644 --- a/packages/webapp/webapp_server.js +++ b/packages/webapp/webapp_server.js @@ -386,12 +386,7 @@ WebAppInternals.staticFilesMiddleware = async function ( res.end(); }; - if (pathname === "/meteor_runtime_config.js" && - ! WebAppInternals.inlineScriptsAllowed()) { - serveStaticJs("__meteor_runtime_config__ = " + - JSON.stringify(__meteor_runtime_config__) + ";"); - return; - } else if (_.has(additionalStaticJs, pathname) && + if (_.has(additionalStaticJs, pathname) && ! WebAppInternals.inlineScriptsAllowed()) { serveStaticJs(additionalStaticJs[pathname]); return; @@ -404,7 +399,14 @@ WebAppInternals.staticFilesMiddleware = async function ( // If pauseClient(arch) has been called, program.paused will be a // Promise that will be resolved when the program is unpaused. - await WebApp.clientPrograms[arch].paused; + const program = WebApp.clientPrograms[arch]; + await program.paused; + + if (path === "/meteor_runtime_config.js" && + ! WebAppInternals.inlineScriptsAllowed()) { + serveStaticJs(`__meteor_runtime_config__ = ${program.meteorRuntimeConfig};`); + return; + } const info = getStaticFileInfo(pathname, path, arch); if (! info) { @@ -789,13 +791,18 @@ function runWebAppServer() { function generateBoilerplateForArch(arch) { const program = WebApp.clientPrograms[arch]; + const additionalOptions = defaultOptionsForArch[arch] || {}; const { baseData } = boilerplateByArch[arch] = WebAppInternals.generateBoilerplateInstance( arch, program.manifest, - defaultOptionsForArch[arch], + additionalOptions, ); - + // We need the runtime config with overrides for meteor_runtime_config.js: + program.meteorRuntimeConfig = JSON.stringify({ + ...__meteor_runtime_config__, + ...(additionalOptions.runtimeConfigOverrides || null), + }); program.refreshableAssets = baseData.css.map(file => ({ url: bundledJsCssUrlRewriteHook(file.url), })); @@ -835,7 +842,7 @@ function runWebAppServer() { // Do this before the next middleware destroys req.url if a path prefix // is set to close #10111. app.use(query()); - + function getPathParts(path) { const parts = path.split("/"); while (parts[0] === "") parts.shift();