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

upgrade to 3.1.5 from upstream. #1

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
51 changes: 0 additions & 51 deletions ASWF/legal/OpenEXR Corporate Contributor License Agreement.md

This file was deleted.

30 changes: 0 additions & 30 deletions ASWF/legal/OpenEXR Individual Contributor License Agreement.md

This file was deleted.

56 changes: 56 additions & 0 deletions ASWF/tsc-meetings/2020-06-04.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# 6/4/2020

### Attending:

* Cary Phillips
* Christina Tempelaar-Lietz
* Eskil Steenburg
* John Mertic
* Joseph Goldstone
* Kimball Thurston
* Larry Gritz
* Nick Porcino
* Owen Thompson
* Peter Hillman
* Rod Bogart

### Discussion:

* John Mertic revives the discussion of the logo design:

* Larry referenced https://landscape.aswf.io. Some look great small, some do not.
* The concept was to demostratine dynamic range in the layers.
* The original idea was that the logo could appear as an icon on a camera.
* Eskil: Think of the original photo by Debevec with same image at different stops.
* Nick: The most important feature is dynamic range; Nick proposes a
drawing that includes and image ad different exposure levels:
night, day, sun.
* Could also illustrate "multipart."
* Rod: Should not look like photoshop layers.
* Could look like an image coming apart.
* Could show channels vs. some other multi-dimensional.
* Needs to be easy to reproduce (t-shirts, etc).
* Could be an element that’s a response curve, except that exr is linear(?)
* Logos should be clear: NASA has a continuum of logos.
* Cmake has really simple logo, has nothing to do with.
* John will invite the LF graphic designer next time.
* After the meeting, watch this: https://www.youtube.com/watch?v=pnv5iKB2hl4

* Imath repo project:

* Revision history can be done later
* Need to resolve the handling of exceptions ASAP.
* Consider the new C++11 exception system categories feature, although that's mroe for OpenEXR itself.
* Imath deals mostly with math-specific exceptions.
* Nick: I ported a lot of Occulus’s code but comparisons don’t work across boundaries.
* IlmThread stays behind in OpenEXR.
* PyIlmBase goes to a new repo.
* Autotools? Leave it behind; if someone objects, we can bring it in later if needed.
* OpenEXR should encorporate Imath as a Git submodule. We’re
creating proper “find” cmake files; if it finds it, it’ll use it,
if not, it’ll build it.
* Nick: I tend to write shell scripts to handle all this stuff; I can put together a Gist to illustrate.
* Or, just build the dependency first?

* Christina: need Kimball to check her latest PR.

87 changes: 87 additions & 0 deletions ASWF/tsc-meetings/2020-06-18.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# 6/18/2020

### Attending:

* Cary Phillips
* Christina Tempelaar-Lietz
* Eskil Steenburg
* Joseph Goldstone
* Kimball Thurston
* Larry Gritz
* Nick Porcino
* Owen Thompson
* Peter Hillman
* Alison Rowan

### Discussion:

* Review OpenEXR logo concepts with Alison Rowan from the LF's Creative Services group.

* General consensus on preferring the design that illustrates 3 exposure levels.

* Based loosly Nick's idea sketch.

* How well will it read when it’s small?

* Could EXR be in red?

* Discusion of perspective vs orthographic. Does the perspective
look a little too precious? Consensus prefers the orthographic.

* Discussion of exception handling.

* Kimball will submit his proposal to a branch in the Imath repo,
for further review. He had another idea that avoids any change to
the API.

* Discussion of performance metrics

* Peter: can we somehow link a test with two different variations of
the library and compare metrics between them? Using namespaces?

* Need further experiments.

* Should PyImath be a separate repo, or a submodule of Imath?

* Owen configured PyImath as a submodule of Imath, but Cary
suggested we actually want the opposite: Imath makes no mention of
PyImath.

* Cary: the goal is simplicity and reliability of the build process,
especially for the default build behavior. Someone wanting the
basic c++ library, and possibly not having much technical
experience, should not get tripped up because of python or boost
configuration on their machines.

* Kimball: I've always had trouble getting git submodule's to work,
they've tended to get out of sync.

* Larry: OpenVDB is eager for Imath but doesn't want PyImath, so
maybe there is merit in Imath w/o python bindings.

* Peter: The current cmake configuration tries to build the
bindings, but if it can’t, it doesn't, so there shouldn't be a
problem.

* Cary: Don't underestimate the amount of work to reimplement the
imath FixedArray bindings, it's more complex that it seems.
Nick mentioned issue #367, regarding python buffer protocols.

* Conclusion: move PyImath to a subfolder of Imath. The same repo,
but not built by default. The cmake configuation is completely
indepedent, and disconnected. "If you want the python bindings, cd
to PyImath and run cmake." This satisfies both goals: simple and
reliable, but a single repo.

