README for $JAVANLP_HOME/core/lib

Written by Bill MacCartney <wcmac@cs.stanford.edu> 23 January 2006
Updated by Daniel Ramage 16 October 2006

This directory is intended to contain only *current and necessary*
.jar files used with JavaNLP-core.  

Our original model was that each jar file in lib should be without
its version number but include a corresponding source .zip/.jar file
with a full version number in the libsrc folder.  For example, if
there is a file  lib/ra.jar there should be a corresponding and
up-to-date libsrc/ra-0.1.8-src.zip. That had some good properties
but could also be a nuisance in the modern world, so it is also
fine and more common recently for people to have in lib a
lib/ra-0.1.8.jar corresponding to a libsrc/ra-0.1.8-src.{zip,jar}.

Outdated or redundant .jar files should NOT be kept here, but can
be stored instead in /u/nlp/java/liball.  Files in that directory
can have version numbers in the name.  Example: colt1.0.3.jar.

If you're adding a new .jar to the repository, please:
 - make sure the jar isn't already somewhere in the repository.
   If it is, try to converge on one version and promote placement to
   more if it is used in multiple projects
 - add the jar itself to the lib directory (with or without version number)
 - add its source zip with version number to the libsrc directory
 - check to make sure that the jar file doesn't have other libraries
   embedded within it (use jar -tf). if the .jar file has other libraries
   embedded which overlap with other javanlp libraries, please remove them.
   Normally we then give the jar a name ending in "x" to show we modified it.
 - update the Eclipse .classpath file to include the jar and a path
   to its source -- this is essential to keep things working for 
   Eclipse/IntelliJ users!
 - also update this file with information about the jar
 - If it will be needed by releases of CoreNLP, also add it to the *2* pom files.
 - If it will be needed by releases of CoreNLP, also document the
   licensing in LIBRARY-LICENSES.

Any .jar files which appear in this directory should be listed in
this file, with the following information:

ORIGINAL JAR NAME: original name of the .jar file when downloaded

VERSION: version number

RELEASE DATE: when the library was originally released.

SOURCE AVAILABLE: yes or no, if it is available it should be checked in
to the repository under libsrc

DESCRIPTION: a short description of the library's function and purpose.

URL: where to check for library information, documentation, and updates.

USED BY: what JavaNLP packages use this library. (This need not be exhaustive,
but should list a couple of key packages that use/need this library.)
This should make clear whether it is neede by CoreNLP distributions.

LAST UPDATE: when we last updated our copy from the source.

LAST UPDATE BY: who last updated it




=======================================================================

-----------------------------------------------------------------------
ant-contrib-1.0b3.jar

ORIGINAL JAR NAME: ant-contrib-1.0b3.jar

VERSION: 1.0b3

RELEASE DATE: 2006-11-02

SOURCE AVAILABLE: libsrc/ant-contrib-1.0b3-src.zip

DESCRIPTION: Adds new useful tasks to ant.

URL: http://ant-contrib.sourceforge.net/

USED BY:
the build.xml task that builds .jsps
Not needed by CoreNLP distributions.

LAST UPDATE: 2010/06/28

LAST UPDATE BY: John Bauer

-----------------------------------------------------------------------
lib/tomcat/jasper.jar, el-api.jar, tomcat-juli.jar
           jasper-el.jar, jsp-api.jar, tomcat-api.jar

ORIGINAL JAR NAME: the same...

VERSION: Tomcat 7.0.12

RELEASE DATE: 2011-04-05 (?)

SOURCE AVAILABLE: libsrc/tomcat/apache-tomcat-7.0.12-src.zip

DESCRIPTION: Various parts of tomcat needed to build .jsp files

URL: http://tomcat.apache.org/download-70.cgi

USED BY:
used to build .jsps
Not needed by CoreNLP distributions.

LAST UPDATE: 2011-11-21

LAST UPDATE BY: John Bauer

-----------------------------------------------------------------------
commons-lang3-3.1.jar
ORIGINAL JAR NAME: commons-lang3-3.1.jar
VERSION:
RELEASE DATE: 11-14-2011
SOURCE AVAILABLE: yes
DESCRIPTION: has XML escaping & unescaping methods, amongst other stuff; changes from 2.5 - no escapeHtml function.
URL: http://commons.apache.org/lang/

USED BY: edu.stanford.nlp.kbp and web servlets.
Not needed by CoreNLP distributions.  In core, used only by web apps (jsp pages and NERServlet).

LAST UPDATE: 2013-06-05
LAST UPDATE BY: Sonal Gupta

-----------------------------------------------------------------------
commons-logging.jar

