)]}'
{
  "commit": "01cfbaa4c36ecd9f1c7bcbad50c92758e1d147c4",
  "tree": "331acd61966951feca3191ff1aade763056a2b49",
  "parents": [
    "893e1f2c5170d54316f1dcf3fefae679175622fc"
  ],
  "author": {
    "name": "Eric Blake",
    "email": "eblake@redhat.com",
    "time": "Tue Dec 01 22:20:58 2015 -0700"
  },
  "committer": {
    "name": "Markus Armbruster",
    "email": "armbru@redhat.com",
    "time": "Thu Dec 17 08:21:29 2015 +0100"
  },
  "message": "qapi: Move duplicate collision checks to schema check()\n\nWith the recent commit \u0027qapi: Detect collisions in C member\nnames\u0027, we have two different locations for detecting clashes -\none at parse time, and another at QAPISchema*.check() time.\nRemove all of the ad hoc parser checks, and delete associated\ncode (for example, the global check_member_clash() method is\nno longer needed).\n\nTesting this showed that the test union-bad-branch wasn\u0027t adding\nmuch: union-clash-branches also exposes the error message when\nbranches collide, and we\u0027ve recently fixed things to avoid an\nimplicit collision with max.  Likewise, the error for\nenum-clash-member changes to report our new detection of\nupper case in a value name, unless we modify the test to use\nall lower case.\n\nThe wording of several error messages has changed, but the\nchange is generally an improvement rather than a regression.\n\nNo change to generated code.\n\nSigned-off-by: Eric Blake \u003ceblake@redhat.com\u003e\nMessage-Id: \u003c1449033659-25497-15-git-send-email-eblake@redhat.com\u003e\nSigned-off-by: Markus Armbruster \u003carmbru@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "74a561afda02d15f7d11a00abdceebf13aad29ee",
      "old_mode": 33188,
      "old_path": "scripts/qapi.py",
      "new_id": "8edfd79c5220865fc76604e387ac2ef8ff595eda",
      "new_mode": 33188,
      "new_path": "scripts/qapi.py"
    },
    {
      "type": "modify",
      "old_id": "6b8b11273c5d866a96e18f4e8f8fbf63db70c2ad",
      "old_mode": 33188,
      "old_path": "tests/Makefile",
      "new_id": "69cef7760d7c8f64a0abbc01da4a3c8c06103c7b",
      "new_mode": 33188,
      "new_path": "tests/Makefile"
    },
    {
      "type": "modify",
      "old_id": "a475ab63437370f830ace301de694cd8ca214c3d",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/alternate-clash.err",
      "new_id": "604d8495eb055dfaaa1562502c7c418c4e691555",
      "new_mode": 33188,
      "new_path": "tests/qapi-schema/alternate-clash.err"
    },
    {
      "type": "modify",
      "old_id": "48bd1360e75af38f0a5b4db38d500c6f569f4acd",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/enum-clash-member.err",
      "new_id": "5403c785079479c95ce75180acab0a72702e31cc",
      "new_mode": 33188,
      "new_path": "tests/qapi-schema/enum-clash-member.err"
    },
    {
      "type": "modify",
      "old_id": "b7dc02a28d67d3145092f2a58e35505f15925fb9",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/enum-clash-member.json",
      "new_id": "b6928b8bfdc9c221d1ff7dfbc345bc9259e2b4ae",
      "new_mode": 33188,
      "new_path": "tests/qapi-schema/enum-clash-member.json"
    },
    {
      "type": "modify",
      "old_id": "2f0397a8a9260ef0333ce92e699056849b4c9874",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/flat-union-clash-member.err",
      "new_id": "2adf69755ab82a8efe666320be0ed785ed562e81",
      "new_mode": 33188,
      "new_path": "tests/qapi-schema/flat-union-clash-member.err"
    },
    {
      "type": "modify",
      "old_id": "f7a25a3b358396e027914c4466f96ae49da9ffa1",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/struct-base-clash-deep.err",
      "new_id": "e2d7943f2174e82f7588a0f4bb33ff05d0ba6abb",
      "new_mode": 33188,
      "new_path": "tests/qapi-schema/struct-base-clash-deep.err"
    },
    {
      "type": "modify",
      "old_id": "3a9f66b04d4e9466a5c9ca61b4f4160eea5ed3b2",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/struct-base-clash.err",
      "new_id": "c52f33d27bf316b3a3ac71234149bca6096dbd3e",
      "new_mode": 33188,
      "new_path": "tests/qapi-schema/struct-base-clash.err"
    },
    {
      "type": "delete",
      "old_id": "8822735561034dc2c1de4cae3b33db33ca7c0c78",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/union-bad-branch.err",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "d00491fd7e5bb6fa28c517a0bb32b8b506539d4d",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/union-bad-branch.exit",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "913aa38bc85209023d50bea27f2990acf6e18898",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/union-bad-branch.json",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/union-bad-branch.out",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "005c48d901509139fc96e578629b29b661fccd2e",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/union-clash-branches.err",
      "new_id": "e5b21135bb8538042e6337e7d0df3124c0298ff9",
      "new_mode": 33188,
      "new_path": "tests/qapi-schema/union-clash-branches.err"
    },
    {
      "type": "modify",
      "old_id": "31d135fb172ba119919a639d253b6a59638c4f91",
      "old_mode": 33188,
      "old_path": "tests/qapi-schema/union-clash-branches.json",
      "new_id": "3bece8c948b90ed57655d1dc37d941def6a5ebeb",
      "new_mode": 33188,
      "new_path": "tests/qapi-schema/union-clash-branches.json"
    }
  ]
}
