gatsby 3.14.0-drupal-next.49 → 3.14.0-drupal-next.53

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.
@@ -27,7 +27,7 @@ const create = () => {
27
27
  if (workerPool) {
28
28
  return workerPool;
29
29
  } else {
30
- const numWorkers = process.env.GATSBY_WORKERS_COUNT || Math.max(1, (0, _gatsbyCoreUtils.cpuCoreCount)() - 1); // const numWorkers = 4
30
+ const numWorkers = Math.max(1, (0, _gatsbyCoreUtils.cpuCoreCount)() - 1); // const numWorkers = 4
31
31
 
32
32
  _reporter.default.verbose(`Creating ${numWorkers} worker`);
33
33
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/worker/pool.ts"],"names":["workerPool","create","numWorkers","process","env","GATSBY_WORKERS_COUNT","Math","max","reporter","verbose","WorkerPool","require","resolve","GATSBY_WORKER_POOL_WORKER","GATSBY_SKIP_WRITING_SCHEMA_TO_FILE","GATSBY_EXPERIMENTAL_LMDB_STORE","GATSBY_EXPERIMENTAL_PARALLEL_QUERY_RUNNING","queriesChunkSize","Number","GATSBY_PARALLEL_QUERY_CHUNK_SIZE","nodesChanged","emitter","on","action","push","payload","id","initialRun","runQueriesInWorkersQueue","pool","queryIds","chunkSize","staticQuerySegments","staticQueryIds","pageQuerySegments","pageQueryIds","console","log","staticQueriesCount","length","pageQueriesCount","activity","createProgress","start","all","setComponents","resetCache","segment","single","runQueries","then","replayWorkerActions","tick","index","entries","Promise","saveQueriesDependencies","end","mergeWorkerState","activityTimer","workerId","getWorkerInfo","state","String","queryStateChunk","queries","store","dispatch","type","nextTick","actions","i"],"mappings":"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","sourcesContent":["import { WorkerPool } from \"gatsby-worker\"\nimport { chunk } from \"lodash\"\nimport reporter from \"gatsby-cli/lib/reporter\"\nimport { cpuCoreCount } from \"gatsby-core-utils\"\n\nimport { IGroupedQueryIds } from \"../../services\"\nimport { initJobsMessagingInMainProcess } from \"../jobs/worker-messaging\"\nimport { initReporterMessagingInMainProcess } from \"./reporter\"\n\nimport { GatsbyWorkerPool } from \"./types\"\nimport { emitter, loadPartialStateFromDisk, store } from \"../../redux\"\nimport { ActionsUnion, IGatsbyState } from \"../../redux/types\"\n\nexport type { GatsbyWorkerPool }\n\nlet workerPool: GatsbyWorkerPool\nexport const create = (): GatsbyWorkerPool => {\n if (workerPool) {\n return workerPool\n } else {\n const numWorkers =\n process.env.GATSBY_WORKERS_COUNT || Math.max(1, cpuCoreCount() - 1)\n // const numWorkers = 4\n reporter.verbose(`Creating ${numWorkers} worker`)\n\n workerPool = new WorkerPool(require.resolve(`./child`), {\n numWorkers,\n env: {\n GATSBY_WORKER_POOL_WORKER: `true`,\n GATSBY_SKIP_WRITING_SCHEMA_TO_FILE: `true`,\n GATSBY_EXPERIMENTAL_LMDB_STORE: `true`,\n GATSBY_EXPERIMENTAL_PARALLEL_QUERY_RUNNING: `true`,\n },\n })\n\n initJobsMessagingInMainProcess(workerPool)\n initReporterMessagingInMainProcess(workerPool)\n\n return workerPool\n }\n}\n\nconst queriesChunkSize =\n Number(process.env.GATSBY_PARALLEL_QUERY_CHUNK_SIZE) || 50\n\nlet nodesChanged = []\n\nemitter.on(`CREATE_NODE`, action => {\n nodesChanged.push(action.payload.id)\n})\n\nlet initialRun = true\nexport async function runQueriesInWorkersQueue(\n pool: GatsbyWorkerPool,\n queryIds: IGroupedQueryIds,\n chunkSize = queriesChunkSize\n): Promise<void> {\n const staticQuerySegments = chunk(queryIds.staticQueryIds, chunkSize)\n const pageQuerySegments = chunk(queryIds.pageQueryIds, chunkSize)\n console.log(`runQueriesInWorkersQueue`, {\n staticQueriesCount: staticQuerySegments.length,\n pageQueriesCount: pageQuerySegments.length,\n })\n\n const activity = reporter.createProgress(\n `run queries in workers`,\n queryIds.staticQueryIds.length + queryIds.pageQueryIds.length\n )\n activity.start()\n\n pool.all.setComponents()\n if (!initialRun) {\n console.log({ initialRun, nodesChanged })\n pool.all.resetCache(nodesChanged)\n }\n initialRun = false\n nodesChanged = []\n\n for (const segment of staticQuerySegments) {\n pool.single\n .runQueries({ pageQueryIds: [], staticQueryIds: segment })\n .then(replayWorkerActions)\n .then(() => {\n activity.tick(segment.length)\n })\n }\n\n for (const [index, segment] of pageQuerySegments.entries()) {\n // console.time(`runQueries ${index}`)\n pool.single\n .runQueries({ pageQueryIds: segment, staticQueryIds: [] })\n .then(replayWorkerActions)\n .then(() => {\n activity.tick(segment.length)\n })\n // console.timeEnd(`runQueries ${index}`)\n }\n\n // note that we only await on this and not on anything before (`.setComponents()` or `.runQueries()`)\n // because gatsby-worker will queue tasks internally and worker will never execute multiple tasks at the same time\n // so awaiting `.saveQueriesDependencies()` is enough to make sure `.setComponents()` and `.runQueries()` finished\n await Promise.all(pool.all.saveQueriesDependencies())\n activity.end()\n}\n\nexport async function mergeWorkerState(pool: GatsbyWorkerPool): Promise<void> {\n const activity = reporter.activityTimer(`Merge worker state`)\n activity.start()\n\n for (const { workerId } of pool.getWorkerInfo()) {\n const state = loadPartialStateFromDisk([`queries`], String(workerId))\n const queryStateChunk = state.queries as IGatsbyState[\"queries\"]\n if (queryStateChunk) {\n // When there are too little queries, some worker can be inactive and its state is empty\n store.dispatch({\n type: `MERGE_WORKER_QUERY_STATE`,\n payload: {\n workerId,\n queryStateChunk,\n },\n })\n await new Promise(resolve => process.nextTick(resolve))\n }\n }\n activity.end()\n}\n\nasync function replayWorkerActions(\n actions: Array<ActionsUnion>\n): Promise<void> {\n let i = 1\n for (const action of actions) {\n store.dispatch(action)\n\n // Give event loop some breath\n if (i++ % 100 === 0) {\n await new Promise(resolve => process.nextTick(resolve))\n }\n }\n}\n"],"file":"pool.js"}
1
+ {"version":3,"sources":["../../../src/utils/worker/pool.ts"],"names":["workerPool","create","numWorkers","Math","max","reporter","verbose","WorkerPool","require","resolve","env","GATSBY_WORKER_POOL_WORKER","GATSBY_SKIP_WRITING_SCHEMA_TO_FILE","GATSBY_EXPERIMENTAL_LMDB_STORE","GATSBY_EXPERIMENTAL_PARALLEL_QUERY_RUNNING","queriesChunkSize","Number","process","GATSBY_PARALLEL_QUERY_CHUNK_SIZE","nodesChanged","emitter","on","action","push","payload","id","initialRun","runQueriesInWorkersQueue","pool","queryIds","chunkSize","staticQuerySegments","staticQueryIds","pageQuerySegments","pageQueryIds","console","log","staticQueriesCount","length","pageQueriesCount","activity","createProgress","start","all","setComponents","resetCache","segment","single","runQueries","then","replayWorkerActions","tick","index","entries","Promise","saveQueriesDependencies","end","mergeWorkerState","activityTimer","workerId","getWorkerInfo","state","String","queryStateChunk","queries","store","dispatch","type","nextTick","actions","i"],"mappings":"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","sourcesContent":["import { WorkerPool } from \"gatsby-worker\"\nimport { chunk } from \"lodash\"\nimport reporter from \"gatsby-cli/lib/reporter\"\nimport { cpuCoreCount } from \"gatsby-core-utils\"\n\nimport { IGroupedQueryIds } from \"../../services\"\nimport { initJobsMessagingInMainProcess } from \"../jobs/worker-messaging\"\nimport { initReporterMessagingInMainProcess } from \"./reporter\"\n\nimport { GatsbyWorkerPool } from \"./types\"\nimport { emitter, loadPartialStateFromDisk, store } from \"../../redux\"\nimport { ActionsUnion, IGatsbyState } from \"../../redux/types\"\n\nexport type { GatsbyWorkerPool }\n\nlet workerPool: GatsbyWorkerPool\nexport const create = (): GatsbyWorkerPool => {\n if (workerPool) {\n return workerPool\n } else {\n const numWorkers = Math.max(1, cpuCoreCount() - 1)\n // const numWorkers = 4\n reporter.verbose(`Creating ${numWorkers} worker`)\n\n workerPool = new WorkerPool(require.resolve(`./child`), {\n numWorkers,\n env: {\n GATSBY_WORKER_POOL_WORKER: `true`,\n GATSBY_SKIP_WRITING_SCHEMA_TO_FILE: `true`,\n GATSBY_EXPERIMENTAL_LMDB_STORE: `true`,\n GATSBY_EXPERIMENTAL_PARALLEL_QUERY_RUNNING: `true`,\n },\n })\n\n initJobsMessagingInMainProcess(workerPool)\n initReporterMessagingInMainProcess(workerPool)\n\n return workerPool\n }\n}\n\nconst queriesChunkSize =\n Number(process.env.GATSBY_PARALLEL_QUERY_CHUNK_SIZE) || 50\n\nlet nodesChanged = []\n\nemitter.on(`CREATE_NODE`, action => {\n nodesChanged.push(action.payload.id)\n})\n\nlet initialRun = true\nexport async function runQueriesInWorkersQueue(\n pool: GatsbyWorkerPool,\n queryIds: IGroupedQueryIds,\n chunkSize = queriesChunkSize\n): Promise<void> {\n const staticQuerySegments = chunk(queryIds.staticQueryIds, chunkSize)\n const pageQuerySegments = chunk(queryIds.pageQueryIds, chunkSize)\n console.log(`runQueriesInWorkersQueue`, {\n staticQueriesCount: staticQuerySegments.length,\n pageQueriesCount: pageQuerySegments.length,\n })\n\n const activity = reporter.createProgress(\n `run queries in workers`,\n queryIds.staticQueryIds.length + queryIds.pageQueryIds.length\n )\n activity.start()\n\n pool.all.setComponents()\n if (!initialRun) {\n console.log({ initialRun, nodesChanged })\n pool.all.resetCache(nodesChanged)\n }\n initialRun = false\n nodesChanged = []\n\n for (const segment of staticQuerySegments) {\n pool.single\n .runQueries({ pageQueryIds: [], staticQueryIds: segment })\n .then(replayWorkerActions)\n .then(() => {\n activity.tick(segment.length)\n })\n }\n\n for (const [index, segment] of pageQuerySegments.entries()) {\n // console.time(`runQueries ${index}`)\n pool.single\n .runQueries({ pageQueryIds: segment, staticQueryIds: [] })\n .then(replayWorkerActions)\n .then(() => {\n activity.tick(segment.length)\n })\n // console.timeEnd(`runQueries ${index}`)\n }\n\n // note that we only await on this and not on anything before (`.setComponents()` or `.runQueries()`)\n // because gatsby-worker will queue tasks internally and worker will never execute multiple tasks at the same time\n // so awaiting `.saveQueriesDependencies()` is enough to make sure `.setComponents()` and `.runQueries()` finished\n await Promise.all(pool.all.saveQueriesDependencies())\n activity.end()\n}\n\nexport async function mergeWorkerState(pool: GatsbyWorkerPool): Promise<void> {\n const activity = reporter.activityTimer(`Merge worker state`)\n activity.start()\n\n for (const { workerId } of pool.getWorkerInfo()) {\n const state = loadPartialStateFromDisk([`queries`], String(workerId))\n const queryStateChunk = state.queries as IGatsbyState[\"queries\"]\n if (queryStateChunk) {\n // When there are too little queries, some worker can be inactive and its state is empty\n store.dispatch({\n type: `MERGE_WORKER_QUERY_STATE`,\n payload: {\n workerId,\n queryStateChunk,\n },\n })\n await new Promise(resolve => process.nextTick(resolve))\n }\n }\n activity.end()\n}\n\nasync function replayWorkerActions(\n actions: Array<ActionsUnion>\n): Promise<void> {\n let i = 1\n for (const action of actions) {\n store.dispatch(action)\n\n // Give event loop some breath\n if (i++ % 100 === 0) {\n await new Promise(resolve => process.nextTick(resolve))\n }\n }\n}\n"],"file":"pool.js"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "gatsby",
3
3
  "description": "Blazing fast modern site generator for React",
4
- "version": "3.14.0-drupal-next.49+22dd936191",
4
+ "version": "3.14.0-drupal-next.53+e8d49a22fa",
5
5
  "author": "Kyle Mathews <mathews.kyle@gmail.com>",
6
6
  "bin": {
7
7
  "gatsby": "./cli.js"
@@ -34,8 +34,8 @@
34
34
  "babel-plugin-add-module-exports": "^1.0.4",
35
35
  "babel-plugin-dynamic-import-node": "^2.3.3",
36
36
  "babel-plugin-lodash": "^3.3.4",
37
- "babel-plugin-remove-graphql-queries": "3.14.0-next.4",
38
- "babel-preset-gatsby": "1.14.0-next.2",
37
+ "babel-plugin-remove-graphql-queries": "3.14.0-drupal-next.81+e8d49a22fa",
38
+ "babel-preset-gatsby": "1.14.0-drupal-next.94+e8d49a22fa",
39
39
  "better-opn": "^2.0.0",
40
40
  "bluebird": "^3.7.2",
41
41
  "body-parser": "^1.19.0",
@@ -78,16 +78,16 @@
78
78
  "find-cache-dir": "^3.3.1",
79
79
  "fs-exists-cached": "1.0.0",
80
80
  "fs-extra": "^10.0.0",
81
- "gatsby-cli": "3.14.0-next.2",
82
- "gatsby-core-utils": "2.14.0-next.2",
81
+ "gatsby-cli": "3.14.0-drupal-next.94+e8d49a22fa",
82
+ "gatsby-core-utils": "2.14.0-drupal-next.94+e8d49a22fa",
83
83
  "gatsby-graphiql-explorer": "1.14.0-next.2",
84
84
  "gatsby-legacy-polyfills": "1.14.0-next.2",
85
85
  "gatsby-link": "3.14.0-next.2",
86
- "gatsby-plugin-page-creator": "3.14.0-next.3",
87
- "gatsby-plugin-typescript": "3.14.0-next.4",
86
+ "gatsby-plugin-page-creator": "3.14.0-drupal-next.57+e8d49a22fa",
87
+ "gatsby-plugin-typescript": "3.14.0-drupal-next.81+e8d49a22fa",
88
88
  "gatsby-plugin-utils": "1.14.0-next.2",
89
89
  "gatsby-react-router-scroll": "4.14.0-next.2",
90
- "gatsby-telemetry": "2.14.0-next.2",
90
+ "gatsby-telemetry": "2.14.0-drupal-next.94+e8d49a22fa",
91
91
  "gatsby-worker": "0.5.0-next.2",
92
92
  "glob": "^7.1.6",
93
93
  "got": "^11.8.2",
@@ -260,5 +260,5 @@
260
260
  "yargs": {
261
261
  "boolean-negation": false
262
262
  },
263
- "gitHead": "22dd9361916241bd6f862a57860c245f1c465219"
263
+ "gitHead": "e8d49a22fa6397bb3baf3d2b1ec720ca60972895"
264
264
  }