diff --git a/e2e/cli-e2e/tests/__snapshots__/help.e2e.test.ts.snap b/e2e/cli-e2e/tests/__snapshots__/help.e2e.test.ts.snap index 7143fbe32..d3ecea32c 100644 --- a/e2e/cli-e2e/tests/__snapshots__/help.e2e.test.ts.snap +++ b/e2e/cli-e2e/tests/__snapshots__/help.e2e.test.ts.snap @@ -20,8 +20,8 @@ Options: s [string] [default: \\"code-pushup.config.js\\"] --persist.outputDir Directory for the produced reports [string] --persist.filename Filename for the produced reports. [string] - --persist.format Format of the report output. e.g. \`md\`, \`json\`, \`st - dout\` [array] + --persist.format Format of the report output. e.g. \`md\`, \`json\` + [array] --upload.organization Organization slug from portal [string] --upload.project Project slug from portal [string] --upload.server URL to your portal server [string] diff --git a/packages/cli/README.md b/packages/cli/README.md index eaffa8462..e03058466 100644 --- a/packages/cli/README.md +++ b/packages/cli/README.md @@ -36,7 +36,7 @@ _If you're looking for programmatic usage, then refer to the underlying [@code-p export default { persist: { outputDir: '.code-pushup', - format: ['json', 'md', 'stdout'], + format: ['json', 'md'], }, plugins: [ // ... diff --git a/packages/cli/src/lib/implementation/core-config-options.ts b/packages/cli/src/lib/implementation/core-config-options.ts index 9d9a8d54c..ad8bce16c 100644 --- a/packages/cli/src/lib/implementation/core-config-options.ts +++ b/packages/cli/src/lib/implementation/core-config-options.ts @@ -14,7 +14,7 @@ export function yargsCoreConfigOptionsDefinition(): Record { type: 'string', }, 'persist.format': { - describe: 'Format of the report output. e.g. `md`, `json`, `stdout`', + describe: 'Format of the report output. e.g. `md`, `json`', type: 'array', }, // upload diff --git a/packages/core/src/lib/implementation/persist.integration.test.ts b/packages/core/src/lib/implementation/persist.integration.test.ts index c2efa8ef8..f04e02d21 100644 --- a/packages/core/src/lib/implementation/persist.integration.test.ts +++ b/packages/core/src/lib/implementation/persist.integration.test.ts @@ -85,8 +85,8 @@ describe('persistReport', () => { expect(() => readReport('md')).toThrow('no such file or directory'); }); - it('should log to console when format is stdout`', async () => { - const persist = persistConfig({ outputDir, format: ['stdout'] }); + it('should log to console regardless of format`', async () => { + const persist = persistConfig({ outputDir, format: [] }); await persistReport(dummyReport, { ...dummyConfig, @@ -109,7 +109,6 @@ describe('persistReport', () => { const jsonReport: Report = readReport('json'); expect(jsonReport.packageName).toBe('@code-pushup/core'); - expect(console.log).toHaveBeenCalledTimes(0); expect(() => readReport('md')).toThrow('no such file or directory'); }); @@ -124,7 +123,6 @@ describe('persistReport', () => { `${FOOTER_PREFIX} [Code PushUp](${README_LINK})`, ); - expect(console.log).toHaveBeenCalledTimes(0); expect(() => readFileSync(reportPath('json'))).not.toThrow( 'no such file or directory', ); @@ -133,7 +131,7 @@ describe('persistReport', () => { it('should persist all formats`', async () => { const persist = persistConfig({ outputDir, - format: ['json', 'md', 'stdout'], + format: ['json', 'md'], }); await persistReport(dummyReport, { ...dummyConfig, @@ -154,7 +152,7 @@ describe('persistReport', () => { }); it('should persist some formats`', async () => { - const persist = persistConfig({ outputDir, format: ['md', 'stdout'] }); + const persist = persistConfig({ outputDir, format: ['md'] }); await persistReport(dummyReport, { ...dummyConfig, persist, diff --git a/packages/core/src/lib/implementation/persist.ts b/packages/core/src/lib/implementation/persist.ts index 3a51f405d..c5d7e9a85 100644 --- a/packages/core/src/lib/implementation/persist.ts +++ b/packages/core/src/lib/implementation/persist.ts @@ -30,13 +30,10 @@ export async function persistReport( const { persist } = config; const outputDir = persist.outputDir; const filename = persist.filename; - const format = - persist.format && persist.format.length !== 0 ? persist.format : ['stdout']; - let scoredReport; - if (format.includes('stdout')) { - scoredReport = scoreReport(report); - console.log(reportToStdout(scoredReport)); - } + const format = persist.format ?? []; + + let scoredReport = scoreReport(report); + console.log(reportToStdout(scoredReport)); // collect physical format outputs const results: { format: string; content: string }[] = [ diff --git a/packages/models/src/lib/persist-config.ts b/packages/models/src/lib/persist-config.ts index 9e43af420..00e480e61 100644 --- a/packages/models/src/lib/persist-config.ts +++ b/packages/models/src/lib/persist-config.ts @@ -1,7 +1,7 @@ import { z } from 'zod'; import { fileNameSchema, filePathSchema } from './implementation/schemas'; -export const formatSchema = z.enum(['json', 'stdout', 'md']); +export const formatSchema = z.enum(['json', 'md']); export type Format = z.infer; export const persistConfigSchema = z.object({ @@ -9,7 +9,7 @@ export const persistConfigSchema = z.object({ filename: fileNameSchema('Artifacts file name (without extension)').default( 'report', ), - format: z.array(formatSchema).default(['stdout']).optional(), // @TODO remove default or optional value and otherwise it will not set defaults. + format: z.array(formatSchema).default(['json']).optional(), // @TODO remove default or optional value and otherwise it will not set defaults. }); export type PersistConfig = z.infer; diff --git a/packages/nx-plugin/src/generators/configuration/files/code-pushup.config.ts.template b/packages/nx-plugin/src/generators/configuration/files/code-pushup.config.ts.template index ebed45fe7..79631b3b9 100644 --- a/packages/nx-plugin/src/generators/configuration/files/code-pushup.config.ts.template +++ b/packages/nx-plugin/src/generators/configuration/files/code-pushup.config.ts.template @@ -3,7 +3,7 @@ import type { CoreConfig } from '@code-pushup/models'; const config: CoreConfig = { persist: { outputDir: '.code-pushup', - format: ['json', 'md', 'stdout'], + format: ['json', 'md'], }, plugins: [ // ...