OCIO - Path Forward


Sean Cooper <se...@...>
 

Hello all, and happy new year!

I'd like to start a formal discussion around the steps we will take to give OCIO a breath of life. Hopefully we can work to make 2017 a year of progress. So in that spirit I'd like to layout a general game plan for comment and discussion.

General Notes:
  • Reading through our last discussion I found it troubling that due to the stalled public development, conversations and progress seemed to have moved behind closed doors. To facilitate openness I advise all contributors to relegate conversation to either the GitHub issues or this forum. I have created an OpenColorIO Slack channel if there needs to be quick group conversation among contributors, but the majority of conversation should be relegated to this forum.
  • I have been granted ownership to the GitHub repo, and can accomplish administrative tasks as necessary. I do not intend to accept Pull Requests in isolation, both due to the need for public discourse and my unfamiliarity with the codebase.
  • Development should continue in a "master-only" fashion, based on the previous branch/merge patterns and at the suggestion of Larry Gritz

Game Plan:

  • Organization
    • Project Owners
      • This is no slight to the current owners of OCIO, but would it be worth it to revisit the current owners and identify their level of involvement moving forward (based on interest and free time available)? It could be beneficial to add vocal / active developers to the helm of the project. Discussion welcomed.
    • Issues
      • Need to create a better issue labeling scheme, and need to maintain it's use. Suggestions welcome.
      • Are issues irrelevant / duplicates?
      • Do PRs solve specific issues?
      • Asses difficulty in solving
    • Pull Requests
      • Are they still relevant?
      • Rank in order of usefulness
      • Determine order of integration
  • Repository
    • Continuous Integration
      • In order to begin pulling a larger volume of Pull Requests, we need to update the CI system in use.
      • Alongside this is a reevaluation of the OCIO unit tests
    • Make private forks public
      • Address private forks with additional features (Dennis Adams, Mark Boorer, etc.)
      • Get them posted publicly, work into pull request
  • Road to 2.0
    • What are the dream requests?
    • How do we want to interact with OCIO in 5 years?
    • What movements on the horizon do we need to begin working towards?
    • What features would improve adoption in modern software?
Order of Attack:
  • Issue Labels
  • Easy PR with greatest image quality impact
  • Website + Documentation
    • Up to date? Documentation still relevant?
    • Website on version 1.0.8
  • Continuous Integration
  • PR review
  • Issue solving
  • Live, Long and Prosper

Please join me in conversation about the future of OCIO! All of the above is open to suggestion and critique.

Sean


Troy Sobotka <troy.s...@...>
 



On Wed, Jan 11, 2017, 5:42 PM Sean Cooper <se...@...> wrote:
  • Road to 2.0
    • What are the dream requests?

On a practical "get things done with the library" sense, it would be excellent to deal with OCIO for colour managing UI elements.

Having spent plenty of time ramming into the problems, I believe that can be elegantly accomplished by:

A) Providing metadata on the chromaticities for each Display cluster, or possibly per View?
B) Providing metadata on the reference chromaticities.
C) Provide some form of metadata that differentiates the transfer function portion of a view transform from any other colorimetric transforms. This would be needed for colour pickers and other things, where one needs to know the colorimetry of the reference and the destination, as well as how to apply *only* the transfer function to the UI element, post transform. Gradient UIs, color pickers, coloured sliders, etc.

Many transforms are going to be of the transfer function variety, and it makes sense to tackle UI in the least invasive manner possible, hence limiting the metadata to the fewest possible areas makes sense? Per transform seems overkill unless a sane metadata structure can be arrived at that wraps up the needs.

With respect,
TJS


Sean Cooper <se...@...>
 

A) Providing metadata on the chromaticities for each Display cluster, or possibly per View?
B) Providing metadata on the reference chromaticities.
C) Provide some form of metadata that differentiates the transfer function portion of a view transform from any other colorimetric transforms. This would be needed for colour pickers and other things, where one needs to know the colorimetry of the reference and the destination, as well as how to apply *only* the transfer function to the UI element, post transform. Gradient UIs, color pickers, coloured sliders, etc.

