hunk.code_window:   }
     if (opts.dependencyAbsolutePath !== opts.id) {
       result['id'] = opts.id
     }
     if (pkg.peerDependencies) {
       result['peerDependencies'] = pkg.peerDependencies
     }
     if (pkg.engines) {
       // TODO: if node: '*' then don't include
  
hunk.labels: keep keep keep keep keep replace keep keep keep
hunk.after_edit:     const ownDeps = new Set(
         R.keys(pkg.dependencies).concat(R.keys(pkg.optionalDependencies))
       )
       for (let peer of R.keys(pkg.peerDependencies)) {
         if (ownDeps.has(peer)) continue
         result['peerDependencies'] = result['peerDependencies'] || {}
         result['peerDependencies'][peer] = pkg.peerDependencies[peer]
       }
  
hunk.file_path: src/link/updateShrinkwrap.ts
hunk.type: replace
file: {
    "name": "pnpm-test",
    "description": "Tests of pnpm",
    "private": true,
    "version": "1.0.0",
    "dependencies": {
      "@types/mkdirp": "^0.5.1",
      "@types/sinon": "^2.3.2",
      "@types/tape": "^4.2.30",
      "anonymous-npm-registry-client": "^0.1.2",
      "caw": "^2.0.0",
      "deep-require-cwd": "^1.0.0",
      "exists-link": "^2.0.0",
      "is-ci": "^1.0.10",
      "isexe": "^2.0.0",
      "mkdirp": "^0.5.1",
      "npm-run-all": "^4.0.1",
      "pnpm-registry-mock": "^1.7.0",
      "read-pkg": "^2.0.0",
      "rimraf": "^2.5.4",
      "sepia": "^2.0.2",
      "sinon": "^2.4.1",
      "tape": "^4.6.3",
      "tape-promise": "^2.0.1",
      "ts-node": "^3.0.0",
      "write-json-file": "^2.2.0"
    },
    "scripts": {
      "pnpm-registry-mock": "pnpm-registry-mock",
      "test:tap": "ts-node index.ts",
      "test:e2e": "npm-run-all -p -r pnpm-registry-mock test:tap",
      "pretest": "rimraf ../../.tmp/ && pnpm-registry-mock prepare",
      "test": "npm run test:e2e"
    }
  }
  