eas-cli-local-build-plugin 1.0.229 → 1.0.231
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.
- package/dist/android.js +1 -1
- package/dist/android.js.map +1 -1
- package/dist/artifacts.d.ts +3 -1
- package/dist/artifacts.js +1 -1
- package/dist/artifacts.js.map +1 -1
- package/dist/ios.js +1 -1
- package/dist/ios.js.map +1 -1
- package/package.json +4 -4
package/dist/android.js
CHANGED
package/dist/android.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"android.js","sourceRoot":"","sources":["../src/android.ts"],"names":[],"mappings":";;;;;AASA,8CAkCC;AA3CD,uDAAoF;AACpF,mDAAsE;AACtE,uDAA+B;AAE/B,qCAAqC;AAErC,2CAA+C;AAC/C,sDAA8B;AAEvB,KAAK,UAAU,iBAAiB,CACrC,GAAgB,EAChB,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAe;;IAE3D,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,GAAG,GAAQ;QACf,GAAG,OAAO;QACV,GAAG,CAAC,WAAW,IAAI,EAAE,8BAA8B,EAAE,WAAW,EAAE,CAAC;QACnE,GAAG,CAAC,WAAW,IAAI,EAAE,8BAA8B,EAAE,WAAW,EAAE,CAAC;KACpE,CAAC;IACF,MAAM,GAAG,GAAG,IAAI,0BAAY,CAAc,GAAG,EAAE;QAC7C,UAAU;QACV,MAAM;QACN,SAAS,EAAT,kBAAS;QACT,cAAc,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;YAC7C,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAmB,CAAC,mBAAmB,EAAE,CAAC;gBAC9D,OAAO,MAAM,IAAA,4BAAgB,EAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAmB,CAAC,eAAe,EAAE,CAAC;gBACjE,OAAO,MAAM,IAAA,4BAAgB,EAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"android.js","sourceRoot":"","sources":["../src/android.ts"],"names":[],"mappings":";;;;;AASA,8CAkCC;AA3CD,uDAAoF;AACpF,mDAAsE;AACtE,uDAA+B;AAE/B,qCAAqC;AAErC,2CAA+C;AAC/C,sDAA8B;AAEvB,KAAK,UAAU,iBAAiB,CACrC,GAAgB,EAChB,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAe;;IAE3D,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,GAAG,GAAQ;QACf,GAAG,OAAO;QACV,GAAG,CAAC,WAAW,IAAI,EAAE,8BAA8B,EAAE,WAAW,EAAE,CAAC;QACnE,GAAG,CAAC,WAAW,IAAI,EAAE,8BAA8B,EAAE,WAAW,EAAE,CAAC;KACpE,CAAC;IACF,MAAM,GAAG,GAAG,IAAI,0BAAY,CAAc,GAAG,EAAE;QAC7C,UAAU;QACV,MAAM;QACN,SAAS,EAAT,kBAAS;QACT,cAAc,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;YAC7C,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAmB,CAAC,mBAAmB,EAAE,CAAC;gBAC9D,OAAO,MAAM,IAAA,4BAAgB,EAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAmB,CAAC,eAAe,EAAE,CAAC;gBACjE,OAAO,MAAM,IAAA,4BAAgB,EAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC5B,CAAC;QACH,CAAC;QACD,GAAG;QACH,QAAQ;QACR,eAAe,EAAE,gBAAM,CAAC,eAAe;KACxC,CAAC,CAAC;IAEH,MAAM,GAAG,CAAC,aAAa,CAAC,0BAAU,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;QACzD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAA,cAAI,EAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,sBAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AAC5C,CAAC","sourcesContent":["import { Android, ManagedArtifactType, BuildPhase, Env } from '@expo/eas-build-job';\nimport { Builders, BuildContext, Artifacts } from '@expo/build-tools';\nimport omit from 'lodash/omit';\n\nimport { logBuffer } from './logger';\nimport { BuildParams } from './types';\nimport { prepareArtifacts } from './artifacts';\nimport config from './config';\n\nexport async function buildAndroidAsync(\n job: Android.Job,\n { workingdir, env: baseEnv, metadata, logger }: BuildParams\n): Promise<Artifacts> {\n const versionName = job.version?.versionName;\n const versionCode = job.version?.versionCode;\n const env: Env = {\n ...baseEnv,\n ...(versionCode && { EAS_BUILD_ANDROID_VERSION_CODE: versionCode }),\n ...(versionName && { EAS_BUILD_ANDROID_VERSION_NAME: versionName }),\n };\n const ctx = new BuildContext<Android.Job>(job, {\n workingdir,\n logger,\n logBuffer,\n uploadArtifact: async ({ artifact, logger }) => {\n if (artifact.type === ManagedArtifactType.APPLICATION_ARCHIVE) {\n return await prepareArtifacts(artifact.paths, logger);\n } else if (artifact.type === ManagedArtifactType.BUILD_ARTIFACTS) {\n return await prepareArtifacts(artifact.paths, logger);\n } else {\n return { filename: null };\n }\n },\n env,\n metadata,\n skipNativeBuild: config.skipNativeBuild,\n });\n\n await ctx.runBuildPhase(BuildPhase.START_BUILD, async () => {\n ctx.logger.info({ job: omit(ctx.job, 'secrets') }, 'Starting build');\n });\n\n return await Builders.androidBuilder(ctx);\n}\n"]}
|
package/dist/artifacts.d.ts
CHANGED
package/dist/artifacts.js
CHANGED
|
@@ -57,7 +57,7 @@ async function prepareArtifacts(artifactPaths, logger) {
|
|
|
57
57
|
const destPath = (_a = config_1.default.artifactPath) !== null && _a !== void 0 ? _a : path_1.default.join(config_1.default.artifactsDir, artifactName);
|
|
58
58
|
await fs_extra_1.default.copy(localPath, destPath);
|
|
59
59
|
l === null || l === void 0 ? void 0 : l.info({ phase: 'PREPARE_ARTIFACTS' }, `Writing artifacts to ${destPath}`);
|
|
60
|
-
return destPath;
|
|
60
|
+
return { filename: destPath };
|
|
61
61
|
}
|
|
62
62
|
function getCommonParentDir(path1, path2) {
|
|
63
63
|
const normalizedPath1 = path_1.default.normalize(path1);
|
package/dist/artifacts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,
|
|
1
|
+
{"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../src/artifacts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,4CAqCC;AA7CD,gDAAwB;AAGxB,wDAA0B;AAC1B,yCAA2B;AAE3B,sDAA8B;AAEvB,KAAK,UAAU,gBAAgB,CACpC,aAAuB,EACvB,MAAe;;IAEf,MAAM,CAAC,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;IACxD,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC/B,IAAI,MAAM,CAAC;IACX,IAAI,SAAS,CAAC;IACd,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,kBAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QACpF,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC;QAC5B,MAAM,GAAG,cAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CACpC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,EAC5C,aAAa,CAAC,CAAC,CAAC,CACjB,CAAC;QACF,MAAM,sBAAsB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC5D,cAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CACnC,CAAC;QAEF,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,gBAAM,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;QACrE,MAAM,GAAG,CAAC,CAAC,CACT;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,WAAW;YACjB,GAAG,EAAE,SAAS;SACf,EACD,sBAAsB,CACvB,CAAC;QACF,MAAM,GAAG,SAAS,CAAC;QACnB,SAAS,GAAG,WAAW,CAAC;IAC1B,CAAC;IACD,MAAM,YAAY,GAAG,SAAS,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;IACpD,MAAM,QAAQ,GAAG,MAAA,gBAAM,CAAC,YAAY,mCAAI,cAAI,CAAC,IAAI,CAAC,gBAAM,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACrF,MAAM,kBAAE,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,wBAAwB,QAAQ,EAAE,CAAC,CAAC;IAC5E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAChC,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa,EAAE,KAAa;IACtD,MAAM,eAAe,GAAG,cAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,eAAe,GAAG,cAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAC5C,OAAO,OAAO,KAAK,GAAG,EAAE,CAAC;QACvB,IAAI,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC","sourcesContent":["import path from 'path';\n\nimport { bunyan } from '@expo/logger';\nimport fs from 'fs-extra';\nimport * as tar from 'tar';\n\nimport config from './config';\n\nexport async function prepareArtifacts(\n artifactPaths: string[],\n logger?: bunyan\n): Promise<{ filename: string }> {\n const l = logger?.child({ phase: 'PREPARE_ARTIFACTS' });\n l?.info('Preparing artifacts');\n let suffix;\n let localPath;\n if (artifactPaths.length === 1 && !(await fs.lstat(artifactPaths[0])).isDirectory()) {\n [localPath] = artifactPaths;\n suffix = path.extname(artifactPaths[0]);\n } else {\n const parentDir = artifactPaths.reduce(\n (acc, item) => getCommonParentDir(acc, item),\n artifactPaths[0]\n );\n const relativePathsToArchive = artifactPaths.map((absolute) =>\n path.relative(parentDir, absolute)\n );\n\n const archivePath = path.join(config.workingdir, 'artifacts.tar.gz');\n await tar.c(\n {\n gzip: true,\n file: archivePath,\n cwd: parentDir,\n },\n relativePathsToArchive\n );\n suffix = '.tar.gz';\n localPath = archivePath;\n }\n const artifactName = `build-${Date.now()}${suffix}`;\n const destPath = config.artifactPath ?? path.join(config.artifactsDir, artifactName);\n await fs.copy(localPath, destPath);\n l?.info({ phase: 'PREPARE_ARTIFACTS' }, `Writing artifacts to ${destPath}`);\n return { filename: destPath };\n}\n\nfunction getCommonParentDir(path1: string, path2: string): string {\n const normalizedPath1 = path.normalize(path1);\n const normalizedPath2 = path.normalize(path2);\n let current = path.dirname(normalizedPath1);\n while (current !== '/') {\n if (normalizedPath2.startsWith(current)) {\n return current;\n }\n current = path.dirname(current);\n }\n return '/';\n}\n"]}
|
package/dist/ios.js
CHANGED
package/dist/ios.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ios.js","sourceRoot":"","sources":["../src/ios.ts"],"names":[],"mappings":";;;;;AASA,sCAkCC;AA3CD,uDAAgF;AAChF,mDAAsE;AACtE,uDAA+B;AAE/B,qCAAqC;AAErC,2CAA+C;AAC/C,sDAA8B;AAEvB,KAAK,UAAU,aAAa,CACjC,GAAY,EACZ,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAe;;IAE3D,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,UAAU,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,UAAU,CAAC;IAC3C,MAAM,GAAG,GAAQ;QACf,GAAG,OAAO;QACV,GAAG,CAAC,WAAW,IAAI,EAAE,0BAA0B,EAAE,WAAW,EAAE,CAAC;QAC/D,GAAG,CAAC,UAAU,IAAI,EAAE,yBAAyB,EAAE,UAAU,EAAE,CAAC;KAC7D,CAAC;IACF,MAAM,GAAG,GAAG,IAAI,0BAAY,CAAU,GAAG,EAAE;QACzC,UAAU;QACV,MAAM;QACN,SAAS,EAAT,kBAAS;QACT,cAAc,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;YAC7C,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAmB,CAAC,mBAAmB,EAAE,CAAC;gBAC9D,OAAO,MAAM,IAAA,4BAAgB,EAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAmB,CAAC,eAAe,EAAE,CAAC;gBACjE,OAAO,MAAM,IAAA,4BAAgB,EAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"ios.js","sourceRoot":"","sources":["../src/ios.ts"],"names":[],"mappings":";;;;;AASA,sCAkCC;AA3CD,uDAAgF;AAChF,mDAAsE;AACtE,uDAA+B;AAE/B,qCAAqC;AAErC,2CAA+C;AAC/C,sDAA8B;AAEvB,KAAK,UAAU,aAAa,CACjC,GAAY,EACZ,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAe;;IAE3D,MAAM,WAAW,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,WAAW,CAAC;IAC7C,MAAM,UAAU,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,UAAU,CAAC;IAC3C,MAAM,GAAG,GAAQ;QACf,GAAG,OAAO;QACV,GAAG,CAAC,WAAW,IAAI,EAAE,0BAA0B,EAAE,WAAW,EAAE,CAAC;QAC/D,GAAG,CAAC,UAAU,IAAI,EAAE,yBAAyB,EAAE,UAAU,EAAE,CAAC;KAC7D,CAAC;IACF,MAAM,GAAG,GAAG,IAAI,0BAAY,CAAU,GAAG,EAAE;QACzC,UAAU;QACV,MAAM;QACN,SAAS,EAAT,kBAAS;QACT,cAAc,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;YAC7C,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAmB,CAAC,mBAAmB,EAAE,CAAC;gBAC9D,OAAO,MAAM,IAAA,4BAAgB,EAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,mCAAmB,CAAC,eAAe,EAAE,CAAC;gBACjE,OAAO,MAAM,IAAA,4BAAgB,EAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC5B,CAAC;QACH,CAAC;QACD,GAAG;QACH,QAAQ;QACR,eAAe,EAAE,gBAAM,CAAC,eAAe;KACxC,CAAC,CAAC;IAEH,MAAM,GAAG,CAAC,aAAa,CAAC,0BAAU,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;QACzD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAA,cAAI,EAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,sBAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACxC,CAAC","sourcesContent":["import { Ios, BuildPhase, Env, ManagedArtifactType } from '@expo/eas-build-job';\nimport { Builders, BuildContext, Artifacts } from '@expo/build-tools';\nimport omit from 'lodash/omit';\n\nimport { logBuffer } from './logger';\nimport { BuildParams } from './types';\nimport { prepareArtifacts } from './artifacts';\nimport config from './config';\n\nexport async function buildIosAsync(\n job: Ios.Job,\n { workingdir, env: baseEnv, metadata, logger }: BuildParams\n): Promise<Artifacts> {\n const buildNumber = job.version?.buildNumber;\n const appVersion = job.version?.appVersion;\n const env: Env = {\n ...baseEnv,\n ...(buildNumber && { EAS_BUILD_IOS_BUILD_NUMBER: buildNumber }),\n ...(appVersion && { EAS_BUILD_IOS_APP_VERSION: appVersion }),\n };\n const ctx = new BuildContext<Ios.Job>(job, {\n workingdir,\n logger,\n logBuffer,\n uploadArtifact: async ({ artifact, logger }) => {\n if (artifact.type === ManagedArtifactType.APPLICATION_ARCHIVE) {\n return await prepareArtifacts(artifact.paths, logger);\n } else if (artifact.type === ManagedArtifactType.BUILD_ARTIFACTS) {\n return await prepareArtifacts(artifact.paths, logger);\n } else {\n return { filename: null };\n }\n },\n env,\n metadata,\n skipNativeBuild: config.skipNativeBuild,\n });\n\n await ctx.runBuildPhase(BuildPhase.START_BUILD, async () => {\n ctx.logger.info({ job: omit(ctx.job, 'secrets') }, 'Starting build');\n });\n\n return await Builders.iosBuilder(ctx);\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eas-cli-local-build-plugin",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.231",
|
|
4
4
|
"description": "Tool for running EAS compatible builds on a local machine.",
|
|
5
5
|
"main": "dist/main.js",
|
|
6
6
|
"files": [
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"bugs": "https://github.com/expo/eas-build/issues",
|
|
25
25
|
"license": "BUSL-1.1",
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@expo/build-tools": "1.0.
|
|
28
|
-
"@expo/eas-build-job": "1.0.
|
|
27
|
+
"@expo/build-tools": "1.0.231",
|
|
28
|
+
"@expo/eas-build-job": "1.0.231",
|
|
29
29
|
"@expo/spawn-async": "^1.7.2",
|
|
30
30
|
"@expo/turtle-spawn": "1.0.221",
|
|
31
31
|
"bunyan": "^1.8.15",
|
|
@@ -54,5 +54,5 @@
|
|
|
54
54
|
"node": "20.14.0",
|
|
55
55
|
"yarn": "1.22.21"
|
|
56
56
|
},
|
|
57
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "c466db5ad8520a8b93d34f5d3f6a4187c7496b73"
|
|
58
58
|
}
|