Tuesday, November 24, 2009

Where Have All the Groovy Licenses Gone?

One of the nice things about working with Groovy is the ready availability of good online documentation (both supplied via the Groovy site and by third parties via articles, blogs, and presentations) and the availability of several books on Groovy. I was surprised, however, when I tried to find a valid online link to the Groovy license to include in my Rocky Mountain Oracle Users Group Training Days 2010 paper "Applied Groovy: Scripting for Java Development."

I did not see a direct link to license information on the main Groovy page, so I turned to my favorite tool in such cases: the Google search engine. The next two images show the top results from search for the two words "Groovy license" both with and without quotes. The results provides several links to licenses about products related to Groovy and to things with the word "groovy" that have nothing to do with Java or software development.





Limiting the Google search to links about "license" specifically results in more tailored responses, but the license references still seem to be mostly related to products affiliated with or based on Groovy rather than Groovy itself.



The searches did help turn up mention of the Groovy license on the Groovy FAQ page. The next image shows the FAQ entry regarding the Groovy license (explaining that it is a BSD/Apache 2 style license) and the image after that one shows that the provided link does NOT point to a valid page.





The second link ("Project License") on this Groovy FAQ page is in the top left corner of the page, but it also points to a non-existent page. The next two images show the link and the non-existent page it points to.





So far, it has turned out to be more difficult than one would have guessed it to be to get a link to a valid page containing the license applicable to Groovy. However, one of the searches did point to this page with a Groovy 1.0 license. Unfortunately, this page (a portion of which is shown in the next screen image) is neither on the official Groovy site nor it is applicable to Groovy 1.6.5.



Although I was surprised at how difficult it was to find a current working link to the license applicable to Groovy 1.6.5 online, the good news is that a text file dealing with the license is bundled with the Groovy distribution. The next screen image shows the existence of this file (LICENSE.txt) in the Groovy installation directory.



As the image above demonstrates, there are other files related to licenses in this same directory. These licenses apply to products that Groovy makes use of such as Apache Commons CLI (CLI-LICENSE.txt, an Apache 2 license), the ASM bytecode manipulation framework (ASM-LICENSE.txt), and ANother Tool for Language Recognition (ANTLR-LICENSE.txt). The LICENSE.txt file basically summarizes the licensing of Groovy as being the Apache 2 license and provides that URL: http://www.apache.org/licenses/LICENSE-2.0.

In summary, the LICENSE.txt file included with the Groovy 1.6.5 distribution states, 'Licensed under the Apache License, Version 2.0 (the "License").'

No comments: