{
  "_class" : "hudson.model.FreeStyleBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "com.cloudbees.jenkins.GitHubPushCause",
          "shortDescription" : "Started by GitHub push by sarbian"
        }
      ]
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "refs/remotes/origin/dev" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 21,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "6b817fc57c564835ed653e005e14b28ea59e7629",
            "branch" : [
              {
                "SHA1" : "6b817fc57c564835ed653e005e14b28ea59e7629",
                "name" : "refs/remotes/origin/dev"
              }
            ]
          },
          "revision" : {
            "SHA1" : "6b817fc57c564835ed653e005e14b28ea59e7629",
            "branch" : [
              {
                "SHA1" : "6b817fc57c564835ed653e005e14b28ea59e7629",
                "name" : "refs/remotes/origin/dev"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "6b817fc57c564835ed653e005e14b28ea59e7629",
        "branch" : [
          {
            "SHA1" : "6b817fc57c564835ed653e005e14b28ea59e7629",
            "name" : "refs/remotes/origin/dev"
          }
        ]
      },
      "remoteUrls" : [
        "https://github.com/sarbian/ModuleManager.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#21",
  "duration" : 5554,
  "estimatedDuration" : 6498,
  "executor" : None,
  "fullDisplayName" : "ModuleManager-Dev #21",
  "id" : "21",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 21,
  "queueId" : 101,
  "result" : "FAILURE",
  "timestamp" : 1505495559469,
  "url" : "https://ksp.sarbian.com/jenkins/user/momtchil/my-views/view/all/job/ModuleManager-Dev/21/",
  "builtOn" : "",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/ModuleManagerTests.csproj",
          "ModuleManager/Command.cs",
          "ModuleManager/MMPatchLoader.cs",
          "ModuleManager/CommandParser.cs",
          "ModuleManager/ModuleManager.csproj",
          "ModuleManagerTests/CommandParserTest.cs"
        ],
        "commitId" : "a9a990d7f119d0d2d30f50f85a10d8398d27c2b1",
        "timestamp" : 1505358686000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Pull Command and ParseCommand out of MMPatchLoader\u000aWould be nice if enums allowed static methods\u000a",
        "date" : "2017-09-13 20:11:26 -0700",
        "id" : "a9a990d7f119d0d2d30f50f85a10d8398d27c2b1",
        "msg" : "Pull Command and ParseCommand out of MMPatchLoader",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/ModuleManager.csproj"
          },
          {
            "editType" : "add",
            "file" : "ModuleManager/Command.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          },
          {
            "editType" : "add",
            "file" : "ModuleManager/CommandParser.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/ModuleManagerTests.csproj"
          },
          {
            "editType" : "add",
            "file" : "ModuleManagerTests/CommandParserTest.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/ModuleManagerTests.csproj",
          "ModuleManagerTests/Extensions/ConfigNodeExtensionsTest.cs",
          "ModuleManager/MMPatchLoader.cs",
          "ModuleManager/ModuleManager.csproj",
          "ModuleManager/Extensions/ConfigNodeExtensions.cs"
        ],
        "commitId" : "b43f79b20c2759797aa1ad6323331d3e5e834b85",
        "timestamp" : 1505358686000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Extract ShallowCopy\u000a\"this\" is the node you're copying to so that the extension method is \u000aonly modifying \"its\" node\u000a",
        "date" : "2017-09-13 20:11:26 -0700",
        "id" : "b43f79b20c2759797aa1ad6323331d3e5e834b85",
        "msg" : "Extract ShallowCopy",
        "paths" : [
          {
            "editType" : "add",
            "file" : "ModuleManager/Extensions/ConfigNodeExtensions.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/ModuleManagerTests.csproj"
          },
          {
            "editType" : "add",
            "file" : "ModuleManagerTests/Extensions/ConfigNodeExtensionsTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/ModuleManager.csproj"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "TestUtilsTests/UrlBuilderTest.cs",
          "TestUtils/URLBuilder.cs"
        ],
        "commitId" : "534eee2d6cc93d7e3bf6a8899e201f674c957cb2",
        "timestamp" : 1505358686000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Don't create duplicates in UrlBuilder\u000a",
        "date" : "2017-09-13 20:11:26 -0700",
        "id" : "534eee2d6cc93d7e3bf6a8899e201f674c957cb2",
        "msg" : "Don't create duplicates in UrlBuilder",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "TestUtilsTests/UrlBuilderTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "TestUtils/URLBuilder.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/ModuleManagerTests.csproj",
          "ModuleManager/Collections/ArrayEnumerator.cs",
          "ModuleManager/ModuleManager.csproj",
          "ModuleManagerTests/Collections/ArrayEnumeratorTest.cs"
        ],
        "commitId" : "24f21435b3efc6e0064de654a679ec8d5afba2d3",
        "timestamp" : 1505362248000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Add ArrayEnumerator\u000aEnumerates arrays in a garbage-free way\u000a",
        "date" : "2017-09-13 21:10:48 -0700",
        "id" : "24f21435b3efc6e0064de654a679ec8d5afba2d3",
        "msg" : "Add ArrayEnumerator",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/ModuleManager.csproj"
          },
          {
            "editType" : "add",
            "file" : "ModuleManagerTests/Collections/ArrayEnumeratorTest.cs"
          },
          {
            "editType" : "add",
            "file" : "ModuleManager/Collections/ArrayEnumerator.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/ModuleManagerTests.csproj"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/ModuleManagerTests.csproj",
          "ModuleManagerTests/PatchListTest.cs",
          "ModuleManager/PatchList.cs",
          "ModuleManager/ModuleManager.csproj"
        ],
        "commitId" : "7138bbca48c127dda038d199b1518a0dfc84a0a5",
        "timestamp" : 1505365141000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "PatchList\u000alist of patches, 'nuff said\u000a",
        "date" : "2017-09-13 21:59:01 -0700",
        "id" : "7138bbca48c127dda038d199b1518a0dfc84a0a5",
        "msg" : "PatchList",
        "paths" : [
          {
            "editType" : "add",
            "file" : "ModuleManager/PatchList.cs"
          },
          {
            "editType" : "add",
            "file" : "ModuleManagerTests/PatchListTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/ModuleManager.csproj"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/ModuleManagerTests.csproj"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/ModuleManagerTests.csproj",
          "ModuleManagerTests/PatchExtractorTest.cs",
          "ModuleManager/PatchExtractor.cs",
          "ModuleManager/ModuleManager.csproj"
        ],
        "commitId" : "9a55a65987f83afbc0d2df67b0c1e4c8d80a47e6",
        "timestamp" : 1505365320000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Add PatchExtractor\u000aExtracts patches from the game database and sorts them\u000a",
        "date" : "2017-09-13 22:02:00 -0700",
        "id" : "9a55a65987f83afbc0d2df67b0c1e4c8d80a47e6",
        "msg" : "Add PatchExtractor",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/ModuleManagerTests.csproj"
          },
          {
            "editType" : "add",
            "file" : "ModuleManager/PatchExtractor.cs"
          },
          {
            "editType" : "add",
            "file" : "ModuleManagerTests/PatchExtractorTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/ModuleManager.csproj"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/Extensions/UrlConfigExtensionsTest.cs",
          "ModuleManagerTests/ModuleManagerTests.csproj",
          "ModuleManager/Extensions/UrlConfigExtensions.cs",
          "ModuleManager/ModuleManager.csproj"
        ],
        "commitId" : "90027c2abade9c7f035948bcfed4e6cddbc32e7e",
        "timestamp" : 1505367118000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Add SafeUrl extension method for UrlConfig\u000aMakes sure logging doesn't mess up, and fixes the weird quirk where a \u000anode with a name value ends up displaying that instead of its actual \u000aname\u000a",
        "date" : "2017-09-13 22:31:58 -0700",
        "id" : "90027c2abade9c7f035948bcfed4e6cddbc32e7e",
        "msg" : "Add SafeUrl extension method for UrlConfig",
        "paths" : [
          {
            "editType" : "add",
            "file" : "ModuleManager/Extensions/UrlConfigExtensions.cs"
          },
          {
            "editType" : "add",
            "file" : "ModuleManagerTests/Extensions/UrlConfigExtensionsTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/ModuleManagerTests.csproj"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/ModuleManager.csproj"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/PatchExtractor.cs",
          "ModuleManager/MMPatchLoader.cs",
          "ModuleManager/PatchProgress.cs"
        ],
        "commitId" : "504354d57b7ffdb5128e48cdccccd9010ed22e63",
        "timestamp" : 1505369949000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Use SafeUrl in logging\u000a",
        "date" : "2017-09-13 23:19:09 -0700",
        "id" : "504354d57b7ffdb5128e48cdccccd9010ed22e63",
        "msg" : "Use SafeUrl in logging",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchProgress.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchExtractor.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/MMPatchLoader.cs"
        ],
        "commitId" : "331ab180365a6e243f4d2f192197b762a6820ba0",
        "timestamp" : 1505369949000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Remove unused\u000aDoesn't really have any benefit\u000a",
        "date" : "2017-09-13 23:19:09 -0700",
        "id" : "331ab180365a6e243f4d2f192197b762a6820ba0",
        "msg" : "Remove unused",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/PatchExtractorTest.cs",
          "ModuleManager/PatchExtractor.cs",
          "ModuleManager/IPatchProgress.cs",
          "ModuleManagerTests/PatchProgressTest.cs",
          "ModuleManager/PatchProgress.cs"
        ],
        "commitId" : "3f8adeeb9ca45e6afd879602d8bf5176ba6f7a65",
        "timestamp" : 1505370312000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Log when BEFORE or AFTER patch deleted\u000aThis is pretty much equivalent to unsatisfied NEEDS, so it should be \u000anoted as such.  Also log on an unsatisfied FOR, although this shouldn't \u000ahappen (make it a warning)\u000a",
        "date" : "2017-09-13 23:25:12 -0700",
        "id" : "3f8adeeb9ca45e6afd879602d8bf5176ba6f7a65",
        "msg" : "Log when BEFORE or AFTER patch deleted",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchExtractor.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/IPatchProgress.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/PatchExtractorTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchProgress.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/PatchProgressTest.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/PatchList.cs",
          "ModuleManagerTests/PatchListTest.cs"
        ],
        "commitId" : "50346dc2f17ca43b5d47132e636df295ae95a992",
        "timestamp" : 1505370333000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Fix case issues\u000aMods may not be lowercase to begin with, need to handle this\u000a",
        "date" : "2017-09-13 23:25:33 -0700",
        "id" : "50346dc2f17ca43b5d47132e636df295ae95a992",
        "msg" : "Fix case issues",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/PatchListTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchList.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/ModuleManagerTests.csproj",
          "ModuleManager/MMPatchLoader.cs",
          "ModuleManager/Extensions/StringExtensions.cs",
          "ModuleManager/ModuleManager.csproj",
          "ModuleManagerTests/Extensions/StringExtensionsTest.cs"
        ],
        "commitId" : "99bc0bf583693dd2d83a94d93d1043bc28d03708",
        "timestamp" : 1505371760000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Extract IsBracketBalanced\u000a",
        "date" : "2017-09-13 23:49:20 -0700",
        "id" : "99bc0bf583693dd2d83a94d93d1043bc28d03708",
        "msg" : "Extract IsBracketBalanced",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/ModuleManagerTests.csproj"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/ModuleManager.csproj"
          },
          {
            "editType" : "add",
            "file" : "ModuleManagerTests/Extensions/StringExtensionsTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          },
          {
            "editType" : "add",
            "file" : "ModuleManager/Extensions/StringExtensions.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/PatchExtractor.cs",
          "ModuleManagerTests/PatchExtractorTest.cs"
        ],
        "commitId" : "e52a646ba73fb0639218d779508e7f110aaa1a3f",
        "timestamp" : 1505372189000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Remove bracket unbalanced nodes when sorting\u000a",
        "date" : "2017-09-13 23:56:29 -0700",
        "id" : "e52a646ba73fb0639218d779508e7f110aaa1a3f",
        "msg" : "Remove bracket unbalanced nodes when sorting",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/PatchExtractorTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchExtractor.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/MMPatchLoader.cs"
        ],
        "commitId" : "8a8131017d7a26286b0b9f0bf8c64dc4da0d1ecc",
        "timestamp" : 1505372266000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Unused method\u000a",
        "date" : "2017-09-13 23:57:46 -0700",
        "id" : "8a8131017d7a26286b0b9f0bf8c64dc4da0d1ecc",
        "msg" : "Unused method",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/Extensions/ConfigNodeExtensionsTest.cs",
          "ModuleManager/MMPatchLoader.cs",
          "ModuleManager/Extensions/ConfigNodeExtensions.cs"
        ],
        "commitId" : "5a468bea8d010631895e3e7bdbf40a5682748b13",
        "timestamp" : 1505374314000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Bring back DeepCopy\u000aApparently KSP's default implementation fails on badly formed nodes\u000a",
        "date" : "2017-09-14 00:31:54 -0700",
        "id" : "5a468bea8d010631895e3e7bdbf40a5682748b13",
        "msg" : "Bring back DeepCopy",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/Extensions/ConfigNodeExtensionsTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/Extensions/ConfigNodeExtensions.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/MMPatchLoader.cs"
        ],
        "commitId" : "2e5854df9056d21d8efcac868de3d527e1ddd319",
        "timestamp" : 1505374892000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Fix bad region\u000a",
        "date" : "2017-09-14 00:41:32 -0700",
        "id" : "2e5854df9056d21d8efcac868de3d527e1ddd319",
        "msg" : "Fix bad region",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/PatchExtractor.cs",
          "ModuleManagerTests/PatchExtractorTest.cs"
        ],
        "commitId" : "9bd8253f26f0aaf03891cbef10d5a3c27de3ec6d",
        "timestamp" : 1505449711000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Make sure badly formed mod passes are an error\u000a",
        "date" : "2017-09-14 21:28:31 -0700",
        "id" : "9bd8253f26f0aaf03891cbef10d5a3c27de3ec6d",
        "msg" : "Make sure badly formed mod passes are an error",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/PatchExtractorTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchExtractor.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/MMPatchLoader.cs"
        ],
        "commitId" : "b0102431984947e8cff86aa4e7874b97119f2361",
        "timestamp" : 1505452838000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "That's a bug\u000a",
        "date" : "2017-09-14 22:20:38 -0700",
        "id" : "b0102431984947e8cff86aa4e7874b97119f2361",
        "msg" : "That's a bug",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/PatchExtractor.cs",
          "ModuleManager/Extensions/ConfigNodeExtensions.cs"
        ],
        "commitId" : "cacc840da0d34307ef18796288eaafb30d2f3229",
        "timestamp" : 1505455034000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Add some explanatory comments\u000a",
        "date" : "2017-09-14 22:57:14 -0700",
        "id" : "cacc840da0d34307ef18796288eaafb30d2f3229",
        "msg" : "Add some explanatory comments",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchExtractor.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/Extensions/ConfigNodeExtensions.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManagerTests/Extensions/ConfigNodeExtensionsTest.cs",
          "ModuleManager/PatchExtractor.cs",
          "ModuleManager/Extensions/ConfigNodeExtensions.cs"
        ],
        "commitId" : "c00735d7f3322aba14159706f996e7c45bc13dff",
        "timestamp" : 1505455076000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Unnecessary using directives\u000a",
        "date" : "2017-09-14 22:57:56 -0700",
        "id" : "c00735d7f3322aba14159706f996e7c45bc13dff",
        "msg" : "Unnecessary using directives",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchExtractor.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/Extensions/ConfigNodeExtensionsTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/Extensions/ConfigNodeExtensions.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/MMPatchLoader.cs"
        ],
        "commitId" : "8d71ac691054fcc9e1fa236d4debbb2687be4632",
        "timestamp" : 1505455955000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Use sorted patches when applying\u000aImproves performance somewhat\u000aVerified that sorting patches takes almost no time even for a fairly \u000alarge number of patches\u000a",
        "date" : "2017-09-14 23:12:35 -0700",
        "id" : "8d71ac691054fcc9e1fa236d4debbb2687be4632",
        "msg" : "Use sorted patches when applying",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/MMPatchLoader.cs"
        ],
        "commitId" : "aa990db608166c83fd2fdbf9cd62fdba40788ff8",
        "timestamp" : 1505456264000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Remove now-unnecessary try-catch\u000aThere's already one around it and we no longer care about removing \u000apatches from the database at this stage\u000a",
        "date" : "2017-09-14 23:17:44 -0700",
        "id" : "aa990db608166c83fd2fdbf9cd62fdba40788ff8",
        "msg" : "Remove now-unnecessary try-catch",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/MMPatchLoader.cs"
        ],
        "commitId" : "3ca180142d1cc787cf92ceae683b64cbab04c964",
        "timestamp" : 1505456479000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Replace big if with guard clause\u000aReduces indentation.  Insert nodes shouldn't exist here anyway\u000a",
        "date" : "2017-09-14 23:21:19 -0700",
        "id" : "3ca180142d1cc787cf92ceae683b64cbab04c964",
        "msg" : "Replace big if with guard clause",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/MMPatchLoader.cs"
        ],
        "commitId" : "ec7c67cea50bc2b67ceadeac9b57ae3284816a24",
        "timestamp" : 1505456695000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Simplify this\u000aIt no longer has to look in actual passes here, so we can just use the \u000aname we want it to display.\u000aIt does change the way it displays in the loading screen but that seems \u000afine.\u000a",
        "date" : "2017-09-14 23:24:55 -0700",
        "id" : "ec7c67cea50bc2b67ceadeac9b57ae3284816a24",
        "msg" : "Simplify this",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "ModuleManager/MMPatchLoader.cs",
          "ModuleManager/PatchExtractor.cs",
          "ModuleManagerTests/PatchExtractorTest.cs"
        ],
        "commitId" : "809831304b89671c1abf746c91f5d166dd5a1a86",
        "timestamp" : 1505458924000,
        "author" : {
          "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
          "fullName" : "joeydwong"
        },
        "authorEmail" : "joeydwong@gmail.com",
        "comment" : "Invalid command = error on the patch extractor\u000aThis seems like the right place to check it\u000a",
        "date" : "2017-09-15 00:02:04 -0700",
        "id" : "809831304b89671c1abf746c91f5d166dd5a1a86",
        "msg" : "Invalid command = error on the patch extractor",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "ModuleManager/MMPatchLoader.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManagerTests/PatchExtractorTest.cs"
          },
          {
            "editType" : "edit",
            "file" : "ModuleManager/PatchExtractor.cs"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://ksp.sarbian.com/jenkins/user/joeydwong",
      "fullName" : "joeydwong"
    }
  ]
}