{
  "_class" : "hudson.matrix.MatrixRun",
  "actions" : [
    {
      
    },
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.model.Cause$UpstreamCause",
          "shortDescription" : "Started by upstream project \"jogl\" build number 1,247",
          "upstreamBuild" : 1247,
          "upstreamProject" : "jogl",
          "upstreamUrl" : "job/jogl/"
        }
      ]
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 1247,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "b4beeec1423d0d25b834fb41d957f4409441d413",
            "branch" : [
              {
                "SHA1" : "b4beeec1423d0d25b834fb41d957f4409441d413",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "b4beeec1423d0d25b834fb41d957f4409441d413",
            "branch" : [
              {
                "SHA1" : "b4beeec1423d0d25b834fb41d957f4409441d413",
                "name" : "origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "b4beeec1423d0d25b834fb41d957f4409441d413",
        "branch" : [
          {
            "SHA1" : "b4beeec1423d0d25b834fb41d957f4409441d413",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "git://jogamp.org/srv/scm/jogl.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      "_class" : "hudson.tasks.junit.TestResultAction",
      "failCount" : 3,
      "skipCount" : 0,
      "totalCount" : 926,
      "urlName" : "testReport"
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#1247",
  "duration" : 2692513,
  "estimatedDuration" : 2541985,
  "executor" : None,
  "fullDisplayName" : "jogl » linux-x86_64 #1247",
  "id" : "2014-04-09_16-52-46",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 1247,
  "queueId" : -1,
  "result" : "UNSTABLE",
  "timestamp" : 1397055166000,
  "url" : "https://jogamp.org/chuck/view/on%20server/job/jogl/label=linux-x86_64/1247/",
  "builtOn" : "linux64-AMD58xx-debian7-jogamp-x64-sgothel-002",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/graph/curve/opengl/GLRegion.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_fxaa3.glsl",
          "src/jogl/classes/com/jogamp/graph/curve/OutlineShapeXForm.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_poles_bilin1.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_flipquad3.glsl",
          "make/scripts/tests.sh",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-segment-head.fp",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_allsamples_prop01.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_vbaa.fp",
          "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT01.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1.vp",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/UniformNames.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve-simple.orig.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_quincunx.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/CrossHair.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/RegionRendererImpl01.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label0.java",
          "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT10.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_msaa-weight.fp",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_weight.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextNewtDemo.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/attributes.glsl",
          "src/jogl/classes/com/jogamp/graph/font/Font.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_polesequal.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PVBAAES2.java",
          "src/jogl/classes/com/jogamp/graph/curve/Region.java",
          "src/jogl/classes/com/jogamp/graph/curve/OutlineShape.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.orig.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2.vp",
          "src/jogl/classes/jogamp/graph/curve/opengl/RenderStateImpl.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/AttributeNames.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_vbaa-weight.fp",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PMSAAES2.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_allequal.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_flipquad.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_msaa.fp",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener02.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIListenerBase01.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve-weight.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-1pass_norm-weight.fp",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_allprop01.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UINewtDemo01.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_rgss.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve-simple.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01.vp",
          "src/jogl/classes/jogamp/graph/geom/plane/AffineTransform.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/varyings.glsl",
          "src/jogl/classes/jogamp/graph/font/typecast/TypecastRenderer.java",
          "src/jogl/classes/jogamp/graph/font/typecast/TypecastFont.java",
          "src/jogl/classes/com/jogamp/opengl/math/VectorUtil.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_poles_equalweight.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_polesprop01.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/SceneUIController.java",
          "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderCode.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TextRendererGLELBase.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_lineAA.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve-lineAA.glsl",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionNewtDemo.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegionSPES2.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener01.java",
          "src/jogl/classes/jogamp/graph/curve/tess/CDTriangulator2D.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-single.vp",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RIButton.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneNewtDemo.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-1pass_norm.fp",
          "src/test/com/jogamp/opengl/test/junit/graph/TestRegionRendererNEWT01.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextGLListener0A.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_flipquad2.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURendererListenerBase01.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/RenderState.java",
          "src/jogl/classes/com/jogamp/graph/curve/tess/Triangulator.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_allsamples_equal.glsl",
          "src/jogl/classes/jogamp/graph/font/typecast/ot/OTGlyph.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/uniforms.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_poles_propweight1.glsl"
        ],
        "commitId" : "b935d5248aef79e2386a284b32f5888348a382d6",
        "timestamp" : 1396355465000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Bug 801: WIP 1/2 - Add color attribute; Switch Shader instead of branching in shader; Update attributes and uniforms manually, drop ShaderState;\u000a\u000a- ShaderCode\u000a  - add int insertShaderSource(int shaderIdx, int position, Class<?> context, String path)\u000a  - insertShaderSource(..): pos==-1 -> append code\u000a\u000a- VectorUtil\u000a  - add isVec3InTriangle3(..., float epsilon)\u000a  - add testSeg2SegIntersection(..., float epsilon)\u000a  - add testTri2SegIntersection(..., float epsilon)\u000a\u000a- AffineTransform: Return result for chaining\u000a\u000a- Font\u000a  - Add pixel precise 'getPointsBounds(final AffineTransform transform, CharSequence string, float pixelSize)'\u000a  - Rename getString*() -> getMetric*()\u000a  - OTGlyph: Release _points field, no more used\u000a  -\u000a\u000a- Graph Triangulation\u000a  - Count additional vertices in: Triangulator, CDTriangulator2D\u000a\u000a- OutlineShape:\u000a  - Allow skipping of 'transformOutlines2Quadratic', i.e. allow tagging\u000a    OutlineShape to be quadratic_nurbs via 'setIsQuadraticNurbs()'\u000a\u000a  - Clarify cleanup ot outlines in same method 'cleanupOutlines()'\u000a\u000a  - Count additional vertices ..\u000a\u000a- Graph Shader:\u000a  - Start splitting and segmenting shader code for:\u000a    - pass1 / pass2\u000a    - features, i.e. sampleCont, color-channel, ..\u000a",
        "date" : "2014-04-01T14:31:05+0200",
        "id" : "b935d5248aef79e2386a284b32f5888348a382d6",
        "msg" : "Bug 801: WIP 1/2 - Add color attribute; Switch Shader instead of",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/tess/Triangulator.java"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1.vp"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_lineAA.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderCode.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_vbaa-weight.fp"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/RenderStateImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_msaa-weight.fp"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/UniformNames.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-1pass_norm.fp"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UINewtDemo01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/font/typecast/TypecastRenderer.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_vbaa.fp"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve-simple.orig.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PVBAAES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TextRendererGLELBase.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve-lineAA.glsl"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/varyings.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/RenderState.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve-weight.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/SceneUIController.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/Region.java"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/tests.sh"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.orig.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_fxaa3.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_flipquad2.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/GLRegion.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/VectorUtil.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_poles_bilin1.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PMSAAES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT10.java"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_weight.glsl"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_allsamples_equal.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/uniforms.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_quincunx.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_flipquad3.glsl"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve-simple.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/font/typecast/ot/OTGlyph.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURendererListenerBase01.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01.vp"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestRegionRendererNEWT01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RIButton.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/font/typecast/TypecastFont.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/tess/CDTriangulator2D.java"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-segment-head.fp"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label0.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextGLListener0A.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/geom/plane/AffineTransform.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/AttributeNames.java"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_allequal.glsl"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2.vp"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/OutlineShapeXForm.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionNewtDemo.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_rgss.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_msaa.fp"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_poles_equalweight.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/OutlineShape.java"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_polesequal.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_flipquad.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/attributes.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIListenerBase01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_poles_propweight1.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener02.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/font/Font.java"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-single.vp"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/RegionRendererImpl01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegionSPES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/CrossHair.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextNewtDemo.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_allsamples_prop01.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-1pass_norm-weight.fp"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_allprop01.glsl"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-vbaa_polesprop01.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneNewtDemo.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/nativewindow/classes/com/jogamp/nativewindow/windows/WindowsGraphicsDevice.java",
          "src/nativewindow/classes/com/jogamp/nativewindow/awt/AWTGraphicsDevice.java",
          "src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsDevice.java",
          "src/nativewindow/classes/javax/media/nativewindow/DefaultGraphicsDevice.java",
          "src/nativewindow/classes/com/jogamp/nativewindow/egl/EGLGraphicsDevice.java",
          "src/nativewindow/classes/com/jogamp/nativewindow/macosx/MacOSXGraphicsDevice.java"
        ],
        "commitId" : "6bee2a236e4ca4e1fac5d6f975e32b5942e1edf6",
        "timestamp" : 1396355681000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Cleanup *GraphicsDevice: Use 'final' for ctor parameter; DefaultGraphicsDevice.getUniqueID(..) shall perform 'intern()' only once.\u000a",
        "date" : "2014-04-01T14:34:41+0200",
        "id" : "6bee2a236e4ca4e1fac5d6f975e32b5942e1edf6",
        "msg" : "Cleanup *GraphicsDevice: Use 'final' for ctor parameter;",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/nativewindow/classes/com/jogamp/nativewindow/egl/EGLGraphicsDevice.java"
          },
          {
            "editType" : "edit",
            "file" : "src/nativewindow/classes/com/jogamp/nativewindow/windows/WindowsGraphicsDevice.java"
          },
          {
            "editType" : "edit",
            "file" : "src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsDevice.java"
          },
          {
            "editType" : "edit",
            "file" : "src/nativewindow/classes/javax/media/nativewindow/DefaultGraphicsDevice.java"
          },
          {
            "editType" : "edit",
            "file" : "src/nativewindow/classes/com/jogamp/nativewindow/awt/AWTGraphicsDevice.java"
          },
          {
            "editType" : "edit",
            "file" : "src/nativewindow/classes/com/jogamp/nativewindow/macosx/MacOSXGraphicsDevice.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/jogamp/opengl/GLContextImpl.java",
          "src/jogl/classes/com/jogamp/opengl/GLRendererQuirks.java",
          "src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLContext.java",
          "src/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java"
        ],
        "commitId" : "d6d9db6334193ec1cf3c1f00b2a9e154a15d779f",
        "timestamp" : 1396356239000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "X11/WGL GLContext Impl: setGLFunctionAvailability(..) w/ withinGLVersionsMapping:=true if null == sharedContext\u000a\u000a.. otherwise no quirk could be set on non ARB ctx GL implementations.\u000a\u000anull == sharedContext, always for first context creation, i.e. indeed within GL version mapping.\u000a",
        "date" : "2014-04-01T14:43:59+0200",
        "id" : "d6d9db6334193ec1cf3c1f00b2a9e154a15d779f",
        "msg" : "X11/WGL GLContext Impl: setGLFunctionAvailability(..) w/",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLContextImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLContext.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/GLRendererQuirks.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/graph/curve/opengl/GLRegion.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-1pass_norm-weight.fp",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UINewtDemo01.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java",
          "src/jogl/classes/com/jogamp/opengl/math/FloatUtil.java",
          "make/scripts/tests.sh",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieCube.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/SceneUIController.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_vbaa.fp",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieSimple.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TextRendererGLELBase.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/GLReadBuffer00Base.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT01.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/UniformNames.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/CrossHair.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java",
          "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT10.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_msaa-weight.fp",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegionSPES2.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener01.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java",
          "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PVBAAES2.java",
          "src/jogl/classes/com/jogamp/graph/curve/Region.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RIButton.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-1pass_norm.fp",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-msaa.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURendererListenerBase01.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/RenderState.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_vbaa-weight.fp",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PMSAAES2.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener02.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_msaa.fp",
          "src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIListenerBase01.java"
        ],
        "commitId" : "e8a5a1cbb988670ca206ab1ac633e19a91bfa478",
        "timestamp" : 1396399308000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Bug 801: WIP 2/2 - Add color attribute; Switch Shader instead of branching in shader; Update attributes and uniforms manually, drop ShaderState;\u000a\u000a- Due to shader-switching,\u000a  'renderModes' are now local to Region, e.g. UIShape etc\u000a\u000a- Remove RegionRenderer.renderModes\u000a\u000a- VBORegion2P*:\u000a  - Use simple 2x float matrix for orthogonal P+Mv\u000a\u000a- Cleanup shader\u000a",
        "date" : "2014-04-02T02:41:48+0200",
        "id" : "e8a5a1cbb988670ca206ab1ac633e19a91bfa478",
        "msg" : "Bug 801: WIP 2/2 - Add color attribute; Switch Shader instead of",
        "paths" : [
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_msaa-weight.fp"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UINewtDemo01.java"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/tests.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/Region.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener02.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java"
          },
          {
            "editType" : "add",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass2-msaa.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT10.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieCube.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURendererListenerBase01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/GLReadBuffer00Base.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_msaa.fp"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieSimple.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/FloatUtil.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/UniformNames.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PVBAAES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/SceneUIController.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TextRendererGLELBase.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_vbaa-weight.fp"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/CrossHair.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/RenderState.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-1pass_norm.fp"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RIButton.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-2pass_vbaa.fp"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIListenerBase01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/GLRegion.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegionSPES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PMSAAES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java"
          },
          {
            "editType" : "delete",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-1pass_norm-weight.fp"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/graph/font/Font.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java",
          "src/jogl/classes/jogamp/opengl/GLBufferObjectTracker.java",
          "src/jogl/classes/jogamp/graph/geom/plane/AffineTransform.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java",
          "src/jogl/classes/com/jogamp/opengl/math/geom/AABBox.java",
          "src/jogl/classes/jogamp/graph/font/typecast/TypecastFont.java",
          "src/jogl/classes/jogamp/graph/font/typecast/TypecastGlyph.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RIButton.java",
          "src/jogl/classes/jogamp/graph/font/typecast/TypecastHMetrics.java",
          "src/jogl/classes/javax/media/opengl/GLBufferStorage.java",
          "src/jogl/classes/com/jogamp/graph/geom/Outline.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TextRendererGLELBase.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java",
          "src/jogl/classes/com/jogamp/graph/geom/SVertex.java",
          "src/jogl/classes/jogamp/opengl/util/glsl/GLSLArrayHandler.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label0.java"
        ],
        "commitId" : "abc833631e0ab30a06c7aff47a39a551544fd735",
        "timestamp" : 1396452316000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Bug 801: Reduce temp. object creation, i.e. GC load\u000a",
        "date" : "2014-04-02T17:25:16+0200",
        "id" : "abc833631e0ab30a06c7aff47a39a551544fd735",
        "msg" : "Bug 801: Reduce temp. object creation, i.e. GC load",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/font/typecast/TypecastFont.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/geom/plane/AffineTransform.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/util/glsl/GLSLArrayHandler.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/font/typecast/TypecastGlyph.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RIButton.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLBufferStorage.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/font/typecast/TypecastHMetrics.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLBufferObjectTracker.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/geom/Outline.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/geom/SVertex.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TextRendererGLELBase.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/font/Font.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label0.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/geom/AABBox.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/graph/curve/opengl/GLRegion.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/varyings.glsl",
          "make/scripts/tests.sh",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/SceneUIController.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieCube.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TextRendererGLELBase.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieSimple.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/UniformNames.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1.vp",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/GLReadBuffer00Base.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/CrossHair.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java",
          "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT10.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegionSPES2.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RoundButton.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener01.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java",
          "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PVBAAES2.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-single.vp",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/LabelButton.java",
          "src/jogl/classes/com/jogamp/graph/curve/Region.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RIButton.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURendererListenerBase01.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.glsl",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/AttributeNames.java",
          "src/jogl/classes/javax/media/opengl/GLUniformData.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/RenderState.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PMSAAES2.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener02.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/TextureButton.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/uniforms.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIListenerBase01.java"
        ],
        "commitId" : "9c71f276d1fcc87b69b413847fd1da34b30d0932",
        "timestamp" : 1396564200000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Bug 801: Cleanup shader-program location/data update ; Add COLORTEXTURE + TextureSequence to Region (Demo: TextureButton)\u000a\u000aCleanup shader-program location/data update\u000a\u000a- GLUniformData:\u000a  - Allow lazy data setup, as used for\u000a    RenderState.ProgramLocal, see below\u000a\u000a- RenderState\u000a  - Separate data (pmv, weight, colorStatic) from\u000a    program-local uniforms -> add class ProgramLocal.\u000a    Reduces uniform location lookups, since\u000a    ProgramLocal is bound to Region impl.\u000a\u000a  - ProgramLocal.update(..) needs to write uniform data always,\u000a    since data is being used in multiple programs!\u000a\u000a  - No 'dirty' tracking possible, removed - see above.\u000a\u000a- RegionRenderer\u000a  - Fix shader-selection: 2-pass programs differ from 1-pass!\u000a  - No shader-setup at init\u000a\u000a+++\u000a\u000aAdd COLORTEXTURE + TextureSequence to Region\u000a  - Create color-texture coords in vertex-shader via region's bounding box (pass-1)\u000a  - Use color-texture unit in pass-1 if enabled (own shader program)\u000a  - Use TextureSequence in Region impl. providing all required data (unit + texture-name)\u000a  - Demo: TextureButton (a UIShape)\u000a",
        "date" : "2014-04-04T00:30:00+0200",
        "id" : "9c71f276d1fcc87b69b413847fd1da34b30d0932",
        "msg" : "Bug 801: Cleanup shader-program location/data update ; Add COLORTEXTURE",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIListenerBase01.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RoundButton.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/varyings.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT10.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/GLRegion.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/RenderState.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/SceneUIController.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PVBAAES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/CrossHair.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener02.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/LabelButton.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/TextureButton.java"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/tests.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-single.vp"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/UniformNames.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TextRendererGLELBase.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1.vp"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/AttributeNames.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegionSPES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/GLReadBuffer00Base.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieSimple.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/TextRegionUtil.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/uniforms.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLUniformData.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieCube.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PMSAAES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURegionGLListener01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPURendererListenerBase01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/Region.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java"
          },
          {
            "editType" : "delete",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/RIButton.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieSimple.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieCube.java"
        ],
        "commitId" : "71f96087bb8f3d171dba718668db7cd32f254bdf",
        "timestamp" : 1396566174000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Bug 801: Fix regressions from 9c71f276d1fcc87b69b413847fd1da34b30d0932 (UIShape blend clear-color, RegionRenderer initialized) ..\u000a",
        "date" : "2014-04-04T01:02:54+0200",
        "id" : "71f96087bb8f3d171dba718668db7cd32f254bdf",
        "msg" : "Bug 801: Fix regressions from 9c71f276d1fcc87b69b413847fd1da34b30d0932",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieCube.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieSimple.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/newt/classes/com/jogamp/newt/event/MouseEvent.java",
          "src/newt/classes/com/jogamp/newt/event/OutputEvent.java",
          "src/newt/classes/com/jogamp/newt/event/WindowUpdateEvent.java",
          "src/newt/classes/com/jogamp/newt/event/NEWTEvent.java",
          "src/newt/classes/com/jogamp/newt/event/KeyEvent.java",
          "src/newt/classes/com/jogamp/newt/event/WindowEvent.java",
          "src/newt/classes/com/jogamp/newt/event/InputEvent.java",
          "src/newt/classes/com/jogamp/newt/event/GestureHandler.java",
          "src/newt/classes/com/jogamp/newt/event/MonitorEvent.java"
        ],
        "commitId" : "56bd8f3007005ecbf31a19b6a02788b33910c90b",
        "timestamp" : 1396653236000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "NEWT Events: Use final .. (minor edit)\u000a",
        "date" : "2014-04-05T01:13:56+0200",
        "id" : "56bd8f3007005ecbf31a19b6a02788b33910c90b",
        "msg" : "NEWT Events: Use final .. (minor edit)",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/KeyEvent.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/WindowEvent.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/GestureHandler.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/MouseEvent.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/WindowUpdateEvent.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/MonitorEvent.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/InputEvent.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/OutputEvent.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/NEWTEvent.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/opengl/math/Quaternion.java"
        ],
        "commitId" : "0234452455511713fcbfd5df1987c3958cca781b",
        "timestamp" : 1397017530000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Fix Quaternion.rotateByEuler(..): Zero rotation shall lead to NOP instead of setting identity\u000a",
        "date" : "2014-04-09T06:25:30+0200",
        "id" : "0234452455511713fcbfd5df1987c3958cca781b",
        "msg" : "Fix Quaternion.rotateByEuler(..): Zero rotation shall lead to NOP",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/Quaternion.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/opengl/math/geom/AABBox.java",
          "src/jogl/classes/com/jogamp/opengl/math/VectorUtil.java",
          "src/jogl/classes/com/jogamp/opengl/math/Ray.java",
          "src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java"
        ],
        "commitId" : "be8d0765317cdcb44bbe3016cc18273ecace9324",
        "timestamp" : 1397017901000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Add AABBox.getRayIntersection(..), VectorUtil.line2PlaneIntersection(..) incl. getNormal*(..) and getPlane*(..)\u000a\u000aAABBox.getRayIntersection(..) provides the intersecting coordinates,\u000awhere the fast alternative AABBox.intersectsRay(..) does not.\u000a",
        "date" : "2014-04-09T06:31:41+0200",
        "id" : "be8d0765317cdcb44bbe3016cc18273ecace9324",
        "msg" : "Add AABBox.getRayIntersection(..), VectorUtil.line2PlaneIntersection(..)",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/geom/AABBox.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/Ray.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/VectorUtil.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/opengl/util/texture/TextureSequence.java",
          "src/jogl/classes/jogamp/opengl/util/av/GLMediaPlayerImpl.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/TextureSequenceDemo01.java"
        ],
        "commitId" : "7ff2fcb36540aaed087e3a2ba2f0f84916bce2e2",
        "timestamp" : 1397017980000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Add TextureSequence.isTextureAvailable(), allowing triggering action only when source becomes ready\u000a",
        "date" : "2014-04-09T06:33:00+0200",
        "id" : "7ff2fcb36540aaed087e3a2ba2f0f84916bce2e2",
        "msg" : "Add TextureSequence.isTextureAvailable(), allowing triggering action",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/texture/TextureSequence.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/util/av/GLMediaPlayerImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/TextureSequenceDemo01.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/newt/classes/com/jogamp/newt/event/PinchToZoomGesture.java",
          "src/newt/classes/com/jogamp/newt/event/GestureHandler.java"
        ],
        "commitId" : "f43b1f946159007b31162f765b1fa7b37991f940",
        "timestamp" : 1397018090000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "PinchToZoomGesture: Add 'delta' value [-1..1], move 'InputEvent trigger' up to GestureHandler\u000a",
        "date" : "2014-04-09T06:34:50+0200",
        "id" : "f43b1f946159007b31162f765b1fa7b37991f940",
        "msg" : "PinchToZoomGesture: Add 'delta' value [-1..1], move 'InputEvent trigger'",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/GestureHandler.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/PinchToZoomGesture.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGMediaPlayer.java"
        ],
        "commitId" : "9bcf943a1c149fd2a196a321260a32b51814a0b0",
        "timestamp" : 1397018130000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "FFMPEGMediaPlayer: Use 'const' qualifier in shader stub\u000a",
        "date" : "2014-04-09T06:35:30+0200",
        "id" : "9bcf943a1c149fd2a196a321260a32b51814a0b0",
        "msg" : "FFMPEGMediaPlayer: Use 'const' qualifier in shader stub",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGMediaPlayer.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderCode.java"
        ],
        "commitId" : "ff4e2b1996d2cfab1eb154020106004fb71471fd",
        "timestamp" : 1397018289000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Fix ShaderCode.insertShaderSource(..): Return 'position' if nothing has been added; ShaderCode.addDefaultShaderPrecision(..): Branch GLES3 before GLES2, since gles2.isGLES2() == true\u000a",
        "date" : "2014-04-09T06:38:09+0200",
        "id" : "ff4e2b1996d2cfab1eb154020106004fb71471fd",
        "msg" : "Fix ShaderCode.insertShaderSource(..): Return 'position' if nothing has",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderCode.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/graph/curve/opengl/GLRegion.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegionSPES2.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PVBAAES2.java",
          "src/jogl/classes/com/jogamp/graph/curve/Region.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/LabelButton.java",
          "make/scripts/tests.sh",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-segment-head.fp",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/SceneUIController.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.orig.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.glsl",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/CrossHair.java",
          "src/jogl/classes/com/jogamp/graph/curve/opengl/RenderState.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PMSAAES2.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label0.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/TextureButton.java",
          "src/jogl/classes/jogamp/graph/curve/opengl/shader/uniforms.glsl"
        ],
        "commitId" : "fe47c613e3e07681a5366d6ec3f071fdc4ade65d",
        "timestamp" : 1397020191000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Bug 801: Region Dirty Update; TextureSequence GLMediaPlayer Fix; Blending Fix ;\u000a\u000a- Region Dirty Update\u000a  - Split dirty -> ShapeDirty + StateDirty,\u000a    where StateDirty forces re-rendering content\u000a    w/o geometry update as req. for 2-pass mode.\u000a\u000a- Fix TextureSequence (GLMediaPlayer) usage in RegionRenderer / GLRegion*\u000a  - handle GL_TEXTURE_EXTERNAL_OES incl. Android ES3 bug\u000a  - inject TextureSequence's shader stubs\u000a  - shader: Use abstract lookup 'texture2D' -> 'gcuTexture2D'\u000a  - flip scaled colorTexBBox if TextureSequence 'tex.getMustFlipVertically()'\u000a\u000a  - TODO: Handle multiple TextureSequence shader programs!\u000a\u000a- Fix Blending: GLRegion* / RegionRenderer / RenderState\u000a  - Disable/Enable depth-writing w/ blending\u000a  - Region impl. sets proper glBlendFunc*(..),\u000a    i.e. 2-pass:\u000a      - render2FBO: glClearColor(0f, 0f, 0f, 0f)\u000a                    glBlendFuncSeparate(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA, GL.GL_ONE, GL.GL_ONE_MINUS_SRC_ALPHA)\u000a      - renderFBO:  glBlendFunc(GL.GL_ONE, GL.GL_ONE_MINUS_SRC_ALPHA)\u000a  - User code shall not set glClearColor(..) for 2-pass anymore\u000a\u000a- Graph-UI Demo\u000a  - UIShape:\u000a    - Add MouseGestureListener, combining MouseListener + GestureListener\u000a    - EventDetails -> PointerEventInfo\u000a    - PointerEventInfo contains objPos (ray-intersection) and glWin-pos\u000a    - Toggle:\u000a      - Separate color (on/off) if enabled\u000a      - Toggle on click if enabled\u000a\u000a  - SceneUIController\u000a    - Use PinchToZoomGesture and propagete same gesture to UIShape\u000a\u000a    - Use AABBox.getRayIntersection(..) using 'real' shape coordinates\u000a      for 1st picking.\u000a\u000a    - Use shape PMV for secondary picking (drag, zoom 2-pointer, etc),\u000a      see windowToShapeCoords(..)\u000a\u000a    - Sort shapes according to z-value (render: ascending; picking: descending)\u000a\u000a    - Only 'drag' if pointerId matches 1st pressed pointer\u000a",
        "date" : "2014-04-09T07:09:51+0200",
        "id" : "fe47c613e3e07681a5366d6ec3f071fdc4ade65d",
        "msg" : "Bug 801: Region Dirty Update; TextureSequence GLMediaPlayer Fix;",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PMSAAES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/SceneUIController.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PVBAAES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.orig.glsl"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/tests.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label0.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIShape.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/VBORegionSPES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-pass1-curve_simple.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/TextureButton.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/GLRegion.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/uniforms.glsl"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUTextRendererListenerBase01.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/Region.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/Label.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/LabelButton.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/CrossHair.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/RenderState.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/graph/curve/opengl/RegionRenderer.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/opengl/shader/curverenderer01-segment-head.fp"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/test/com/jogamp/opengl/test/junit/jogl/math/TestQuaternion01NOUI.java",
          "src/jogl/classes/com/jogamp/opengl/math/geom/AABBox.java",
          "src/jogl/classes/com/jogamp/opengl/math/VectorUtil.java",
          "src/jogl/classes/com/jogamp/opengl/math/Quaternion.java",
          "src/jogl/classes/jogamp/graph/curve/tess/Loop.java",
          "src/jogl/classes/jogamp/graph/curve/tess/CDTriangulator2DExpAddOn.java"
        ],
        "commitId" : "38365e14977714df3f19fb6b5880dd6f4d4d5743",
        "timestamp" : 1397021155000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "VectorUtil: Fix method names, i.e. use type-suffix in end of function for clarity and unique method naming\u000a",
        "date" : "2014-04-09T07:25:55+0200",
        "id" : "38365e14977714df3f19fb6b5880dd6f4d4d5743",
        "msg" : "VectorUtil: Fix method names, i.e. use type-suffix in end of function",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/tess/Loop.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/geom/AABBox.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/VectorUtil.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/math/TestQuaternion01NOUI.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/graph/curve/tess/CDTriangulator2DExpAddOn.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/math/Quaternion.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/newt/classes/jogamp/newt/WindowImpl.java",
          "src/newt/classes/com/jogamp/newt/event/MouseEvent.java",
          "src/newt/classes/jogamp/newt/driver/android/event/AndroidNewtEventFactory.java"
        ],
        "commitId" : "11021769c78343b842b723a432a08946a65a1ceb",
        "timestamp" : 1397047213000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "NEWT MouseEvent: Decouple pointerIds from single-pointer button, i.e. always use proper pointerId >= 0\u000a\u000aIn case of single-pointer mouse events, always use pointerId 0,\u000adon't derive from button name.\u000a\u000aMultiple pointer events still derive button name from the 'action' pointerId.\u000a\u000aThis allows applications to utilize pointerId equally for single and multiple\u000apointer events.\u000a\u000aPassed all 'junit.run.newt.event' unit tests\u000a",
        "date" : "2014-04-09T14:40:13+0200",
        "id" : "11021769c78343b842b723a432a08946a65a1ceb",
        "msg" : "NEWT MouseEvent: Decouple pointerIds from single-pointer button, i.e.",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/newt/classes/jogamp/newt/driver/android/event/AndroidNewtEventFactory.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/event/MouseEvent.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/jogamp/newt/WindowImpl.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/LabelButton.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java",
          "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java"
        ],
        "commitId" : "1c4a353b7edbbc03440197db3c2dabfc37f8010d",
        "timestamp" : 1397047277000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Bug 801: LabelButton uses DEFAULT_2PASS_LABEL_ZOFFSET in any mode, due to disabled depth buffer in blend mode\u000a",
        "date" : "2014-04-09T14:41:17+0200",
        "id" : "1c4a353b7edbbc03440197db3c2dabfc37f8010d",
        "msg" : "Bug 801: LabelButton uses DEFAULT_2PASS_LABEL_ZOFFSET in any mode, due",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/GPUUISceneGLListener0A.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/LabelButton.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIGLListener01.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "make/build-test.xml"
        ],
        "commitId" : "b4beeec1423d0d25b834fb41d957f4409441d413",
        "timestamp" : 1397047322000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "build-test.xml: Handle hs_err_pid*.log files, i.e. clean-up and archive\u000a",
        "date" : "2014-04-09T14:42:02+0200",
        "id" : "b4beeec1423d0d25b834fb41d957f4409441d413",
        "msg" : "build-test.xml: Handle hs_err_pid*.log files, i.e. clean-up and archive",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/build-test.xml"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/sgothel",
      "fullName" : "Sven Gothel"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/xerxes",
      "fullName" : "xerxes"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/petros",
      "fullName" : "petros"
    }
  ]
}