Troy, would you be able to wrap this into an Issue on GH? With the coming addition of labels, this will be classified as a feature request.

On Wed, Jan 11, 2017 at 5:03 PM, Troy Sobotka <troy.s...@...> wrote:


On Wed, Jan 11, 2017, 5:42 PM Sean Cooper <se...@...> wrote:
  • Road to 2.0
    • What are the dream requests?

On a practical "get things done with the library" sense, it would be excellent to deal with OCIO for colour managing UI elements.

Having spent plenty of time ramming into the problems, I believe that can be elegantly accomplished by:

A) Providing metadata on the chromaticities for each Display cluster, or possibly per View?
B) Providing metadata on the reference chromaticities.
C) Provide some form of metadata that differentiates the transfer function portion of a view transform from any other colorimetric transforms. This would be needed for colour pickers and other things, where one needs to know the colorimetry of the reference and the destination, as well as how to apply *only* the transfer function to the UI element, post transform. Gradient UIs, color pickers, coloured sliders, etc.

Many transforms are going to be of the transfer function variety, and it makes sense to tackle UI in the least invasive manner possible, hence limiting the metadata to the fewest possible areas makes sense? Per transform seems overkill unless a sane metadata structure can be arrived at that wraps up the needs.

With respect,
TJS

--
You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


dbr/Ben <dbr....@...>
 

This all sounds good to me!

I would be happy to help out auditing/tagging the issues in GitHub. 

The current labels seem fairly reasonable to me - "feature" for new things, "bug" for bugs, internal for non-user-impacting things, a label to flag API breaking changes, and "deferred" for future things. I'd probably add tags for performance improvements, docs, and build related issues. Then along side these, maybe tags for tag "easy" quick-to-fix issues, low/high priority tags)

