)]}'
{
  "commit": "ff799bda54bdc19c2e9002988242597c97bbbd3d",
  "tree": "3b269cdf89d2e9d36877332f3706e5c015a50649",
  "parents": [
    "6857fb842a26231f585c01763261bbd70df6d8b7"
  ],
  "author": {
    "name": "Shai Barack",
    "email": "shayba@fuchsia.infra.roller.google.com",
    "time": "Mon Jan 17 01:21:48 2022 +0000"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Sun Jan 16 17:22:59 2022 -0800"
  },
  "message": "[roll] Roll fuchsia Reland \"[ffx] link version into binary last\"\n\nThis reverts commit ed6f9722f2a4adee2f2a2ad62f40ad44103baf8a.\n\nOriginal issue identified by olivernewman, fixed by bbosan:\nhttps://chat.google.com/room/AAAABFiUm4o/5G9geTC8c4o\n\nFailure that caused revert:\nhttps://logs.chromium.org/logs/fuchsia/buildbucket/cr-buildbucket/8825117432091675473/+/u/failures/Mac-_2_/attempt_0__fail_/failed:_host_x64_obj_src_developer_ffx_ffx-e2e-without-target.sh/stdout-and-stderr.txt\n\nSymptom:\nhost_x64/obj/src/developer/ffx/ffx-e2e-without-target.sh: line 3: host_x64/ffx: Permission denied\n\nUnderlying issue:\nsrc/developer/ffx/lib/version/build/macos-apply-ffx-version.py created\noutput stamped ffx binary without execute permissions.\n\nFix: chmood ug+x\n\nOriginal change\u0027s description:\n\u003e Revert \"[ffx] link version into binary last\"\n\u003e\n\u003e This reverts commit bf448dc51867a3461fa2f858166cf94d5a48c3f6.\n\u003e\n\u003e MULTIPLY: ffx-e2e-without-target\n\u003e\n\u003e Reason for revert: Possibly broke tree\n\u003e\n\u003e Original change\u0027s description:\n\u003e \u003e [ffx] link version into binary last\n\u003e \u003e\n\u003e \u003e Instead of having most ffx builds depending upon repository state,\n\u003e \u003e triggering lengthy build cache invalidations any time a new commit is\n\u003e \u003e being built, link the version information into the binary with objcopy\n\u003e \u003e section repalcement right at the end of the build pipeline.\n\u003e \u003e\n\u003e \u003e Workarounds for 91330 are introduced for macOS, where a raw byte\n\u003e \u003e replacement strategy is used instead of a parse and replace strategy.\n\u003e \u003e This can be removed when llvm-objcopy supports mach-o section updates.\n\u003e \u003e\n\u003e \u003e Original-Bug: 91330\n\u003e \u003e Original-Fixed: 82887\n\u003e \u003e Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/621905\n\u003e\n\u003e Original-Bug: 91330\n\u003e No-Presubmit: true\n\u003e No-Tree-Checks: true\n\u003e No-Try: true\n\u003e Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/631449\n\nOriginal-Bug: 91330\nOriginal-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/632903\nOriginal-Revision: 176cd5060d30a8d184552ede283b6cb4b33f388b\nGitOrigin-RevId: 5ada23242f6bfcd8241d20471676e563270aaca0\nChange-Id: I60ab3329aba1f9941bc42a67dd091a9357b80fc8\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1f007ca83223d057b20ad6314664a5eb1f94ecab",
      "old_mode": 33188,
      "old_path": "stem",
      "new_id": "32d9754e9ababa3367d25e07c91a17ccee077154",
      "new_mode": 33188,
      "new_path": "stem"
    }
  ]
}
