Completing ChannelList Iterator API#2384
Completing ChannelList Iterator API#2384Arcmantis18 wants to merge 3 commits intoAcademySoftwareFoundation:mainfrom
Conversation
71afd2d to
cbf4b6a
Compare
cary-ilm
left a comment
There was a problem hiding this comment.
Thanks for the contribution! I made some suggestions to align with std::iterator_traits
And yes, there should be unit tests in src/test/OpenEXRTest.
|
And the FreeBSD CI check failure is unrelated, probably a problem with GitHub that will hopefully go away. |
cbf4b6a to
451571d
Compare
|
I don't see an obvious error, but the Windows Debug CI job is timing out, is it possible that the loop is somehow never terminating in that case? I've re-run the CI job twice now with the same results, so it appears it's more than a random glitch. |
8c46489 to
b21ab7b
Compare
|
Unfortunately I do not have a Windows machine to test myself, but I am narrowing the problem down to the '!=' global overloads... |
58751ce to
9846aff
Compare
|
One strategy for this kind of situation is to create a second branch off of the PR branch, push commits to that, and watch the logs in the CI runs in your fork. Once things work there, squash/cherry-pick the changes back into the PR branch. You'll need to enable workflow runs in your fork, since they're off by default. It's good practice to enable workflows in your fork, then confirm the CI checks pass there before submitting a PR, to reduce noise on the main repo. And if you're dealing with a failure in only one run, you can disable the others, or simply hack the workflow .yml files in your branch so it runs only specifically what you need, then discard those changes once things work, before you submit. If you're only interested in a single test, you can hack the ctest line in |
9846aff to
d761375
Compare
|
Thanks for the advice, will do from now on. |
…t::Iterator and ChannelList::ConstIterator. Also added global operator overloads '==' and '!=' for Iterator class. (issue AcademySoftwareFoundation#1325) Signed-off-by: Aries Moczar <arcmantis@protulae.com>
…mparisons. Added Iterator and ConstIterator traits. Signed-off-by: Aries Moczar <arcmantis@protulae.com>
…elList::Iterator/ConstIterator Signed-off-by: Aries Moczar <arcmantis@protulae.com>
d761375 to
652aa0c
Compare
|
OK, apparently comparing iterators from different containers, even iterators from two instances of the same container class, is undefined (issue 446). Users should only be comparing iterators of the same underlying instance. I have accordingly changed my unit-test code to properly compare iterators (both Iterator and ConstIterator) from the same ChannelList. |
Hello
WIP on completing the Iterator API for ChannelList.
Should I create a new unit-test for the ChannelList iterators?