Jogamp Versioning and Releases: Difference between revisions

From JogampWiki
Jump to navigation Jump to search
No edit summary
Line 3: Line 3:
== Releases ==
== Releases ==


=== [[Release 2.0-rc2|2.0-rc2]] ===
[[Release 2.0-rc3|2.0-rc3]], [[Release 2.0-rc2|2.0-rc2]], [[Release 2.0-rc1|2.0-rc1]]
 
=== [[Release 2.0-rc1|2.0-rc1]] ===


== Release Classification ==
== Release Classification ==
Line 13: Line 11:
The following list is ordered from <i>stable and oldest</i> to <i>experimental and newest</i>.
The following list is ordered from <i>stable and oldest</i> to <i>experimental and newest</i>.


=== [http://jogamp.org/deployment/webstart/ Signed Release] ===
=== [http://jogamp.org/deployment/jogamp-current/ Signed Release] ===
* This is our current signed release, IE a manual promoted and signed autobuild.
* This is our current signed release, IE a manual promoted and signed autobuild.
* As the URL suggests, it is suitable for JNLP and Applets (with or without JNLP).
* It is suitable for JNLP and Applets (with or without JNLP).
* This is the <b>most stable and recommended</b> version.
* This is the <b>most stable and recommended</b> version.
* [http://jogamp.org/deployment/webstart/archive/ Platform ZIP archive's URL] for manual installation.
* [http://jogamp.org/deployment/jogamp-current/archive/ Archive folder] containing [[#Release_and_Archived_Files|platform ZIP files]] for manual installation.


=== [http://jogamp.org/deployment/webstart-next/ Signed Candidate] ===
 
=== [http://jogamp.org/deployment/jogamp-next/ Signed Release Candidate] ===
* This is our signed release candidate, IE a manual promoted and signed autobuild.
* This is our signed release candidate, IE a manual promoted and signed autobuild.
* As the URL suggests, it is suitable for JNLP and Applets (with or without JNLP).
* It is suitable for JNLP and Applets (with or without JNLP).
* [http://jogamp.org/deployment/webstart-next/archive/ Platform ZIP archive's URL] for manual installation.
* [http://jogamp.org/deployment/jogamp-next/archive/ Platform ZIP archive's URL] for manual installation.
* [http://jogamp.org/deployment/jogamp-next/archive/ Archive folder] containing [[#Release_and_Archived_Files|platform ZIP files]] for manual installation.


=== [http://jogamp.org/deployment/jogamp-next/ Candidate] ===
=== [http://jogamp.org/deployment/v2.0-rc3/ Signed Release Specific Version] ===
* This is our unsigned release candidate, IE a manual promoted autobuild.
* This is a specific signed release, IE a manual promoted autobuild.
* [http://jogamp.org/deployment/jogamp-next/archive/ Platform ZIP archive's URL] for manual installation.
* It is suitable for JNLP and Applets (with or without JNLP).
* [http://jogamp.org/deployment/v2.0-rc3/archive/ Archive folder] containing [[#Release_and_Archived_Files|platform ZIP files]] for manual installation.


=== [http://jogamp.org/deployment/autobuilds/ Autobuilds] ===
=== [http://jogamp.org/deployment/autobuilds/ Autobuilds] ===
* What others call <i>nightlies</i>, we call it autobuild.
What others call <i>nightlies</i>, we call it autobuild.
* Autobuilds are provided by our [http://jogamp.org/chuck/job/jogl/ hudson build server],
Autobuilds are provided by our [{{SERVER}}/chuck/job/jogl/ Jenkins build server]:
* they are [http://jogamp.org/chuck/job/jogl/211/changes#detail0 triggered by git commits]  
* For [{{SERVER}}/chuck/job/jogl/ each project build reports] are available:
* and build on all supported platforms. Have a look at a [http://jogamp.org/chuck/job/jogl/211/ hudson report] if you like.
** [{{SERVER}}/chuck/job/jogl/lastSuccessfulBuild/ Last Successful JOGL Build]
 
** [{{SERVER}}/chuck/job/jogl/476/ JOGL Build 476]
Here is a [http://jogamp.org/chuck/job/jogl/changes list of all JOGL changes, for example].
* They are [{{SERVER}}/chuck/job/jogl/476/changes#detail0 triggered by git commits]  
 
* Here is a [http://jogamp.org/chuck/job/jogl/changes list of all JOGL changes].
These builds are also tested on all supported platforms automatically with junit.
* These builds are also tested on all supported platforms automatically with junit, see a [{{SERVER}}/chuck/job/jogl/label=win7-x86_64-nvida/lastCompletedBuild/testReport/ complete test report from one platform].
Here is a [http://jogamp.org/chuck/job/jogl/label=windows-x86_32/lastCompletedBuild/testReport/ complete test report from one platform].
* [{{SERVER}}/deployment/autobuilds/master/jogl-b485-2011-09-20_08-30-36/ Autobuild URL] containing [[#Autobuild_Files|platform ZIP files]] for manual installation.


=== [http://jogamp.org/deployment/archive/ Archived builds] ===
=== [http://jogamp.org/deployment/archive/ Archived builds] ===
It is what it says, archived releases, which might have been signed.
* Contains archived builds and releases.
* May be signed.
* [{{SERVER}}/deployment/archive/rc/gluegen_28-joal_17-jogl_41-jocl_25/archive/ archive URL] containing [[#Release_and_Archived_Files|platform ZIP files]] for manual installation.


== Version Classification ==
== Version Classification ==
Line 57: Line 60:
<pre>
<pre>
   <module>-<base_version>-b<build_number>-<yyyymmdd>
   <module>-<base_version>-b<build_number>-<yyyymmdd>
</pre>
[http://jogamp.org/deployment/autobuilds/jogl-b209-2010-11-09_22-35-00/ Platform ZIP files]
are named in such fashion, plus contain the platform information, OS and ARCH:
<pre> 
  jogl-2.0-b210-20101110-linux-amd64.zip
</pre>
</pre>


Line 68: Line 65:


The version fingerprint is available in the  
The version fingerprint is available in the  
[http://jogamp.org/deployment/autobuilds/jogl-b209-2010-11-09_22-35-00/artifact.properties artifact.properties] file:
[{{SERVER}}/deployment/autobuilds/master/jogl-b485-2011-09-20_08-30-36/artifact.properties artifact.properties] file:
<pre>
<pre>
gluegen.build.number=200
gluegen.build.number=200
Line 80: Line 77:
</pre>
</pre>


We deploy artifacts.properties in the online [http://jogamp.org/deployment/autobuilds/jogl-b209-2010-11-09_22-35-00/ build folder]
We deploy artifacts.properties in the online [{{SERVER}}/deployment/autobuilds/master/jogl-b485-2011-09-20_08-30-36/ build folder]
and within the platform ZIP archives.
and within the platform ZIP archives.


Line 104: Line 101:
Trusted-Library: true
Trusted-Library: true
</pre>
</pre>
You can also verify the hudson build and test on our
[http://jogamp.org/chuck/job/jogl/ hudson server].
Here is the [http://jogamp.org/chuck/job/jogl/209/ hudson report] for the above mentioned build 209,
which also links directly to the github source code repository.


Each module has also a base version, like major and minor, ie 2.0,
Each module has also a base version, like major and minor, ie 2.0,
Line 147: Line 139:
The dump is hold in the file <pre>test.log</pre>,
The dump is hold in the file <pre>test.log</pre>,
which you should send to us in case of a bugreport.
which you should send to us in case of a bugreport.
== Autobuild Files ==
[{{SERVER}}/deployment/autobuilds/master/jogl-b485-2011-09-20_08-30-36/ Autobuild Platform ZIP files] for each module
follow the [[#Version_Classification|versioning]] scheme plus contain the platform identifier [{{SERVER}}/jogl/doc/deployment/JOGL-DEPLOYMENT.html#NativeJARFileNameConvention OS and ARCH]:
<pre> 
  jogl-2.0-b210-20101110-linux-amd64.zip
</pre>
== Release and Archived Files ==
[{{SERVER}}/deployment/jogamp-current/archive/ Release Platform ZIP files] for all modules
just contain the platform information, [{{SERVER}}/jogl/doc/deployment/JOGL-DEPLOYMENT.html#NativeJARFileNameConvention OS and ARCH]:
<pre> 
  jogamp-linux-amd64.7z
</pre>

Revision as of 15:52, 20 September 2011

Releases

2.0-rc3, 2.0-rc2, 2.0-rc1

Release Classification

Releases follow the above mentioned versioning scheme.

The following list is ordered from stable and oldest to experimental and newest.

Signed Release

  • This is our current signed release, IE a manual promoted and signed autobuild.
  • It is suitable for JNLP and Applets (with or without JNLP).
  • This is the most stable and recommended version.
  • Archive folder containing platform ZIP files for manual installation.


Signed Release Candidate

Signed Release Specific Version

  • This is a specific signed release, IE a manual promoted autobuild.
  • It is suitable for JNLP and Applets (with or without JNLP).
  • Archive folder containing platform ZIP files for manual installation.

Autobuilds

What others call nightlies, we call it autobuild. Autobuilds are provided by our Jenkins build server:

Archived builds

Version Classification

Version Fingerprint

You can get the get the source code via git, hence all references of a JogAmp module version boils down to:

  • module base version
  • git commit sha1 hash
  • build number
  • module OS and ARCH

We construct a full version string as follows:

   <module>-<base_version>-b<build_number>-<yyyymmdd>

artifact.properties

The version fingerprint is available in the artifact.properties file:

gluegen.build.number=200
gluegen.build.id=2010-11-09_22-30-24
gluegen.build.branch=master
gluegen.build.commit=92e1e8b24d128e08f13b05bd630ad7b0bf1cbf9f
jogl.build.number=209
jogl.build.id=2010-11-09_22-35-00
jogl.build.branch=master
jogl.build.commit=4ea473a2cbf59fcbd8e82d26da389cd8c2b4a291

We deploy artifacts.properties in the online build folder and within the platform ZIP archives.

JAR Manifest

The version fingerprint is also included within each JAR Manifest file, where the Specification-Version equals the module base version and the Implementation-Version equals the above mentioned full version string

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.0
Created-By: 1.6.0_21-b06 (Sun Microsystems Inc.)
Specification-Title: Java Bindings for OpenGL API Specification
Specification-Version: 2.0
Specification-Vendor: JogAmp community
Implementation-Title: Java Bindings for OpenGL Runtime Environment
Implementation-Version: 2.0-b209-20101110
Implementation-Branch: master
Implementation-Commit: 4ea473a2cbf59fcbd8e82d26da389cd8c2b4a291
Implementation-Vendor: JogAmp community
Extension-Name: javax.media.opengl
Implementation-Vendor-Id: com.jogamp
Trusted-Library: true

Each module has also a base version, like major and minor, ie 2.0, which we may change to emphasize major feature and API changes.

Runtime Version Check

Each module has a build in VersionInfo class with a static main entry, ie com.jogamp.common.util.VersionInfo (gluegen), or com.jogamp.opengl.util.VersionInfo (JOGL).

When invoked, ie via JOGL's platform ZIP file:

  • etc/test.sh (Unixoid), or
  • etc\test.bat (Windows)

you will see the full dump of the runtime platform and the above mentioned version footprint.

JOGL Platform: Linux 2.6.35.7-x86_64-k10-x8-risa (os), amd64 (arch)
JOGL Platform: littleEndian true, 32Bit false, a-ptr bit-size 64
JOGL Platform: Java 1.6.0_21, Sun Microsystems Inc., http://java.sun.com/, is JavaSE: true

JOGL package javax.media.opengl
JOGL Implementation-Title = Java Bindings for OpenGL Runtime Environment
JOGL Implementation-Version = 2.0-b211-20101110
JOGL Specification-Vendor = JogAmp Community
JOGL Manifest-Version = 1.0
JOGL Created-By = 1.6.0_21-b06 (Sun Microsystems Inc.)
JOGL Implementation-Vendor = JogAmp Community
JOGL Implementation-Commit = 0893339854e3f4a4fab7b19e073304973e763b10
JOGL Ant-Version = Apache Ant 1.8.0
JOGL Implementation-Vendor-Id = com.jogamp
JOGL Trusted-Library = true
JOGL Specification-Title = Java Bindings for OpenGL API Specification
JOGL Implementation-Branch = master
JOGL Specification-Version = 2.0
JOGL Extension-Name = javax.media.opengl

The dump is hold in the file

test.log

,

which you should send to us in case of a bugreport.

Autobuild Files

Autobuild Platform ZIP files for each module follow the versioning scheme plus contain the platform identifier OS and ARCH:

   
   jogl-2.0-b210-20101110-linux-amd64.zip

Release and Archived Files

Release Platform ZIP files for all modules just contain the platform information, OS and ARCH:

   
  jogamp-linux-amd64.7z