Skip to content
The Jenkins Controller is preparing for shutdown. No new builds can be started.
Success

Changes

Summary

  1. InterruptSource.Thread: Add ctor variant w/ sole Runnable argument (was missing) (details)
  2. Bump 2.6.0-rc-... (details)
  3. Add WorkerThread: A re-start'able, pause'able and interrupt'able worker thread with an optional minimum execution duration (details)
  4. WorkerThread: Move 'streamErr' Exception to local Runnable (details)
  5. WorkerThread: Add optional minDelay to throttle excecution (details)
  6. WorkerThread: Fix minDelayMS assignment using validated field value (details)
  7. WorkerThread: Remove minDelayMS field, have it in Runnable branch only (details)
  8. WorkerThread: Enhanced testing, added optional StateCallback for state changes, using bitfield state (earmarked to be used within GLMediaPlayerImpl etc) (details)
  9. Uri: Added `Uri tryUriOrFile(final String uri_s)` for convenience / usability, as well as getScheme(String), isValidScheme(String), isFileScheme(String) and isHttpxScheme(String) (details)
  10. WorkerThread.start(paused): Merge RUNNING | ACTIVE (details)
  11. build.xml: Fix typo in a target description (details)
  12. AudioSink: Just pass a finte buffer size (KISS), add getLastBufferedPTS() to access the last buffered audio pts (details)
  13. Clock/Platform: Add currentMillis() analogue to currentNanos(), returning current monotonic milliseconds **since start of this application** (details)
  14. AudioSink/TimeFrame1: API doc: Add notes about integer stored milliseconds for PTS and duration, i.e. good for 24.855 days (details)
  15. AudioSink: Rename getQueued{Time->Duration}(), add updateQueue() (details)
  16. Bug 1472: Enhance AV Sync: Pass through PTS object in AudioSink, tracking last PTS value against System Clock Reference (SCR) (details)
  17. PTS: get(currentMillis): Employ rounding in integer conversion (details)
  18. PTS: Add copy constructor (details)
  19. Bug 1479: NativeLibrary: Add getNativeLibraryPath() returning queried used native library path, supported throughout DynamicLibraryBundle[Info] (details)
  20. Bug 1474: Allow temp folder for exe-file test to contain parenthesis on Windows (details)
  21. Bug 1474: Only quote exe-file path on Windows for execution (details)
  22. Bug 1481 - Hide [ArgumentIs]PascalString argument's length (details)
  23. TestStructGen*: Enable standalone testing, enforce Platform.initSingleton() (details)
  24. Bug 1481 - Remove redundant isPascalLen() branch (details)
  25. feat(callbackGenerator): Prevent NPE during call of java callback (details)
  26. PTS: Add millisToTimeStr(..) convenient time string representation, also used by added get{SCR, Last, }TimeStr(..) methods (details)
  27. PTS: Add convenient getCurrent() passing Clock.currentMillis() to get(long). (details)
  28. PTS: Add toMillis(String), parsing string representation in '[H[H]:]m[m]:s[s][.S*]' using custom DateTimeFormatter to milliseconds, complementing millisToTimeStr(..) (details)
  29. PTS: Rename millisToTimeStr() -> toTimeStr(), analogue to toMillis() (details)
  30. Adding StringUtil, containing basic utility functions as well as unicode space (whitespace) and full- and halfwidth tests. (details)
  31. Bump runtest.sh script w/ StringUtil test (details)
  32. Rename StringUtil.strip() -> StringUtil.trim(), refine API doc (details)
  33. feat(manual): Update configuration documentation (all are documented). (details)
  34. Fix casting in Buffers.c (details)
  35. HowToBuild: Debian 12 (details)
  36. jogamp-env: Default sourcelevel/targetlevel to 1.8 (details)
  37. jogamp-env: Cleanup whitespace (details)
  38. bump test script (details)
  39. Eclipse: Bump + Add CDT for native files (details)
  40. Bug 1510: NativeLibrary shall respect OS library-path environment variable for searching in system-path (details)
  41. Build/test: Use OpenJDK-21 per default (details)
  42. JogAmpMacOSVersions: Bump adding MacOS 15 Sequoia testing (details)
  43. Update md -> html (details)
  44. Use Java-11 Target and Android SDK 36 / NDK 29 (2025-06-25) (details)
  45. Android NDK 29 strip is llvm-strip (details)
  46. Tests: Increase timing/clock tolerance: TestClock01 + TestWorkerThread01 (details)
  47. JDK-8309361: JDK-21 perf-issue (annotation) (details)
  48. JDK-21 Perf: TestIntIntHashMap: Add 2nd warm-up, increase tolerance to 4x on JDK-21 (1.5 on JDK < 21) (details)
  49. Replace 'semver' w/ 'japicmp' for Java >= 11 Compatibility (details)
