)]}'
{
  "commit": "38ea3a8f5e930ee77a0ff407cdbbec0629d22faa",
  "tree": "f89addb88be4cff8f76567dcd31c7c787e1eec71",
  "parents": [
    "8ddfcbd396f19aaf7ecafb9409f10d443af412e7"
  ],
  "author": {
    "name": "Tess Strickland",
    "email": "sstrickl@google.com",
    "time": "Tue May 27 01:05:48 2025 -0700"
  },
  "committer": {
    "name": "Commit Queue",
    "email": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue May 27 01:05:48 2025 -0700"
  },
  "message": "Revert \"[vm, gen_snapshot] Add app-aot-macho-dylib option for AOT snapshots.\"\n\nThis reverts commit 38ef28a0589c0ac3009856a636b353e419e25c46.\n\nReason for revert: Breaks build on debug mode 32-bit arches,\n                   release mode simarm_x64\n\nIssue: https://github.com/dart-lang/sdk/issues/60307\nOriginal change\u0027s description:\n\u003e [vm, gen_snapshot] Add app-aot-macho-dylib option for AOT snapshots.\n\u003e\n\u003e This is the initial framework for creating snapshots as Mach-O dynamic\n\u003e libraries. Note that this framework is not 100% feature complete\n\u003e compared to generating Mach-O snapshots via assembly. In particular,\n\u003e the directly-compiled Mach-O dylib does not yet contain compact\n\u003e unwinding information.\n\u003e\n\u003e Other changes:\n\u003e\n\u003e * Adds UuidCommand to the native_stack_traces package\u0027s Mach-O reader,\n\u003e   which now appropriately returns the UUID as the build ID for Mach-O\n\u003e   shared objects.\n\u003e\n\u003e * Adds Utils::Basename(path) for portably retrieving the basename\n\u003e   from a path. (Returns nullptr for all arguments where it is not\n\u003e   currently implemented on Fuchsia or Windows.)\n\u003e\n\u003e * Adjusts vm/timeline.h to avoid pulling in \u003cmach_o/loader.h\u003e on MacOS,\n\u003e   as that interferes with uses of the namespaced Mach-O definitions\n\u003e   in platform/mach_o.h.\n\u003e\n\u003e * Only attempt to dlopen() a snapshot if ELF is the native format\n\u003e   for the host platform or the snapshot is not an ELF shared object.\n\u003e   If dlopen() is used, report the error message if it fails rather\n\u003e   than attempting to manually load the snapshot as an ELF shared object.\n\u003e\n\u003e * Fix the magic number stored in DylibAppSnapshot for loaded non-ELF\n\u003e   dynamic libraries.\n\u003e\n\u003e * Remove the detection of reverse-endian Mach-O magic numbers in\n\u003e   DartUtils::SniffForMagicNumber(), since all our Mach-O related code\n\u003e   assumes host-endian Mach-O files and so there\u0027s no point other than\n\u003e   to give a slightly better error message when failing.\n\u003e\n\u003e TEST\u003dvm/dart/exported_symbols_test\n\u003e      vm/dart/unobfuscated_static_symbols_test\n\u003e      vm/dart/use_dwarf_stack_traces_flag_test\n\u003e      vm/cc/CanDetectMachOFiles\n\u003e\n\u003e Issue: https://github.com/dart-lang/sdk/issues/60307\n\u003e Change-Id: Idf5b49d6c6d035ab033509613212b95520d65965\n\u003e Cq-Include-Trybots: luci.dart.try:vm-aot-linux-debug-x64-try,vm-mac-release-arm64-try,vm-aot-mac-release-arm64-try,vm-aot-mac-release-x64-try,vm-aot-dwarf-linux-product-x64-try,vm-linux-debug-x64-try,vm-mac-debug-arm64-try,vm-fuchsia-release-x64-try,vm-fuchsia-release-arm64-try\n\u003e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/415020\n\u003e Reviewed-by: Slava Egorov \u003cvegorov@google.com\u003e\n\u003e Commit-Queue: Tess Strickland \u003csstrickl@google.com\u003e\n\nIssue: https://github.com/dart-lang/sdk/issues/60307\nCq-Include-Trybots: luci.dart.try:vm-aot-linux-debug-x64-try,vm-mac-release-arm64-try,vm-aot-mac-release-arm64-try,vm-aot-mac-release-x64-try,vm-aot-dwarf-linux-product-x64-try,vm-linux-debug-x64-try,vm-mac-debug-arm64-try,vm-fuchsia-release-x64-try,vm-fuchsia-release-arm64-try\nNo-Presubmit: true\nNo-Tree-Checks: true\nNo-Try: true\nChange-Id: Iff2ab4c84a513a184784129f456bd357ae8e3a67\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/431220\nCommit-Queue: Slava Egorov \u003cvegorov@google.com\u003e\nReviewed-by: Slava Egorov \u003cvegorov@google.com\u003e\nBot-Commit: Rubber Stamper \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nAuto-Submit: Tess Strickland \u003csstrickl@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c339ca52dd5d1951bcba1ae4188492778ad4d377",
      "old_mode": 33188,
      "old_path": "pkg/native_stack_traces/CHANGELOG.md",
      "new_id": "1ad73eb2c121b092d81f252da90a65c2c8b8467d",
      "new_mode": 33188,
      "new_path": "pkg/native_stack_traces/CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "15b65f49590879a3446597b1760a8da048d63d81",
      "old_mode": 33188,
      "old_path": "pkg/native_stack_traces/lib/src/macho.dart",
      "new_id": "c8d7e301deb5a75476fe07a20e8f5468ff7053f0",
      "new_mode": 33188,
      "new_path": "pkg/native_stack_traces/lib/src/macho.dart"
    },
    {
      "type": "modify",
      "old_id": "d6b09a55a10d6aef142eb6a73c5aec0c8e4c33e5",
      "old_mode": 33188,
      "old_path": "pkg/native_stack_traces/pubspec.yaml",
      "new_id": "466fad1abf6f377deecd24e95c3ed8ee33818607",
      "new_mode": 33188,
      "new_path": "pkg/native_stack_traces/pubspec.yaml"
    },
    {
      "type": "modify",
      "old_id": "626b3dc51fd0b8e71279ca123cba3bd1ff5bc746",
      "old_mode": 33188,
      "old_path": "runtime/bin/dart_api_win.c",
      "new_id": "c8924a21904f0e7bcd2de0c152c39496409e4a4b",
      "new_mode": 33188,
      "new_path": "runtime/bin/dart_api_win.c"
    },
    {
      "type": "modify",
      "old_id": "0c5251cb76406a9e9abe8157dee254ae7cfcbd67",
      "old_mode": 33188,
      "old_path": "runtime/bin/dartutils.cc",
      "new_id": "78e2c3109eaa51650f90a8ade07709366ad65919",
      "new_mode": 33188,
      "new_path": "runtime/bin/dartutils.cc"
    },
    {
      "type": "modify",
      "old_id": "2d0aa818f1507b821ff3e499fe014e092e6dcb25",
      "old_mode": 33188,
      "old_path": "runtime/bin/dartutils.h",
      "new_id": "6ec605b58e0757003ac7905b32fe22afaf328595",
      "new_mode": 33188,
      "new_path": "runtime/bin/dartutils.h"
    },
    {
      "type": "modify",
      "old_id": "dcdd49feab4d8227137e4640f5311df791ceb7a2",
      "old_mode": 33188,
      "old_path": "runtime/bin/gen_snapshot.cc",
      "new_id": "c5e7b2eff025f319a0a4ee9a96a06a4027447d75",
      "new_mode": 33188,
      "new_path": "runtime/bin/gen_snapshot.cc"
    },
    {
      "type": "modify",
      "old_id": "dced66d2e7c5a16036a2e94b71afda26874ac56a",
      "old_mode": 33188,
      "old_path": "runtime/bin/snapshot_utils.cc",
      "new_id": "460832a4a70b149c83137df421937273a57f7ae5",
      "new_mode": 33188,
      "new_path": "runtime/bin/snapshot_utils.cc"
    },
    {
      "type": "modify",
      "old_id": "2b25de9424275a036f75e29d45b28c94adad538b",
      "old_mode": 33188,
      "old_path": "runtime/bin/snapshot_utils.h",
      "new_id": "f77035b587b0d6097f270ea4b79cef5be98d031a",
      "new_mode": 33188,
      "new_path": "runtime/bin/snapshot_utils.h"
    },
    {
      "type": "modify",
      "old_id": "153d68c64e00fe7fa88765359eb37827fe1dad96",
      "old_mode": 33188,
      "old_path": "runtime/bin/snapshot_utils_test.cc",
      "new_id": "93317badfcda1fc53c2a520e0539b8d41bf0d628",
      "new_mode": 33188,
      "new_path": "runtime/bin/snapshot_utils_test.cc"
    },
    {
      "type": "modify",
      "old_id": "e55a8764811ca9788744b3b22e5ece7a0cb230c6",
      "old_mode": 33188,
      "old_path": "runtime/configs.gni",
      "new_id": "ea79bcb264ab0a7ce0ec6a86289e57ad9c51e4dd",
      "new_mode": 33188,
      "new_path": "runtime/configs.gni"
    },
    {
      "type": "modify",
      "old_id": "675c98bfde9129351196ec8f0a233bd6cda995dd",
      "old_mode": 33188,
      "old_path": "runtime/include/dart_api.h",
      "new_id": "7394525e0e5a14da6373a2d0094a7da7ca7c76c3",
      "new_mode": 33188,
      "new_path": "runtime/include/dart_api.h"
    },
    {
      "type": "modify",
      "old_id": "12c8f71735c98d3b210e20f146bf808a19ac9ab2",
      "old_mode": 33188,
      "old_path": "runtime/platform/mach_o.h",
      "new_id": "b4375822d3a597e06064dc2885f11d5287579475",
      "new_mode": 33188,
      "new_path": "runtime/platform/mach_o.h"
    },
    {
      "type": "modify",
      "old_id": "3d1038aa6039f9b6147714250da01dab5e40ffad",
      "old_mode": 33188,
      "old_path": "runtime/platform/utils.cc",
      "new_id": "074c53988715011db2bd7e9e2df19ec69db8d660",
      "new_mode": 33188,
      "new_path": "runtime/platform/utils.cc"
    },
    {
      "type": "modify",
      "old_id": "2eed82955060ff99d1a67b8f16849e662e01d553",
      "old_mode": 33188,
      "old_path": "runtime/platform/utils.h",
      "new_id": "dd632129962fcfa4c3a408a624b704a09363a7a8",
      "new_mode": 33188,
      "new_path": "runtime/platform/utils.h"
    },
    {
      "type": "modify",
      "old_id": "408e7dc6feff75516db50625dea44df79437ca65",
      "old_mode": 33188,
      "old_path": "runtime/tests/vm/dart/analyze_snapshot_binary_test.dart",
      "new_id": "ad49f6f2676baf4bed6db73fa8b5d180291082db",
      "new_mode": 33188,
      "new_path": "runtime/tests/vm/dart/analyze_snapshot_binary_test.dart"
    },
    {
      "type": "modify",
      "old_id": "4aeecf74d3e783e205fc2906769aa137a922dd03",
      "old_mode": 33188,
      "old_path": "runtime/tests/vm/dart/disassemble_aot_test.dart",
      "new_id": "e3e3c4649e614c433edea4b7e1ae08ee75336964",
      "new_mode": 33188,
      "new_path": "runtime/tests/vm/dart/disassemble_aot_test.dart"
    },
    {
      "type": "modify",
      "old_id": "eed39790490f6ab69054122878f4fd0f6ac02daa",
      "old_mode": 33188,
      "old_path": "runtime/tests/vm/dart/exported_symbols_test.dart",
      "new_id": "fd497107f443792afa73915d049ab84415db418f",
      "new_mode": 33188,
      "new_path": "runtime/tests/vm/dart/exported_symbols_test.dart"
    },
    {
      "type": "modify",
      "old_id": "4ba1a547d9ffeae139275a45a11f822e02154131",
      "old_mode": 33188,
      "old_path": "runtime/tests/vm/dart/unobfuscated_static_symbols_test.dart",
      "new_id": "384ddf442fdb3dcd1c1c77c2ba92ab1a9cd6b52c",
      "new_mode": 33188,
      "new_path": "runtime/tests/vm/dart/unobfuscated_static_symbols_test.dart"
    },
    {
      "type": "modify",
      "old_id": "8804ba09d61ca73fab09eba63b9fa0501544dec1",
      "old_mode": 33188,
      "old_path": "runtime/tests/vm/dart/use_dwarf_stack_traces_flag_deferred_test.dart",
      "new_id": "0b6f60f9696933b5629a52f48e5e2230056dbbf8",
      "new_mode": 33188,
      "new_path": "runtime/tests/vm/dart/use_dwarf_stack_traces_flag_deferred_test.dart"
    },
    {
      "type": "modify",
      "old_id": "9c94865cfa7ca872228fb5f34d0ab68a3a3f7979",
      "old_mode": 33188,
      "old_path": "runtime/tests/vm/dart/use_dwarf_stack_traces_flag_helper.dart",
      "new_id": "aaccbd2a55b0ee7ecda33fd3d67ee6e57d4cdc70",
      "new_mode": 33188,
      "new_path": "runtime/tests/vm/dart/use_dwarf_stack_traces_flag_helper.dart"
    },
    {
      "type": "modify",
      "old_id": "dccb920efe602705a18d22b6c4866a5a7ae6863e",
      "old_mode": 33188,
      "old_path": "runtime/tests/vm/dart/use_dwarf_stack_traces_flag_test.dart",
      "new_id": "466df022223f960004f3701f2f25099fd31d23cc",
      "new_mode": 33188,
      "new_path": "runtime/tests/vm/dart/use_dwarf_stack_traces_flag_test.dart"
    },
    {
      "type": "modify",
      "old_id": "07195e8163cf82abd7c7bc060f5bbe92ff3b238f",
      "old_mode": 33188,
      "old_path": "runtime/tests/vm/dart/use_flag_test_helper.dart",
      "new_id": "a4bba1464d08667b41b5bc29d8ae9154d7130b68",
      "new_mode": 33188,
      "new_path": "runtime/tests/vm/dart/use_flag_test_helper.dart"
    },
    {
      "type": "modify",
      "old_id": "a28bd8d7ef90fbfc21ea6d38e9de5e820c57e073",
      "old_mode": 33188,
      "old_path": "runtime/vm/BUILD.gn",
      "new_id": "19cfec7d866c934e0b78d5df920fcce5a113ef4d",
      "new_mode": 33188,
      "new_path": "runtime/vm/BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "48608ccfca5177fed281850c63cf695ce41b9f04",
      "old_mode": 33188,
      "old_path": "runtime/vm/dart_api_impl.cc",
      "new_id": "8bdc0e8057f21c0106f037bd4731c92d42d9b2c1",
      "new_mode": 33188,
      "new_path": "runtime/vm/dart_api_impl.cc"
    },
    {
      "type": "modify",
      "old_id": "26c0ac0a0a83b7e28684f7abe954cdc77dd0eb62",
      "old_mode": 33188,
      "old_path": "runtime/vm/dwarf.cc",
      "new_id": "0aa736fcd18c885d31567bd8338560586b500e02",
      "new_mode": 33188,
      "new_path": "runtime/vm/dwarf.cc"
    },
    {
      "type": "modify",
      "old_id": "04d335d061a57bcf87dfc225b7a7e91c5476edbc",
      "old_mode": 33188,
      "old_path": "runtime/vm/dwarf.h",
      "new_id": "da6581082340044159ce010762c4750f65a3c5d1",
      "new_mode": 33188,
      "new_path": "runtime/vm/dwarf.h"
    },
    {
      "type": "modify",
      "old_id": "64d3d8930a8d17ac47c1be0a60d35658df397a82",
      "old_mode": 33188,
      "old_path": "runtime/vm/elf.h",
      "new_id": "ddba3573a5309063f763c0b425cd2809c8898f24",
      "new_mode": 33188,
      "new_path": "runtime/vm/elf.h"
    },
    {
      "type": "modify",
      "old_id": "66d9c3b25367001caacf8a9194b713a4267f9fa7",
      "old_mode": 33188,
      "old_path": "runtime/vm/image_snapshot.cc",
      "new_id": "2171ca029bbaf9f22cbf5cbe58852ce4ea74d24d",
      "new_mode": 33188,
      "new_path": "runtime/vm/image_snapshot.cc"
    },
    {
      "type": "modify",
      "old_id": "baeb115a8b4014bca62af352fa23b03d3e7aac9e",
      "old_mode": 33188,
      "old_path": "runtime/vm/image_snapshot.h",
      "new_id": "7b7fa0d60bcaa6f4221d36212e6cf0782c5b366a",
      "new_mode": 33188,
      "new_path": "runtime/vm/image_snapshot.h"
    },
    {
      "type": "delete",
      "old_id": "de90d4dbe9595e6a913d8826ddcc2d05a098ede0",
      "old_mode": 33188,
      "old_path": "runtime/vm/mach_o.cc",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "f652f97c850975e421e43e08da826b6225810cf8",
      "old_mode": 33188,
      "old_path": "runtime/vm/mach_o.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "4a84c7c26500c691a345c792368b8dd57e864eeb",
      "old_mode": 33188,
      "old_path": "runtime/vm/os_macos.cc",
      "new_id": "26ba160f3f6f8f289acfd7cbd2384a9717277e97",
      "new_mode": 33188,
      "new_path": "runtime/vm/os_macos.cc"
    },
    {
      "type": "modify",
      "old_id": "8b499d7a67a460d28baf45ac63b8f13404990845",
      "old_mode": 33188,
      "old_path": "runtime/vm/timeline.cc",
      "new_id": "8e010f3d6bb23bf0a44673f3a374bc71b00f95e2",
      "new_mode": 33188,
      "new_path": "runtime/vm/timeline.cc"
    },
    {
      "type": "modify",
      "old_id": "f73ecb8303b9e5fff4b02d54da1111e09beabcac",
      "old_mode": 33188,
      "old_path": "runtime/vm/timeline.h",
      "new_id": "f22a1890877d62ab7ac7c0a3c982226c0d731d31",
      "new_mode": 33188,
      "new_path": "runtime/vm/timeline.h"
    },
    {
      "type": "modify",
      "old_id": "7972e4b1aad2eeaa945fa40fa933b6dd5bd444f2",
      "old_mode": 33188,
      "old_path": "runtime/vm/timeline_macos.cc",
      "new_id": "ee77188af0a9a65f7a2d8d9b9bd25f4eb4e519b9",
      "new_mode": 33188,
      "new_path": "runtime/vm/timeline_macos.cc"
    },
    {
      "type": "modify",
      "old_id": "7e74862bb7c318053ac1c2c832988db00cfd6a23",
      "old_mode": 33188,
      "old_path": "runtime/vm/vm_sources.gni",
      "new_id": "dc2209fc7254a66ca128b447c4b3b9e9a591e599",
      "new_mode": 33188,
      "new_path": "runtime/vm/vm_sources.gni"
    }
  ]
}
