The question Is it illegal to rewrite every line of an open source project in a slightly different way, and use it in a closed source project? makes me wonder what would be considered a clean-room implementation in the era of open source projects.Hypothetically, if I were to develop a library which duplicates the publicly documented interface of an open-source library, without ever looking at the source code for that library, could that code ever be considered a derivative work?Obviously it would need the same class hierarchy and method signatures, so that it could be a drop-in replacement - could that in itself, be enough to provoke a copyright claim?What about if I used the test suite of the open source project to verify whether my clean implementation behaved in the same way as the original library? Would using the test suite be enough to dirty my clean code?As should be expected from a question like this, I am not looking for specific legal advice, but looking to document experiences people may have had with this sort of issue.
Can I use the test suite from an open source project to verify that my own 'compatible library' is compatible?
open source;licensing;legal
To your question about the test suite: if you're simply using the test-suite against your own code, and not distributing it with your code for validation, you're fine. With almost every open source license (possibly all) you are free to use it as you see fit. The regulations only come into play when you're creating derivative works or redistributing it.You cannot possibly get in trouble.Besides that, how can they PROVE you ran a test suite against your code without your admission? Just because your code conforms to an interface, does not prove you validated it with their test suite.