ORIGINAL JAR NAME: commons-logging.jar
VERSION: 1.0.4
RELEASE DATE: ?
SOURCE AVAILABLE: yes
DESCRIPTION: "The Logging package is an ultri-thin bridge between different
logging implementations.  A library that uses the commons-logging API can be
used with any logging implementation at runtime.
URL: http://jakarta.apache.org/commons/logging

USED BY: el-api.jar, jwnl, hadoop, etc. (Only by various external libraries.)
Not needed by CoreNLP distributions.

LAST UPDATE: 2006/02/06
LAST UPDATE BY: Jeff Michels


-----------------------------------------------------------------------
junit.jar

ORIGINAL JAR NAME: junit-4.12.jar

VERSION: 4.12

RELEASE DATE: 2015/02/19

SOURCE AVAILABLE: yes

DESCRIPTION: JUnit is a simple framework to write repeatable unit tests.

URL: http://www.junit.org/

USED BY: Our junit tests.
Not needed by CoreNLP distributions.

LAST UPDATE: 2015/08/28

LAST UPDATE BY: Ilya Sherman

----------------------------------------------------------------------
AppleJavaExtensions.jar

ORIGINAL JAR NAME: AppleJavaExtensions.jar

VERSION: 1.3

RELEASE DATE: 2006-10-17

SOURCE AVAILABLE: no

DESCRIPTION: Stub methods to allow programs that can use Mac graphical
stuff load on non-macs.  Should only be on compile classpath, not actually
used at run time (Macs actually have the classes in this jar, and should load
by reflection; see TregexGUI for an example).

URL: http://developer.apple.com/samplecode/AppleJavaExtensions/index.html

