)]}'
{
  "log": [
    {
      "commit": "16a10608129ca9ce8ae04d21df1462f4d69ac018",
      "tree": "7608468856c53cbbb2ac3dfc917f4461d876e00a",
      "parents": [
        "f7c958e9c9c2dc65dceb94c246123031d5c749fb",
        "4b996983167f6e91e589a71da9738564a26f85d4"
      ],
      "author": {
        "name": "Andi Huber",
        "email": "ahuber@apache.org",
        "time": "Sun May 17 04:55:51 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun May 17 04:55:51 2026 +0200"
      },
      "message": "Merge pull request #3 from apache/infrastructure-ruleset-bot/default-branch-protection\n\n[INFRA] Set up default rulesets for default and release branches"
    },
    {
      "commit": "4b996983167f6e91e589a71da9738564a26f85d4",
      "tree": "7608468856c53cbbb2ac3dfc917f4461d876e00a",
      "parents": [
        "f7c958e9c9c2dc65dceb94c246123031d5c749fb"
      ],
      "author": {
        "name": "The Apache Software Foundation",
        "email": "root-asf-gitbox-commits@apache.org",
        "time": "Fri May 15 14:23:10 2026 -0500"
      },
      "committer": {
        "name": "The Apache Software Foundation",
        "email": "root-asf-gitbox-commits@apache.org",
        "time": "Fri May 15 14:23:10 2026 -0500"
      },
      "message": "Set up default protection ruleset for default and release branches"
    },
    {
      "commit": "f7c958e9c9c2dc65dceb94c246123031d5c749fb",
      "tree": "d7629c1b6ecbc6ae8175d7cd3467481a2394d0f9",
      "parents": [
        "56c2eb6667933f4362012a39a939c2953ec9819d"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Mon Jun 03 14:17:43 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:31:12 2024 +0100"
      },
      "message": "updates DomainAppDemo to create visits as well as pet owners/pets\n"
    },
    {
      "commit": "56c2eb6667933f4362012a39a939c2953ec9819d",
      "tree": "dbcf444839b7314982b36ee40f6c63520beb0918",
      "parents": [
        "64e79fd417351e551214c8de9434ea12e01c0cc6"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Mon Jun 03 14:16:46 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:31:12 2024 +0100"
      },
      "message": "adds Visit_persona\n\ncreates a random number of visits for each pet\n"
    },
    {
      "commit": "64e79fd417351e551214c8de9434ea12e01c0cc6",
      "tree": "fb8af770ac938088ec7b6bf1b3d335d28d39305e",
      "parents": [
        "691a73ea652e308075e1ecc80e1e7a6e3c58c439"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:15:53 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:30:50 2024 +0100"
      },
      "message": "adds sad case (cannot book visit in the past) as integ test\n"
    },
    {
      "commit": "691a73ea652e308075e1ecc80e1e7a6e3c58c439",
      "tree": "8417a58859b3420bc6bbc31e3c4308a2722a9df2",
      "parents": [
        "c4d5f7185eb9fb1f0ee24b93e893bdebbe06a735"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:15:07 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:30:50 2024 +0100"
      },
      "message": "adds happy case integ test for bookVisit\n"
    },
    {
      "commit": "c4d5f7185eb9fb1f0ee24b93e893bdebbe06a735",
      "tree": "ca311065da0e4b59ca0baa0a18fcc75e03d04752",
      "parents": [
        "c19057057cd1edb1d62d5d8c1ae75ce99ebc5e79"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:14:52 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:30:50 2024 +0100"
      },
      "message": "adds Bootstrap_IntegTest to check setup\n"
    },
    {
      "commit": "c19057057cd1edb1d62d5d8c1ae75ce99ebc5e79",
      "tree": "2c6c3b739ad337ab9f739cad50cbb83e027ef366",
      "parents": [
        "18c039aefea5fccb4fe46201505d9a2e8e875bdb"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:14:24 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:30:50 2024 +0100"
      },
      "message": "adds application-test.yml props\n\n... to set up schema in the in-memory database\n"
    },
    {
      "commit": "18c039aefea5fccb4fe46201505d9a2e8e875bdb",
      "tree": "2a6a13e3e8865bb653e3cc6eeb2594c8540505e6",
      "parents": [
        "c159a2df61dee1f0ce207edfb1dad702c6d7d9b6"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:14:04 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:30:50 2024 +0100"
      },
      "message": "adds VisitModuleIntegTestAbstract\n"
    },
    {
      "commit": "c159a2df61dee1f0ce207edfb1dad702c6d7d9b6",
      "tree": "7988e3095e93800cba019407926fb9d81bf2bfc0",
      "parents": [
        "21d0b22ad7316cfc81944c59986ec373edb7dc8b"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:13:50 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:30:50 2024 +0100"
      },
      "message": "adds maven dependencies on causeway integtestsupport-applib\n\n... and also eclipselink\n"
    },
    {
      "commit": "21d0b22ad7316cfc81944c59986ec373edb7dc8b",
      "tree": "0354f8ede9bcc2864c13bf1bf4de8f9022c6c581",
      "parents": [
        "7d2e106e6b8b2361299ca327b167206e1ae277e0"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:30:06 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Tue Jun 04 06:30:06 2024 +0100"
      },
      "message": "updates title of HomePageViewModel\n\nfixes title on home page\n"
    },
    {
      "commit": "7d2e106e6b8b2361299ca327b167206e1ae277e0",
      "tree": "a84f428a6c64741ff842b7b52cafac84865eaca3",
      "parents": [
        "238bfc4a8999855077f6627943f8daa79e3aa0e7"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Mon May 27 00:02:49 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Mon May 27 00:03:34 2024 +0100"
      },
      "message": "adds HomePageViewModel_bookVisit convenience action\n\nremoves comments\n"
    },
    {
      "commit": "238bfc4a8999855077f6627943f8daa79e3aa0e7",
      "tree": "269591ed17115b6582f63425c35d331defe040ea",
      "parents": [
        "ac532947cd6063195804ebeec8a13ebb75c25a22"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:52:01 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:55:01 2024 +0100"
      },
      "message": "adds VisitRepository#findByPetAndVisitAt\n"
    },
    {
      "commit": "ac532947cd6063195804ebeec8a13ebb75c25a22",
      "tree": "b6b5a5515aff8c8ff90125935b09a1eaa6f9a98d",
      "parents": [
        "996f7072c3f262287b3bdbd61456ee0cbde71126"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:33:51 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:35:53 2024 +0100"
      },
      "message": "adds columnOrder for HomePageViewModel#futureVisits\n"
    },
    {
      "commit": "996f7072c3f262287b3bdbd61456ee0cbde71126",
      "tree": "0a3916e7fc107baf4c2603e61f2d6edadeab789a",
      "parents": [
        "59c28d8cf508e2b0ae6dc3bf1115f7a864954586"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:33:33 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:35:28 2024 +0100"
      },
      "message": "updates layout for HomePageViewModel\n"
    },
    {
      "commit": "59c28d8cf508e2b0ae6dc3bf1115f7a864954586",
      "tree": "9ed24d25378b19d42fe2ff7701bd31523eb26469",
      "parents": [
        "3539ee4965509af2880548a3fc39e8fe074293a0"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:33:16 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:35:00 2024 +0100"
      },
      "message": "updates HomePageViewModel, adds futureVisits collection\n"
    },
    {
      "commit": "3539ee4965509af2880548a3fc39e8fe074293a0",
      "tree": "b94da2062ee5f472fecf606a2586f0f902ab25db",
      "parents": [
        "3e34fc096704199c35e77d7ad0698aa916afc78b"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:32:23 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 23:34:33 2024 +0100"
      },
      "message": "updates VisitRepository, adds findByVisitAfter\n"
    },
    {
      "commit": "3e34fc096704199c35e77d7ad0698aa916afc78b",
      "tree": "d5a48deac19354d5c6f1997f10540c91f1f40564",
      "parents": [
        "9844e5b4e9fea8afc50f1d932f349db7b41915c3"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 22:32:08 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 22:32:08 2024 +0100"
      },
      "message": "adds a subscriber to veto deletion if there are any visits for the owner\n"
    },
    {
      "commit": "9844e5b4e9fea8afc50f1d932f349db7b41915c3",
      "tree": "0a9d1905cc13c547cc09a8b107e8fdeea00c4b89",
      "parents": [
        "230b6a74b85d30cb30269bc3f318875d315ccc76"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 22:31:45 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 22:31:45 2024 +0100"
      },
      "message": "Updates PetOwner\u0027s delete action to fire a specific domain event\n"
    },
    {
      "commit": "230b6a74b85d30cb30269bc3f318875d315ccc76",
      "tree": "0c25879d551d278eb9501f1c71c6a81415298af9",
      "parents": [
        "1f853cc10645be73d6f20407087d898f6a8e1c2b"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 22:16:20 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 22:16:20 2024 +0100"
      },
      "message": "adds unit test for PetOwner_bookVisit\n\n... defaulting of param #1\n"
    },
    {
      "commit": "1f853cc10645be73d6f20407087d898f6a8e1c2b",
      "tree": "48649bc5770fe9662e54296fcc89e1ad9c44a296",
      "parents": [
        "9790f11a35319dd0e564273f6a628a34b718ede8"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 22:15:58 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 22:15:58 2024 +0100"
      },
      "message": "updates visit module\u0027s pom.xml with dependency on unittestsupport-applib\n"
    },
    {
      "commit": "9790f11a35319dd0e564273f6a628a34b718ede8",
      "tree": "dac6aee738a57d12d9a2d2369bd0992025c3cdd4",
      "parents": [
        "2484c756ba957e6ffca37e11d6ffce7969c2900b"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:25:08 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:41:44 2024 +0100"
      },
      "message": "updates PetOwner\u0027s layout, indicating where to render the \u0027visits\u0027 coll.\n"
    },
    {
      "commit": "2484c756ba957e6ffca37e11d6ffce7969c2900b",
      "tree": "5f5b3ba5761aa1069ae311a99c7ccdbd62b6b43d",
      "parents": [
        "746e85395ef5f7468646d889e42a0680fe3d875a"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:24:37 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:41:44 2024 +0100"
      },
      "message": "adds \u0027visits\u0027 mixin collection, to view visits of pets of a pet owner.\n"
    },
    {
      "commit": "746e85395ef5f7468646d889e42a0680fe3d875a",
      "tree": "9303bab4afc268f8b1d84ec8bdd51ccd560dd151",
      "parents": [
        "7ea3c08d04fef11b1e98f1e277ba73ae257498b0"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:41:29 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:41:44 2024 +0100"
      },
      "message": "adds PetOwner_bookVisit mixin action,  to allow visits to be booked\n\n\n\nrearranges method order is all\n"
    },
    {
      "commit": "7ea3c08d04fef11b1e98f1e277ba73ae257498b0",
      "tree": "ebdcaee4aa90be5793a604aaf1bf766e8d7cca6e",
      "parents": [
        "d8c64ecd4997e2bb98064aa80c1d689e8beff7ac"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:23:20 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "adds VisitRepository\n"
    },
    {
      "commit": "d8c64ecd4997e2bb98064aa80c1d689e8beff7ac",
      "tree": "e06ad8e02f13dfbea310a953e345b7aa4e99fe4f",
      "parents": [
        "441439ed99537f014e31bfe28e242e819c64c4b3"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 19:12:03 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "makes constructor public\n"
    },
    {
      "commit": "441439ed99537f014e31bfe28e242e819c64c4b3",
      "tree": "d0612a82580a65f5eb76b54bdf5afc7ef64d5e60",
      "parents": [
        "6837302ca6433b7185252dc17f4299a172d90fa0"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 17:41:10 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "adds Visit.png\n"
    },
    {
      "commit": "6837302ca6433b7185252dc17f4299a172d90fa0",
      "tree": "502102210979d0a0e1212371818d0c487facb48f",
      "parents": [
        "cbbe411e5ab299b23e05a05fff44c16c0e466c5f"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 17:41:02 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "adds Visit.columnOrder.txt\n"
    },
    {
      "commit": "cbbe411e5ab299b23e05a05fff44c16c0e466c5f",
      "tree": "c6c97cce6b9df5b4ebb7f7f8971b3daccc3e115c",
      "parents": [
        "4af219723fdb2e20f68eb7f114694e46b2e5389e"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 17:40:48 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "adds Visit.layout.xml\n"
    },
    {
      "commit": "4af219723fdb2e20f68eb7f114694e46b2e5389e",
      "tree": "183185c8c3da3608a0b9cba27dbc48309222d0fd",
      "parents": [
        "9f429911487f3c66ab08e71caa39000aa6c855a6"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 17:37:35 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "adds Visit entity\n"
    },
    {
      "commit": "9f429911487f3c66ab08e71caa39000aa6c855a6",
      "tree": "aa1da1e4a45d5da765cb629a1d618faf3ed2d1c5",
      "parents": [
        "6e6124e7237558b6423ea364660670e960746a98"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 17:17:38 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "adds spring import from application module to visit module\n"
    },
    {
      "commit": "6e6124e7237558b6423ea364660670e960746a98",
      "tree": "9f21a8f49ef6fc9671e4dac47f8342d2742c4838",
      "parents": [
        "8408eadfa543efad23ea5ce7a18e40a3f75ae604"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 17:17:25 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "adds maven dependency from application module to visit module\n"
    },
    {
      "commit": "8408eadfa543efad23ea5ce7a18e40a3f75ae604",
      "tree": "25068df46ee8a9e54e0a25b3b14bc863d83f8933",
      "parents": [
        "403951d0340ce79e03c52129ef76f7eae86dd69f"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 17:17:11 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "adds Spring import  from visit module to petowner module\n"
    },
    {
      "commit": "403951d0340ce79e03c52129ef76f7eae86dd69f",
      "tree": "38dc5ee575bc14805e9e1b304feca4c171e5001c",
      "parents": [
        "d4da7fdc3c60f85ebbf367feb9dd8f721ba9bdf5"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 17:16:55 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "adds maven dependency from visit module to petowner module\n"
    },
    {
      "commit": "d4da7fdc3c60f85ebbf367feb9dd8f721ba9bdf5",
      "tree": "2c9826d14db9ea06ee9b85814aaee9f93e877222",
      "parents": [
        "71dc9847539a3c6a68427bbe685ccd66aa847864"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:29:39 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 20:31:07 2024 +0100"
      },
      "message": "Adds \u0027visit\u0027 namespace to existing petowners security role.\n\n... and renames petowner superuser role\n"
    },
    {
      "commit": "71dc9847539a3c6a68427bbe685ccd66aa847864",
      "tree": "481b49b2570b50b80b0a7984cc7cf7b84d8d578d",
      "parents": [
        "8b1cbf661d431b3ab465840bdd58668c85b1bd58"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:35:37 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:35:50 2024 +0100"
      },
      "message": "updates application.properties to set up \u0027visit\u0027 DB schema\n"
    },
    {
      "commit": "8b1cbf661d431b3ab465840bdd58668c85b1bd58",
      "tree": "6f4081309fb8b41872c89597d79971f6f0ab325e",
      "parents": [
        "f10d0a452b84b3101d73db2c62abf2427b7e4c0d"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:34:34 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:35:50 2024 +0100"
      },
      "message": "adds VisitModule (spring configuration) defining the visit module\n"
    },
    {
      "commit": "f10d0a452b84b3101d73db2c62abf2427b7e4c0d",
      "tree": "04d69f15f2d459484a6e7fcfc1331d48316a8b8c",
      "parents": [
        "d6a18f97584bc71e8e9bd0dce792f73bc3355be2"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:35:11 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:35:50 2024 +0100"
      },
      "message": "updates top-level pom.xml to include new visit module as child module\n"
    },
    {
      "commit": "d6a18f97584bc71e8e9bd0dce792f73bc3355be2",
      "tree": "c6b6ffdaaea52ac9a846eb2fa3b8dfa15cb1e238",
      "parents": [
        "451f69a5421280baa3ca4ea9d2e5c4a8029b43f7"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:34:08 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:34:08 2024 +0100"
      },
      "message": "adds pom.xml for visit module itself\n"
    },
    {
      "commit": "451f69a5421280baa3ca4ea9d2e5c4a8029b43f7",
      "tree": "a90f6684d9db06dba4c5b64423fae2334c7547f5",
      "parents": [
        "359bf5c443dc7a2bd1107b4cde410e1163fe2dbf"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:33:39 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 16:33:39 2024 +0100"
      },
      "message": "defines module-visit as module in top level pom.xml\n"
    },
    {
      "commit": "359bf5c443dc7a2bd1107b4cde410e1163fe2dbf",
      "tree": "309edc5d779f44daec4403c9dab2f2c5d2784da0",
      "parents": [
        "578a1c7743c111371d5a23ca9cceb760e71dbb0d"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:42:08 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:42:08 2024 +0100"
      },
      "message": "adds iconname to Pet\n\n... to dynamically specify the icon.\n"
    },
    {
      "commit": "578a1c7743c111371d5a23ca9cceb760e71dbb0d",
      "tree": "cd2c2d5e5e5172d0a11382d2934e5887e021baa0",
      "parents": [
        "c08b831692cdff0b3e3d085d1f24e7224b6e1d7a"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:29:30 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:40:39 2024 +0100"
      },
      "message": "adds Pet-xxx.png for each species\n\n... and makes Pet.png more generic.\n"
    },
    {
      "commit": "c08b831692cdff0b3e3d085d1f24e7224b6e1d7a",
      "tree": "7219b2a961f05cb65344f1cf1dad6e33354e132a",
      "parents": [
        "29c9ec5d124b153e79304d5b3c4dbf412386838c"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:16:13 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:38:06 2024 +0100"
      },
      "message": "updates PetOwner#pets.columnOrder.txt with new properties\n"
    },
    {
      "commit": "29c9ec5d124b153e79304d5b3c4dbf412386838c",
      "tree": "b99a339bdba0863247849fb372f4ae58ea06ba8d",
      "parents": [
        "51dda9eb16fafe28658b3e5800b5b29cc29cbc5d"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:16:00 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:38:01 2024 +0100"
      },
      "message": "updates Pet.columnOrder.txt with new properties\n"
    },
    {
      "commit": "51dda9eb16fafe28658b3e5800b5b29cc29cbc5d",
      "tree": "3b07d80eeade42ac6021ac5b3fc5162e72b568cb",
      "parents": [
        "15317b065a6e739815cc25a605a2f2524eb716f3"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:49:38 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:37:40 2024 +0100"
      },
      "message": "adds notes property for Pet\n"
    },
    {
      "commit": "15317b065a6e739815cc25a605a2f2524eb716f3",
      "tree": "356f9eee06d667a9d7714725ab94cf5410cff1fb",
      "parents": [
        "a39e6c5d1724e71901c9daa8e298e852d33d2984"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:49:03 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:37:27 2024 +0100"
      },
      "message": "updates PetOwner_persona fixture, to choose species at random\n"
    },
    {
      "commit": "a39e6c5d1724e71901c9daa8e298e852d33d2984",
      "tree": "b0a35d3405b17380fcf193f6f21915543a2751da",
      "parents": [
        "988e0913a5c5cb62d441b7e89962a8799b16b73f"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:48:44 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:37:00 2024 +0100"
      },
      "message": "updates addPet, to set the species of each\n"
    },
    {
      "commit": "988e0913a5c5cb62d441b7e89962a8799b16b73f",
      "tree": "56a592cdca6882ca6ae7161ad0d38bddf660b979",
      "parents": [
        "5f0ee193e1b885cd967dcddb475dd2f699d53dfa"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:30:14 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:35:42 2024 +0100"
      },
      "message": "adds a PetSpecies property to Pet\n\nmoves PetSpecies to correct package\n"
    },
    {
      "commit": "5f0ee193e1b885cd967dcddb475dd2f699d53dfa",
      "tree": "84d0ad9dc7f41f38aaaa0099443a23b403301eb8",
      "parents": [
        "d74562e00454414491653c858958305118a8a2d3"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:40:59 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:35:30 2024 +0100"
      },
      "message": "adds PetSpecies enum\n"
    },
    {
      "commit": "d74562e00454414491653c858958305118a8a2d3",
      "tree": "d38ebbd8220781807213b33deec91852f5c7928a",
      "parents": [
        "b9333db88327bdc50fd34419028f3e04807c49ad"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:16:45 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 14:17:15 2024 +0100"
      },
      "message": "adds validation to check that each owner\u0027s pet has a different name\n"
    },
    {
      "commit": "b9333db88327bdc50fd34419028f3e04807c49ad",
      "tree": "16ec3176c5ecb43417b28a628f444871cf618442",
      "parents": [
        "8c395624c7eae5429999bdfa7e1d112ba3114bb1"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:33:47 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:34:52 2024 +0100"
      },
      "message": "updates PetOwner_persona to add pets for each owner\n"
    },
    {
      "commit": "8c395624c7eae5429999bdfa7e1d112ba3114bb1",
      "tree": "61874c43ffef2b8164fa302ccbbec0e646fc8149",
      "parents": [
        "4ebe45133fa5beebee8b3359286b1042ecc1bf70"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:52:14 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "adds \u0027removePet\u0027 action\n"
    },
    {
      "commit": "4ebe45133fa5beebee8b3359286b1042ecc1bf70",
      "tree": "ba58ecc72f272bb208628bfea20d79e5e6211015",
      "parents": [
        "33a2d902f40a953c2fbd6e38f11f4955e6b94322"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:51:17 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "adds \u0027addPet\u0027 action\n"
    },
    {
      "commit": "33a2d902f40a953c2fbd6e38f11f4955e6b94322",
      "tree": "f68c0ab8c6c2ec99ef98c06ef6eaa09979178dfb",
      "parents": [
        "d8dfa2bd2e66d4fc8b405832bb755b6f0c10560e"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 11:57:03 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "adds .columnOrder.txt for pets collection in PetOwner\n"
    },
    {
      "commit": "d8dfa2bd2e66d4fc8b405832bb755b6f0c10560e",
      "tree": "6a4747ac6138bca342c9e4a7850ff62a25f93d2e",
      "parents": [
        "695600cd9805e5482caef7442f7ae4dd8ecc3b27"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 11:56:43 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "positions \u0027pets\u0027 collection in layout.xml\n"
    },
    {
      "commit": "695600cd9805e5482caef7442f7ae4dd8ecc3b27",
      "tree": "d09abd4fddbcbc6e1ba46a2f3bb06affe08bb7ee",
      "parents": [
        "7b8125308e25d98c8e06969e30d25ff8eec2d72d"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 11:56:21 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "adds pets collection to PetOwner\n"
    },
    {
      "commit": "7b8125308e25d98c8e06969e30d25ff8eec2d72d",
      "tree": "74a8e73cfe8c8b1b03cc3a277583a9557ce9e2d8",
      "parents": [
        "a16e71e7162ad0986b42ec3415c92c36ee48041a"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:04:01 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "adds Pet.columnOrder.txt\n"
    },
    {
      "commit": "a16e71e7162ad0986b42ec3415c92c36ee48041a",
      "tree": "797ce7717ed181e312568c5af5e045f75e060ff7",
      "parents": [
        "e6ad5a7541a2e6292f3748da54b67c45b2b59509"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:26:25 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "adds icon .png for Pet\n"
    },
    {
      "commit": "e6ad5a7541a2e6292f3748da54b67c45b2b59509",
      "tree": "51ee5631b7d42c39343fa51e57471dd7456e2963",
      "parents": [
        "20970f4575a06d7ef147e8d6839defa7fb89f498"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:01:50 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "adds Pet.layout.xml\n"
    },
    {
      "commit": "20970f4575a06d7ef147e8d6839defa7fb89f498",
      "tree": "db12d3feeda4bd88a15bf55de7be41cf1a0ede51",
      "parents": [
        "9f43e2d971b8df1430d9e881d694321feadc16b5"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:49:25 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "uses the name of the pet as its title\n"
    },
    {
      "commit": "9f43e2d971b8df1430d9e881d694321feadc16b5",
      "tree": "6737d335bafdc2bdeadb134d6eaaaa384d498df2",
      "parents": [
        "ad951805917016e441d588860daa92f53166617c"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:04:07 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "updates PetOwner module to delete all Pets.\n"
    },
    {
      "commit": "ad951805917016e441d588860daa92f53166617c",
      "tree": "90745a32104fd5a051a989fdbe9ac40278fc1475",
      "parents": [
        "3deb1f80aa7b640d0edbdfef567cae8c7d474fa2"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:01:10 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 13:05:06 2024 +0100"
      },
      "message": "adds Pet entity\n\n\n"
    },
    {
      "commit": "3deb1f80aa7b640d0edbdfef567cae8c7d474fa2",
      "tree": "5a3239013ecf2705642ae60200f75d36afb35a44",
      "parents": [
        "4015031736ed791146296e4b222a48ad5297bd4b"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 11:34:10 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:13:12 2024 +0100"
      },
      "message": "adds PetName meta-annotation\n"
    },
    {
      "commit": "4015031736ed791146296e4b222a48ad5297bd4b",
      "tree": "2702d01432efff78c3aea96638e664a52b522991",
      "parents": [
        "8ea0e207a57261ffedf70c4844d5f89454f6882c"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:12:12 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:13:12 2024 +0100"
      },
      "message": "replaces PetOwner.png\n\n... with something more representative (https://icons8.com/icons/set/person--icons8)\n"
    },
    {
      "commit": "8ea0e207a57261ffedf70c4844d5f89454f6882c",
      "tree": "c4c9d546b2471893f80401d33c75ad83dd27f07c",
      "parents": [
        "6384c8668effeccf5f3821a0aef5d16667c6c16d"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:17:58 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 12:13:12 2024 +0100"
      },
      "message": "organizes imports\n"
    },
    {
      "commit": "6384c8668effeccf5f3821a0aef5d16667c6c16d",
      "tree": "a337f9d3f6ac92af90a7f61132ccc5d56c2beee5",
      "parents": [
        "6cc9f27f286a9a68e20f730901293f1458b45410"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:17:35 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:38:49 2024 +0100"
      },
      "message": "associates \u0027delete\u0027 action with \u0027identity\u0027 fieldset\n"
    },
    {
      "commit": "6cc9f27f286a9a68e20f730901293f1458b45410",
      "tree": "65593aaac26a9d71f78d2bd4e7da27482706cd2a",
      "parents": [
        "3aeaff3b8cd352adc5d9bfe7e36c76f459213be5"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:16:40 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:38:49 2024 +0100"
      },
      "message": "associates \u0027updateAttachment\u0027 action with \u0027name\u0027 property using .layout.xml\n\nalso specifies the position of its button on the panel (rather than under the property)\n"
    },
    {
      "commit": "3aeaff3b8cd352adc5d9bfe7e36c76f459213be5",
      "tree": "ebebc2441f6afe904759efd4538b9bd13b24e622",
      "parents": [
        "24d92c6e40e29e01133424af58db75ad40b86c08"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:12:56 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:38:49 2024 +0100"
      },
      "message": "associates \u0027updateName\u0027 action with \u0027name\u0027 property using .layout.xml\n"
    },
    {
      "commit": "24d92c6e40e29e01133424af58db75ad40b86c08",
      "tree": "bff3d190577e78eee3f9b16d69553b9f9dc5f6fb",
      "parents": [
        "eef8300df068be0c133e537fbc66439ec66fc273"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:26:26 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:38:49 2024 +0100"
      },
      "message": "specifies positioning of framework-provided props in metadata fieldset\n\nspecifically, logicalTypeName and objectIdentifier\n"
    },
    {
      "commit": "eef8300df068be0c133e537fbc66439ec66fc273",
      "tree": "ced697b7a6c4077c0e85c664845e10c77c95a40b",
      "parents": [
        "77b5661463c1a8fc204ca8ffc62b965a660ca70b"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:23:24 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:38:49 2024 +0100"
      },
      "message": "associates version property with its fieldset using .layout.xml\n\nannotates \u0027version\u0027 with @Property instead\n\n(need either @Property or @PropertyLayout to be picked up)\n"
    },
    {
      "commit": "77b5661463c1a8fc204ca8ffc62b965a660ca70b",
      "tree": "9d624c1c6af2f3a364d4e31f719913bbc548226a",
      "parents": [
        "1ec0315e0eb203a04854853c2de38b35b86c1ea1"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:14:40 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:38:49 2024 +0100"
      },
      "message": "associates attachment property with its fieldset using .layout.xml\n"
    },
    {
      "commit": "1ec0315e0eb203a04854853c2de38b35b86c1ea1",
      "tree": "e9ae913eb4016e09a48730787966989c8f40bfa3",
      "parents": [
        "51ab36f53197d9c6ba54eb730bafd34e73431cfb"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:11:59 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:11:59 2024 +0100"
      },
      "message": " associates daysSinceLastVisit property with its fieldset using .layout.xml\n"
    },
    {
      "commit": "51ab36f53197d9c6ba54eb730bafd34e73431cfb",
      "tree": "7f5977c135dd7a940ab574dad4c41290d5eea288",
      "parents": [
        "c364a3fb7b5141d4c38ba60037ea913e3f963776"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:11:16 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:11:16 2024 +0100"
      },
      "message": "associates lastVisit property with its fieldset using .layout.xml\n"
    },
    {
      "commit": "c364a3fb7b5141d4c38ba60037ea913e3f963776",
      "tree": "89f0aa38f96aaecb080fee62e96a3644a202b8a5",
      "parents": [
        "0bbb055598de54085ee9e5316516e3d80bc692fb"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:10:13 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:10:13 2024 +0100"
      },
      "message": "associates notes property with its fieldset using .layout.xml\n"
    },
    {
      "commit": "0bbb055598de54085ee9e5316516e3d80bc692fb",
      "tree": "6df74eeba0b6b98c1d4c7c68f32cd56e71f9ff6f",
      "parents": [
        "bd57a8889cf6d37091d4dd67fd65bc4721c2836d"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:09:21 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:09:21 2024 +0100"
      },
      "message": "associates emailAddress property with its fieldset using .layout.xml\n"
    },
    {
      "commit": "bd57a8889cf6d37091d4dd67fd65bc4721c2836d",
      "tree": "3dbda4440f75be528ec276d0df0375a3a4b3089c",
      "parents": [
        "ded82342906e4932163d03a28183cfc3f2aa529c"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:08:23 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:08:45 2024 +0100"
      },
      "message": "associates telephoneNumber property with its fieldset using .layout.xml\n"
    },
    {
      "commit": "ded82342906e4932163d03a28183cfc3f2aa529c",
      "tree": "47f9edaedfedf1b90adccb7bc914a366a5e5f981",
      "parents": [
        "9824b3187b5346a4eeab616d02ed9382e9e7d4e8"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:07:22 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:08:45 2024 +0100"
      },
      "message": "associates knownAs property with its fieldset using .layout.xml\n\n"
    },
    {
      "commit": "9824b3187b5346a4eeab616d02ed9382e9e7d4e8",
      "tree": "165b3d03bb24d7fa4cbc6e455b3392a3bd7ca961",
      "parents": [
        "e393e9b16696163c6ebda88d4020550025c29624"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 09:47:36 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 10:08:45 2024 +0100"
      },
      "message": "associates name property with its fieldset using .layout.xml\n\n"
    },
    {
      "commit": "e393e9b16696163c6ebda88d4020550025c29624",
      "tree": "3aa6440dbe29e6f2ee5bd17f8cce061ae5ccf80e",
      "parents": [
        "c9fbaad083208afca3727cc042cd3dcf647f89cf"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 16:18:54 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 09:22:06 2024 +0100"
      },
      "message": "updates PetOwners#create to use new value type\n\n"
    },
    {
      "commit": "c9fbaad083208afca3727cc042cd3dcf647f89cf",
      "tree": "8c92b3959d7fa39a5e8060db58066417dc1e8b20",
      "parents": [
        "057cf83ef6e5030b448113bf5e28fd24450025bf"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 09:21:53 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 09:22:06 2024 +0100"
      },
      "message": "updates PetOwner#emailAddress to use new value type\n\n\nChanges optionality of EmailAddress\n\nreorgs imports of PetOwner\n"
    },
    {
      "commit": "057cf83ef6e5030b448113bf5e28fd24450025bf",
      "tree": "c46ce315f78858c6a056bcd5c9c0d2af5f8de1a9",
      "parents": [
        "60a489273e440b6dcb135c91bce2f49deb5ab106"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 09:17:10 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 09:19:36 2024 +0100"
      },
      "message": "adds EmailAddressValueSemantics\n\nAdds EmaulAddressValueSemantics\n\n... which tells Causeway how to interact with properties of type EmailAddress\n"
    },
    {
      "commit": "60a489273e440b6dcb135c91bce2f49deb5ab106",
      "tree": "154189674e8002473ccd3a937d97530338cb095a",
      "parents": [
        "aedd258f0a9b9b952b96fb51fff8ae7df74330c1"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 09:16:43 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sun May 26 09:19:03 2024 +0100"
      },
      "message": "Adds EmailAddress value type\n\nAdds EmailAddress value type\n"
    },
    {
      "commit": "aedd258f0a9b9b952b96fb51fff8ae7df74330c1",
      "tree": "ca3f48b3962f0644914ebc4c5d4429db8988f932",
      "parents": [
        "9d9fbee3e8850cfcae3683ebaeebac4fd87cc9e9"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:35:39 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:35:39 2024 +0100"
      },
      "message": "Updates ActionLayout#describedAs text, as constant has moved to Name meta-annotation\n"
    },
    {
      "commit": "9d9fbee3e8850cfcae3683ebaeebac4fd87cc9e9",
      "tree": "1399e2b545cac9717d3dcdb6c868bf10df77d9fb",
      "parents": [
        "b398464983c4728958c6bf40f537791e38144e1e"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:33:28 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:33:28 2024 +0100"
      },
      "message": "Removes validation for PetOwner#updateName\n\nno longer needed, handled by the @Name meta-annotation\n"
    },
    {
      "commit": "b398464983c4728958c6bf40f537791e38144e1e",
      "tree": "fbbb3d23191a5355d0e91f9040afb7a933ddd27a",
      "parents": [
        "8e6d1b698bd38cc1cad294c9894da9403888ca70"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:30:54 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:32:23 2024 +0100"
      },
      "message": "Adds a mustSatisfy Specification to Name meta-annotation\n"
    },
    {
      "commit": "8e6d1b698bd38cc1cad294c9894da9403888ca70",
      "tree": "1d4dd7724c686c35c06d1504e5141db4269b1f16",
      "parents": [
        "ca6382ae2d365412bd88d0cb3ac31f63d65bc9b4"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:25:18 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:25:18 2024 +0100"
      },
      "message": "Updates PhoneNumber meta-annotation, adds regex validation\n"
    },
    {
      "commit": "ca6382ae2d365412bd88d0cb3ac31f63d65bc9b4",
      "tree": "9bce2102235110ec2cfddf36101cd9fe33d73808",
      "parents": [
        "6e03c4fc489bb98aa32ce20133f1911d91f93a74"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:10:58 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:14:51 2024 +0100"
      },
      "message": "Annotates telephoneNumber property and param with meta-annotation\n"
    },
    {
      "commit": "6e03c4fc489bb98aa32ce20133f1911d91f93a74",
      "tree": "8ee72f293cf48bbb846f16f71c5b50eb0d348852",
      "parents": [
        "0870f76b292a16cac386f58eede2c2c0a537ce89"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:06:57 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:14:46 2024 +0100"
      },
      "message": "Defines PhoneNumber meta-annotation\n"
    },
    {
      "commit": "0870f76b292a16cac386f58eede2c2c0a537ce89",
      "tree": "d1c600fbc1b419a90c1b9e677ffd816d44b6e2ee",
      "parents": [
        "0eec2602e96dd708897ddc76b8c12edaa706ebc5"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:46:02 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:14:34 2024 +0100"
      },
      "message": "Updates .columnOrder.txt for new property\n"
    },
    {
      "commit": "0eec2602e96dd708897ddc76b8c12edaa706ebc5",
      "tree": "146d410ff3fe55cd0876e610888b7e4714438116",
      "parents": [
        "441ac5e04cd4313667d549a04bb56ab038eaedb0"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:45:42 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 15:14:21 2024 +0100"
      },
      "message": "adds PetOwner#getDaysSinceLastVisit derived property\n"
    },
    {
      "commit": "441ac5e04cd4313667d549a04bb56ab038eaedb0",
      "tree": "811086f0aaac91f7c9d057242976f079a850df1a",
      "parents": [
        "87dfaf7dbe03e833e6d43a51491e86008230eef9"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:30:44 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:30:44 2024 +0100"
      },
      "message": "Injects ClockService into PetOwner\n"
    },
    {
      "commit": "87dfaf7dbe03e833e6d43a51491e86008230eef9",
      "tree": "521fd2804e417dc08efe60c90294638889d12ed5",
      "parents": [
        "1ad05291748a96bf8cbeffb0f747f08e7ef6c054"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:11:58 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:11:58 2024 +0100"
      },
      "message": "Resets prompt styles back to their defaults\n"
    },
    {
      "commit": "1ad05291748a96bf8cbeffb0f747f08e7ef6c054",
      "tree": "d3fa4fc1939348dbff794eb93df39f4db45fa210",
      "parents": [
        "2ef4a89093d50ff4bc085fae2b2eea6cfb1ac459"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:08:23 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:08:23 2024 +0100"
      },
      "message": "changes the default prompt style\n"
    },
    {
      "commit": "2ef4a89093d50ff4bc085fae2b2eea6cfb1ac459",
      "tree": "90911c19be75f45ca68476ecdf0e928ecfe9a651",
      "parents": [
        "da9d60f4366b9e6f2f2e67fdf300796fa2e7cce4"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:05:06 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:05:06 2024 +0100"
      },
      "message": "Comments out promptStyle for PetOwner#updateName\n"
    },
    {
      "commit": "da9d60f4366b9e6f2f2e67fdf300796fa2e7cce4",
      "tree": "630d8cce0735a833899930f9ff58a88d6b531b26",
      "parents": [
        "50013c0ba4d058766ba12c43231917e24356f890"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:01:22 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 14:01:22 2024 +0100"
      },
      "message": "Comments out promptStyle for PetOwners#create\n"
    },
    {
      "commit": "50013c0ba4d058766ba12c43231917e24356f890",
      "tree": "6b9abf886b1505a5d9f5d5b1054f2abc4e0aa4f4",
      "parents": [
        "54436b6f28784a9f5641eec1db73413eb05d7644"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 13:36:38 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 13:42:56 2024 +0100"
      },
      "message": "Updates PetOwner_persona builder also\n"
    },
    {
      "commit": "54436b6f28784a9f5641eec1db73413eb05d7644",
      "tree": "beed700cfa62005f4d281b97a5b5510b83694645",
      "parents": [
        "25c5cd06f224e8bc871216592bb05c1660557781"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 13:36:19 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 13:42:28 2024 +0100"
      },
      "message": "Updates PetOwners#create to specify additional details.\n"
    },
    {
      "commit": "25c5cd06f224e8bc871216592bb05c1660557781",
      "tree": "a1ea05e4b03114c1e753fdc8f10387b12f9abb1a",
      "parents": [
        "7c668160d4fb6c8c41a94076bc0d730c4df9cdd3"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 13:35:28 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 13:42:28 2024 +0100"
      },
      "message": "adds HomePageViewModel#petOwners.colunmOrder.txt\n"
    },
    {
      "commit": "7c668160d4fb6c8c41a94076bc0d730c4df9cdd3",
      "tree": "86531e46f73714742ec2ce95a6b2ee396bac114d",
      "parents": [
        "9a5a85c3a4f54ba3ca55bcbffc6dcb6afb5817f0"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 06:34:02 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 13:42:28 2024 +0100"
      },
      "message": "renames \u0027getObjects\u0027 collection of HomePageViewModel to \u0027getPetOwners\u0027\n"
    },
    {
      "commit": "9a5a85c3a4f54ba3ca55bcbffc6dcb6afb5817f0",
      "tree": "812d23f1d22d9ea5f834531973fa85056033b64d",
      "parents": [
        "0ff89b40642115e979482e070a7f8ab0e063cf60"
      ],
      "author": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 06:33:05 2024 +0100"
      },
      "committer": {
        "name": "Dan Haywood",
        "email": "dan@haywood-associates.co.uk",
        "time": "Sat May 25 13:42:28 2024 +0100"
      },
      "message": "updates title of HomePageViewModel\n"
    }
  ],
  "next": "0ff89b40642115e979482e070a7f8ab0e063cf60"
}