Regarding CI, There is a pull request to fix up the TravisCI config (#415). It would also be worth investigating Appveyor to test on Windows also

Sent from my phone

On 12 Jan 2017, at 11:12, Sean Cooper <se...@...> wrote:

Hello all, and happy new year!

I'd like to start a formal discussion around the steps we will take to give OCIO a breath of life. Hopefully we can work to make 2017 a year of progress. So in that spirit I'd like to layout a general game plan for comment and discussion.

General Notes:
  • Reading through our last discussion I found it troubling that due to the stalled public development, conversations and progress seemed to have moved behind closed doors. To facilitate openness I advise all contributors to relegate conversation to either the GitHub issues or this forum. I have created an OpenColorIO Slack channel if there needs to be quick group conversation among contributors, but the majority of conversation should be relegated to this forum.
  • I have been granted ownership to the GitHub repo, and can accomplish administrative tasks as necessary. I do not intend to accept Pull Requests in isolation, both due to the need for public discourse and my unfamiliarity with the codebase.
  • Development should continue in a "master-only" fashion, based on the previous branch/merge patterns and at the suggestion of Larry Gritz

Game Plan:

  • Organization
    • Project Owners
      • This is no slight to the current owners of OCIO, but would it be worth it to revisit the current owners and identify their level of involvement moving forward (based on interest and free time available)? It could be beneficial to add vocal / active developers to the helm of the project. Discussion welcomed.
    • Issues
      • Need to create a better issue labeling scheme, and need to maintain it's use. Suggestions welcome.
      • Are issues irrelevant / duplicates?
      • Do PRs solve specific issues?
      • Asses difficulty in solving
    • Pull Requests
      • Are they still relevant?
      • Rank in order of usefulness
      • Determine order of integration
  • Repository
    • Continuous Integration
      • In order to begin pulling a larger volume of Pull Requests, we need to update the CI system in use.
      • Alongside this is a reevaluation of the OCIO unit tests
    • Make private forks public
      • Address private forks with additional features (Dennis Adams, Mark Boorer, etc.)
      • Get them posted publicly, work into pull request
  • Road to 2.0
    • What are the dream requests?
    • How do we want to interact with OCIO in 5 years?
    • What movements on the horizon do we need to begin working towards?
    • What features would improve adoption in modern software?
Order of Attack:
  • Issue Labels
  • Easy PR with greatest image quality impact
  • Website + Documentation
    • Up to date? Documentation still relevant?
    • Website on version 1.0.8
  • Continuous Integration
  • PR review
  • Issue solving
  • Live, Long and Prosper

Please join me in conversation about the future of OCIO! All of the above is open to suggestion and critique.

Sean

--
You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+u...@....
For more options, visit https://groups.google.com/d/optout.


Sean Cooper <se...@...>
 

Thanks, yeah I should have linked the PR in the post. I'll try and get more eyes on that to test, though I'm sure it's fine, then we can pull that through to get things kicked off.

As for Labels, I'd just like to get a better organizational structure that guides users attention a little better. My gut feeling is pushing towards a slimmed down version of this: https://medium.com/@dave_lunny/sane-github-labels-c5d2e6004b63#.3kx74xshg


Sean Cooper <se...@...>
 

Here is a form to get an invite for the OpenColorIO Slack channel, I'll add them manually from there. We're looking to keep it to the smaller group of core owners/contributors, though feel free to invite whomever you think would help the cause!

https://goo.gl/forms/Lq9buvEJg2qzJzq03


Deke Kincaid <dekek...@...>
 

You need permission

This form can only be viewed by users in the owner's organization.

Try contacting the owner of the form if you think this is a mistake. Learn More.


On Thu, Jan 12, 2017 at 3:33 PM, Sean Cooper <se...@...> wrote:
Here is a form to get an invite for the OpenColorIO Slack channel, I'll add them manually from there. We're looking to keep it to the smaller group of core owners/contributors, though feel free to invite whomever you think would help the cause!

https://goo.gl/forms/Lq9buvEJg2qzJzq03

--
You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Deke Kincaid <dekek...@...>
 

You probably have to move the file to your personal gmail.  Google docs are not view-able outside of our domain either.

On Thu, Jan 12, 2017 at 3:38 PM, Deke Kincaid <dekek...@...> wrote:
You need permission

This form can only be viewed by users in the owner's organization.

Try contacting the owner of the form if you think this is a mistake. Learn More.


On Thu, Jan 12, 2017 at 3:33 PM, Sean Cooper <se...@...> wrote:
Here is a form to get an invite for the OpenColorIO Slack channel, I'll add them manually from there. We're looking to keep it to the smaller group of core owners/contributors, though feel free to invite whomever you think would help the cause!

https://goo.gl/forms/Lq9buvEJg2qzJzq03

--
You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



Sean Cooper <se...@...>
 

Whoops, try giving it another go

On Thu, Jan 12, 2017 at 3:39 PM, Deke Kincaid <dekek...@...> wrote:
You probably have to move the file to your personal gmail.  Google docs are not view-able outside of our domain either.

On Thu, Jan 12, 2017 at 3:38 PM, Deke Kincaid <dekek...@...> wrote:
You need permission

This form can only be viewed by users in the owner's organization.

Try contacting the owner of the form if you think this is a mistake. Learn More.


On Thu, Jan 12, 2017 at 3:33 PM, Sean Cooper <se...@...> wrote:
Here is a form to get an invite for the OpenColorIO Slack channel, I'll add them manually from there. We're looking to keep it to the smaller group of core owners/contributors, though feel free to invite whomever you think would help the cause!

https://goo.gl/forms/Lq9buvEJg2qzJzq03

--
You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Ben De Luca <bde...@...>
 

On the CI front I can provide windows Linux and mac systems plus Jenkins if you want. 



On Fri., 13 Jan. 2017 at 1:40 am, Sean Cooper <se...@...> wrote:
Whoops, try giving it another go

On Thu, Jan 12, 2017 at 3:39 PM, Deke Kincaid <dekek...@...> wrote:
You probably have to move the file to your personal gmail.  Google docs are not view-able outside of our domain either.

On Thu, Jan 12, 2017 at 3:38 PM, Deke Kincaid <dekek...@...> wrote:
You need permission

This form can only be viewed by users in the owner's organization.

Try contacting the owner of the form if you think this is a mistake. Learn More.


On Thu, Jan 12, 2017 at 3:33 PM, Sean Cooper <se...@...> wrote:
Here is a form to get an invite for the OpenColorIO Slack channel, I'll add them manually from there. We're looking to keep it to the smaller group of core owners/contributors, though feel free to invite whomever you think would help the cause!

https://goo.gl/forms/Lq9buvEJg2qzJzq03








--


You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.


To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+u...@....


For more options, visit https://groups.google.com/d/optout.














--


You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.


To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+u...@....


For more options, visit https://groups.google.com/d/optout.











--


You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.


To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+u...@....


For more options, visit https://groups.google.com/d/optout.



Sean Cooper <se...@...>
 

That would be great if you have the cycles!


Sean Cooper <se...@...>
 

@ben, though iId look into the other contributors opinion on TravisCI vs. Jenkins

On Mon, Jan 16, 2017 at 12:37 PM, Sean Cooper <se...@...> wrote:
That would be great if you have the cycles!


Larry Gritz <l...@...>
 

I don't have any Jenkins experience, but Travis is pretty straightforward and I've really come to rely on it for my open source projects. It's a big boost to know before you merge something that it's been built and passes tests on a matrix of several platforms, compilers, and build options. Well worth the time investment to get it set up. Appveyor is also helpful as the rough equivalent on Windows.


On Jan 16, 2017, at 1:31 PM, Sean Cooper <se...@...> wrote:

@ben, though iId look into the other contributors opinion on TravisCI vs. Jenkins

On Mon, Jan 16, 2017 at 12:37 PM, Sean Cooper <se...@...> wrote:
That would be great if you have the cycles!


--
Larry Gritz
l...@...



Ben De Luca <bde...@...>
 

Absolutely pick the best thing, the only real benefit to what I am providing is I can give you exactly the environment that you want if its not provided by one of the cloudy tools. I don't believe any of them supported OSX. 

Its would be running on my virtual CI infrastructure.   

On 16 January 2017 at 23:52, Larry Gritz <l...@...> wrote:
I don't have any Jenkins experience, but Travis is pretty straightforward and I've really come to rely on it for my open source projects. It's a big boost to know before you merge something that it's been built and passes tests on a matrix of several platforms, compilers, and build options. Well worth the time investment to get it set up. Appveyor is also helpful as the rough equivalent on Windows.


On Jan 16, 2017, at 1:31 PM, Sean Cooper <se...@...> wrote:

@ben, though iId look into the other contributors opinion on TravisCI vs. Jenkins

On Mon, Jan 16, 2017 at 12:37 PM, Sean Cooper <se...@...> wrote:
That would be great if you have the cycles!


--
Larry Gritz
l...@...


--
You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Larry Gritz <l...@...>
 

TravisCI supports OSX and Linux.



On January 17, 2017 5:56:34 AM PST, Ben De Luca <bd...@...> wrote:
Absolutely pick the best thing, the only real benefit to what I am providing is I can give you exactly the environment that you want if its not provided by one of the cloudy tools. I don't believe any of them supported OSX. 

Its would be running on my virtual CI infrastructure.   

On 16 January 2017 at 23:52, Larry Gritz <l...@...> wrote:
I don't have any Jenkins experience, but Travis is pretty straightforward and I've really come to rely on it for my open source projects. It's a big boost to know before you merge something that it's been built and passes tests on a matrix of several platforms, compilers, and build options. Well worth the time investment to get it set up. Appveyor is also helpful as the rough equivalent on Windows.


On Jan 16, 2017, at 1:31 PM, Sean Cooper <se...@...> wrote:

@ben, though iId look into the other contributors opinion on TravisCI vs. Jenkins

On Mon, Jan 16, 2017 at 12:37 PM, Sean Cooper <se...@...> wrote:
That would be great if you have the cycles!


--
Larry Gritz
l...@...


--
You received this message because you are subscribed to the Google Groups "OpenColorIO Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ocio-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
Larry Gritz
l...@...