Commit 7da4c280b7424e63af45725d1735a9de733eee4c by Sven Gothel
InterruptSource.Thread: Add ctor variant w/ sole Runnable argument (was missing)
The file was modifiedsrc/java/com/jogamp/common/util/InterruptSource.java (diff)
The file was modifiedmake/jogamp-env.xml (diff)
Commit fedfc22ba3a3583a3ecf4b55f7f8a822045b690c by Sven Gothel
Add WorkerThread: A re-start'able, pause'able and interrupt'able worker thread with an optional minimum execution duration
The file was modifiedmake/scripts/runtest.sh (diff)
The file was addedsrc/junit/com/jogamp/common/util/TestWorkerThread01.java (diff)
The file was addedsrc/java/com/jogamp/common/util/WorkerThread.java (diff)
Commit dbacecc077fe44142d7ed1ba74a41d5e50cd8dc8 by Sven Gothel
WorkerThread: Move 'streamErr' Exception to local Runnable
The file was modifiedsrc/java/com/jogamp/common/util/WorkerThread.java (diff)
Commit 53790cc4718d5e46f390a80957a45d30955c430f by Sven Gothel
WorkerThread: Add optional minDelay to throttle excecution
The file was modifiedsrc/junit/com/jogamp/common/util/TestWorkerThread01.java (diff)
The file was modifiedsrc/java/com/jogamp/common/util/WorkerThread.java (diff)
Commit 2b754aafac129493976fcd82d0dacf145d44cab1 by Sven Gothel
WorkerThread: Fix minDelayMS assignment using validated field value
The file was modifiedsrc/java/com/jogamp/common/util/WorkerThread.java (diff)
Commit 7fe177c87184cbe9c170ed708a1db3deeb7e390c by Sven Gothel
WorkerThread: Remove minDelayMS field, have it in Runnable branch only
The file was modifiedsrc/java/com/jogamp/common/util/WorkerThread.java (diff)
Commit fdda2f12a5aa6f931f693b15e1c3cd7dab030882 by Sven Gothel
WorkerThread: Enhanced testing, added optional StateCallback for state changes, using bitfield state (earmarked to be used within GLMediaPlayerImpl etc)
The file was modifiedsrc/java/com/jogamp/common/util/WorkerThread.java (diff)
The file was modifiedsrc/junit/com/jogamp/common/util/TestWorkerThread01.java (diff)
Commit b91eced514871ccfc1462657d437ecadd2d7f197 by Sven Gothel
Uri: Added `Uri tryUriOrFile(final String uri_s)` for convenience / usability, as well as getScheme(String), isValidScheme(String), isFileScheme(String) and isHttpxScheme(String)
The file was modifiedsrc/java/com/jogamp/common/net/Uri.java (diff)
Commit f4a8ffff69f5882a11e1fec34bd22e0441c63d2c by Sven Gothel
WorkerThread.start(paused): Merge RUNNING | ACTIVE

Last review editting I hope :)
The file was modifiedsrc/java/com/jogamp/common/util/WorkerThread.java (diff)
Commit 0a0d4fc054670e2a40721a18930322b91ae580c8 by Sven Gothel
build.xml: Fix typo in a target description
The file was modifiedmake/build.xml (diff)
Commit e23a4c7fcc0b585c0708be114fa364e391da4843 by Sven Gothel
AudioSink: Just pass a finte buffer size (KISS), add getLastBufferedPTS() to access the last buffered audio pts
The file was modifiedsrc/java/jogamp/common/av/JavaSoundAudioSink.java (diff)
The file was modifiedsrc/java/com/jogamp/common/av/AudioSink.java (diff)
The file was modifiedsrc/java/jogamp/common/av/NullAudioSink.java (diff)
Commit ba3748eb1d478d4377ea003f909c668db90a82c3 by Sven Gothel
Clock/Platform: Add currentMillis() analogue to currentNanos(), returning current monotonic milliseconds **since start of this application**

