NOTICE.txt - Roller copyright notices and credits


COPYRIGHT NOTICES

This product includes:

* Snippets of code from the Blojsom blog server
    Copyright 2003 David A. Czarnecki & Mark Lussier. All rights reserved.

* Snippets of code from the Pebble blog server
    Copyright 2003 Simon Brown, All rights reserved.

* Code written by Sun Microsystems, Inc. 
    Copyright 2009 Sun Microsystems, Inc.

* Code written by Dave Johnson for RSS and Atom in Action
    Copyright 2005 David M Johnson (For RSS and Atom In Action)

* The Summernote WYSIWYG editor, MIT license

* Snippets of code from Spring Mobile
    Copyright (c) 2010-2014 Pivotal, Inc. All Rights Reserved. 

OTHER NOTICES

* Roller includes icons by Mark James (http://www.famfamfam.com/lab/icons)

* Roller uses JavaMail
     COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.1
     Copyright (c) 1997-2011 Oracle and/or its affiliates. All rights reserved.
     https://glassfish.java.net/public/CDDL+GPL_1_1.html

CREDITS

Roller committers (in chronological order): 

David M Johnson
Lance Lanvandowska (emeritus)
Matt Raible 
Mindaguas Idzelis (emeritus)
Jaap Van Der Molen (emeritus)
Anil Gangolli
Henri Yandell (emeritus)
Allen Gilliland (emeritus)
Elias Torres (emeritus)
Matt Schmidt (emeritus)
Jeff Blattman (emeritus)
Craig Russell
Greg Huber
Ganesh Mathrerootham (emeritus)
Shelan Perera (emeritus)
Glen Mazza (emeritus)
Gaurav Saini
