Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v3.1.10 commits and release notes #364

Merged
merged 20 commits into from
Jan 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
7d7d864
Use security@openexr.com for consistency (#326)
cary-ilm Jun 17, 2023
f8768d2
Expand epsilon bounds for m44x pyImath test (#333)
ZTKlein Jul 4, 2023
60a69b2
Add .readthedocs.yml (#327)
cary-ilm Jun 15, 2023
b7894fe
Rename "docs" to "website" (#338)
cary-ilm Aug 1, 2023
e14263e
Fix calling default constructor by uniform init. (#340)
sukeya Aug 3, 2023
06b6008
Add missing copyright/license identifiers (#342)
cary-ilm Aug 3, 2023
42543c0
Remove unnecessary files (#341)
cary-ilm Aug 13, 2023
8c5a12a
Changed implementation of succ and pred to use std::nextafter. (#353)
jihema Oct 12, 2023
b6ad9b0
Fix check for the availability of std::bit_cast (#350)
cary-ilm Oct 12, 2023
422c56e
IMATH_INSTALL_PKG_CONFIG is on by default, even on Windows (#349)
cary-ilm Oct 12, 2023
e26b54c
Fix half to float giving wrong results on older x86_64 CPUs on Window…
brechtvl Dec 16, 2023
d0f675e
Require sphinx 5.0 (#362)
cary-ilm Jan 22, 2024
547e69c
src/python/config/ModuleDefine.cmake: do not install a cmake file exp…
josch Jan 22, 2024
1c4aae1
rm unnecessary IMATH_HOSTDEVICE attributes. (#344)
sukeya Jan 22, 2024
80775e0
Export Imath from the build tree and so on. (#347)
sukeya Jan 22, 2024
83d7fce
Fixed redundant PYIMATH_EXPORTS causing compile issues on Windows Cla…
ZTKlein Jul 5, 2023
bbafde9
Update version for v3.1.10
cary-ilm Jan 23, 2024
298f9bf
Release notes for v3.1.10
cary-ilm Jan 23, 2024
1d363e8
update release notes
cary-ilm Jan 24, 2024
a649b83
Set SO version to 29.9.0
cary-ilm Jan 24, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# SPDX-License-Identifier: BSD-3-Clause
# Copyright (c) Contributors to the OpenEXR Project.
---
Language: Cpp
BasedOnStyle: LLVM
Expand Down
12 changes: 8 additions & 4 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
# Disable clang-format in half.cpp
344334aef268206ed1d46399ea85ab276f3f13e6
# SPDX-License-Identifier: BSD-3-Clause
# Copyright (c) Contributors to the OpenEXR Project.

# if you have git newer than 2.23, you can either
# specify this on the command line
# git blame foo.cpp --ignore-revs-file path/to/this/file
# or add this file to your config (use global to change your global user pref)
# git config [--global] blame.ignoreRevsFile .git-blame-ignore-revs

# Tune .clang-format to match existing style
c6014892de1acccca0deada8ab3353cd290e9fbc

15 changes: 6 additions & 9 deletions .github/workflows/ci_workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -301,7 +301,7 @@ jobs:
./bin/ImathTest
# Confirm the examples compile and execute
rm -rf bin CMakeCache.txt CMakeFiles cmake_install.cmake Makefile
cmake ../docs/examples \
cmake ../website/examples \
-DCMAKE_PREFIX_PATH=../../_install \
-DCMAKE_BUILD_TYPE=${{ matrix.build-type }} \
-DCMAKE_CXX_STANDARD=${{ matrix.cxx-standard }} \
Expand Down Expand Up @@ -571,7 +571,6 @@ jobs:
# run: |
# share/ci/scripts/windows/install_python.ps1 ${{ matrix.python-version }} $HOME
# share/ci/scripts/windows/install_boost.ps1 ${{ matrix.boost-version }} $HOME 3.8
# share/ci/scripts/windows/install_zlib.ps1 ${{ matrix.zlib-version }} $HOME
# shell: powershell
- name: Configure
run: |
Expand All @@ -584,8 +583,6 @@ jobs:
-DBUILD_SHARED_LIBS=${{ matrix.build-shared }}
# NB: removed trailing slash from these lines
# -DBOOST_ROOT:FILEPATH=$BOOST_ROOT
# -DZLIB_ROOT:FILEPATH="$ZLIB_ROOT"
# -DZLIB_LIBRARY:FILEPATH="$ZLIB_ROOT/lib/${{ matrix.zlib-lib }}"
# -DPYTHON='ON'
# -DPython_EXECUTABLE:FILEPATH="$PYTHON_ROOT"
# -DPython_INCLUDE_DIR:FILEPATH="$PYTHON_ROOT/include"
Expand All @@ -609,14 +606,14 @@ jobs:
shell: bash
working-directory: _build

Docs:
Website:

# Build the documentation, using a process that mimics the readthedoc build.
#
# Note that this job does not actually build Imath libraries,
# it just runs doxygen and sphinx.

name: 'Docs'
name: 'Website'
runs-on: ubuntu-latest

steps:
Expand All @@ -628,14 +625,14 @@ jobs:
# Need help2man for tool manpages
run: sudo apt-get install -y doxygen help2man
- name: Install sphinx requirements
run: pip3 install -r docs/requirements.txt
run: pip3 install -r website/requirements.txt
- name: Configure
run: cmake .. -DBUILD_DOCS='ON'
run: cmake .. -DBUILD_WEBSITE='ON'
working-directory: _build
- name: Build
run: |
cmake --build . \
--target docs \
--target website \
--config Release
working-directory: _build

3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# SPDX-License-Identifier: BSD-3-Clause
# Copyright (c) Contributors to the OpenEXR Project.

build/
_build/
_install/
21 changes: 21 additions & 0 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# SPDX-License-Identifier: BSD-3-Clause
# Copyright Contributors to the OpenEXR Project.
#
# .readthedocs.yml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

build:
os: "ubuntu-22.04"
tools:
python: "3.9"

sphinx:
configuration: website/conf.py

python:
install:
- requirements: website/requirements.txt
95 changes: 95 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
<!-- SPDX-License-Identifier: BSD-3-Clause -->
<!-- Copyright (c) Contributors to the OpenEXR Project -->

# Imath Release Notes

* [Version 3.1.10](#version-3110-January-26-2024) January 26, 2024
* [Version 3.1.9](#version-319-May-31-2023) May 31, 2023
* [Version 3.1.8](#version-318-May-22-2023) May 22, 2023
* [Version 3.1.7](#version-317-March-1-2023) March 1, 2023
Expand All @@ -18,6 +22,97 @@
* [Version 3.0.0-beta](#version-300-beta-march-15-2021) March 15, 2021
* [Inherited History from OpenEXR](#inherited-history-from-openexr)

## Version 3.1.10 (January 26, 2024)

Patch release with various build/bug fixes.

Build fixes:

- Fix a problem where downstream projects using Imath would build
python bindings even if they weren't requested.
- Fix for missing `std::bit_cast`
- Fix missing/necessary use of IMATH_HOSTDEVICE
- IMATH_INSTALL_PKG_CONFIG is now on by default, even on Windows
- Fix calling default constructor by uniform init in TypeTraits
- Fix redundant PYIMATH_EXPORTS causing compile issues on Windows Clang
- Update to SO versioning policy:

This change adopts a policy of appending the ``MAJOR.MINOR.PATCH``
software release name to the ``SONAME`` to form the real name of the
shared library.

See [website/install.rst](website/install.rst) and [PR
#339](https://github.com/AcademySoftwareFoundation/openexr/pull/339)
for more details.

Bug fixes:

- Fix half to float giving wrong results on older x86_64 CPUs on Windows

Other changes:

- succ()/pred() now use std::nextafter().
- Expand epsilon bounds for m44x pyImath test.
- Rename "docs" to "website".
- Add missing copyright/license identifiers.

### Merged Pull Requests

* \[[#363](https://github.com/AcademySoftwareFoundation/Imath/pull/363)\]
Update install instructions to reflect new SO versioning policy

* \[[#362](https://github.com/AcademySoftwareFoundation/Imath/pull/362)\]
Require sphinx 5.0

* \[[#361](https://github.com/AcademySoftwareFoundation/Imath/pull/361)\]
src/python/config/ModuleDefine.cmake: do not install a cmake file exporting targets for dependent projects

* \[[#358](https://github.com/AcademySoftwareFoundation/Imath/pull/358)\]
Fix half to float giving wrong results on older x86_64 CPUs on Windows

* \[[#353](https://github.com/AcademySoftwareFoundation/Imath/pull/353)\]
Changed implementation of succ and pred to use std::nextafter.

* \[[#350](https://github.com/AcademySoftwareFoundation/Imath/pull/350)\]
Fix check for the availability of std::bit_cast

* \[[#349](https://github.com/AcademySoftwareFoundation/Imath/pull/349)\]
IMATH_INSTALL_PKG_CONFIG is on by default, even on Windows

* \[[#347](https://github.com/AcademySoftwareFoundation/Imath/pull/347)\]
Export Imath from the build tree and so on.

* \[[#344](https://github.com/AcademySoftwareFoundation/Imath/pull/344)\]
rm unnecessary IMATH_HOSTDEVICE attributes.

* \[[#342](https://github.com/AcademySoftwareFoundation/Imath/pull/342)\]
Add missing copyright/license identifiers

* \[[#341](https://github.com/AcademySoftwareFoundation/Imath/pull/341)\]
Remove unnecessary files

* \[[#340](https://github.com/AcademySoftwareFoundation/Imath/pull/340)\]
Fix calling default constructor by uniform init.

* \[[#339](https://github.com/AcademySoftwareFoundation/Imath/pull/339)\]
Update and simply SO versioning policy

* \[[#338](https://github.com/AcademySoftwareFoundation/Imath/pull/338)\]
Rename "docs" to "website"

* \[[#333](https://github.com/AcademySoftwareFoundation/Imath/pull/333)\]
Expand epsilon bounds for m44x pyImath test

* \[[#331](https://github.com/AcademySoftwareFoundation/Imath/pull/331)\]
Fixed redundant PYIMATH_EXPORTS causing compile issues on Windows Clang

* \[[#326](https://github.com/AcademySoftwareFoundation/Imath/pull/326)\]
Use security@openexr.com for consistency

* \[[#320](https://github.com/AcademySoftwareFoundation/Imath/pull/320)\]
Add missing IMATH_HOSTDEVICE to Matrix33<T>::invert(bool)


## Version 3.1.9 (May 31, 2023)

Patch release that fixes an correct .so version number introduced in
Expand Down
11 changes: 5 additions & 6 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ endif()

# Imath version

project(Imath VERSION 3.1.9 LANGUAGES C CXX)
project(Imath VERSION 3.1.10 LANGUAGES C CXX)

set(IMATH_VERSION_RELEASE_TYPE "" CACHE STRING "Extra version tag string for Imath build, such as -dev, -beta1, etc.")

Expand All @@ -39,7 +39,7 @@ set(IMATH_VERSION_API "${Imath_VERSION_MAJOR}_${Imath_VERSION_MINOR}")
# 3. API changed: CURRENT+1.0.0
#
set(IMATH_LIBTOOL_CURRENT 29)
set(IMATH_LIBTOOL_REVISION 8)
set(IMATH_LIBTOOL_REVISION 9)
set(IMATH_LIBTOOL_AGE 0)
set(IMATH_LIB_VERSION "${IMATH_LIBTOOL_CURRENT}.${IMATH_LIBTOOL_REVISION}.${IMATH_LIBTOOL_AGE}")
set(IMATH_LIB_SOVERSION ${IMATH_LIBTOOL_CURRENT})
Expand Down Expand Up @@ -73,10 +73,9 @@ if (PYTHON)
add_subdirectory(src/python)
endif()

option(BUILD_DOCS "Set ON to build readthedocs documentation")
if (BUILD_DOCS AND NOT IMATH_IS_SUBPROJECT)
option(INSTALL_DOCS "Set ON to install html documentation" ON)
add_subdirectory(docs)
option(BUILD_WEBSITE "Set ON to build the readthedocs website source")
if (BUILD_WEBSITE AND NOT IMATH_IS_SUBPROJECT)
add_subdirectory(website)
endif()

# If you want to use ctest to configure, build and
Expand Down
3 changes: 3 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
<!-- SPDX-License-Identifier: BSD-3-Clause -->
<!-- Copyright (c) Contributors to the OpenEXR Project -->

# Code of Conduct

Imath is a sub-project of the OpenEXR project, which abides by Linux
Expand Down
2 changes: 1 addition & 1 deletion SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
## Reporting a Vulnerability

If you think you've found a potential vulnerability in Imath, please
report it by emailing security@openexr.org. Only OpenEXR Technical
report it by emailing security@openexr.com. Only OpenEXR Technical
Steering Committee members and Academy Software Foundation project
management have access to these messages. Include detailed steps to
reproduce the issue, and any other information that could aid an
Expand Down
12 changes: 9 additions & 3 deletions config/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,9 @@ if(IMATH_INSTALL_PKG_CONFIG)
)
endfunction()
imath_pkg_config_help(Imath.pc.in)
message(STATUS "Imath pkg-config generation enabled")
else()
message(STATUS "pkg-config generation disabled")
message(STATUS "Imath pkg-config generation disabled")
endif()

#
Expand All @@ -69,12 +70,12 @@ endif()

include(CMakePackageConfigHelpers)

configure_package_config_file(ImathConfig.cmake.in
configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/ImathConfig.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
)

write_basic_package_version_file("${PROJECT_NAME}ConfigVersion.cmake"
write_basic_package_version_file("${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
VERSION ${IMATH_VERSION}
COMPATIBILITY SameMajorVersion
)
Expand All @@ -90,3 +91,8 @@ install(EXPORT ${PROJECT_NAME}
NAMESPACE ${PROJECT_NAME}::
EXPORT_LINK_INTERFACE_LIBRARIES
)

export(EXPORT ${PROJECT_NAME}
FILE "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Targets.cmake"
NAMESPACE ${PROJECT_NAME}::
)
3 changes: 1 addition & 2 deletions config/ImathSetup.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,11 @@ set(IMATH_PACKAGE_NAME "Imath ${IMATH_VERSION}${IMATH_VERSION_RELEASE_TYPE}" CAC

# Whether to generate and install a pkg-config file Imath.pc on
if(WIN32)
option(IMATH_INSTALL_PKG_CONFIG "Install Imath.pc file" OFF)
option(IMATH_INSTALL_SYM_LINK "Create symbolic links for shared objects" OFF)
else()
option(IMATH_INSTALL_PKG_CONFIG "Install Imath.pc file" ON)
option(IMATH_INSTALL_SYM_LINK "Create symbolic links for shared objects" ON)
endif()
option(IMATH_INSTALL_PKG_CONFIG "Install Imath.pc file" ON)

#
# Build related options
Expand Down
Loading
Loading