THRASTRO/sofa.js

Licensing

Closed this issue ยท 6 comments

Not a lawyer here, but I'm pretty certain this violates the IAU license as they do not allow distrubution of modified souce.

But, I would hope it's an easy fix though. The ERFA lib is an exact copy of SOFA, created with permission from the IAU and licensed under BSD:
https://github.com/liberfa/erfa

Hopefully you can base this lib off of that with a simple search and replace of IAU with ERFA.

You could also contact the IAU and see if they'll grant you the same permission they did for ERFA. But from what I've read, they were ignored for quite a while, and it was only through the popularity of Python Astrolib that they managed to get in contact with the right people.

Nice work. I've been playing with it a bit.

Thanks for the input. I was not sure either, but I think the license does allow the distribution of modified source under certain conditions:

... you may copy and distribute a resulting "derived work" to others on a world-wide, royalty-free basis, provided ... (excerpt from sofa license)

I also wrote my thought about point 3b) and 3c) down at https://github.com/mgreter/sofa.js#license

But anyway, I wasn't aware of liberfa. A more permissive license looks even better.
So I gave it a whirl and took me about 3 hours to do. See PR #2

There is still some stuff to change, like the main license. In the end I might even rename the repo to erfa.js. Not sure how you are related to liberfa, but maybe they would have some interest in this conversion. Anyway, leaving it here for now and will see when I get time to finish this up.

Thanks again and have a nice day!

I have merged #2. Feel free to open another issue if you see something I have missed.

It looks like they've changed their license, so my bad on not checking first. I agree it does look like they now allow modifying the code.

I guess changing to liberfa still brings some benefits/bugfixes beside the license ๐Ÿ˜ƒ As long as liberfa keeps up to date with original sofa releases. Have a nice weekend!

@gmiller123456 Sorry to comment on this old topic, but I just saw that you have a vsop87 multilang project going on.
Not sure if you saw my JS implementation at https://github.com/mgreter/ephem.js/tree/develop/src/vsop87.
Maybe you can incorporate that into your tests, anyway, just wanted to mention it, if not, don't bother ๐Ÿ˜‰

Thanks, I'll have a look. I mostly rely on the test vectors supplied by the authors, I figure they have the best chance of getting everything right.