Also added TSPrinter, a simple millisecond timestamp prepending `print*()` wrapper for a {@link PrintStream}.

Test coverage via TestClock01.
The file was addedsrc/junit/com/jogamp/common/os/TestClock01.java (diff)
The file was modifiedsrc/native/common/jau_sys_Clock.c (diff)
The file was addedsrc/java/com/jogamp/common/util/TSPrinter.java (diff)
The file was modifiedmake/scripts/runtest.sh (diff)
The file was modifiedsrc/java/com/jogamp/common/os/Clock.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/Platform.java (diff)
Commit 8376f21f2b6f25f3fc8ff2688ef49a2e9c91f966 by Sven Gothel
AudioSink/TimeFrame1: API doc: Add notes about integer stored milliseconds for PTS and duration, i.e. good for 24.855 days
The file was modifiedsrc/java/com/jogamp/common/av/AudioSink.java (diff)
The file was modifiedsrc/java/com/jogamp/common/av/TimeFrameI.java (diff)
Commit dbd0236203f3d969575e62097f42a2a86e2a36ae by Sven Gothel
AudioSink: Rename getQueued{Time->Duration}(), add updateQueue()
The file was modifiedsrc/java/com/jogamp/common/av/AudioSink.java (diff)
The file was modifiedsrc/java/jogamp/common/av/JavaSoundAudioSink.java (diff)
The file was modifiedsrc/java/jogamp/common/av/NullAudioSink.java (diff)
Commit 52725b4c6525487f93407f529dc0a758b387a4fc by Sven Gothel
Bug 1472: Enhance AV Sync: Pass through PTS object in AudioSink, tracking last PTS value against System Clock Reference (SCR)

This allows passing through actual SCR with the PTS when enqueueing audio frames
and utilizing it when querying actual time lapsed PTS value (interpolation SCR to currentMillis).
The file was modifiedsrc/java/jogamp/common/av/NullAudioSink.java (diff)
The file was modifiedsrc/java/com/jogamp/common/av/AudioSink.java (diff)
The file was modifiedsrc/java/jogamp/common/av/JavaSoundAudioSink.java (diff)
The file was addedsrc/java/com/jogamp/common/av/PTS.java (diff)
Commit 2a91bec43a7a58efc22dd36e919308ecc50d9b4a by Sven Gothel
PTS: get(currentMillis): Employ rounding in integer conversion
The file was modifiedsrc/java/com/jogamp/common/av/PTS.java (diff)
Commit aea14464d521dca28165498ffe943ef1122fc2e3 by Sven Gothel
PTS: Add copy constructor
The file was modifiedsrc/java/com/jogamp/common/av/PTS.java (diff)
Commit c7efca6d9b0db7305f5352ebf15d915ae5a1fa24 by Sven Gothel
Bug 1479: NativeLibrary: Add getNativeLibraryPath() returning queried used native library path, supported throughout DynamicLibraryBundle[Info]

Motivation: It is helpful to retrieve the actually used native library pathname,
since loading a library w/o absolute path but lookup through LD_LIBRARY_PATH
may render it hard for the user to determine which library is used.

+++

+++

Windows implementation simply can use GetModuleFileNameA() with the native library handle.

POSIX implementation may utilize a symbol-name to retrieve its address within the
loading native library used to retrieved the library information
via dladdr().

To support this feature throughout DynamicLibraryBundle and DynamicLibraryBundleInfo,
the custom DynamicLibraryBundleInfo specializations shall provide
optional symbol-names per each tool-library-name for the POSIX implementation,
see above.