* Discussion of issue #765, leaks on static initialization. Resolved
in 2.5, but the problem was errant c++ version #if's. It's time to
remove all that stuff. Just remove all conditionals related to old
c++ versions, and put them back in only where they're absolutely
necessary. We may need to make a distinction between c++14 and 17
for certain constexpr constructions.

* Update on the Disney CLA logjam, which came to a head with OSL, due
to Pixar's involvement. The governing board's legal group met to
discuss the various iterations of the proposed CLA's and may be
close to a decision but nothing is final yet.

127 changes: 127 additions & 0 deletions ASWF/tsc-meetings/2020-07-16.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
# 7/16/2020

### Attending:

* Cary Phillips
* Christina Tempelaar-Lietz
* Joseph Goldstone
* Kimball Thurston
* Larry Gritz
* Nick Porcino
* Owen Thompson
* Peter Hillman
* Rod Bogart

### Discussion:

* The CLA. Disney refuses to sign the current one, although Disney
employees already authorized have apparently somehow slipped
through. This came to a head with OSL. We (OpenEXR TSC) have no
concerns about moving to the new CLA that the ASWF Governing Board
legal committee settled on, which is Apache 2. We will request help
from John Mertic to navigate through changing the forms in EasyCLA,
and getting respetive companies to sign the new one, without anyone
getting locked out of push access to the repo. Also, we need to
update the documents in repo and make sure there are no references
to the outdated form. Cary will request help from John Mertic.

* Review the logo concepts from Ali Rowan, graphic designer with the
Linux Foundation. The red version is nicely suggestive of the old
logo. The trapezoidal shapes were intended to suggest a perspective
projection, although the shape in the concept designs provided is
not a perspective, and this feature has relatively minor appeal to
the group. Therefore, we settle on the square-ish red logo. Note
that we need several variations: text on the bottom, text to the
right, no text, gray-scale, very small "favicon". Cary will request
that of Ali.


* Open Source Day

* Outline:

* Brief recap of the year
* Overview of OpenEXR 3.0 release
* Overview of Imath (given by Owen)
* Introduction of new openexr.com (hopefully given by Sarah Martin)

* Arkell agreed to provide some updated images for the
openexr-images repo, although he reports that he's not prepared to
generate and deep exr images.

* Cary requested 25 minutes, but given that Imath is a major topic,
we expect enough comments and feedback that we should increase
that to 55 minutes. Cary will follow up with Emily Olin.

* Larry notes: This is the biggest release in a very long time, with
signficant implications to the user community. Everyone who builds
openexr is going to be affected.

* We should expect lots of questions and vigorous discussion. We had
good questions last year (e.g. “Is OpenEXR appropriate for ML?”)

* The title of session should prominently feature "Imath".

* 3.0 Release: time to get in any changes that break compatibility.

We should make a pass at cleaning up exceptions in the OpenEXR tree.

Some Issues for potential inclusion:

* getChunkOffsetTableSize https://github.com/AcademySoftwareFoundation/openexr/issues/740

* Include guards https://github.com/AcademySoftwareFoundation/openexr/issues/636

* Signed strides: https://github.com/AcademySoftwareFoundation/openexr/issues/614

We will need to take care with how OpenEXR references Imath. It
could potentially be an external project path in cmake that
auto-clones imath repo. Nick reports that this works well with
OpenTimelineIO.

We should remove legacy thread support, just use std::thread We
still want to provide the semaphore class. Lock is slower than a
semaphore class. Keep the shim layer.

We should we move some of the directories up a level, so the OpenEXR repo has subfolders:

* src

* test

* tools

* OSS-Fuzz: Going well so far, around a dozen issues, which have been
easy to reproduce and identify. It takes some thought to determine
how to resolve them. Do we want to break compatibility, or suppress
it?

Peter points out that the most recent report, the test case is
broken, the exr is bad data. Peter will follow up with fuzz folks.

* Owen reports on progress with Imath.

* Initial push of constexpr changes

* A small set of tests. There are some python binding missing.

* Cuda: The strategy is when compiling with Cuda, put half into Imath internal namespace.

What is different between cuda and imath half? Bit layout is the
same. Our class has HasInf, could use std::isinf override. Rod:
We tried to merge with NVIDIA.

Owen will write a test that verifies the behavior. Should still
support C++11.

* Create a RC3 branch.

* clang-format: Would like to reformat before the 3.0 release. Nick
says that OpenTimelineIO used the openexr template with
success. Larry notes: Whatever we choose, there will be sections
that don't format nicely, so just turn off formatting. But, a year
later, you'll forget about what you didn't like.

Don't like #include sorting, it can break the build; alphabetical
order is not always what you want.

Loading