USED BY: TregexGUI.java
Not needed by CoreNLP distributions
(Only used for fake compilation -- at runtime, either Mac supplies this or it doesn't.)

LAST UPDATE: 9/18/2007

LAST UPDATE BY: Anna Rafferty.

-----------------------------------------------------------------------
xom-1.2.10.jar

ORIGINAL JAR NAME: xom-1.2.10.jar

VERSION: 1.2.10

RELEASE DATE: 2013-05-25

SOURCE AVAILABLE: yes

DESCRIPTION: xml parsing

URL: http://www.xom.nu/

USED BY: StanfordCoreNLP.java
Needed by CoreNLP distributions

LAST UPDATE: 2013-11-12

LAST UPDATE BY: John Bauer

-----------------------------------------------------------------------
jflex-1.6.1.jar

ORIGINAL JAR NAME: jflex-1.6.1.jar

VERSION: 1.6.1

RELEASE DATE: 2015-03-16

SOURCE AVAILABLE: yes, jflex-1.6.1-src.zip

DESCRIPTION: compiles .flex files into .java

URL: http://jflex.de/

USED BY: Compiling PTBTokenizer, etc.
Not needed by CoreNLP distributions

LAST UPDATE: 2017-05-06

LAST UPDATE BY: Chris Manning

-----------------------------------------------------------------------
log4j-1.2.16.jar
ORIGINAL JAR NAME: log4j-1.2.16.jar
VERSION: 1.2.16
RELEASE DATE: 2010-04-06
SOURCE AVAILABLE: yes
DESCRIPTION: Java logging
URL: http://logging.apache.org/log4j/1.2/index.html

USED BY: edu.stanford.nlp.parser.ensemble (library required by the Malt module)
  Also used by RTE and the Parser webapp.
Not needed by CoreNLP distributions

LAST UPDATE: 2011/11/20
LAST UPDATE BY: John Bauer

-----------------------------------------------------------------------
joda-time.jar
ORIGINAL JAR NAME: joda-time-2.9.4.jar
VERSION: 2.9.4
RELEASE DATE: 2016-05-27
SOURCE AVAILABLE: yes
DESCRIPTION: Extended date/time API that handles partial dates/times
URL: http://joda-time.sourceforge.net/index.html

USED BY: edu.stanford.nlp.time
Needed by CoreNLP distributions.

LAST UPDATE: 2016-07-08
LAST UPDATE BY: Angel Chang

-----------------------------------------------------------------------
jollyday-0.4.9.jar
ORIGINAL JAR NAME: jollyday-0.4.9.jar
VERSION: 0.4.9
RELEASE DATE: 2015-05-06
SOURCE AVAILABLE: yes
DESCRIPTION: API for holidays (using jodatime)
URL: http://jollyday.sourceforge.net

USED BY: edu.stanford.nlp.time
Needed by CoreNLP distributions.

LAST UPDATE: 2016-07-24
LAST UPDATE BY: Christopher Manning

-----------------------------------------------------------------------
ejml-0.23.jar
ORIGINAL JAR NAME: ejml-0.23.jar
VERSION: 0.23
RELEASE DATE: 2013-06-21
SOURCE AVAILABLE: yes
DESCRIPTION: Another matrix library for Java, perhaps fastest for medium
    size vectors and matrices in 2012.  Otherwise, it's ojAlgo.
URL: http://code.google.com/p/efficient-java-matrix-library/

USED BY: Used in deep learning, especially RNN parser and sentiment
Needed by CoreNLP distributions.

LAST UPDATE: 2013-10-14
LAST UPDATE BY: Christopher Manning

-----------------------------------------------------------------------
javacc.jar
ORIGINAL JAR NAME: javacc.jar
VERSION: 6.0.1
RELEASE DATE: June 2014
SOURCE AVAILABLE: no
DESCRIPTION: JavaCC is a parser/scanner generator for java
             compiles .jj and .jjt files to .java
URL: https://java.net/projects/javacc
USED BY: Needed for compiling tregex, tsurgeon, semgrex
Not needed by CoreNLP distributions

LAST UPDATE: 2014-07-08
LAST UPDATE BY: John Bauer

-----------------------------------------------------------------
javax.servlet.jar
ORIGINAL JAR NAME: servlet-api.jar
VERSION: 3.0
RELEASE DATE: ?
SOURCE AVAILABLE: Yes. In: libsrc/tomcat/apache-tomcat-7.0.12-src.zip
DESCRIPTION: Used by Tomcat and servlets.  Originally part of Java EE 6.
URL: ?

USED BY: Our servlets
Not needed by CoreNLP distributions

LAST UPDATE: 2013
LAST UPDATE BY: Spence Green

-----------------------------------------------------------------
protobuf.jar
ORIGINAL JAR NAME: <compiled from source>
VERSION: 2.6.1
RELEASE DATE: Oct 2014
SOURCE AVAILABLE: yes
DESCRIPTION: Google's protocol buffer library
URL: https://developers.google.com/protocol-buffers/
USED BY: CoreMapProtos (and associated serializers)
LAST UPDATE: 2015-09-07
LAST UPDATE BY: Sebastian Schuster

----------------------------------------------------------------
javax.json.jar
ORIGINAL JAR NAME:javax.json-1.0.4.jar
VERSION:1.0.4
RELEASE DATE:? (sometime in 2013, most probably March)
SOURCE AVAILABLE:Yes
DESCRIPTION:Json processing tool (RI, which has the API also) available with Java EE 7.
URL:https://jsonp.java.net/ It has two jars, API and RI. This is the RI one.
USED BY:patterns.surface
LAST UPDATE:2014-04-07
LAST UPDATE BY:Sonal Gupta

-----------------------------------------------------------------------
lucene-analyzers-common-4.10.3.jar
lucene-core-4.10.3.jar
lucene-demo-4.10.3.jar
lucene-queries-4.10.3.jar
lucene-queryparser-4.10.3.jar
ORIGINAL JAR NAME: lucene-core-4.2.1.jar
                   lucene-demos-4.2.1.jar
VERSION: 4.10.3
RELEASE DATE: 29 Dec 2014
SOURCE AVAILABLE: yes
DESCRIPTION: "Apache Lucene is a high-performance, full-featured text
search engine library written entirely in Java. It is a technology
suitable for nearly any application that requires full-text search,
especially cross-platform. Doesn't conform to naming convention as
in has version number, as before. Broken into several Jars in this version."
URL: http://lucene.apache.org/
USED BY: patterns.surface

LAST UPDATE: 2015-01-15
LAST UPDATE BY: Melvin Johnson Premkumar

-----------------------------------------------------------------
slf4j-api.jar
ORIGINAL JAR NAME: slf4j-api-1.7.12.jar

VERSION: 1.7.12
RELEASE DATE: 26 Mar 2015
SOURCE AVAILABLE: yes
DESCRIPTION: "A facade that allows users to choose various logging
frameworks at deployment time."
URL: https://www.slf4j.org/
USED BY: SLF4JHandler

LAST UPDATE: 2017-01-12
LAST UPDATE BY: Jason Bolton
-----------------------------------------------------------------
slf4j-simple.jar
ORIGINAL JAR NAME: slf4j-simple-1.7.12.jar

VERSION: 1.7.12
RELEASE DATE: 26 Mar 2015
SOURCE AVAILABLE: yes
DESCRIPTION: "A basic logger that works with slf4j"
URL: https://www.slf4j.org/

LAST UPDATE: 2017-01-17
LAST UPDATE BY: Jason Bolton

-----------------------------------------------------------------
foo.jar

ORIGINAL JAR NAME:

VERSION:

RELEASE DATE:

SOURCE AVAILABLE:

DESCRIPTION:

URL:

USED BY:

LAST UPDATE:

LAST UPDATE BY:

