)]}'
{
  "commit": "425f8529519b67ef7bef8a431fd966ff3e4e0b75",
  "tree": "b37567255658177ba3da978593d1ac5fbca2edb1",
  "parents": [
    "ef4520436f8f8513ea42fe2c386e50138b506578"
  ],
  "author": {
    "name": "Louis Dionne",
    "email": "ldionne.2@gmail.com",
    "time": "Mon Jan 18 12:18:18 2021 -0500"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Jan 19 15:52:54 2021 -0800"
  },
  "message": "[libc++] Make LIBCXX_ENABLE_FILESYSTEM fully consistent\n\nPreviously, LIBCXX_ENABLE_FILESYSTEM controlled only whether the filesystem\nsupport was compiled into libc++\u0027s library. This commit promotes the\nsetting to a first-class option like LIBCXX_ENABLE_LOCALIZATION, where\nthe whole library is aware of the setting and features that depend on\n\u003cfilesystem\u003e won\u0027t be provided at all. The test suite is also properly\nannotated such that tests that depend on \u003cfilesystem\u003e are disabled when\nthe library doesn\u0027t support it.\n\nThis is an alternative to https://llvm.org/D94824, but also an improvement\nalong the lines of LIBCXX_ENABLE_LOCALIZATION that I had been wanting to\nmake for a while.\n\nDifferential Revision: https://reviews.llvm.org/D94921\n\nGitOrigin-RevId: 933518fff82c8f39626bbcca81adc516483a9651\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "46a669500548552085d7967b824c2541b1b28b3a",
      "old_mode": 33188,
      "old_path": "CMakeLists.txt",
      "new_id": "6a55245ab87a43eb59db3dd6ca95e268bc384f2b",
      "new_mode": 33188,
      "new_path": "CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4000f3a3e8ef23b42c364387ae20c0363cc8b830",
      "new_mode": 33188,
      "new_path": "cmake/caches/Generic-no-filesystem.cmake"
    },
    {
      "type": "modify",
      "old_id": "6089fb7d0133130b57673909db0cdb614716e5e3",
      "old_mode": 33188,
      "old_path": "include/__config_site.in",
      "new_id": "ec4d410bb971f14193f4e3fc4f79877e8cdbf3bc",
      "new_mode": 33188,
      "new_path": "include/__config_site.in"
    },
    {
      "type": "modify",
      "old_id": "c60020a3e893f4f2de0faa1c04cb1b41af7fa45f",
      "old_mode": 33188,
      "old_path": "include/filesystem",
      "new_id": "92e37e183defb612cacc3ed099e0b63d69035f9c",
      "new_mode": 33188,
      "new_path": "include/filesystem"
    },
    {
      "type": "modify",
      "old_id": "701f65b44452ce99cde70aedf3420a1ad91d64b5",
      "old_mode": 33188,
      "old_path": "include/fstream",
      "new_id": "d7d6b46c32d9039efa7a3dec9f574c6a7462c1a4",
      "new_mode": 33188,
      "new_path": "include/fstream"
    },
    {
      "type": "modify",
      "old_id": "c8c6855140c0871450d0b8e895731056a9f8b445",
      "old_mode": 33188,
      "old_path": "test/configs/legacy.cfg.in",
      "new_id": "8090517f08a61e4f2f19b815fc94115d4df0f7f3",
      "new_mode": 33188,
      "new_path": "test/configs/legacy.cfg.in"
    },
    {
      "type": "modify",
      "old_id": "f382ee7ab9f6e5023cdafe504e4d2f4d288d4d85",
      "old_mode": 33188,
      "old_path": "test/libcxx/double_include.sh.cpp",
      "new_id": "5e6fa2b14e2388b070275fedccbc90a850da9a4d",
      "new_mode": 33188,
      "new_path": "test/libcxx/double_include.sh.cpp"
    },
    {
      "type": "modify",
      "old_id": "47fed610998a90ae5796ea9ace642c56a8cc9d5e",
      "old_mode": 33188,
      "old_path": "test/libcxx/experimental/filesystem/deprecated.verify.cpp",
      "new_id": "d9064e182e82f8ff3ae30d0a74cad2b71918a14f",
      "new_mode": 33188,
      "new_path": "test/libcxx/experimental/filesystem/deprecated.verify.cpp"
    },
    {
      "type": "modify",
      "old_id": "08d49be0ddca800829cc712d82710ac086ec0048",
      "old_mode": 33188,
      "old_path": "test/libcxx/experimental/filesystem/version.pass.cpp",
      "new_id": "70c3ba7422223291d592ebf8c953bf7049d914ea",
      "new_mode": 33188,
      "new_path": "test/libcxx/experimental/filesystem/version.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "953dbbea5e660136a2e01c26d86f155e5d4d7c2f",
      "old_mode": 33188,
      "old_path": "test/libcxx/min_max_macros.compile.pass.cpp",
      "new_id": "6bf58c71fbc143ad27a6214557d5c0a001bd96b2",
      "new_mode": 33188,
      "new_path": "test/libcxx/min_max_macros.compile.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "ec5c8de3f01b6cf4a07e78b67543235913df0bde",
      "old_mode": 33188,
      "old_path": "test/libcxx/modules/cinttypes_exports.compile.pass.cpp",
      "new_id": "aa3ae7f97a21e6b3797084a6837b558d0cd34797",
      "new_mode": 33188,
      "new_path": "test/libcxx/modules/cinttypes_exports.compile.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "a460c6e884ff6210c3a65e6f0923217dc1493275",
      "old_mode": 33188,
      "old_path": "test/libcxx/modules/clocale_exports.compile.pass.cpp",
      "new_id": "92c50e24a0cbe52779dd613e335def757fe2f8bd",
      "new_mode": 33188,
      "new_path": "test/libcxx/modules/clocale_exports.compile.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "c106bf68e86cdfa63dd58e28f1b30bf6fc257c78",
      "old_mode": 33188,
      "old_path": "test/libcxx/modules/cstdint_exports.compile.pass.cpp",
      "new_id": "b83e4da37471744ba2a6528e2352c122ae7ff0f4",
      "new_mode": 33188,
      "new_path": "test/libcxx/modules/cstdint_exports.compile.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "59b0d6256d7e73b9a30ce68d915b2bd2ca87b817",
      "old_mode": 33188,
      "old_path": "test/libcxx/modules/inttypes_h_exports.compile.pass.cpp",
      "new_id": "ffc6a6296b180f4e1e6af2658ef279e2de9d36a6",
      "new_mode": 33188,
      "new_path": "test/libcxx/modules/inttypes_h_exports.compile.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "830a2515be03af9f3415e9ddd45b8f1acdd906ff",
      "old_mode": 33188,
      "old_path": "test/libcxx/modules/stdint_h_exports.compile.pass.cpp",
      "new_id": "2b1997a24e6d3b3559cc03e97679eb306a0c6938",
      "new_mode": 33188,
      "new_path": "test/libcxx/modules/stdint_h_exports.compile.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "5235c7b05432d0b36af05eff9b256b8e1ba493d0",
      "old_mode": 33188,
      "old_path": "test/libcxx/modules/stds_include.sh.cpp",
      "new_id": "9ea13bbc34079a88dd6c5cdd498a6c323c87a3de",
      "new_mode": 33188,
      "new_path": "test/libcxx/modules/stds_include.sh.cpp"
    },
    {
      "type": "modify",
      "old_id": "e2aba50d0960a44580ea7fa96e3515bbf2187b44",
      "old_mode": 33188,
      "old_path": "test/libcxx/no_assert_include.compile.pass.cpp",
      "new_id": "287039b57d2c0274c22037f0ee584fc0b6d31880",
      "new_mode": 33188,
      "new_path": "test/libcxx/no_assert_include.compile.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "76efcce9aceb279716897bd71137b11ed9355a8e",
      "old_mode": 33188,
      "old_path": "test/std/experimental/filesystem/fs.req.macros/feature_macro.pass.cpp",
      "new_id": "58cadb53e49a03e10aa938bee9ae417c0586056b",
      "new_mode": 33188,
      "new_path": "test/std/experimental/filesystem/fs.req.macros/feature_macro.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "97d175103986e0d8eff5bb897e4d2cc55b56597d",
      "old_mode": 33188,
      "old_path": "test/std/experimental/filesystem/fs.req.namespace/namespace.pass.cpp",
      "new_id": "7a82fe6cd474feb2879020ee98563844f9467350",
      "new_mode": 33188,
      "new_path": "test/std/experimental/filesystem/fs.req.namespace/namespace.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "baa00aaf4104b6f973b4cb333dfab79b39297e40",
      "old_mode": 33188,
      "old_path": "test/std/input.output/file.streams/fstreams/filebuf.members/open_path.pass.cpp",
      "new_id": "b51f9598f94801f978e153e2ccd2cb4e30795af3",
      "new_mode": 33188,
      "new_path": "test/std/input.output/file.streams/fstreams/filebuf.members/open_path.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "a910f8bf6d8e77a19e2e3dd1f2203826d47fed99",
      "old_mode": 33188,
      "old_path": "test/std/input.output/file.streams/fstreams/fstream.cons/path.pass.cpp",
      "new_id": "8384f503eba9306043bc457e5731afd61d7b785c",
      "new_mode": 33188,
      "new_path": "test/std/input.output/file.streams/fstreams/fstream.cons/path.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "62cbc61ccfdfe6e6319c0668a5b78e93d534137a",
      "old_mode": 33188,
      "old_path": "test/std/input.output/file.streams/fstreams/fstream.members/open_path.pass.cpp",
      "new_id": "bd5b1f81e0c91d8a67b6f91ae502e633bdc35419",
      "new_mode": 33188,
      "new_path": "test/std/input.output/file.streams/fstreams/fstream.members/open_path.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "51543f0fa73639a16224af80ef1e5dcf0e200f14",
      "old_mode": 33188,
      "old_path": "test/std/input.output/file.streams/fstreams/ifstream.cons/path.pass.cpp",
      "new_id": "483cfbacd642e42cba80cfc8148f1b5d743fc0dc",
      "new_mode": 33188,
      "new_path": "test/std/input.output/file.streams/fstreams/ifstream.cons/path.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "10eec8f9580cb52db9ab84a6871ab107955309b0",
      "old_mode": 33188,
      "old_path": "test/std/input.output/file.streams/fstreams/ifstream.members/open_path.pass.cpp",
      "new_id": "3e440c9fdb219e2abba965d28ea09bec3705a8ea",
      "new_mode": 33188,
      "new_path": "test/std/input.output/file.streams/fstreams/ifstream.members/open_path.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "64885abd764a179f12e0bc333eba503834d90dd4",
      "old_mode": 33188,
      "old_path": "test/std/input.output/file.streams/fstreams/ofstream.cons/path.pass.cpp",
      "new_id": "2406295be4023498a9e72ab72c219540bea29614",
      "new_mode": 33188,
      "new_path": "test/std/input.output/file.streams/fstreams/ofstream.cons/path.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "c0885736c43a670bfaa61fa15374a73b7c6b97d4",
      "old_mode": 33188,
      "old_path": "test/std/input.output/file.streams/fstreams/ofstream.members/open_path.pass.cpp",
      "new_id": "c656ada41d956fbe0e2912302fb451585d1344ef",
      "new_mode": 33188,
      "new_path": "test/std/input.output/file.streams/fstreams/ofstream.members/open_path.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "682a2ab1c63b337a67eae7c529c2b531c37118f1",
      "old_mode": 33188,
      "old_path": "test/std/input.output/filesystems/lit.local.cfg",
      "new_id": "792a902ceb2afbf17ca248d354cd9deae2e3593b",
      "new_mode": 33188,
      "new_path": "test/std/input.output/filesystems/lit.local.cfg"
    },
    {
      "type": "modify",
      "old_id": "44850780d3158ba1764e66ddcd26fdd714012f74",
      "old_mode": 33188,
      "old_path": "test/std/language.support/support.limits/support.limits.general/filesystem.version.pass.cpp",
      "new_id": "6e47bdf3b5fefb2eac94e7955aa24e1a40a27740",
      "new_mode": 33188,
      "new_path": "test/std/language.support/support.limits/support.limits.general/filesystem.version.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "02c48ba2c6c7711f5b85434f4b36463db93a442f",
      "old_mode": 33188,
      "old_path": "test/std/utilities/time/time.clock/time.clock.file/now.pass.cpp",
      "new_id": "9bc047771d6ddefd973cfb1b987130655b09d5bf",
      "new_mode": 33188,
      "new_path": "test/std/utilities/time/time.clock/time.clock.file/now.pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "7ad2556f60e02599c92cad2cd95980fa373524c2",
      "old_mode": 33188,
      "old_path": "utils/ci/buildkite-pipeline.yml",
      "new_id": "f133a04245f4ceff3ee125ac0c9e0007af0f0d64",
      "new_mode": 33188,
      "new_path": "utils/ci/buildkite-pipeline.yml"
    },
    {
      "type": "modify",
      "old_id": "f91d7197e9e5aeb024b4bbf76408dbd08d76c272",
      "old_mode": 33261,
      "old_path": "utils/ci/macos-backdeployment.sh",
      "new_id": "9ce7f3cefe050751dbda44cf95522b00ffac1bf3",
      "new_mode": 33261,
      "new_path": "utils/ci/macos-backdeployment.sh"
    },
    {
      "type": "modify",
      "old_id": "ec4080a61d986c984d67f1138b9cd8ccdbf55a0b",
      "old_mode": 33261,
      "old_path": "utils/ci/run-buildbot",
      "new_id": "1fb09f3a91aa0dc63d1f5b1f04174c2eebea2771",
      "new_mode": 33261,
      "new_path": "utils/ci/run-buildbot"
    },
    {
      "type": "modify",
      "old_id": "2ce79606981f96142966eebafd31ae3e55f67444",
      "old_mode": 33261,
      "old_path": "utils/generate_feature_test_macro_components.py",
      "new_id": "11bbb2fd65ed31e366dddee9cf2dde0afa675d7b",
      "new_mode": 33261,
      "new_path": "utils/generate_feature_test_macro_components.py"
    },
    {
      "type": "modify",
      "old_id": "b00f0d53be47a5fa89037a0ee5d8817190db1fac",
      "old_mode": 33261,
      "old_path": "utils/generate_header_tests.py",
      "new_id": "b4ed43ba030c3992a05fb04e5021aa80aeb841e1",
      "new_mode": 33261,
      "new_path": "utils/generate_header_tests.py"
    },
    {
      "type": "modify",
      "old_id": "a435a938fdcdccfbd9d8d48423d2b3ea992e4964",
      "old_mode": 33188,
      "old_path": "utils/libcxx/test/features.py",
      "new_id": "248e4bfbee3c1ed179e6e3c82cf0281f3a76d1ad",
      "new_mode": 33188,
      "new_path": "utils/libcxx/test/features.py"
    },
    {
      "type": "modify",
      "old_id": "6b508ad26df8865875fbce1a16e208eafbc5e3d1",
      "old_mode": 33188,
      "old_path": "utils/libcxx/test/params.py",
      "new_id": "fef2543f0b6f5b7b45e97be838850bb0636c59a1",
      "new_mode": 33188,
      "new_path": "utils/libcxx/test/params.py"
    }
  ]
}
