Skip to content

Commit

Permalink
docs: update release notes for 3.1.2
Browse files Browse the repository at this point in the history
  • Loading branch information
Spasi committed May 15, 2017
1 parent 325499e commit 1c83df5
Show file tree
Hide file tree
Showing 4 changed files with 148 additions and 34 deletions.
2 changes: 1 addition & 1 deletion doc/notes/3.1.2.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
### 3.1.2

_Not Released Yet_
_Released 2017 May 15_

This build includes the following changes:

Expand Down
3 changes: 2 additions & 1 deletion doc/notes/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@

### Version History

* 2016-12-27 [3.1.1](3.1.1.md) (latest)
* 2017-05-15 [3.1.2](3.1.2.md) (latest)
* 2016-12-27 [3.1.1](3.1.1.md)
* 2016-10-30 [3.1.0](3.1.0.md)
* 2016-06-03 [3.0.0](3.0.0.md)
* 2015-11-20 [3.0.0 Beta](3.0.0b.md)
Expand Down
80 changes: 80 additions & 0 deletions doc/notes/full.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,83 @@
### 3.1.2

_Released 2017 May 15_

This build includes the following changes:

#### Bindings

- Added [OpenVR](https://github.com/ValveSoftware/openvr) bindings.
- Added [Tiny OpenEXR](https://github.com/syoyo/tinyexr) bindings.
- Added [Yoga](https://facebook.github.io/yoga/) bindings.
- bgfx: Updated to API version 41 (up from 34)
- glfw: Updated to pre-release 3.3.0 version (up from 3.2.1). Includes many fixes and new features:
* Last error code query (`glfwGetError`)
* Requesting attention from the user (`glfwRequestWindowAttention`)
* Platform dependent scancodes for keys (`glfwGetKeyScancode`)
* Window maximization events (`glfwSetWindowMaximizeCallback`)
* Window attribute modification (`glfwSetWindowAttrib`)
* Joystick hats (`glfwGetJoystickHats`)
* Library initialization hints (`glfwInitHint`)
* Headless [OSMesa](https://www.mesa3d.org/osmesa.html) backend
* Cursor centering control (`GLFW_CENTER_CURSOR`)
* macOS: Cocoa hints (`GLFW_COCOA_RETINA_FRAMEBUFFER`, `GLFW_COCOA_FRAME_AUTOSAVE`, `GLFW_COCOA_GRAPHICS_SWITCHING`, `GLFW_COCOA_CHDIR_RESOURCES`, `GLFW_COCOA_MENUBAR`)
* macOS: Vulkan support via [MoltenVK](https://moltengl.com/moltenvk/)
* X11: Moved to XI2 `XI_RawMotion` for disabled cursor mode motion input
* EGL: Added support for `EGL_KHR_get_all_proc_addresses` and `EGL_KHR_context_flush_control`
- jemalloc: Updated to 4.5.0 (up from 4.4.0)
- LibOVR: Update to 1.14.0 (up from 1.10.0)
- lmdb: Updated to 0.9.20 (up from 0.9.18)
- NanoVG: Added support for fallback fonts.
- nuklear: Updated to 1.37.0 (up from 1.29.1, with the new versioning)
- OpenAL: Added `AL_SOFT_source_resampler` extension.
- stb
* Updated `stb_dxt` to 1.0.6 (up from 1.0.4)
* Updated `stb_easy_font` to 1.0 (up from 0.7)
* Updated `stb_image` to 2.15 (up from 2.13)
* Updated `stb_image_resize` to 0.94 (up from 0.91)
* Updated `stb_image_write` to 1.05 (up from 1.02)
* Updated `stb_perlin` to 0.3 (up from 0.2)
* Updated `stb_rect_pack` to 0.11 (up from 0.10)
* Updated `stb_truetype` to 1.15 (up from 1.12)
* Updated `stb_vorbis` to 1.10 (up from 1.09)
- tinyfiledialogs: Updated to 2.8.3 (up from 2.7.2)
- Vulkan: Updated to 1.0.49 (up from 1.0.38)

#### Improvements

- `MemoryStack`: Increased default stack size to 64kb (up from 32kb)
- Shared library loading can now utilize a `ClassLoader` specified by the caller. (#277)
- Significantly reduced `DEBUG_MEMORY_ALLOCATOR` and `DEBUG_STACK` overhead in Java 9 using the new `StackWalker` API.
- Migrated windows builds to [appveyor](https://ci.appveyor.com/project/LWJGL-CI/lwjgl3) and updated to Visual Studio 2017 (up from 2015)
- EGL: The core API now includes javadoc links to the Khronos references pages
- OpenGL ES: The core API now includes javadoc links to the Khronos references pages

#### Fixes

- Assimp: Struct member nullability fixes
- Linux: Removed dependencies to newer GLIBC versions.
- LibOVR: Fixed layout of the `ovrInputState` struct.
- OpenAL: Removed buffer auto-sizing from `alcCaptureSamples`. The number of samples must now be specified explicitly, similar to `alcRenderSamplesSOFT`.
- Vulkan: Function addresses are now retrieved only once, using the optimal method for each function type.
* This avoids warnings on pedantic validation layers.
- Fixed callback invocation bugs on 32-bit architectures.
- Fixed various javadoc formatting issues (#308)

### Breaking Changes

- Mapped more integer parameters and return values to Java `boolean`, that were missed while working on #181.
* Xlib's `Bool`
* OpenCL's `cl_bool`
* DynCall's `DCbool`
- Moved JNI global reference functions from `MemoryUtil` to the generated `org.lwjgl.system.jni.JNINativeInterface`.
- The Vulkan capabilities have been split into two classes: `VKCapabilitiesInstance` and `VKCapabilitiesDevice`.
* Flags for core Vulkan versions exist in both classes.
* Flags for instance extensions exist only in `VKCapabilitiesInstance`.
* Flags for device extensions exist only in `VKCapabilitiesDevice`.
* Functions that dispatch on `VkInstance` or `VkPhysicalDevice` exist only in `VKCapabilitiesInstance`.
* Functions that dispatch on `VkDevice` and device-derived handles exist only in `VKCapabilitiesDevice`.
* Bootstrapping functions can be retrieved with `VK.getFunctionProvider()`.

### 3.1.1

_Released 2016 Dec 27_
Expand Down
97 changes: 65 additions & 32 deletions doc/notes/latest.md
Original file line number Diff line number Diff line change
@@ -1,46 +1,79 @@
### 3.1.1
### 3.1.2

_Released 2016 Dec 27_
_Released 2017 May 15_

This build includes the following changes:

#### Bindings

- Added [Assimp](http://www.assimp.org/) bindings.
- bgfx: Updated to API version 34 (up from 28)
- jemalloc: Updated to version 4.4.0 (up from 4.2.1)
- LibOVR: Updated to version 1.10.0 (up from 1.9.0)
- nuklear: Updated to version 1.191 (up from 1.17)
- Vulkan: Updated to version 1.0.38 (up from 1.0.32)
- stb: Updated stb_image to 2.13 (up from 2.12)
- tinyfiledialogs: Updated to version 2.7.2 (up from 2.6.1)
- Added [OpenVR](https://github.com/ValveSoftware/openvr) bindings.
- Added [Tiny OpenEXR](https://github.com/syoyo/tinyexr) bindings.
- Added [Yoga](https://facebook.github.io/yoga/) bindings.
- bgfx: Updated to API version 41 (up from 34)
- glfw: Updated to pre-release 3.3.0 version (up from 3.2.1). Includes many fixes and new features:
* Last error code query (`glfwGetError`)
* Requesting attention from the user (`glfwRequestWindowAttention`)
* Platform dependent scancodes for keys (`glfwGetKeyScancode`)
* Window maximization events (`glfwSetWindowMaximizeCallback`)
* Window attribute modification (`glfwSetWindowAttrib`)
* Joystick hats (`glfwGetJoystickHats`)
* Library initialization hints (`glfwInitHint`)
* Headless [OSMesa](https://www.mesa3d.org/osmesa.html) backend
* Cursor centering control (`GLFW_CENTER_CURSOR`)
* macOS: Cocoa hints (`GLFW_COCOA_RETINA_FRAMEBUFFER`, `GLFW_COCOA_FRAME_AUTOSAVE`, `GLFW_COCOA_GRAPHICS_SWITCHING`, `GLFW_COCOA_CHDIR_RESOURCES`, `GLFW_COCOA_MENUBAR`)
* macOS: Vulkan support via [MoltenVK](https://moltengl.com/moltenvk/)
* X11: Moved to XI2 `XI_RawMotion` for disabled cursor mode motion input
* EGL: Added support for `EGL_KHR_get_all_proc_addresses` and `EGL_KHR_context_flush_control`
- jemalloc: Updated to 4.5.0 (up from 4.4.0)
- LibOVR: Update to 1.14.0 (up from 1.10.0)
- lmdb: Updated to 0.9.20 (up from 0.9.18)
- NanoVG: Added support for fallback fonts.
- nuklear: Updated to 1.37.0 (up from 1.29.1, with the new versioning)
- OpenAL: Added `AL_SOFT_source_resampler` extension.
- stb
* Updated `stb_dxt` to 1.0.6 (up from 1.0.4)
* Updated `stb_easy_font` to 1.0 (up from 0.7)
* Updated `stb_image` to 2.15 (up from 2.13)
* Updated `stb_image_resize` to 0.94 (up from 0.91)
* Updated `stb_image_write` to 1.05 (up from 1.02)
* Updated `stb_perlin` to 0.3 (up from 0.2)
* Updated `stb_rect_pack` to 0.11 (up from 0.10)
* Updated `stb_truetype` to 1.15 (up from 1.12)
* Updated `stb_vorbis` to 1.10 (up from 1.09)
- tinyfiledialogs: Updated to 2.8.3 (up from 2.7.2)
- Vulkan: Updated to 1.0.49 (up from 1.0.38)

#### Improvements

- Refactored function pointer lookups in OpenAL, OpenGL and OpenGL ES.
* Significant reduction in bytecode size (and corresponding JIT code).
* No thread-local lookup in GL and GLES, even with incompatible contexts.
* Removed obsolete thread-local and capabilities state `Configuration` options.
- Linux: All natives are now built with GCC 6.2 (up from 4.8)
- Loader: If `jemalloc` initialization fails and `org.lwjgl.system.allocator` has not been set, a simple warning is now shown instead of an exception.
- Structs: Added bound checks to element accessors of array members.
- Generator: Validation is now required for all data pointer parameters. If validation is not possible, such parameters must be marked as potentially unsafe.
- The SHA-1 hash of shared libraries is now included in the corresponding `natives` JAR files.
- The upstream git revision used to build shared libraries is now included in the corresponding `natives` JAR files.
- `MemoryStack`: Increased default stack size to 64kb (up from 32kb)
- Shared library loading can now utilize a `ClassLoader` specified by the caller. (#277)
- Significantly reduced `DEBUG_MEMORY_ALLOCATOR` and `DEBUG_STACK` overhead in Java 9 using the new `StackWalker` API.
- Migrated windows builds to [appveyor](https://ci.appveyor.com/project/LWJGL-CI/lwjgl3) and updated to Visual Studio 2017 (up from 2015)
- EGL: The core API now includes javadoc links to the Khronos references pages
- OpenGL ES: The core API now includes javadoc links to the Khronos references pages

#### Fixes

- Fixed loader diagnostics when `System.loadLibrary` fails.
- Fixed setters of struct members with optional AutoSize. (#255)
- Fixed `MemoryUtil.memRealloc` to return `null` when the allocation fails.
- Vulkan: Function pointer loading of disabled extensions is now skipped.
- Generator: `binding.DISABLE_CHECKS` is now respected in structs.
- Assimp: Struct member nullability fixes
- Linux: Removed dependencies to newer GLIBC versions.
- LibOVR: Fixed layout of the `ovrInputState` struct.
- OpenAL: Removed buffer auto-sizing from `alcCaptureSamples`. The number of samples must now be specified explicitly, similar to `alcRenderSamplesSOFT`.
- Vulkan: Function addresses are now retrieved only once, using the optimal method for each function type.
* This avoids warnings on pedantic validation layers.
- Fixed callback invocation bugs on 32-bit architectures.
- Fixed various javadoc formatting issues (#308)

#### Breaking Changes
### Breaking Changes

- macOS: LWJGL now requires macOS 10.9/Mavericks or later (up from 10.7/Lion)
- A small number of method signatures have changed because of auto-size transformations that were missing in previous releases.
- NanoVG: Text functions with an `end` pointer to the end of the string are now auto-size transformed. Buffers passed to them should not include a null-terminating byte.
- Added `LibC` prefix to all class names in the `libc` bindings, to avoid conflicts with standard Java classes (`Locale`, `String`, etc.)
- OpenGL and OpenGL ES now come with native libraries (`lwjgl_opengl` and `lwjgl_opengles` respectively).
- Removed `MemoryUtil.memSetupBuffer`.
- Mapped more integer parameters and return values to Java `boolean`, that were missed while working on #181.
* Xlib's `Bool`
* OpenCL's `cl_bool`
* DynCall's `DCbool`
- Moved JNI global reference functions from `MemoryUtil` to the generated `org.lwjgl.system.jni.JNINativeInterface`.
- The Vulkan capabilities have been split into two classes: `VKCapabilitiesInstance` and `VKCapabilitiesDevice`.
* Flags for core Vulkan versions exist in both classes.
* Flags for instance extensions exist only in `VKCapabilitiesInstance`.
* Flags for device extensions exist only in `VKCapabilitiesDevice`.
* Functions that dispatch on `VkInstance` or `VkPhysicalDevice` exist only in `VKCapabilitiesInstance`.
* Functions that dispatch on `VkDevice` and device-derived handles exist only in `VKCapabilitiesDevice`.
* Bootstrapping functions can be retrieved with `VK.getFunctionProvider()`.

0 comments on commit 1c83df5

Please sign in to comment.