Hi Andrey,
This is my first post to this forum, mostly because a cruel lack of free time, but I do appreciate this move towards the community and read with a lot of interest the previous posts. As Author or you wrote above, I will give hereafter my personal opinion, which is not the result of any discussion or consensus with other people from the group known as oce-dev.
First of all, "to sign or not to sign" is actually the big deal. This question has to be seriously balanced because of the "perpetual" assignement, as Roman already underlined: after the CLA is signed, it will be too late to complain. "What CLA gives" is of course part of the answer. A few unordered points:
1. I agree with you, Andrey, regarding the definition of a "significant change". Unlike Author, I do think than changing a trivial ">" to ">=" could be considered as a significant improvement if it widely impacts low level functions of the whole library, and makes them more reliable. Contributor for this change could then claim a significant contribution. I fully understand your point of view that your company may prevent such legal issues, and that signing the CLA is the safest way, for you, to integrate changes from external contributors.
2. You should have named your post to "What CLA gives to contributors". I'd also like to discuss "What CLA gives to OCC". The fact that the product quality may be improved is not something related to the CLA, and the ability to change the licence without depending upon any agreement is not a good reason. In my opinion, it only improves the financial value of the corporate asset "OCC Technology", that appears at some line of the balance sheet. Moreover, if the IP is spread over many contributors, the asset value may be considered as lower, even if the product quality (from a technical point of view) is better. I have no problem with that, but it has to be clear, so correct me if I'm wrong.
3. Regarding this first point, signing the CLA "forever" is a strong commitment (I never signed anything like that before). I can easily understand that some people sign a assignment to a company/product that is part of their business. People that have contributed to MySql for instance, improved the product and the MySql company value at the same time, but their clients benefited from these improvements. I do not like this expression, but let's call it a win-win deal: contributors do need a good product because they depend on it. Let's be clear: it's not my case. I don't work for a company developping products based on OCCT, I don't offer any consulting services and don't plan to do any (MySql was the leader on a huge and growing market, it's not the case for OCC/OCCT). So the question I'm asking to myself is: why should I sign the CLA? Do I need it?
4. Back to the "What CLA gives" and the "compensations":
4.1. "(hopefully), "(more) sure", "it is very likely that your changes": it's not a strong commitment from your side. Should I understand that it's not even sure? In other words, it does not balance the IP assignment.
4.2 changes will be included to the next release of OCCT: when? The release policy and OCCT roadmaps have to be improved. So far, I don't remember any release plan, contributors must have a clear view of what is planned in a midterm.
4.3 "it is very likely that your changes will be further improved": at OCE, most of the changes committed so far deal with portability issues: cmake builder, OSX, support for new versions of gcc, MSVC, Borland compiler etc. This fixes deal with issues reported a while ago on the OCC forum, I doubt about your ability to improve all that have been achieved.
4.4 "the integration of changes implies certification": good points. Some certified OCCT versions were released with some certified bugs, but I don't know any program free of any bug.
4.5 Back to the "Do I need it?" question: currently, the answer would be "no" (note that I contributed only a few patches to OCE, and you surely don't need me either). Another point makes me worry: it would be a mess to submit and integrate OCE patches to OCCT unless everyone signs the CLA because of the "collective" nature of a big part of this work (let me explain that in another post).
To conclude this long post, here is my current opinion: the commitments from the OCC company, as they are described on this website, are not enough to balance signing the CLA. Since there is no other possibility between "nothing" and "perpetual" (I'd love a kind of "trial period CLA"), I will wait and see before things are more clear.
Hope you won't feel offended by some of my arguments, I try to be as frank, honest and constructive as possible. Please convince me I should not be so hesitating.
Commenter-6