)]}'
{
  "commit": "b9044c888097757c36933062f27b5f5ee103ee5f",
  "tree": "b07722231a9cf0fd3c0b81486bd637e11cbd7b6b",
  "parents": [
    "3bb23219009a98643a562b1e59e3a4080f422c51"
  ],
  "author": {
    "name": "Lorenz Brun",
    "email": "lorenz@monogon.tech",
    "time": "Tue Aug 24 11:59:47 2021 +0200"
  },
  "committer": {
    "name": "Lorenz Brun",
    "email": "lorenz@monogon.tech",
    "time": "Tue Aug 24 16:12:52 2021 +0000"
  },
  "message": "m/p/devicemapper: make parameter encoding part of package\n\nThe DM kernel interface gets a single parameter string for each DM\ntarget in a table but internally the kernel immediately decodes it into\nan argv-style list of string arguments. Because everything needs to do\nit and it can be quite hard to get right, let\u0027s make it part of the\ndevicemapper package. Properly encoding this also means you get\nactionable errors when you pass invalid data instead of weird kernel\nerrors or misbehavior.\n\nChange-Id: I8060871a7459183c0395e5e4e8aac517544b2e87\nReviewed-on: https://review.monogon.dev/c/monogon/+/309\nReviewed-by: Sergiusz Bazanski \u003cserge@monogon.tech\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d6ed541e8c47786479a66f37bab886b68d0fc1c5",
      "old_mode": 33188,
      "old_path": "metropolis/node/core/localstorage/crypt/crypt.go",
      "new_id": "613ebea11d420dd651e9507106b01d351dee522c",
      "new_mode": 33188,
      "new_path": "metropolis/node/core/localstorage/crypt/crypt.go"
    },
    {
      "type": "modify",
      "old_id": "9e66a7e7c100eace2dcc1b68b41be9fabac77159",
      "old_mode": 33188,
      "old_path": "metropolis/pkg/devicemapper/BUILD.bazel",
      "new_id": "e0dca24fdb859cfccf51b9b12c68baf03bdb9e72",
      "new_mode": 33188,
      "new_path": "metropolis/pkg/devicemapper/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "05e69344d4a15656fad4271ed3c9411408198aef",
      "new_mode": 33188,
      "new_path": "metropolis/pkg/devicemapper/ctype.go"
    },
    {
      "type": "modify",
      "old_id": "58076763711610d84278154eb6cffd18f6e80fcf",
      "old_mode": 33188,
      "old_path": "metropolis/pkg/devicemapper/devicemapper.go",
      "new_id": "9b560e6f58f08bb65c4795bd81321a7d7fd453de",
      "new_mode": 33188,
      "new_path": "metropolis/pkg/devicemapper/devicemapper.go"
    }
  ]
}
