hunk.code_window:         dir/pkg-2                                | ${WARN} ${DEPRECATED} bar@2.0.0
           dir/pkg-2                                |   ${chalk.green('+2')} ${ADD}
           .../pkg-3                                |   ${chalk.green('+1')} ${ADD}
           ...ooooooooooooooooooooooooooooong-pkg-4 |   ${chalk.red('-1')} ${SUB}`
         )
       },
       complete: () => t.end(),
       error: t.end,
  
hunk.labels: keep keep keep replace keep keep keep keep
hunk.after_edit:         ...ooooooooooooooooooooooooooooong-pkg-4 |   ${chalk.red('-1')} ${SUB}
           .                                        | ${WARN} ${DEPRECATED} foo@1.0.0`
  
hunk.file_path: packages/default-reporter/test/index.ts
hunk.type: replace
file: import {Dependencies} from '@pnpm/types'
  import {WantedDependency} from './types'
  
  export default function (
    deps: Dependencies,
    opts: {
      devDependencies: Dependencies,
      optionalDependencies: Dependencies,
    },
  ): WantedDependency[] {
    if (!deps) return []
    return Object.keys(deps).map((alias) => ({
      alias,
      dev: !!opts.devDependencies[alias],
      optional: !!opts.optionalDependencies[alias],
      pref: deps[alias],
      raw: `${alias}@${deps[alias]}`,
    }))
  }
  
  export function similarDepsToSpecs (
    deps: Dependencies,
    opts: {
      allowNew: boolean,
      currentPrefs: Dependencies,
      dev: boolean,
      devDependencies: Dependencies,
      optional: boolean,
      optionalDependencies: Dependencies,
    },
  ): WantedDependency[] {
    if (!deps) return []
    return (opts.allowNew ? Object.keys(deps) : Object.keys(deps).filter((alias) => opts.currentPrefs[alias]))
      .map((alias) => ({
        alias,
        dev: opts.dev || !!opts.devDependencies[alias],
        optional: opts.optional || !!opts.optionalDependencies[alias],
        pref: deps[alias] || opts.currentPrefs[alias],
        raw: `${alias}@${deps[alias]}`,
      }))
  }
  