public interface DynamicLibraryBundleInfo {

...

/**
* Returns optional list of optional symbol names per {@link #getToolLibNames()}
* in same order for an OS which requires the symbol's address to retrieve
* the path of the containing library.
*/
public List<String> getSymbolForToolLibPath();

...

}
The file was modifiedmake/scripts/runtest.sh (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.java (diff)
The file was modifiedsrc/native/windows/WindowsDynamicLinkerImpl_JNI.c (diff)
The file was modifiedsrc/java/jogamp/common/os/DynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/NativeLibrary.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/Test4p2JavaCallback.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2LoadJNIAndImplLib.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/Test3p2PtrStorage.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLibraryBundleInfo.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLibraryBundle.java (diff)
The file was modifiedsrc/java/jogamp/common/os/UnixDynamicLinkerImpl.java (diff)
The file was modifiedsrc/java/jogamp/common/os/WindowsDynamicLinkerImpl.java (diff)
The file was modifiedsrc/native/unix/UnixDynamicLinkerImpl_JNI.c (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/Test2p2FuncPtr.java (diff)
The file was modifiedsrc/java/com/jogamp/common/os/DynamicLinker.java (diff)
Commit c8cb87e17a14281a9d0e2f311b8534ecb7ac00b4 by Sven Gothel
Bug 1474: Allow temp folder for exe-file test to contain parenthesis on Windows

If the temp path contains parenthesis on Windows, e.g. the username or the sub-temp folder,
the used exeTestFile.getCanonicalPath() can't be used by 'Runtime.getRuntime().exec( path )'.

Example: C:\Users\(ABC)abc\AppData\Local\Temp
Output: Exe-Tst: 'C:\Users\' is not recognized as an internal or external command, operable program or batch file.

Hence the complete canonical path must be quoted, i.e.
Path: "C:\Users\(ABC)abc\AppData\Local\Temp"
The file was modifiedmake/scripts/runtest.sh (diff)
The file was modifiedmake/scripts/runtest-x64.bat (diff)
The file was modifiedsrc/java/com/jogamp/common/util/IOUtil.java (diff)
The file was modifiedsrc/junit/com/jogamp/common/net/TestUri99LaunchOnReservedCharPathBug908.java (diff)
The file was modifiedmake/scripts/java-win64.bat (diff)
Commit 0f731bfabcdd19665c3c09c5f40f898101c501c9 by Sven Gothel
Bug 1474: Only quote exe-file path on Windows for execution

Double quoting of the exe-file for execution is only allowed and required on Window.
The file was modifiedsrc/java/com/jogamp/common/util/IOUtil.java (diff)
The file was modifiedmake/scripts/runtest.sh (diff)
Commit 0666c8f9a353b42ffde4902dc0cdec66f925a6e3 by Sven Gothel
Bug 1481 - Hide [ArgumentIs]PascalString argument's length

Native pascal strings shall be just treated as normal Java strings on the Java side.

Hence drop the length parameter across generated API, i.e.
- C Function bindings
- Java Callbacks
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.h (diff)
The file was modifieddoc/manual/index.md (diff)
The file was modifiedsrc/java/com/jogamp/gluegen/CMethodBindingEmitter.java (diff)
The file was modifiedsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java (diff)
The file was modifiedsrc/java/com/jogamp/gluegen/JavaEmitter.java (diff)
The file was modifieddoc/manual/index.html (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java (diff)
The file was modifiedmake/scripts/runtest.sh (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p2DynamicLibraryBundle.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/BaseClass4JavaCallback.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/test2-CustomJavaImplCode.java.stub (diff)
The file was modifiedsrc/java/com/jogamp/gluegen/MethodBinding.java (diff)
The file was modifiedsrc/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/test1.c (diff)
The file was modifiedsrc/java/com/jogamp/gluegen/JavaConfiguration.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/test1-common.cfg (diff)
The file was modifiedsrc/java/com/jogamp/gluegen/JavaType.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.java (diff)
Commit 0cad15cc7538600ec741e685cc8f054d8607a52d by Sven Gothel
TestStructGen*: Enable standalone testing, enforce Platform.initSingleton()
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen01.java (diff)
The file was modifiedsrc/junit/com/jogamp/gluegen/test/junit/structgen/TestStructGen02.java (diff)
Commit 2a48dd9009e5b0b17d78f016e149e4cb387539e6 by Sven Gothel
Bug 1481 - Remove redundant isPascalLen() branch
The file was modifiedsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java (diff)
Commit d56cd13883c2af1f42906a5327c78b1a7c684012 by mfery
feat(callbackGenerator): Prevent NPE during call of java callback

NPE can occured when argument supplied by native api are compoundTypeWrapper but pointer are NULL
The file was modifiedsrc/java/com/jogamp/gluegen/JavaCallbackEmitter.java (diff)
Commit e3b10d335cc2fb659bb5bd3d8ab82e93eb36080c by Sven Gothel
PTS: Add millisToTimeStr(..) convenient time string representation, also used by added get{SCR, Last, }TimeStr(..) methods
The file was modifiedsrc/java/com/jogamp/common/av/PTS.java (diff)
Commit e933eb4cdf939a0b2284bf36e084959ffd4f04b2 by Sven Gothel
PTS: Add convenient getCurrent() passing Clock.currentMillis() to get(long).
The file was modifiedsrc/java/com/jogamp/common/av/PTS.java (diff)
Commit af281cc88434f5cf6cdaeaf7fe379ba7f9e6d978 by Sven Gothel
PTS: Add toMillis(String), parsing string representation in '[H[H]:]m[m]:s[s][.S*]' using custom DateTimeFormatter to milliseconds, complementing millisToTimeStr(..)
The file was modifiedsrc/java/com/jogamp/common/av/PTS.java (diff)
Commit a67d19d005de669c0c4b240745d5359921acc90a by Sven Gothel
PTS: Rename millisToTimeStr() -> toTimeStr(), analogue to toMillis()
The file was modifiedsrc/java/com/jogamp/common/av/PTS.java (diff)
Commit 36f595b37220976125222f7f5b3dbfc74df163e0 by Sven Gothel
Adding StringUtil, containing basic utility functions as well as unicode space (whitespace) and full- and halfwidth tests.
The file was addedsrc/junit/com/jogamp/common/util/TestStringUtil.java (diff)
The file was addedsrc/java/com/jogamp/common/util/StringUtil.java (diff)
Commit 1947c156ca033d98c40435d17bdfc70ab53db7af by Sven Gothel
Bump runtest.sh script w/ StringUtil test
The file was modifiedmake/scripts/runtest.sh (diff)
Commit d9604cf4687c3f4e14967ee748749c784fd1578f by Sven Gothel
Rename StringUtil.strip() -> StringUtil.trim(), refine API doc
The file was modifiedsrc/java/com/jogamp/common/util/StringUtil.java (diff)
The file was modifiedsrc/junit/com/jogamp/common/util/TestStringUtil.java (diff)
Commit 1728ddeac61296e74fbedb87eb065729cd935c91 by mfery
feat(manual): Update configuration documentation (all are documented).

Add following configuration :
* DelegateImplementation
* ImmutableAccess
* JavaCallbackDef
* LibraryOnLoad
* MethodJavadoc
* NIOOnly
* RenameJavaSymbol
* RelaxedEqualSemanticsTest
* ReturnsOpaque
* StructMachineDataInfoIndex
* TagNativeBinding
* UnsupportedExceptionType

Update following configuration :
* ClassJavadoc
* NioDirectOnly

doc/manual/index.html are updated with following command :
`../pandoc-buttondown-cgit/pandoc_md2html_local.sh doc/manual/index.md > doc/manual/index.html`
(Use following repo : https://jausoft.com/cgit/users/sgothel/pandoc-buttondown-cgit.git on master -> fb38ada0c8d71a2b26bd3ee9d075acce84d76b2c)
The file was modifieddoc/manual/index.md (diff)
The file was modifieddoc/manual/index.html (diff)
Commit 30a23edaf3e793de5a9179ef56972e0953a46c6a by sibo.vangool
Fix casting in Buffers.c
The file was modifiedsrc/native/common/Buffers.c (diff)
The file was modifieddoc/HowToBuild.html (diff)
The file was modifieddoc/JogAmpMacOSVersions.md (diff)
Commit 2ed04d813073dde75435e7caa2bc8c20340fdc55 by Sven Gothel
jogamp-env: Default sourcelevel/targetlevel to 1.8
The file was modifiedmake/jogamp-env.xml (diff)
Commit bed67d20e1860c094204504d2ffd2847332ef933 by Sven Gothel
jogamp-env: Cleanup whitespace
The file was modifiedmake/jogamp-env.xml (diff)
The file was modifiedmake/scripts/runtest.sh (diff)
Commit fe97e31fa237f51e0fb842d47bcf28af80cc0c16 by Sven Gothel
Eclipse: Bump + Add CDT for native files
The file was added.settings/org.eclipse.cdt.codan.core.prefs (diff)
The file was added.cproject (diff)
The file was added.settings/language.settings.xml (diff)
The file was added.settings/org.eclipse.cdt.core.prefs (diff)
The file was added.settings/org.eclipse.cdt.managedbuilder.core.prefs (diff)
The file was modified.project (diff)
Commit 390794a4647e1f7e9755f2936922abbe096c85eb by Sven Gothel
Bug 1510: NativeLibrary shall respect OS library-path environment variable for searching in system-path

NativeLibrary's 'enumerateLibraryPaths' system search
only uses the library basename to utilize the OS's search algorithm.

This is not sufficient for all OS, e.g. Windows 10.
Example: Prepend a custom Mesa3D OpenGL library to the environment variable PATH.

Solution is to explicitly search in all directories of the system environment variable:
- Windows: PATH
- MacOS: DYLD_LIBRARY_PATH
- Unix: LD_LIBRARY_PATH

before using the plain basename.
The file was modifiedsrc/java/com/jogamp/common/os/NativeLibrary.java (diff)
Commit bf234e8f24a4f9da4e4bafdfce00e0fe9703f2c0 by Sven Gothel
Build/test: Use OpenJDK-21 per default
The file was modifiedmake/scripts/java-win64.bat (diff)
The file was modifiedmake/scripts/make.gluegen.all.win64.bat (diff)
The file was modifiedmake/scripts/setenv-build-jogamp-x86_64.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.ios.arm64.sh (diff)
The file was modifiedmake/jogamp-env.xml (diff)
The file was modifiedmake/scripts/setenv-build-jogamp-x86.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.ios.amd64.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.macosx.sh (diff)
The file was modifiedmake/scripts/make.macosx.jdk_lipo_libs.sh (diff)
Commit 3863ee3504a508c04ee57903bdbb62f6291c82d0 by Sven Gothel
JogAmpMacOSVersions: Bump adding MacOS 15 Sequoia testing
The file was modifieddoc/JogAmpMacOSVersions.md (diff)
The file was modifieddoc/manual/index.html (diff)
The file was modifieddoc/JogAmpMacOSVersions.html (diff)
Commit b063ea93d87cae41e3465e4dc1adf1f59a2695db by Sven Gothel
Use Java-11 Target and Android SDK 36 / NDK 29 (2025-06-25)

- Drop target.rt.jar
- target.sourcelevel=11, target.targetlevel=11

Android
- Android SDK 36 / NDK 29 (2025-06-25)
- <uses-sdk android:minSdkVersion="24" android:targetSdkVersion="34"/>
The file was modifieddoc/HowToBuild.html (diff)
The file was modifiedmake/gluegen-cpptasks-base.xml (diff)
The file was modifiedmake/resources/android/AndroidManifest-Runtime.xml (diff)
The file was modifiedmake/jogamp-androidtasks.xml (diff)
The file was modifiedmake/lib/gluegen-cpptasks-android-armv6.xml (diff)
The file was modifiedmake/scripts/setenv-android-tools.sh (diff)
The file was addedmake/scripts/make.gluegen.all.android-x86_64-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-x86_64-clang.sh (diff)
The file was modifiedmake/lib/gluegen-cpptasks-android-aarch64.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-aarch64-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.ios.arm64.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.win64.bat (diff)
The file was modifiedmake/scripts/make.gluegen.all.macosx.sh (diff)
The file was modifiedmake/resources/android/AndroidManifest-Launcher.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-ppc64le.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.generic.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6hf-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-x86_64.sh (diff)
The file was addedmake/lib/gluegen-cpptasks-android-x86_64.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.android-x86-cross.sh (diff)
The file was modifiedmake/build-test.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.android-aarch64-cross.sh (diff)
The file was modifiedmake/jogamp-env.xml (diff)
The file was modifiedmake/build.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-x86-clang.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-armv6hf.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-aarch64.sh (diff)
The file was modifiedmake/resources/android/AndroidManifest-Test.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.android-armv6-cross.sh (diff)
The file was modifiedmake/scripts/make.gluegen.all.ios.amd64.sh (diff)
The file was addedmake/scripts/adb-install-all-x86_64.sh (diff)
The file was modifiedmake/lib/gluegen-cpptasks-android-x86.xml (diff)
The file was modifiedmake/scripts/make.gluegen.all.linux-x86.sh (diff)
Commit 89274d6737591f6f9070d82e810dae2473712edf by Sven Gothel
Android NDK 29 strip is llvm-strip
The file was modifiedmake/gluegen-cpptasks-base.xml (diff)
Commit 1056fa168591fcc8e9531cc37dadfb777c5f0486 by Sven Gothel
Tests: Increase timing/clock tolerance: TestClock01 + TestWorkerThread01

OpenJDK 21 seems to behave slower on our old/slow MacOS x86_64 and Windows x86_64,
regarding thread scheduling (sleep?).

TestClock01: MacOS

TestWorkerThread01: MacOS + Windows
The file was modifiedmake/scripts/runtest.sh (diff)
The file was modifiedmake/scripts/runtest-x64.bat (diff)
The file was modifiedsrc/junit/com/jogamp/common/util/TestWorkerThread01.java (diff)
The file was modifiedsrc/junit/com/jogamp/common/os/TestClock01.java (diff)
Commit 480e57b817f0c8d832f1988355e015f6ed1d36bd by Sven Gothel
JDK-8309361: JDK-21 perf-issue (annotation)

commit 1056fa168591fcc8e9531cc37dadfb777c5f0486 increased timing/clock tolerances
due to thread scheduler changes introduced in JDK-21.

Issue is now identified as: JDK-8309361
See <https://bugs.openjdk.org/browse/JDK-8309361>
The file was modifiedsrc/junit/com/jogamp/common/util/TestWorkerThread01.java (diff)
The file was modifiedsrc/junit/com/jogamp/common/os/TestClock01.java (diff)
Commit 47eec7e7eb549572461861120c2d6969999ecc93 by Sven Gothel
JDK-21 Perf: TestIntIntHashMap: Add 2nd warm-up, increase tolerance to 4x on JDK-21 (1.5 on JDK < 21)

Might be related to JDK-8309361 as well
The file was modifiedmake/scripts/runtest-x64.bat (diff)
The file was modifiedsrc/junit/com/jogamp/common/util/TestIntIntHashMap.java (diff)
Commit 492240c5176c91fd159e9010983aebc0e616b325 by Sven Gothel
Replace 'semver' w/ 'japicmp' for Java >= 11 Compatibility

The original semantic-versioning 'semver' 0.9.33-SNAPSHOT
is no more maintained and not compatible w/ Java >= 11 class files.

The frozen project recommends using 'japicmp',
which we use as a replacement now (version 0.23.1).

Both projects are licensed under the Apache License 2.0
The file was modifiedmake/gluegen-properties.xml (diff)
The file was modifiedmake/scripts/runtest.sh (diff)
The file was removedmake/lib/semantic-versioning/README.md (diff)
The file was modifiedmake/scripts/java-win64.bat (diff)
The file was modifiedmake/build-test.xml (diff)
The file was addedmake/lib/japicmp/japicmp-with-dependencies.jar (diff)
The file was modified.classpath (diff)
The file was removedmake/lib/semantic-versioning/LICENSE (diff)
The file was modifiedmake/scripts/runtest-x64.bat (diff)
The file was addedmake/lib/japicmp/README.txt (diff)
The file was addedmake/lib/japicmp/japicmp-with-dependencies.jar.sha1 (diff)
The file was removedmake/lib/semantic-versioning/semver.jar (diff)
The file was modifiedsrc/junit/com/jogamp/common/util/TestVersionSemantics.java (diff)
The file was modifiedmake/build.xml (diff)
The file was removedmake/lib/semantic-versioning/VERSION (diff)
The file was removedmake/lib/semantic-versioning/semver-src.zip (diff)
The file was modifiedsrc/junit/com/jogamp/junit/util/VersionSemanticsUtil.java (diff)
The file was addedmake/lib/japicmp/VERSION (diff)
The file was addedmake/lib/japicmp/japicmp-sources.jar.sha1 (diff)
The file was addedmake/lib/japicmp/japicmp-sources.jar (diff)
The file was addedmake/lib/japicmp/LICENSE (diff)