@teambit/doctor 0.0.152 → 0.0.154

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.
@@ -43,7 +43,7 @@ export declare class DoctorMain {
43
43
  private _getEnvMeta;
44
44
  private _getUserDetails;
45
45
  private _getDebugLogAsBuffer;
46
- private _getConsumerInfo;
46
+ private _getWorkspaceInfo;
47
47
  private _getBitMap;
48
48
  static slots: never[];
49
49
  static dependencies: import("@teambit/harmony").Aspect[];
@@ -74,9 +74,9 @@ function _workspaceConfig() {
74
74
  };
75
75
  return data;
76
76
  }
77
- function _consumerLocator() {
78
- const data = require("@teambit/legacy/dist/consumer/consumer-locator");
79
- _consumerLocator = function () {
77
+ function _workspaceModules() {
78
+ const data = require("@teambit/workspace.modules.workspace-locator");
79
+ _workspaceModules = function () {
80
80
  return data;
81
81
  };
82
82
  return data;
@@ -309,7 +309,7 @@ class DoctorMain {
309
309
  excludeLocalScope
310
310
  } = options;
311
311
  const debugLog = await this._getDebugLogAsBuffer();
312
- const consumerInfo = await this._getConsumerInfo();
312
+ const consumerInfo = await this._getWorkspaceInfo();
313
313
  let bitmap;
314
314
  if (consumerInfo && consumerInfo.path) {
315
315
  bitmap = this._getBitMap(consumerInfo.path);
@@ -331,7 +331,7 @@ class DoctorMain {
331
331
  name: '.bitmap'
332
332
  }, bitmap);
333
333
  }
334
- if (consumerInfo && consumerInfo.hasConsumerConfig) {
334
+ if (consumerInfo && consumerInfo.hasWorkspaceConfig) {
335
335
  // TODO: support new config as well
336
336
  const scopePath = (0, _scopeModules().findScopePath)(consumerInfo.path);
337
337
  const config = scopePath ? await _workspaceConfig().default.loadIfExist(consumerInfo.path, scopePath) : undefined;
@@ -393,8 +393,8 @@ class DoctorMain {
393
393
  const logWithoutChalk = (0, _legacy2().removeChalkCharacters)(log);
394
394
  return Buffer.from(logWithoutChalk);
395
395
  }
396
- async _getConsumerInfo() {
397
- const consumerInfo = await (0, _consumerLocator().getConsumerInfo)(process.cwd());
396
+ async _getWorkspaceInfo() {
397
+ const consumerInfo = await (0, _workspaceModules().getWorkspaceInfo)(process.cwd());
398
398
  return consumerInfo;
399
399
  }
400
400
  _getBitMap(workspaceDir) {
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_path","_interopRequireDefault","_fsExtra","_os","_tarStream","_tarFs","_bit","_constants","_legacy","_workspaceConfig","_consumerLocator","_doctorRegistrar","_doctorRegistrarBuilder","_lodash","_legacy2","_toolboxFs","_scopeModules","globalConfig","_interopRequireWildcard","_validateNpmExec","_validateYarnExec","_diagnosisNotFound","_missingDiagnosisName","_doctor","_doctorCmd","_logger","_chalk","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","length","includes","propertyIsEnumerable","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","runningTimeStamp","DoctorMain","constructor","logger","runAll","options","registerCoreAndExtensionsDiagnoses","_getTimeStamp","doctorRegistrar","DoctorRegistrar","getInstance","examineResultsWithNulls","Promise","all","diagnoses","map","diagnosis","examine","err","error","name","consoleFailure","chalk","red","message","examineResults","compact","envMeta","_getEnvMeta","savedFilePath","_saveExamineResultsToFile","metaData","runOne","_ref","diagnosisName","MissingDiagnosisName","getDiagnosisByName","DiagnosisNotFound","examineResult","listDiagnoses","resolve","filePath","undefined","finalFilePath","_calculateFinalFileName","packStream","_generateExamineResultsTarFile","yourTarball","fs","createWriteStream","pipe","on","info","getWithoutExt","filename","ext","getExt","substring","fileName","_getDefaultFileName","finalFileName","timestamp","d","Date","getTime","tarFilePath","archiveWorkspace","includeNodeModules","includePublic","excludeLocalScope","debugLog","_getDebugLogAsBuffer","consumerInfo","_getConsumerInfo","bitmap","path","_getBitMap","packExamineResults","pack","entry","JSON","stringify","hasConsumerConfig","scopePath","findScopePath","config","WorkspaceConfig","loadIfExist","legacyPlainConfig","_legacyPlainObject","finalize","tar","ignore","startsWith","sep","isGit","isLocalScope","myPack","tarFS","finish","env","nodeVersion","process","version","runningTimestamp","platform","os","bitVersion","getBitVersion","npmVersion","getNpmVersion","yarnVersion","getYarnVersion","userDetails","_getUserDetails","getSync","CFG_USER_NAME_KEY","email","CFG_USER_EMAIL_KEY","exists","pathExists","DEBUG_LOG","log","readFile","logWithoutChalk","removeChalkCharacters","Buffer","from","getConsumerInfo","cwd","workspaceDir","BitMap","loadRawSync","provider","cliMain","loggerMain","createLogger","DoctorAspect","id","doctor","register","DoctorCmd","exports","CLIAspect","LoggerAspect","MainRuntime","addRuntime","_default"],"sources":["doctor.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport path from 'path';\nimport fs from 'fs-extra';\nimport os from 'os';\n// @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\nimport Stream from 'stream';\nimport tar from 'tar-stream';\nimport tarFS from 'tar-fs';\nimport { getBitVersion } from '@teambit/bit.get-bit-version';\nimport { CFG_USER_EMAIL_KEY, CFG_USER_NAME_KEY, DEBUG_LOG } from '@teambit/legacy/dist/constants';\nimport { BitMap } from '@teambit/legacy.bit-map';\nimport WorkspaceConfig from '@teambit/legacy/dist/consumer/config/workspace-config';\nimport { ConsumerInfo, getConsumerInfo } from '@teambit/legacy/dist/consumer/consumer-locator';\nimport Diagnosis, { ExamineResult } from './diagnosis';\nimport DoctorRegistrar from './doctor-registrar';\nimport registerCoreAndExtensionsDiagnoses from './doctor-registrar-builder';\nimport { compact } from 'lodash';\nimport { removeChalkCharacters } from '@teambit/legacy.utils';\nimport { getExt } from '@teambit/toolbox.fs.extension-getter';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport * as globalConfig from '@teambit/legacy/dist/api/consumer/lib/global-config';\nimport { getNpmVersion } from './core-diagnoses/validate-npm-exec';\nimport { getYarnVersion } from './core-diagnoses/validate-yarn-exec';\nimport { DiagnosisNotFound } from './exceptions/diagnosis-not-found';\nimport { MissingDiagnosisName } from './exceptions/missing-diagnosis-name';\n\nimport { DoctorAspect } from './doctor.aspect';\nimport { DoctorCmd } from './doctor-cmd';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport chalk from 'chalk';\n\n// run specific check\nexport type DoctorMetaData = {\n nodeVersion: string;\n runningTimestamp: number;\n platform: string;\n bitVersion: string;\n npmVersion: string;\n yarnVersion: string;\n userDetails: string;\n};\nexport type DoctorRunAllResults = {\n examineResults: ExamineResult[];\n savedFilePath: string | null | undefined;\n metaData: DoctorMetaData;\n};\nexport type DoctorRunOneResult = {\n examineResult: ExamineResult;\n savedFilePath: string | null | undefined;\n metaData: DoctorMetaData;\n};\n\nlet runningTimeStamp;\n\nexport type DoctorOptions = {\n diagnosisName?: string;\n filePath?: string;\n archiveWorkspace?: boolean;\n includeNodeModules?: boolean;\n includePublic?: boolean;\n excludeLocalScope?: boolean;\n};\n\nexport class DoctorMain {\n constructor(private logger: Logger) {}\n\n async runAll(options: DoctorOptions): Promise<DoctorRunAllResults> {\n registerCoreAndExtensionsDiagnoses();\n runningTimeStamp = this._getTimeStamp();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n const examineResultsWithNulls = await Promise.all(\n doctorRegistrar.diagnoses.map(async (diagnosis) => {\n try {\n return await diagnosis.examine();\n } catch (err: any) {\n this.logger.error(`doctor failed running diagnosis \"${diagnosis.name}\"`, err);\n this.logger.consoleFailure(\n chalk.red(`doctor failed running diagnosis \"${diagnosis.name}\".\\nerror-message: ${err.message}`)\n );\n }\n })\n );\n const examineResults = compact(examineResultsWithNulls);\n const envMeta = await this._getEnvMeta();\n const savedFilePath = await this._saveExamineResultsToFile(examineResults, envMeta, options);\n return { examineResults, savedFilePath, metaData: envMeta };\n }\n\n async runOne({ diagnosisName, ...options }: DoctorOptions): Promise<DoctorRunOneResult> {\n if (!diagnosisName) {\n throw new MissingDiagnosisName();\n }\n registerCoreAndExtensionsDiagnoses();\n runningTimeStamp = this._getTimeStamp();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n const diagnosis = doctorRegistrar.getDiagnosisByName(diagnosisName);\n if (!diagnosis) {\n throw new DiagnosisNotFound(diagnosisName);\n }\n const examineResult = await diagnosis.examine();\n const envMeta = await this._getEnvMeta();\n const savedFilePath = await this._saveExamineResultsToFile([examineResult], envMeta, options);\n return { examineResult, savedFilePath, metaData: envMeta };\n }\n\n async listDiagnoses(): Promise<Diagnosis[]> {\n registerCoreAndExtensionsDiagnoses();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n return Promise.resolve(doctorRegistrar.diagnoses);\n }\n\n private async _saveExamineResultsToFile(\n examineResults: ExamineResult[],\n envMeta: DoctorMetaData,\n options: DoctorOptions\n ): Promise<string | null | undefined> {\n if (!options.filePath) {\n return Promise.resolve(undefined);\n }\n const finalFilePath = this._calculateFinalFileName(options.filePath);\n const packStream = await this._generateExamineResultsTarFile(examineResults, envMeta, finalFilePath, options);\n\n const yourTarball = fs.createWriteStream(finalFilePath);\n\n packStream.pipe(yourTarball);\n\n return new Promise((resolve) => {\n yourTarball.on('close', () => {\n this.logger.info(`wrote a file by bit doctor, file path: ${finalFilePath}`);\n resolve(finalFilePath);\n // fs.stat(finalFilePath, private (err, stats) {\n // if (err) throw err\n // console.log(stats)\n // console.log('Got file info successfully!')\n // })\n });\n });\n }\n\n private getWithoutExt(filename: string): string {\n const ext = getExt(filename);\n // There is no extension just return the file name\n if (ext === filename) {\n return filename;\n }\n return filename.substring(0, filename.length - ext.length - 1); // -1 to remove the '.'\n }\n\n private _calculateFinalFileName(fileName: string): string {\n if (fileName === '.') {\n return this._getDefaultFileName();\n }\n let finalFileName = fileName;\n if (getExt(fileName) !== 'tar' && getExt(fileName) !== 'tar.gz') {\n finalFileName = `${this.getWithoutExt(finalFileName)}.tar`;\n }\n return finalFileName;\n }\n\n private _getDefaultFileName() {\n const timestamp = runningTimeStamp || this._getTimeStamp();\n return `doctor-results-${timestamp}.tar`;\n }\n\n // TODO: move to utils\n private _getTimeStamp() {\n const d = new Date();\n const timestamp = d.getTime();\n return timestamp;\n }\n\n private async _generateExamineResultsTarFile(\n examineResults: ExamineResult[],\n envMeta: DoctorMetaData,\n tarFilePath: string,\n options: DoctorOptions\n ): Promise<Stream.Readable> {\n const { archiveWorkspace, includeNodeModules, includePublic, excludeLocalScope } = options;\n const debugLog = await this._getDebugLogAsBuffer();\n const consumerInfo = await this._getConsumerInfo();\n let bitmap;\n if (consumerInfo && consumerInfo.path) {\n bitmap = this._getBitMap(consumerInfo.path);\n }\n\n const packExamineResults = async (pack) => {\n pack.entry({ name: 'env-meta.json' }, JSON.stringify(envMeta, null, 2));\n pack.entry({ name: 'doc-results.json' }, JSON.stringify(examineResults, null, 2));\n if (debugLog) {\n pack.entry({ name: 'debug.log' }, debugLog);\n }\n if (!archiveWorkspace && bitmap) {\n pack.entry({ name: '.bitmap' }, bitmap);\n }\n if (consumerInfo && consumerInfo.hasConsumerConfig) {\n // TODO: support new config as well\n const scopePath = findScopePath(consumerInfo.path);\n const config = scopePath ? await WorkspaceConfig.loadIfExist(consumerInfo.path, scopePath) : undefined;\n const legacyPlainConfig = config?._legacyPlainObject();\n if (legacyPlainConfig) {\n pack.entry({ name: 'config.json' }, JSON.stringify(legacyPlainConfig, null, 4));\n }\n }\n\n pack.finalize();\n\n return pack;\n };\n\n if (!archiveWorkspace) {\n const pack = tar.pack(); // pack is a streams2 stream\n return packExamineResults(pack);\n }\n\n const ignore = (fileName: string) => {\n if (fileName === tarFilePath) return true;\n if (fileName === '.DS_Store') return true;\n if (\n !includeNodeModules &&\n (fileName.startsWith(`node_modules${path.sep}`) || fileName.includes(`${path.sep}node_modules${path.sep}`))\n )\n return true;\n if (\n !includePublic &&\n (fileName.startsWith(`public${path.sep}`) || fileName.includes(`${path.sep}public${path.sep}`))\n )\n return true;\n const isGit = fileName.startsWith(`.git${path.sep}`);\n const isLocalScope =\n fileName.startsWith(`.bit${path.sep}`) || fileName.startsWith(`.git${path.sep}bit${path.sep}`);\n if (excludeLocalScope && isLocalScope) return true;\n if (isGit && !isLocalScope) return true;\n return false;\n };\n\n const myPack = tarFS.pack('.', {\n ignore,\n finalize: false,\n finish: packExamineResults,\n });\n\n return myPack;\n }\n\n private async _getEnvMeta(): Promise<DoctorMetaData> {\n const env = {\n nodeVersion: process.version,\n runningTimestamp: runningTimeStamp || this._getTimeStamp(),\n platform: os.platform(),\n bitVersion: getBitVersion(),\n npmVersion: await getNpmVersion(),\n yarnVersion: await getYarnVersion(),\n userDetails: this._getUserDetails(),\n };\n\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return env;\n }\n\n private _getUserDetails(): string {\n const name = globalConfig.getSync(CFG_USER_NAME_KEY) || '';\n const email = globalConfig.getSync(CFG_USER_EMAIL_KEY) || '';\n return `${name}<${email}>`;\n }\n\n private async _getDebugLogAsBuffer(): Promise<Buffer | null | undefined> {\n const exists = await fs.pathExists(DEBUG_LOG);\n if (!exists) return null;\n const log = await fs.readFile(DEBUG_LOG, 'utf-8');\n const logWithoutChalk = removeChalkCharacters(log) as string;\n return Buffer.from(logWithoutChalk);\n }\n\n private async _getConsumerInfo(): Promise<ConsumerInfo | null | undefined> {\n const consumerInfo = await getConsumerInfo(process.cwd());\n return consumerInfo;\n }\n\n private _getBitMap(workspaceDir): Buffer | null | undefined {\n return BitMap.loadRawSync(workspaceDir);\n }\n\n static slots = [];\n static dependencies = [CLIAspect, LoggerAspect];\n static runtime = MainRuntime;\n static async provider([cliMain, loggerMain]: [CLIMain, LoggerMain]) {\n const logger = loggerMain.createLogger(DoctorAspect.id);\n const doctor = new DoctorMain(logger);\n cliMain.register(new DoctorCmd(doctor));\n return doctor;\n }\n}\n\nDoctorAspect.addRuntime(DoctorMain);\n\nexport default DoctorMain;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_path","_interopRequireDefault","_fsExtra","_os","_tarStream","_tarFs","_bit","_constants","_legacy","_workspaceConfig","_workspaceModules","_doctorRegistrar","_doctorRegistrarBuilder","_lodash","_legacy2","_toolboxFs","_scopeModules","globalConfig","_interopRequireWildcard","_validateNpmExec","_validateYarnExec","_diagnosisNotFound","_missingDiagnosisName","_doctor","_doctorCmd","_logger","_chalk","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","length","includes","propertyIsEnumerable","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","runningTimeStamp","DoctorMain","constructor","logger","runAll","options","registerCoreAndExtensionsDiagnoses","_getTimeStamp","doctorRegistrar","DoctorRegistrar","getInstance","examineResultsWithNulls","Promise","all","diagnoses","map","diagnosis","examine","err","error","name","consoleFailure","chalk","red","message","examineResults","compact","envMeta","_getEnvMeta","savedFilePath","_saveExamineResultsToFile","metaData","runOne","_ref","diagnosisName","MissingDiagnosisName","getDiagnosisByName","DiagnosisNotFound","examineResult","listDiagnoses","resolve","filePath","undefined","finalFilePath","_calculateFinalFileName","packStream","_generateExamineResultsTarFile","yourTarball","fs","createWriteStream","pipe","on","info","getWithoutExt","filename","ext","getExt","substring","fileName","_getDefaultFileName","finalFileName","timestamp","d","Date","getTime","tarFilePath","archiveWorkspace","includeNodeModules","includePublic","excludeLocalScope","debugLog","_getDebugLogAsBuffer","consumerInfo","_getWorkspaceInfo","bitmap","path","_getBitMap","packExamineResults","pack","entry","JSON","stringify","hasWorkspaceConfig","scopePath","findScopePath","config","WorkspaceConfig","loadIfExist","legacyPlainConfig","_legacyPlainObject","finalize","tar","ignore","startsWith","sep","isGit","isLocalScope","myPack","tarFS","finish","env","nodeVersion","process","version","runningTimestamp","platform","os","bitVersion","getBitVersion","npmVersion","getNpmVersion","yarnVersion","getYarnVersion","userDetails","_getUserDetails","getSync","CFG_USER_NAME_KEY","email","CFG_USER_EMAIL_KEY","exists","pathExists","DEBUG_LOG","log","readFile","logWithoutChalk","removeChalkCharacters","Buffer","from","getWorkspaceInfo","cwd","workspaceDir","BitMap","loadRawSync","provider","cliMain","loggerMain","createLogger","DoctorAspect","id","doctor","register","DoctorCmd","exports","CLIAspect","LoggerAspect","MainRuntime","addRuntime","_default"],"sources":["doctor.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport path from 'path';\nimport fs from 'fs-extra';\nimport os from 'os';\n// @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\nimport Stream from 'stream';\nimport tar from 'tar-stream';\nimport tarFS from 'tar-fs';\nimport { getBitVersion } from '@teambit/bit.get-bit-version';\nimport { CFG_USER_EMAIL_KEY, CFG_USER_NAME_KEY, DEBUG_LOG } from '@teambit/legacy/dist/constants';\nimport { BitMap } from '@teambit/legacy.bit-map';\nimport WorkspaceConfig from '@teambit/legacy/dist/consumer/config/workspace-config';\nimport { getWorkspaceInfo, WorkspaceInfo } from '@teambit/workspace.modules.workspace-locator';\nimport Diagnosis, { ExamineResult } from './diagnosis';\nimport DoctorRegistrar from './doctor-registrar';\nimport registerCoreAndExtensionsDiagnoses from './doctor-registrar-builder';\nimport { compact } from 'lodash';\nimport { removeChalkCharacters } from '@teambit/legacy.utils';\nimport { getExt } from '@teambit/toolbox.fs.extension-getter';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport * as globalConfig from '@teambit/legacy/dist/api/consumer/lib/global-config';\nimport { getNpmVersion } from './core-diagnoses/validate-npm-exec';\nimport { getYarnVersion } from './core-diagnoses/validate-yarn-exec';\nimport { DiagnosisNotFound } from './exceptions/diagnosis-not-found';\nimport { MissingDiagnosisName } from './exceptions/missing-diagnosis-name';\n\nimport { DoctorAspect } from './doctor.aspect';\nimport { DoctorCmd } from './doctor-cmd';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport chalk from 'chalk';\n\n// run specific check\nexport type DoctorMetaData = {\n nodeVersion: string;\n runningTimestamp: number;\n platform: string;\n bitVersion: string;\n npmVersion: string;\n yarnVersion: string;\n userDetails: string;\n};\nexport type DoctorRunAllResults = {\n examineResults: ExamineResult[];\n savedFilePath: string | null | undefined;\n metaData: DoctorMetaData;\n};\nexport type DoctorRunOneResult = {\n examineResult: ExamineResult;\n savedFilePath: string | null | undefined;\n metaData: DoctorMetaData;\n};\n\nlet runningTimeStamp;\n\nexport type DoctorOptions = {\n diagnosisName?: string;\n filePath?: string;\n archiveWorkspace?: boolean;\n includeNodeModules?: boolean;\n includePublic?: boolean;\n excludeLocalScope?: boolean;\n};\n\nexport class DoctorMain {\n constructor(private logger: Logger) {}\n\n async runAll(options: DoctorOptions): Promise<DoctorRunAllResults> {\n registerCoreAndExtensionsDiagnoses();\n runningTimeStamp = this._getTimeStamp();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n const examineResultsWithNulls = await Promise.all(\n doctorRegistrar.diagnoses.map(async (diagnosis) => {\n try {\n return await diagnosis.examine();\n } catch (err: any) {\n this.logger.error(`doctor failed running diagnosis \"${diagnosis.name}\"`, err);\n this.logger.consoleFailure(\n chalk.red(`doctor failed running diagnosis \"${diagnosis.name}\".\\nerror-message: ${err.message}`)\n );\n }\n })\n );\n const examineResults = compact(examineResultsWithNulls);\n const envMeta = await this._getEnvMeta();\n const savedFilePath = await this._saveExamineResultsToFile(examineResults, envMeta, options);\n return { examineResults, savedFilePath, metaData: envMeta };\n }\n\n async runOne({ diagnosisName, ...options }: DoctorOptions): Promise<DoctorRunOneResult> {\n if (!diagnosisName) {\n throw new MissingDiagnosisName();\n }\n registerCoreAndExtensionsDiagnoses();\n runningTimeStamp = this._getTimeStamp();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n const diagnosis = doctorRegistrar.getDiagnosisByName(diagnosisName);\n if (!diagnosis) {\n throw new DiagnosisNotFound(diagnosisName);\n }\n const examineResult = await diagnosis.examine();\n const envMeta = await this._getEnvMeta();\n const savedFilePath = await this._saveExamineResultsToFile([examineResult], envMeta, options);\n return { examineResult, savedFilePath, metaData: envMeta };\n }\n\n async listDiagnoses(): Promise<Diagnosis[]> {\n registerCoreAndExtensionsDiagnoses();\n const doctorRegistrar = DoctorRegistrar.getInstance();\n return Promise.resolve(doctorRegistrar.diagnoses);\n }\n\n private async _saveExamineResultsToFile(\n examineResults: ExamineResult[],\n envMeta: DoctorMetaData,\n options: DoctorOptions\n ): Promise<string | null | undefined> {\n if (!options.filePath) {\n return Promise.resolve(undefined);\n }\n const finalFilePath = this._calculateFinalFileName(options.filePath);\n const packStream = await this._generateExamineResultsTarFile(examineResults, envMeta, finalFilePath, options);\n\n const yourTarball = fs.createWriteStream(finalFilePath);\n\n packStream.pipe(yourTarball);\n\n return new Promise((resolve) => {\n yourTarball.on('close', () => {\n this.logger.info(`wrote a file by bit doctor, file path: ${finalFilePath}`);\n resolve(finalFilePath);\n // fs.stat(finalFilePath, private (err, stats) {\n // if (err) throw err\n // console.log(stats)\n // console.log('Got file info successfully!')\n // })\n });\n });\n }\n\n private getWithoutExt(filename: string): string {\n const ext = getExt(filename);\n // There is no extension just return the file name\n if (ext === filename) {\n return filename;\n }\n return filename.substring(0, filename.length - ext.length - 1); // -1 to remove the '.'\n }\n\n private _calculateFinalFileName(fileName: string): string {\n if (fileName === '.') {\n return this._getDefaultFileName();\n }\n let finalFileName = fileName;\n if (getExt(fileName) !== 'tar' && getExt(fileName) !== 'tar.gz') {\n finalFileName = `${this.getWithoutExt(finalFileName)}.tar`;\n }\n return finalFileName;\n }\n\n private _getDefaultFileName() {\n const timestamp = runningTimeStamp || this._getTimeStamp();\n return `doctor-results-${timestamp}.tar`;\n }\n\n // TODO: move to utils\n private _getTimeStamp() {\n const d = new Date();\n const timestamp = d.getTime();\n return timestamp;\n }\n\n private async _generateExamineResultsTarFile(\n examineResults: ExamineResult[],\n envMeta: DoctorMetaData,\n tarFilePath: string,\n options: DoctorOptions\n ): Promise<Stream.Readable> {\n const { archiveWorkspace, includeNodeModules, includePublic, excludeLocalScope } = options;\n const debugLog = await this._getDebugLogAsBuffer();\n const consumerInfo = await this._getWorkspaceInfo();\n let bitmap;\n if (consumerInfo && consumerInfo.path) {\n bitmap = this._getBitMap(consumerInfo.path);\n }\n\n const packExamineResults = async (pack) => {\n pack.entry({ name: 'env-meta.json' }, JSON.stringify(envMeta, null, 2));\n pack.entry({ name: 'doc-results.json' }, JSON.stringify(examineResults, null, 2));\n if (debugLog) {\n pack.entry({ name: 'debug.log' }, debugLog);\n }\n if (!archiveWorkspace && bitmap) {\n pack.entry({ name: '.bitmap' }, bitmap);\n }\n if (consumerInfo && consumerInfo.hasWorkspaceConfig) {\n // TODO: support new config as well\n const scopePath = findScopePath(consumerInfo.path);\n const config = scopePath ? await WorkspaceConfig.loadIfExist(consumerInfo.path, scopePath) : undefined;\n const legacyPlainConfig = config?._legacyPlainObject();\n if (legacyPlainConfig) {\n pack.entry({ name: 'config.json' }, JSON.stringify(legacyPlainConfig, null, 4));\n }\n }\n\n pack.finalize();\n\n return pack;\n };\n\n if (!archiveWorkspace) {\n const pack = tar.pack(); // pack is a streams2 stream\n return packExamineResults(pack);\n }\n\n const ignore = (fileName: string) => {\n if (fileName === tarFilePath) return true;\n if (fileName === '.DS_Store') return true;\n if (\n !includeNodeModules &&\n (fileName.startsWith(`node_modules${path.sep}`) || fileName.includes(`${path.sep}node_modules${path.sep}`))\n )\n return true;\n if (\n !includePublic &&\n (fileName.startsWith(`public${path.sep}`) || fileName.includes(`${path.sep}public${path.sep}`))\n )\n return true;\n const isGit = fileName.startsWith(`.git${path.sep}`);\n const isLocalScope =\n fileName.startsWith(`.bit${path.sep}`) || fileName.startsWith(`.git${path.sep}bit${path.sep}`);\n if (excludeLocalScope && isLocalScope) return true;\n if (isGit && !isLocalScope) return true;\n return false;\n };\n\n const myPack = tarFS.pack('.', {\n ignore,\n finalize: false,\n finish: packExamineResults,\n });\n\n return myPack;\n }\n\n private async _getEnvMeta(): Promise<DoctorMetaData> {\n const env = {\n nodeVersion: process.version,\n runningTimestamp: runningTimeStamp || this._getTimeStamp(),\n platform: os.platform(),\n bitVersion: getBitVersion(),\n npmVersion: await getNpmVersion(),\n yarnVersion: await getYarnVersion(),\n userDetails: this._getUserDetails(),\n };\n\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return env;\n }\n\n private _getUserDetails(): string {\n const name = globalConfig.getSync(CFG_USER_NAME_KEY) || '';\n const email = globalConfig.getSync(CFG_USER_EMAIL_KEY) || '';\n return `${name}<${email}>`;\n }\n\n private async _getDebugLogAsBuffer(): Promise<Buffer | null | undefined> {\n const exists = await fs.pathExists(DEBUG_LOG);\n if (!exists) return null;\n const log = await fs.readFile(DEBUG_LOG, 'utf-8');\n const logWithoutChalk = removeChalkCharacters(log) as string;\n return Buffer.from(logWithoutChalk);\n }\n\n private async _getWorkspaceInfo(): Promise<WorkspaceInfo | null | undefined> {\n const consumerInfo = await getWorkspaceInfo(process.cwd());\n return consumerInfo;\n }\n\n private _getBitMap(workspaceDir): Buffer | null | undefined {\n return BitMap.loadRawSync(workspaceDir);\n }\n\n static slots = [];\n static dependencies = [CLIAspect, LoggerAspect];\n static runtime = MainRuntime;\n static async provider([cliMain, loggerMain]: [CLIMain, LoggerMain]) {\n const logger = loggerMain.createLogger(DoctorAspect.id);\n const doctor = new DoctorMain(logger);\n cliMain.register(new DoctorCmd(doctor));\n return doctor;\n }\n}\n\nDoctorAspect.addRuntime(DoctorMain);\n\nexport default DoctorMain;\n"],"mappings":"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","ignoreList":[]}
@@ -10,7 +10,7 @@ import { getBitVersion } from '@teambit/bit.get-bit-version';
10
10
  import { CFG_USER_EMAIL_KEY, CFG_USER_NAME_KEY, DEBUG_LOG } from '@teambit/legacy/dist/constants';
11
11
  import { BitMap } from '@teambit/legacy.bit-map';
12
12
  import WorkspaceConfig from '@teambit/legacy/dist/consumer/config/workspace-config';
13
- import { ConsumerInfo, getConsumerInfo } from '@teambit/legacy/dist/consumer/consumer-locator';
13
+ import { getWorkspaceInfo, WorkspaceInfo } from '@teambit/workspace.modules.workspace-locator';
14
14
  import Diagnosis, { ExamineResult } from './diagnosis';
15
15
  import DoctorRegistrar from './doctor-registrar';
16
16
  import registerCoreAndExtensionsDiagnoses from './doctor-registrar-builder';
@@ -177,7 +177,7 @@ export class DoctorMain {
177
177
  ): Promise<Stream.Readable> {
178
178
  const { archiveWorkspace, includeNodeModules, includePublic, excludeLocalScope } = options;
179
179
  const debugLog = await this._getDebugLogAsBuffer();
180
- const consumerInfo = await this._getConsumerInfo();
180
+ const consumerInfo = await this._getWorkspaceInfo();
181
181
  let bitmap;
182
182
  if (consumerInfo && consumerInfo.path) {
183
183
  bitmap = this._getBitMap(consumerInfo.path);
@@ -192,7 +192,7 @@ export class DoctorMain {
192
192
  if (!archiveWorkspace && bitmap) {
193
193
  pack.entry({ name: '.bitmap' }, bitmap);
194
194
  }
195
- if (consumerInfo && consumerInfo.hasConsumerConfig) {
195
+ if (consumerInfo && consumerInfo.hasWorkspaceConfig) {
196
196
  // TODO: support new config as well
197
197
  const scopePath = findScopePath(consumerInfo.path);
198
198
  const config = scopePath ? await WorkspaceConfig.loadIfExist(consumerInfo.path, scopePath) : undefined;
@@ -271,8 +271,8 @@ export class DoctorMain {
271
271
  return Buffer.from(logWithoutChalk);
272
272
  }
273
273
 
274
- private async _getConsumerInfo(): Promise<ConsumerInfo | null | undefined> {
275
- const consumerInfo = await getConsumerInfo(process.cwd());
274
+ private async _getWorkspaceInfo(): Promise<WorkspaceInfo | null | undefined> {
275
+ const consumerInfo = await getWorkspaceInfo(process.cwd());
276
276
  return consumerInfo;
277
277
  }
278
278
 
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/doctor",
3
- "version": "0.0.152",
3
+ "version": "0.0.154",
4
4
  "homepage": "https://bit.cloud/teambit/harmony/doctor",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.harmony",
8
8
  "name": "doctor",
9
- "version": "0.0.152"
9
+ "version": "0.0.154"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -25,12 +25,13 @@
25
25
  "@teambit/component-id": "1.2.2",
26
26
  "@teambit/bvm.list": "0.1.15",
27
27
  "@teambit/bit-error": "0.0.404",
28
- "@teambit/cli": "0.0.1046",
28
+ "@teambit/cli": "0.0.1048",
29
29
  "@teambit/bit.get-bit-version": "0.0.1",
30
- "@teambit/legacy.bit-map": "0.0.50",
30
+ "@teambit/legacy.bit-map": "0.0.52",
31
31
  "@teambit/legacy.utils": "0.0.6",
32
- "@teambit/logger": "0.0.1139",
32
+ "@teambit/logger": "0.0.1141",
33
33
  "@teambit/toolbox.fs.extension-getter": "0.0.1",
34
+ "@teambit/workspace.modules.workspace-locator": "0.0.1",
34
35
  "@teambit/git.modules.git-executable": "0.0.1"
35
36
  },
36
37
  "devDependencies": {
@@ -44,7 +45,7 @@
44
45
  "@types/testing-library__jest-dom": "5.9.5"
45
46
  },
46
47
  "peerDependencies": {
47
- "@teambit/legacy": "1.0.762",
48
+ "@teambit/legacy": "1.0.764",
48
49
  "react": "^16.8.0 || ^17.0.0",
49
50
  "react-dom": "^16.8.0 || ^17.0.0"
50
51
  },