{
  "_class" : "hudson.matrix.MatrixRun",
  "actions" : [
    {
      
    },
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.model.Cause$UpstreamCause",
          "shortDescription" : "Started by upstream project \"gluegen_onmaster\" build number 12",
          "upstreamBuild" : 12,
          "upstreamProject" : "gluegen_onmaster",
          "upstreamUrl" : "job/gluegen_onmaster/"
        }
      ]
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 12,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "4cbceccb3a91bb4b9bcf9e109e5f777fa50606a3",
            "branch" : [
              {
                "SHA1" : "4cbceccb3a91bb4b9bcf9e109e5f777fa50606a3",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "4cbceccb3a91bb4b9bcf9e109e5f777fa50606a3",
            "branch" : [
              {
                "SHA1" : "4cbceccb3a91bb4b9bcf9e109e5f777fa50606a3",
                "name" : "origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "4cbceccb3a91bb4b9bcf9e109e5f777fa50606a3",
        "branch" : [
          {
            "SHA1" : "4cbceccb3a91bb4b9bcf9e109e5f777fa50606a3",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "git://jogamp.org/srv/scm/gluegen.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#12",
  "duration" : 51290,
  "estimatedDuration" : 220134,
  "executor" : None,
  "fullDisplayName" : "gluegen_onmaster » linux-x86_64-master-001 #12",
  "id" : "2012-12-27_08-07-17",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 12,
  "queueId" : -1,
  "result" : "SUCCESS",
  "timestamp" : 1356592037000,
  "url" : "https://jogamp.org/chuck/view/on%20server/job/gluegen_onmaster/label=linux-x86_64-master-001/12/",
  "builtOn" : "linux64-null-centos55-jogamp-x64-chuck-001",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "make/gluegen-cpptasks-base.xml",
          "make/lib/gluegen-cpptasks-android-armv6.xml",
          "make/lib/gluegen-cpptasks-android-armv7.xml",
          "make/lib/gluegen-cpptasks-linux-armv6.xml",
          "make/lib/gluegen-cpptasks-linux-armv6hf.xml"
        ],
        "commitId" : "5702746c390b93f1aa1df474429263f196b382fd",
        "timestamp" : 1350103182000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Adding gcc linker cfg: '-static-libgcc' for all def. build platforms:\u000a\u000a- linker.cfg.linux\u000a- linker.cfg.linux.x86\u000a- linker.cfg.linux.amd64\u000a- linker.cfg.linux.armv6\u000a- linker.cfg.solaris\u000a- linker.cfg.solaris.spacv9\u000a- linker.cfg.solaris.amd64\u000a- linker.cfg.macosx\u000a- linker.cfg.linux64.mingw64\u000a- linker.cfg.linux64.mingw32\u000a- linker.cfg.win32.mingw32\u000a- linker.cfg.win32.mingw64\u000a\u000a- android.armv6\u000a- android.armv7\u000a- linux.armv6\u000a- linux.armv6hf\u000a\u000aThese flags shall now go through autobuild and results will be validated,\u000ai.e.:\u000a  - working\u000a  - memory footprint\u000a",
        "date" : "2012-10-13T06:39:42+0200",
        "id" : "5702746c390b93f1aa1df474429263f196b382fd",
        "msg" : "Adding gcc linker cfg: '-static-libgcc' for all def. build platforms:",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/lib/gluegen-cpptasks-linux-armv6hf.xml"
          },
          {
            "editType" : "edit",
            "file" : "make/gluegen-cpptasks-base.xml"
          },
          {
            "editType" : "edit",
            "file" : "make/lib/gluegen-cpptasks-linux-armv6.xml"
          },
          {
            "editType" : "edit",
            "file" : "make/lib/gluegen-cpptasks-android-armv6.xml"
          },
          {
            "editType" : "edit",
            "file" : "make/lib/gluegen-cpptasks-android-armv7.xml"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/ant/GlueGenTask.java"
        ],
        "commitId" : "e8b97a64b88d5ec6e365a53b652f261506bcab9e",
        "timestamp" : 1350183859000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: trim trailing whitespace from GlueGenTask\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-13T20:04:19-0700",
        "id" : "e8b97a64b88d5ec6e365a53b652f261506bcab9e",
        "msg" : "gluegen: trim trailing whitespace from GlueGenTask",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/ant/GlueGenTask.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/ant/GlueGenTask.java"
        ],
        "commitId" : "13969227d00910063c4f6c88a52293dacac0615c",
        "timestamp" : 1350183859000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: small cleanup and type annotation in GlueGenTask\u000a\u000a- remove an unused import\u000a- annotate includesList with type information\u000a- small code cleanup now that the type information is present\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-13T20:04:19-0700",
        "id" : "13969227d00910063c4f6c88a52293dacac0615c",
        "msg" : "gluegen: small cleanup and type annotation in GlueGenTask",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/ant/GlueGenTask.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/cgram/types/Type.java"
        ],
        "commitId" : "1709c545c401042be2aa2305abcb3e41e44f74ba",
        "timestamp" : 1350189417000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: remove trailing whitespace from cgrammer Type class\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-13T21:36:57-0700",
        "id" : "1709c545c401042be2aa2305abcb3e41e44f74ba",
        "msg" : "gluegen: remove trailing whitespace from cgrammer Type class",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/Type.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/cgram/types/Type.java"
        ],
        "commitId" : "898f62a51ff32bec12c7839593bb6ed3f737a022",
        "timestamp" : 1350189452000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: fix equals comparison in cgrammer Type class\u000a\u000aname was being compared to itself, rather than the name of the type we are comparing,\u000alooks like a simple typo.\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-13T21:37:32-0700",
        "id" : "898f62a51ff32bec12c7839593bb6ed3f737a022",
        "msg" : "gluegen: fix equals comparison in cgrammer Type class",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/Type.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/cgram/types/Type.java"
        ],
        "commitId" : "89f0b7e392f57acfff0b6a195aeddd2225b2f2fe",
        "timestamp" : 1350189880000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: break apart a complex conditional in Type.equals() for readability\u000a\u000a- move the cheap integer compares earlier before the String comparisons\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-13T21:44:40-0700",
        "id" : "89f0b7e392f57acfff0b6a195aeddd2225b2f2fe",
        "msg" : "gluegen: break apart a complex conditional in Type.equals() for",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/Type.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/pcpp/PCPP.java"
        ],
        "commitId" : "542e7c364ced2865c5deac1498f5ff537a31c0b8",
        "timestamp" : 1350201963000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: remove trailing whitespace from psuedo-C parser\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-14T01:06:03-0700",
        "id" : "542e7c364ced2865c5deac1498f5ff537a31c0b8",
        "msg" : "gluegen: remove trailing whitespace from psuedo-C parser",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/pcpp/PCPP.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/pcpp/PCPP.java"
        ],
        "commitId" : "6838d3593512d0388948c784023303d966b6e298",
        "timestamp" : 1350202185000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: simplify expression comparing against Boolean.TRUE\u000a\u000aAs a last resort we can just return the boolean value directly here, also no\u000aneed to try/catch as valueOf does not throw any exceptions.\u000a\u000aPointed out by Findbugs.\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-14T01:09:45-0700",
        "id" : "6838d3593512d0388948c784023303d966b6e298",
        "msg" : "gluegen: simplify expression comparing against Boolean.TRUE",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/pcpp/PCPP.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/cgram/types/Type.java"
        ],
        "commitId" : "5e0af71477289c7686a0f4b348dfe36fb8e5b644",
        "timestamp" : 1350263996000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: conditional cleanup in Type.equals()\u000a\u000a- instanceof includes null checking\u000a- simplify comparison of name, either they are the same object (possibly null)\u000aor they compare equal as strings\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-14T18:19:56-0700",
        "id" : "5e0af71477289c7686a0f4b348dfe36fb8e5b644",
        "msg" : "gluegen: conditional cleanup in Type.equals()",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/Type.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/cgram/types/Type.java"
        ],
        "commitId" : "a8e9be19b0215fe349c1861c5ea866e929923337",
        "timestamp" : 1350356174000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Intermediate revised Type.java edit before reducing\u000a",
        "date" : "2012-10-16T04:56:14+0200",
        "id" : "a8e9be19b0215fe349c1861c5ea866e929923337",
        "msg" : "Intermediate revised Type.java edit before reducing",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/Type.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/cgram/types/Type.java"
        ],
        "commitId" : "3ccb9dbc00746d31f08a907d190892d68273d4bf",
        "timestamp" : 1350356235000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Reducing Type's equals\u000a",
        "date" : "2012-10-16T04:57:15+0200",
        "id" : "3ccb9dbc00746d31f08a907d190892d68273d4bf",
        "msg" : "Reducing Type's equals",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/Type.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/MethodBinding.java",
          "src/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.java"
        ],
        "commitId" : "33ffe6769081401741813507ab01faa5ede80eae",
        "timestamp" : 1350358961000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "ProcAddressEmitter: Remove 'guessing' argument names from types, since they are ambiguous - better use default generic ones to avoid confusion.\u000a",
        "date" : "2012-10-16T05:42:41+0200",
        "id" : "33ffe6769081401741813507ab01faa5ede80eae",
        "msg" : "ProcAddressEmitter: Remove 'guessing' argument names from types, since",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/MethodBinding.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/cgram/types/EnumType.java",
          "src/java/com/jogamp/gluegen/cgram/types/Type.java",
          "src/java/com/jogamp/common/util/IntIntHashMap.java",
          "src/java/com/jogamp/gluegen/cgram/types/CompoundType.java",
          "src/java/com/jogamp/gluegen/cgram/types/FunctionType.java"
        ],
        "commitId" : "d7fb6a7bcfbd2d5ac452abdcdd31fb4d71441c70",
        "timestamp" : 1350395431000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: generics annotations for various ArrayList/List use\u000a\u000a- Use the copy constructor rather than ArrayList.clone()\u000a- constrain listsEqual  so the compiler will warn about comparing lists of different types\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-16T06:50:31-0700",
        "id" : "d7fb6a7bcfbd2d5ac452abdcdd31fb4d71441c70",
        "msg" : "gluegen: generics annotations for various ArrayList/List use",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/CompoundType.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/util/IntIntHashMap.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/EnumType.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/Type.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/FunctionType.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/JavaConfiguration.java"
        ],
        "commitId" : "28410cfb398b510b4f748f3a1134dd13dae9f7c4",
        "timestamp" : 1350396776000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: remove two fast-path tests that can never trigger\u000a\u000aignores and unimplemented are both Set<Pattern>, they cannot contain a String,\u000aimmediately after these 'fast paths' we loop over the patterns calling .matches()\u000awhich makes sense, so remove the misleading tests.\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-16T07:12:56-0700",
        "id" : "28410cfb398b510b4f748f3a1134dd13dae9f7c4",
        "msg" : "gluegen: remove two fast-path tests that can never trigger",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaConfiguration.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/jogamp/common/util/locks/SingletonInstanceFileLock.java"
        ],
        "commitId" : "4309d1334a2b036c7bf15612199bb7391a57980b",
        "timestamp" : 1350397303000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: replace Thread name with name of lock file in SingletonInstanceFileLock error message\u000a\u000aThe getName() call here is currently calling Thread.getName() inherited by the\u000aanonymous inner class.  This is ambiguous, and likely meant to call the getName()\u000amethod of SingletonInstanceFileLock, which would output the lockfile name.\u000a\u000aIn any event, infoPrefix() is already adding the Thread name for us.\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2012-10-16T07:21:43-0700",
        "id" : "4309d1334a2b036c7bf15612199bb7391a57980b",
        "msg" : "gluegen: replace Thread name with name of lock file in",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/jogamp/common/util/locks/SingletonInstanceFileLock.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/nio/Buffers.java",
          "src/java/com/jogamp/common/util/ValueConv.java",
          "make/scripts/runtest.sh",
          "src/junit/com/jogamp/common/util/TestValueConversion.java"
        ],
        "commitId" : "cae1502304faac54fb6673ed31eb1493e8388497",
        "timestamp" : 1350482404000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Buffers: Add normalized put methods, i.e. incl. value range conversion; New util. ValueConv for primitive type value conversion\u000a",
        "date" : "2012-10-17T16:00:04+0200",
        "id" : "cae1502304faac54fb6673ed31eb1493e8388497",
        "msg" : "Buffers: Add normalized put methods, i.e. incl. value range conversion;",
        "paths" : [
          {
            "editType" : "add",
            "file" : "src/junit/com/jogamp/common/util/TestValueConversion.java"
          },
          {
            "editType" : "add",
            "file" : "src/java/com/jogamp/common/util/ValueConv.java"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/runtest.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/nio/Buffers.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/cgram/types/EnumType.java",
          "src/java/com/jogamp/gluegen/cgram/types/CompoundType.java",
          "src/java/com/jogamp/gluegen/cgram/types/FunctionType.java"
        ],
        "commitId" : "73e8828566404e864170688dfb4fd530a83f8add",
        "timestamp" : 1350484952000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Minor revert of clone replacement w/ copt-ctor of commit d7fb6a7bcfbd2d5ac452abdcdd31fb4d71441c70\u000a\u000aclone of ArrayList is more shallow than it's clone operation (?)\u000a",
        "date" : "2012-10-17T16:42:32+0200",
        "id" : "73e8828566404e864170688dfb4fd530a83f8add",
        "msg" : "Minor revert of clone replacement w/ copt-ctor of commit",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/FunctionType.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/EnumType.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/CompoundType.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/nio/Buffers.java"
        ],
        "commitId" : "febd5421a3e00673bd43cecd19aaa088eafb99e7",
        "timestamp" : 1350535999000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Fix Buffers.copy<Type>Buffer[asByteBuffer](..): Reset position of the passed buffer (was missing).\u000a\u000aThis is an API regression as introduced in commit 25cc744f6bd5ca97e0ae58fa7e1c35f7b0f3046d\u000awhere JOGL's BufferUtil and GlueGen's were merged and API doc elaborated.\u000aThe latter states the desired fact that the source passed buffer's position shall remain\u000aunchanged, however no code was added to take care of this detail.\u000a",
        "date" : "2012-10-18T06:53:19+0200",
        "id" : "febd5421a3e00673bd43cecd19aaa088eafb99e7",
        "msg" : "Fix Buffers.copy<Type>Buffer[asByteBuffer](..): Reset position of the",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/nio/Buffers.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/cgram/types/EnumType.java",
          "src/java/com/jogamp/gluegen/cgram/types/CompoundType.java",
          "src/java/com/jogamp/gluegen/cgram/types/FunctionType.java"
        ],
        "commitId" : "761b2855b9c01c421ecd4d435a828a67b3a2471b",
        "timestamp" : 1350536436000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Revert \"Minor revert of clone replacement w/ copt-ctor of commit d7fb6a7bcfbd2d5ac452abdcdd31fb4d71441c70\"\u000a\u000aThis reverts commit 73e8828566404e864170688dfb4fd530a83f8add.\u000a\u000aConvinced after discussing semantics w/ Harvey Harrison:\u000a\u000a\"the copy-constructor is way for predictable (as in branch-predictable)\u000aand has better cache behavior, it can issue almost all the writes in\u000aparallel, and has no exception catching.\u000a\u000aSo, the copy-constructor actually ends up being more efficient, and\u000ayou get typechecking to boot.\"\u000a",
        "date" : "2012-10-18T07:00:36+0200",
        "id" : "761b2855b9c01c421ecd4d435a828a67b3a2471b",
        "msg" : "Revert \"Minor revert of clone replacement w/ copt-ctor of commit",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/CompoundType.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/FunctionType.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/EnumType.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "make/scripts/runtest.sh",
          "src/junit/com/jogamp/common/util/TestVersionNumber.java",
          "src/java/com/jogamp/common/util/VersionNumber.java"
        ],
        "commitId" : "08a8defda8b6f49eb794cf787f688ba65bfe7b37",
        "timestamp" : 1351083023000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Fix VersionNumber: Non digits cut off pattern was '\\D.*' and cut off digits in case leading non digits appear.\u000a\u000a'\\D.*' matches a leading non-digit and then any character.\u000a\u000aFirst the string is tokenized by delim:\u000a  \"OpenGL ES GLSL ES 1.0.16\" -> \"OpenGL ES GLSL ES 1\", \"0\", \"16\"\u000a\u000aEnhance pattern as follows and access collected group if matching:\u000a        // group1: \\D* == leading non digits, optional\u000a        // group2: \\d* == digits\u000a        // group3: .*  == any pending chars, optional\u000a        final java.util.regex.Pattern nonDigitsCutOff = java.util.regex.Pattern.compile(\"(\\\\D*)(\\\\d*)(.*)\");\u000a\u000aReorganized storage from atomic values to int[3] array, allowing simple pattern matching loop.\u000a\u000aAdded unit test.\u000a",
        "date" : "2012-10-24T14:50:23+0200",
        "id" : "08a8defda8b6f49eb794cf787f688ba65bfe7b37",
        "msg" : "Fix VersionNumber: Non digits cut off pattern was '\\D.*' and cut off",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/scripts/runtest.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/util/VersionNumber.java"
          },
          {
            "editType" : "add",
            "file" : "src/junit/com/jogamp/common/util/TestVersionNumber.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/util/VersionNumber.java"
        ],
        "commitId" : "be7cd5059dea197bd3756e0b19f934041dc6ad13",
        "timestamp" : 1351083085000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "VersionNumber: Remove printing Exception (was added for debugging purposes)\u000a",
        "date" : "2012-10-24T14:51:25+0200",
        "id" : "be7cd5059dea197bd3756e0b19f934041dc6ad13",
        "msg" : "VersionNumber: Remove printing Exception (was added for debugging",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/util/VersionNumber.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/util/VersionNumber.java"
        ],
        "commitId" : "c1a8c38e32b4ed8f97fc82602c90eb7b0b3cef6e",
        "timestamp" : 1351083466000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "VersionNumber: Add API doc for string parsing\u000a",
        "date" : "2012-10-24T14:57:46+0200",
        "id" : "c1a8c38e32b4ed8f97fc82602c90eb7b0b3cef6e",
        "msg" : "VersionNumber: Add API doc for string parsing",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/util/VersionNumber.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/util/VersionNumber.java"
        ],
        "commitId" : "661a625ed69faf701b6e868225148f630c2002d8",
        "timestamp" : 1351083563000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "VersionNumber: API doc fix\u000a",
        "date" : "2012-10-24T14:59:23+0200",
        "id" : "661a625ed69faf701b6e868225148f630c2002d8",
        "msg" : "VersionNumber: API doc fix",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/util/VersionNumber.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/jvm/JNILibLoaderBase.java",
          "src/java/com/jogamp/common/os/NativeLibrary.java"
        ],
        "commitId" : "abbe6ce0973fbd82971ace1866515beefcc41817",
        "timestamp" : 1351150505000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Fix Bug 608: Push down TempJarCache.findLibrary(..) from JNILibLoaderBase.loadLibraryInternal() to NativeLibrary.findLibrary(..)\u000a\u000aThis allows using TempJarCache (if used/initialized) for native 'tool' libraries as well.\u000aThis is the case of JOAL's attempt to load the provided 'libopenal.so'\u000a",
        "date" : "2012-10-25T09:35:05+0200",
        "id" : "abbe6ce0973fbd82971ace1866515beefcc41817",
        "msg" : "Fix Bug 608: Push down TempJarCache.findLibrary(..) from",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/os/NativeLibrary.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/jvm/JNILibLoaderBase.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/util/IntBitfield.java"
        ],
        "commitId" : "6bc876895b6b6a4e76896597d95dfd7c67bb6b49",
        "timestamp" : 1351291632000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Adding com.jogamp.common.util.IntBitfield: Simple bitfield holder class using an int[] storage.\u000a\u000aIntBitfield comes in handy to store bit states of a wide value range w/o being a memory hog an O(1) access,\u000ae.g. keyCode -> isPressed maps etc.\u000a",
        "date" : "2012-10-27T00:47:12+0200",
        "id" : "6bc876895b6b6a4e76896597d95dfd7c67bb6b49",
        "msg" : "Adding com.jogamp.common.util.IntBitfield: Simple bitfield holder class",
        "paths" : [
          {
            "editType" : "add",
            "file" : "src/java/com/jogamp/common/util/IntBitfield.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/util/IntBitfield.java"
        ],
        "commitId" : "1507b376bada782b5064a0151d9b7871d1360b40",
        "timestamp" : 1351294898000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "IntBitfield: Add API doc; Enhance put() method, return previous value to be used more versatile and write only if value changed.\u000a",
        "date" : "2012-10-27T01:41:38+0200",
        "id" : "1507b376bada782b5064a0151d9b7871d1360b40",
        "msg" : "IntBitfield: Add API doc; Enhance put() method, return previous value to",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/util/IntBitfield.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/util/IntIntHashMap.java"
        ],
        "commitId" : "d430657cfd1f21885f3fdebebe6f0a49b1c5cd13",
        "timestamp" : 1351705362000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "IntIntHashMap: Add privileged for 'getDeclaredMethod(..)'; Add StringBuilder toString(..); Add more generics coding.\u000a",
        "date" : "2012-10-31T18:42:42+0100",
        "id" : "d430657cfd1f21885f3fdebebe6f0a49b1c5cd13",
        "msg" : "IntIntHashMap: Add privileged for 'getDeclaredMethod(..)'; Add",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/util/IntIntHashMap.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/jogamp/android/launcher/ClassLoaderUtil.java"
        ],
        "commitId" : "5bd9880b54a48326742008d36175b1403c891ee1",
        "timestamp" : 1356580221000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Android Launcher: Fix ClassLoaderUtil's JNI lib-path determination, use ApplicationInfo's nativeLibraryDir (API level 9).\u000a\u000aOn Android > 4.0.3 (maybe even earlier), w/ a split filesystem (internal and SDCARD)\u000athe JNI libs maybe stored at a different location than it's data path.\u000aApplicationInfo's nativeLibraryDir properly determines the JNI storage location, hence use it.\u000a\u000aPrev. code also derived JNI lib path by the launcher's ApplicationInfo's nativeLibraryDir,\u000awhich might be different than the user package's nativeLibraryDir.\u000aThis is especially true, since the launcher may not hold any native libraries.\u000a",
        "date" : "2012-12-27T04:50:21+0100",
        "id" : "5bd9880b54a48326742008d36175b1403c891ee1",
        "msg" : "Android Launcher: Fix ClassLoaderUtil's JNI lib-path determination, use",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/jogamp/android/launcher/ClassLoaderUtil.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "make/scripts/crosstest-java-android-armv7-rel.sh",
          "make/scripts/make.gluegen.all.android-armv7-cross.sh",
          "make/scripts/make.gluegen.all.android-armv6-cross.sh",
          "make/scripts/crosstest-junit-android-armv7-rel.sh"
        ],
        "commitId" : "43163af2618a0aaa3cf41de8027ef402d7e89cc3",
        "timestamp" : 1356580436000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Android build scripts: Fix env. name ANDROID_SDK_HOME -> ANDROID_HOME\u000a\u000aIntuitively I assumed ANDROID_SDK_HOME to be pointing to the SDK root dir,\u000ahowever this is not true: Semantics by Android tools are:\u000a\u000aANDROID_SDK_HOME - Users ~/.android folder\u000aANDROID_HOME     - SDK root folder\u000a",
        "date" : "2012-12-27T04:53:56+0100",
        "id" : "43163af2618a0aaa3cf41de8027ef402d7e89cc3",
        "msg" : "Android build scripts: Fix env. name ANDROID_SDK_HOME -> ANDROID_HOME",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/scripts/crosstest-java-android-armv7-rel.sh"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/make.gluegen.all.android-armv6-cross.sh"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/crosstest-junit-android-armv7-rel.sh"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/make.gluegen.all.android-armv7-cross.sh"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "make/jogamp-androidtasks.xml"
        ],
        "commitId" : "4cbceccb3a91bb4b9bcf9e109e5f777fa50606a3",
        "timestamp" : 1356585513000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Complete commit 43163af2618a0aaa3cf41de8027ef402d7e89cc3 - jogamp-androidtasks.xml was using ANDROID_SDK_HOME, -> ANDROID_HOME\u000a",
        "date" : "2012-12-27T06:18:33+0100",
        "id" : "4cbceccb3a91bb4b9bcf9e109e5f777fa50606a3",
        "msg" : "Complete commit 43163af2618a0aaa3cf41de8027ef402d7e89cc3 -",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/jogamp-androidtasks.xml"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/harvey.harrison",
      "fullName" : "harvey.harrison"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/sgothel",
      "fullName" : "Sven Gothel"
    }
  ]
}