ManifoldCF Change Log
$Id$

======================= Release 1.10 =====================

CONNECTORS-1229: Fix NPE in metadata adjuster.
(Mike Caceres, Karl Wright)

CONNECTORS-1226: PostgreSQL does not implement the isValid()
JDBC method in the driver we include, so make sure when we call it
we don't fail if we get an exception.  Related to CONNECTORS-1202.
(Karl Wright)

CONNECTORS-1224: Upgrade to Hadoop 2.6.0.
(Shinichiro Abe)

CONNECTORS-1222: Handle unregistered connector class in getActivitiesList().
(Thomas Daniel, Karl Wright)

CONNECTORS-1220: User mapping prerequisite choices were broken,
caused a hang when there were more than one.
(Karl Wright)

CONNECTORS-1218: Add lowerNames option on Tika extractor.
(Shinichiro Abe)

CONNECTORS-1217: Fix documentation for api login parameters.
(Karl Wright)

CONNECTORS-1216: Set default core/collection name
and add required check on Solr connector.
(Shinichiro Abe)

CONNECTORS-1215: Fuzzyml parser needs to ignore "<" followed by
whitespace, since those are technically not valid tags and some sites
care.
(Brad Dennis, Karl Wright)

CONNECTORS-1213: Job notification information did not export/import
correctly.
(Cathal McGuinness, Karl Wright)

CONNECTORS-1203: SharePoint connector did not consistently use
internal metadata names throughout.
(Dale Dreiske, Karl Wright)

CONNECTORS-1212: Fix export/import of jobs to handle max
intervals.
(Kevin J. Walsh, Karl Wright)

CONNECTORS-1209: Add regular expression extraction to
Metadata Adjuster.
(Karl Wright)

CONNECTORS-1210: List notifications page links broken.
(KOIZUMI Satoru, Karl Wright)

CONNECTORS-1208: Provide more full-featured notification ability.
(Karl Wright)

CONNECTORS-1204: Add ability to post original binary length of document
to Solr from JCIFS connector.  Also improve efficiency of JCIFS connector.
(Karl Wright)

CONNECTORS-1193: Add ability to discard web content based on a 
set of regular expressions.
(Arcadius Ahouansou)

CONNECTORS-1199: SearchBlox connector formatting non-standard.
(Karl Wright)

CONNECTORS-1198: SearchBlox connector session management not
working properly.
(Timo Selvaraj, Rafa Haro, Karl Wright)

CONNECTORS-1197: Add "windows" file mode to file system output connector.
(Karl Wright)

CONNECTORS-1195: Fix for NumberFormatException exception thrown in Maximum Bandwidth Report
(Kishore Kumar)

CONNECTORS-1192: Fix a problem with login-page detection based on
content.  Last line was getting skipped, and infinite amounts of content
could be buffered in memory.  Adopted a compromise that scans an
overlapping window of minimum size 16K.
(Karl Wright)

======================= Release 1.9 =====================

CONNECTORS-1191: Unexpected job status 34, due to a race condition.
Jobs shutting down and being aborted at the same time could wind up
in a state where repeated exceptions would be thrown.
(Arcadius Ahouansou, Karl Wright)

CONNECTORS-1190: Broken dependencies in solr connector maven build
caused tests to fail under maven.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-1187: Handle "File in Use" error properly in JCIFS connector.
(Karl Wright)

CONNECTORS-1186: HttpClient 4.4 requires that you set the SSL socket
factory at the connection manager level.
(Karl Wright)

CONNECTORS-1185: Fix HttpClient deprecation warnings, and make sure
socket timeouts are actually honored in http connections.
(Karl Wright)

CONNECTORS-1183: Fix for GridFS connector broken UI server tab.
(Kishore Kumar)

CONNECTORS-1179: Include the collection name as part of the Solr
version string.
(Kamil Żyta, Karl Wright)

CONNECTORS-1177: Add session-based security for API.
(Jan van Haarst, Karl Wright)

CONNECTORS-1176: Update SolrJ version.
(Karl Wright)

CONNECTORS-1175: Documentum connector needs to set file name.
(Dmitry Bardin, Karl Wright)

CONNECTORS-1172: Fix metadata adjuster 'keep all metadata' switch
UI.
(Frank Brendel, Karl Wright)

CONNECTORS-1171: Fix SharePoint connector path mapping UI.
(Frank Brendel, Karl Wright)

CONNECTORS-1166: Delete link doesn't work on listtransformations
UI page.
(Shinichiro Abe, Karl Wright)

CONNECTORS-1159: UI broken in LiveLink connector.
(Kishore Kumar)

CONNECTORS-1156: Difficulty shutting down agents process after
a while executing.
(Adrian Conlon, Karl Wright)

CONNECTORS-1157: FileNet connector URI is incorrect for document
subtypes.
(Guy Sperry)

CONNECTORS-1154: Changes to the flow through the web connector's
deflate/unzip logic, designed to prevent gzip headers from being read
if the stream's contents are not read.
(Li Minhui, Karl Wright)

CONNECTORS-1153: Broken authority name comparison is preventing
incremental when no authority is used.
(Aeham Abushwashi, Karl Wright)

CONNECTORS-1151: FileNet connector completely broken, due to
MCF 1.8 reorganization.
(Guy Sperry, Karl Wright)

CONNECTORS-1150: Go to Tika 1.7
(Karl Wright)

CONNECTORS-1149: Minor typos in English documentation.
(KOIZUMI Satoru)

CONNECTORS-1148: Update Japanese included-connectors document.
(KOIZUMI Satoru)

CONNECTORS-1146: Improve Japanese concepts document.
(KOIZUMI Satoru)

CONNECTORS-1145: File locking hangs when saving output connection.
(Andreas Baumann, Michael Wilken, Karl Wright)

CONNECTORS-1140: Improve Japanese documentation.
(KOIZUMI Satoru)

CONNECTORS-1141: Increase session timeout for combined UI to
30 minutes.
(Karl Wright)

CONNECTORS-1122: Don't reprioritize documents on job start/resume.
For jobs which share bins with other jobs, this may mean that no
documents will be processed until the entire current queue of the
other job is completed, but this is deemed to be a rare situation.
(Karl Wright)

CONNECTORS-1139: Add support for interruptible throttlers.
(Karl Wright)

CONNECTORS-1138: Loss of all metadata fields but one on pipeline
bifurcation.
(Salih Sen, Karl Wright)

CONNECTORS-1136: Update the user documentation to account for
changes in the metadata adjuster transformer.
(Karl Wright)

CONNECTORS-1134: Revamp metadata adjuster transformer to
handle arbitrary combination expressions across multiple fields.
This replaces the "move" and "add" paradigm with a more general
approach.
(Hemant Jain, Karl Wright)

CONNECTORS-1135: Update Japanese translations for JCIFS connector.
(KOIZUMI Satoru)

CONNECTORS-1132: Update documentation for notification
connections.
(Karl Wright)

CONNECTORS-1130: Add support for name/value document filtering
in Documentum connector.
(Hemant Jain, Karl Wright)

CONNECTORS-1119: Add support for notification connectors, and
an email notification connector.
(Karl Wright)

======================= Release 1.8 =====================

CONNECTORS-1128: Job shows no activity when restarting after
abort.
(Karl Wright)

CONNECTORS-1127: Fix boilerplate extraction to be compatible with
current version of boilerplate.
(Kamil Żyta, Karl Wright)

CONNECTORS-1126: Fix LockGate release logic to not flush LockGate
objects so aggressively.

CONNECTORS-1124: start.jar in example-proprietary not working.
(Shinichiro Abe, Karl Wright)

CONNECTORS-1125: Make sure xz jar is delivered to where Tika needs
it.
(Kamil Żyta, Karl Wright)

CONNECTORS-1123: Reduce the maximum number of zookeeper lock
nodes, by hashing the lock names that correspond to documents.
(Aeham Abushwashi, Karl Wright)

CONNECTORS-1035: Introduce connector-common jar, to get
legacy Alfresco connector working again.
(Karl Wright)

CONNECTORS-1121: Plugins have moved in the dist repository, so
point at them properly.
(Kamil Żyta, Karl Wright)

CONNECTORS-1120: ElasticSearch: Handle case of deleting already
deleted document.
(Kamil Żyta, Karl Wright)

CONNECTORS-1118: Change IIncrementalIngester interface to allow
for cached connection instances.
(Aeham Abushwashi, Karl Wright)

CONNECTORS-974: Make SharePoint 2010 be the default selection.
(Karl Wright)

CONNECTORS-1116: Prevent requirement of unlimited handles for
cached loads by limiting number of cached loads to 200 at a time.
(Adrian Conlon, Karl Wright)

CONNECTORS-1115: Add ability to retain all components of a document,
so that individual ones do not need to be specified.
(Markus Schuch, Karl Wright)

CONNECTORS-1114: SQL exception calling removeDocument().
(Markus Schuch, Karl Wright)

CONNECTORS-1063: Add section to how-to-build-and-deploy on
the Alfresco Webscript connector.
(Karl Wright, Maurizio Pillitu)

CONNECTORS-1112: Reduce contention for zookeeper resources by
caching local configuration data, and by reorganizing stuffer thread.
(Aeham Abushwashi, Karl Wright)

CONNECTORS-1111: Component cleanup did not work properly.
(Markus Schuch, Karl Wright)

CONNECTORS-1110: Component documents getting deleted wrongly
when additional components added.
(Markus Schuch, Karl Wright)

CONNECTORS-1109: Bad cache key for JDBC authority.
(Alejandro Calbazana, Karl Wright)

CONNECTORS-1108: Turn most jobs logging messages from DEBUG
to INFO.
(Aeham Abushwashi)

CONNECTORS-1107: Fix configuration import from 1.6 or later.
(Karl Wright)

CONNECTORS-1100: Change how reprioritization is done to improve
overall usability at large scale.
(Aeham Abushwashi, Karl Wright)

CONNECTORS-1106: Missing state handling for abort case.
(Kamil Żyta, Karl Wright)

CONNECTORS-1104: Add proxy support to SharePoint connector.
(Karl Wright)

CONNECTORS-1102: Don't do a hard reindex on jobqueue.restart,
since it is expensive and may be unnecessary.
(Aeham Abushwashi, Karl Wright)

CONNECTORS-1101: Fix shutdown hang caused by poor interrupt
handling in MySQL driver.
(Karl Wright)

CONNECTORS-1086: Document Amazon Cloud Search fields.
(Karl Wright)

CONNECTORS-1099: Update Metadata Adjuster documentation.
(Karl Wright)

CONNECTORS-1098: Update how-to-build-and-deploy.
(Karl Wright)

CONNECTORS-1097: Update JDBC connector documentation.
(Karl Wright)

CONNECTORS-1096: Document boilerplate removal options.
(Karl Wright)

CONNECTORS-1095: Use https for downloading everywhere.
(Aeham Abushwashi)

CONNECTORS-1094: Performance improvements for document
reprioritization.
(Aeham Abushwashi, Karl Wright)

CONNECTORS-1093: Need to preload document priorities for reset
of all priorities, for performance.
(Karl Wright)

CONNECTORS-1092: Error in log during load tests.
(Karl Wright)

CONNECTORS-1091: On job start, reprioritize documents.
(Karl Wright)

CONNECTORS-1090: More PostgreSQL performance improvements.
(Karl Wright)

CONNECTORS-1089: Add JDBC connector access token capability.
(Alejandro Calbazana, Karl Wright)

CONNECTORS-1088: Add boilerplate extraction to Tika extractor.
(Arcadius Ahouansou, Karl Wright)

CONNECTORS-1087: Fix failing alfresco-webscript unit test.
(Karl Wright)

CONNECTORS-1083: Add support for MariaDB.
(Markus Schuch)

CONNECTORS-1060: Implement Alfresco webscript connector integration
test.
(Maurizio Pillitu)

CONNECTORS-1081: ElasticSearch documentation update.
(Jens Jahnke)

CONNECTORS-1080: Elastic search: go from "content" field to "_content".
(Jens Jahnke)

CONNECTORS-1079: Fix Tika extractor; tika core must be in connector-lib
as well as in root jars.
(Mingchun Zhao, Karl Wright)

CONNECTORS-1078: Improve end-user documentation for the JDBC
connection type.
(Jens Jahnke, Karl Wright)

CONNECTORS-1074: Use Tika to map extensions to mime types.
(Shinichiro Abe, Karl Wright)

CONNECTORS-1075: Provide a means of obfuscating passwords in
properties.xml and global-properties.xml.  Also include an obfuscation
utility in the distribution, for generating obfuscated passwords.
(Karl Wright)

CONNECTORS-1071: JCIFS connector should provide date metadata in
standard ISO8601 format with names that don't conflict with what
Tika extractor generates.
(Antonio David Pérez Morales, Karl Wright)

CONNECTORS-1053: Provide stop scripts for single-process examples.
(Shinichiro Abe, Karl Wright)

CONNECTORS-345: Provide a jetty configuration XML file that can
be used to alter the jetty configuration.
(Shinichiro Abe, Karl Wright)

CONNECTORS-1050: Upgrade to Jetty 9.
(Shinichiro Abe)

CONNECTORS-1049: Put plugins under "plugins" in dist directory,
and connector processes under "processes" in dist directory.
(Shinichiro Abe, Karl Wright)

CONNECTORS-1051: Elastic Search connector and CMIS connector
should use the same paradigm for test wars.
(Karl Wright)

CONNECTORS-1048: Use full paths for all downloaded jars.
(Shinichiro Abe, Karl Wright)

CONNECTORS-1047: Upgrade to Tika 1.6.
(Shinichiro Abe)

CONNECTORS-1042: Upgrade solrj and zookeeper versions.
(Karl Wright)

CONNECTORS-1061: More fixes for the Alfresco webscript connector
UI, and create a UI test.
(Karl Wright)

CONNECTORS-1066: Do not include blank or null fixed fields in Solr
documents; also, provide facility to strip empty fields from general
metadata in Metadata Adjuster.
(Alessandro Benedetti, Shinichiro Abe, Karl Wright)

CONNECTORS-1068: Enhancements for Document Filter transformation
connector.
(Karl Wright)

CONNECTORS-1070: Exit immediately upon finding a misconfigured
ManifoldCF.
(Kamil Żyta, Karl Wright)

CONNECTORS-1067: Allow document filtering on modification date,
and also hook this up in all repository connectors where it makes sense.
(Karl Wright)

CONNECTORS-1057: Implement full internationalization for alfresco-webscript
connector.
(Karl Wright)

CONNECTORS-1037: Add Alfresco webscript connector and authority.
(Maurizio Pillitu, Rafa Haro, Karl Wright)

CONNECTORS-1055: Fix Zulu date parsing.
(Karl Wright)

CONNECTORS-1043: Wrong url generated for SharePoint list items.
(Lalit Jangra, Karl Wright)

CONNECTORS-1041: Livelink connector should force HTTPS off when
HTTP is selected.
(Karl Wright)

CONNECTORS-1040: Transformation connectors should use specification
rather than unpacking version string.
(Karl Wright)

CONNECTORS-1039: Use a URL-centric way of getting the extension
for document filtering.
(David Morana, Karl Wright)

CONNECTORS-1038: Handle multiple pool closes properly.
(Karl Wright)

CONNECTORS-956: Change how Solr field name escaping is done.
(Piergiorgio Lucidi, Shinichiro Abe, Edgardo Ambrosi, Karl Wright)

CONNECTORS-1036: Zookeeper service handling also has
ephemeral nodes which need to be tied to sessions.
(Karl Wright)

CONNECTORS-1031: Fix Zookeeper synchronization to be resilient
against short tick time settings.
(Karl Wright)

CONNECTORS-1027: Improve some general and PostgreSQL queries
for large crawling sets.
(Paul Boichat, Karl Wright)

CONNECTORS-1025: SharePoint connector should skip blocked files.
(Radek Sklenicka, Karl Wright)

CONNECTORS-1024: Non-null components always failed due to a
null pointer exception.
(Karl Wright)

CONNECTORS-1023: Fix Alfresco tests.  They don't yet succeed, but
at least they run, and the connector can communicate with Alfresco.
(Karl Wright)

CONNECTORS-1021: Add more metadata for Jira connector.
(Daniel Aschaeur)

CONNECTORS-1022: Add URL mapping tab to web connector.
(Luca Basso, Karl Wright)

CONNECTORS-1020: Email connector misuse of variable names.
(Karl Wright, Paul Boichat)

CONNECTORS-1014: Fix the fact that Solr Cloud no longer sets
a content type in its responses.
(Kamil Zyta, Karl Wright)

CONNECTORS-1006: Extend GoogleDrive connector to capture
Google native spreadsheets.
(Shigeki Kabayashi)

CONNECTORS-1015: Add minimum file size to Allowed Documents
transformation filter.
(David Morana, Karl Wright)

CONNECTORS-1016: Recognize non-existent user.
(David Morana, Karl Wright)

CONNECTORS-949: Upgrade OpenCMIS to latest version to see if it
fixes join queries.
(Karl Wright)

CONNECTORS-1013: Handle new kind of XML we see coming back from
SharePoint on getLists metadata field list requests.
(Lalit Jangra, Karl Wright)

======================= Release 1.7 =====================

CONNECTORS-1012: Upgrade xmlbeans and POI to fix various CVE's.
(Karl Wright)

CONNECTORS-1011: Upgrade to httpclient 4.3.5.
(Karl Wright)

CONNECTORS-1009: Fix CMIS connector again, to handle typical case
where a new version is a new node.
(Karl Wright)

CONNECTORS-1010: Use uri hash instead of full URI as lock key
to prevent "file name too long" errors on windows.
(Erlend Garåsen, Shigeki Kobayashi, Karl Wright)

CONNECTORS-1007: Fix CMIS connector so that tests pass.
(Karl Wright)

CONNECTORS-1006: Update googledrive API to latest released version.
(Karl Wright)

CONNECTORS-1000: Add support for auth to open search server
connector.
(Emmanuel Keller)

CONNECTORS-1004: CMIS connector was not using latest version
of document, which matters for repositories like Alfresco.
(Prasad Perera, Karl Wright)

CONNECTORS-1003: CMIS connector handling of query string was
incorrect.
(Karl Wright)

CONNECTORS-958: Update OpenSearchServer connector to handle
metadata, and deal with more current versions of OpenSearchServer.
(Emmanuel Keller)

CONNECTORS-565: Add connector and plugin support for SharePoint
2013.
(Will Parkinson, Karl Wright)

CONNECTORS-984: Add Tika extraction metadata, and also add
ability to ignore tika exceptions.
(Shinichiro Abe, Karl Wright)

CONNECTORS-989: Introduce document sub-components, which
is a way of having multiple indexed documents corresponding to a
single repository document.
(Matteo Grolla, Karl Wright)

CONNECTORS-994: Make Alfresco connector pay attention to the
scanOnly flag.
(Prasad Perera, Karl Wright)

CONNECTORS-997: Get CMIS connector working again.
(Karl Wright)

CONNECTORS-996: Catch CMIS object not found exception, and
also enable CMIS derby IT test.
(Prasad Perera, Karl Wright)

CONNECTORS-995: Connectors dealing with non-indexable documents
such as directories should call noDocument() on those documents if they
want incremental behavior.
(Karl Wright)

CONNECTORS-993: Pipeline code not handling "no document" case properly.
This problem was an oversight of the new pipeline code.  Essentially,
transformation connectors could choose not to send a document onward
to the next stage.  If this happened, then the document version information
for the corresponding output connection would never get written, and
no incremental-ness would be possible.
I fixed this by introducing a "noDocument()" IOutputAddActivity method,
which transformation connectors should call when they reject a document.
(Karl Wright)

CONNECTORS-992: Add a test to exercise ServiceInterruption within
a connector.
(Karl Wright)

CONNECTORS-990: Revamp IRepositoryConnector API to no longer separate
getDocumentVersions() and processDocuments().  This modification basically
pushes responsibility to determine changes to the repository connector.
Backwards compatibility is maintained via code in BaseRepositoryConnector,
and new methods have been added to IProcessActivity.
WorkerThread has been largely rewritten as a result.
(Karl Wright)

CONNECTORS-991: Make Jira connector perform pre-emptive basic auth
since Jira supports guest users.
(Daniel Aschauer, Karl Wright)

CONNECTORS-988: Performance improvements for split pipeline crawls.
(Karl Wright)

CONNECTORS-985: Get UI tests working again.
(Karl Wright)

CONNECTORS-981: Add support for SolrInputDocument indexing in
Solr connector.
(Alessandro Benedetti, Karl Wright)

CONNECTORS-979: Fix ant build so that documentum and filenet show
up.
(Karl Wright)

CONNECTORS-980: Output connector gets notified now when job is deleted.
(Karl Wright)

CONNECTORS-954: Revamp AmazonCloudSearch output connector completely.
(1) Remove Tika and field mapping, since that would be done upstream in the
pipeline.
(2) Revamped the document lifecycle so they are batched together (which isn't
perfect; see CONNECTORS-980).
(Karl Wright, Takumi Yoshida)

CONNECTORS-971: Use a generic "seeding version string" to track the last
seeding event for every job.  This abstracts away from time intervals and
permits seeding based on things like transaction IDs.
(Karl Wright, Piergiorgio Lucidi)

CONNECTORS-967: Add links to Java 1.7 and ManifoldCF framework Javadoc
for ManifoldCF Javadocs.
(Shinichiro Abe)

CONNECTORS-965: Update end-user documentation to reflect
multiple outputs per job.
(Karl Wright)

CONNECTORS-964: Document REST API changes for multiple outputs
per job.
(Karl Wright)

CONNECTORS-962: Add support for multiple outputs for a given job.
WARNING: Schema change!  REST API change!  Upgrade from 1.6.x
has been added but not yet tested.
(Karl Wright)

CONNECTORS-963: SharePoint/AD authority did not generate the "true"
token.
(Karl Wright)

CONNECTORS-961: Debug pipeline usage in job UI, and add a Forced Metadata
transformation connector that has a job tab.
(Karl Wright)

CONNECTORS-960: Remove Specification subclass usage from main connector API's.
(Karl Wright)

CONNECTORS-953: Forced metadata changes do not reset seeding start time
(Karl Wright)

CONNECTORS-952: Crawler UI generates bad XML.
(Karl Wright)

CONNECTORS-951: Import/export does not handle forced metadata.
(Karl Wright)

CONNECTORS-946: Add pipeline support.  This is a major change that adds a new class of connector, UI changes,
and includes structural as well as schema changes.  WARNING: Schema change!!
(Karl Wright)

CONNECTORS-950:CMIS Connector should ingest only the properties specified in the select clause
(Piergiorgio Lucidi)

CONNECTORS-916: Supply an Amazon Cloud Search connector.
(Takumi Yoshida, Karl Wright)

CONNECTORS-948: CMIS Connector returns couldn't encrypt null when the query doesn't include cmis:objectId
(Piergiorgio Lucidi)

CONNECTORS-947: ant test fails when make-deps is not run.
(Karl Wright)

CONNECTORS-945: GridFS connector.
(Muhammed Olgun)

CONNECTORS-944: Maven build has different stuff in war file than
ant build.
(Arcadius Ahouansou, Karl Wright)

CONNECTORS-943: .aspx files not indexed by Sharepoint connector due to missing mime type in core

CONNECTORS-941: Solr connector not working properly with basic auth.
(Erlend Garåsen, Karl Wright)

CONNECTORS-942: Add output connector method to handle notification
of removal of all connection-related records.
(Karl Wright)

CONNECTORS-940: Upgrade slf4j and commons-logging to latest versions.
(Karl Wright)

CONNECTORS-933: Simplified chinese localizations.
(Mingchun Zhao)

CONNECTORS-938: Allow JSPs to all work properly with Java 8.
(Arcadius Ahouansou, Ahmet Arslan)

CONNECTORS-936: Handle null content streams in CMIS connector.
(Cetra Free)

CONNECTORS-935 : Use Java 7 in ant build
(Ahmet Arslan)

CONNECTORS-932 : Avoid UnsupportedEncodingException handling
(Ahmet Arslan)

CONNECTORS-927: Override JDK's entity expansion limit for Solr
connector.
(David Morana, Karl Wright)

======================= Release 1.6 =====================

CONNECTORS-928: Remove unused directory.
(Ahmet Arslan, Karl Wright)

CONNECTORS-925: Fix ant exclusions for zip/tar distributions on Linux variants.
(Ahmet Arslan)

CONNECTORS-923: Fix bandwidth throttling.
(Karl Wright)

CONNECTORS-920: Be more explicit in Solr connector about handling
SocketTimeoutException.
(Hitoshi Tatsumi, Karl Wright)

CONNECTORS-919: Fix example-proprietary.
(Karl Wright)

CONNECTORS-913: Only remove connector registration when connectors
are being delivered.
(Karl Wright)

CONNECTORS-912: Revamp build system, so that individual connectors
can build directly against a distribution.  This makes it much easier for
developers to do their own connectors using our infrastructure, and
contribute complete working connectors with tests as well.
(Graeme Seaton, Karl Wright)

CONNECTORS-909: Upgrade to Elasticsearch 1.0.1.
(Shinichiro Abe)

CONNECTORS-900: Clean up Hadoop deprecation warnings.
(Karl Wright)

CONNECTORS-910: SharePoint connector does not fetch metadata values
for sub-site document libraries.
(Ahmet Arslan, Karl Wright)

CONNECTORS-908: Update Solr 3.x, Solr 4.x, and ElasticSearch
plugin versions bundled with ManifoldCF.
(Karl Wright)

CONNECTORS-906: Include documentation section on advanced
properties.xml settings.
(Graeme Seaton)

CONNECTORS-890: Upgrade to Solr 4.7.0, and Httpclient 4.3.2.
(Karl Wright)

CONNECTORS-905: Add property which disables history recording.
(Graeme Seaton)

CONNECTORS-904: JDBC Connector with MySQL should convert
from binary columns to strings.
(Karl Wright)

CONNECTORS-903: Remove deprecation warnings from framework.
(Karl Wright)

CONNECTORS-901: Clean up httpclient-related deprecation warnings.
(Karl Wright)

CONNECTORS-899: Allow some headers to be included/excluded from
metadata for web connector.
(Florian Schmedding, Karl Wright)

CONNECTORS-898: Handle zookeeper connection loss and session
expiration conditions.
(Graeme Seaton, Karl Wright)

CONNECTORS-886: Add support for Parent folder security
in SharedDriveConnector.
(Shinichiro Abe)

CONNECTORS-893: Update end-user documentation to describe view
pages and the buttons that are found on them.
(Karl Wright)

CONNECTORS-895: Add missing REST API methods for connection and
job control, and revamp API for operations that are specific to only one
kind of connection.
(Karl Wright)

CONNECTORS-894: Cosmetic display problem with SharePoint specification
view.
(Ahmet Arslan, Karl Wright)

CONNECTORS-892: Add ability in UI reset incremental job seeding state.
(Karl Wright)

CONNECTORS-891: SharePoint AD groups not properly authorized.
(Will Parkinson, Karl Wright)

CONNECTORS-888: JobResetThread had issues when running on
multiple agents processes.
(Florian Schmedding, Karl Wright)

CONNECTORS-887: Upgrade issues with MySQL.
(Florian Schmedding, Karl Wright)

CONNECTORS-885: Handle errors during startup better.
(Karl Wright)

CONNECTORS-883: Handle errors from the output connector during
notification better.
(Karl Wright)

CONNECTORS-884: Log successful index/delete in Solr connector.
(Erlend Garåsen, Karl Wright)

CONNECTORS-882: Solr connector: Keep all metadata fixed.
(Alessandro Benedetti, Karl Wright)

CONNECTORS-880: Fix handling of output connector errors during
clean up phase.
(Florian Schmedding, Karl Wright)

CONNECTORS-878: Come up with a formula for allocating connections
to pools when a connection bin is used by multiple pools.
(Karl Wright)

CONNECTORS-877: Missing Solr i18n key.
(Erlend Garåsen, Karl Wright)

CONNECTORS-876: Solr indexing exception reports now include the document URI.
(David Morana, Karl Wright)

CONNECTORS-875: Handle ArrayIndexOutOfBounds and NumberFormatException
from LAPI as Livelink runtime errors.
(David Morana, Karl Wright)

CONNECTORS-870: Avoid line break for login.jsp description
when locale is Japanese.
(Shinichiro Abe)

CONNECTORS-868: Remove mvn-bootstrap scripts and all mention of them.
Direct dependencies on missing artifacts are now possible.
(Muhammed Olgun)

CONNECTORS-867: Make locking system more responsive to UI when
system under load.  (This is not a complete fix for the issue, but rather
a pair of partial fixes.)
(Karl Wright)

======================= Release 1.5 =====================

CONNECTORS-874: Uncaught runtime exception when SolrJ can't talk
to zookeeper.
(Karl Wright)

CONNECTORS-872: Throttling hang for web connector, as well as web
connector not obeying rate throttling.
(Erlend Garåsen, Karl Wright)

CONNECTORS-873: SolrCloud now depends on noggit; include this in the
build and dependencies.
(Alessandro Benedetti, Karl Wright)

CONNECTORS-871: Fix versions caused by the commit for CONNECTORS-833.
(David Morana, Karl Wright)

CONNECTORS-866: Fix lock-clean scripts.
(Karl Wright)

CONNECTORS-864: Alfresco only provides 100 search results using CMIS connector with Apache ManifoldCF
(Piergiorgio Lucidi)

CONNECTORS-865: Wrong version of the parent pom in the alfresco-4-war
(Piergiorgio Lucidi)

CONNECTORS-863: Increase the number of zookeeper connections allowed;
this permits agents processes to start on linux.
(Karl Wright)

CONNECTORS-862: Reduce the binary image footprint by consolidating the 
various lib directories and just changing classpaths.
(Karl Wright)

CONNECTORS-861: Reduce the example worker thread count so that we
don't run out of zookeeper resources on Windows.
(Karl Wright)

CONNECTORS-860: Remove zookeeper.jar from a number of contexts
where it should not be.  This will reduce the binary footprint by some
amount and also prevent more than one zookeeper.jar from being in
the classpath at a time.
(Karl Wright)

CONNECTORS-858: HDFS repository and output connectors need to be
fully compatible with multiple Hadoop 2.2.0 file system protocols.
(Minoru Osuka, Karl Wright)

CONNECTORS-859: Authority tokens should be prefixed with the group name,
not the connection name.
(Fran Alvarez, Karl Wright)

CONNECTORS-840: Add ability to suppress all non-specified metadata
fields in Solr connector.
(Alessandro Benedetti, Karl Wright)

CONNECTORS-754: Add claim space selection for SharePoint native
authority, so that it works with Claim Space servers.
(Will Parkinson, Karl Wright)

CONNECTORS-854: Enable stale connection checks on all http fetches.
Not sure why it was disabled long ago, but it causes problems when
connections are pooled for longer than the server wants the connection
to survive.
(Shinichiro Abe, Karl Wright)

CONNECTORS-855: Use -D switch in start-webapps scripts to point
to the right properties.xml file.  Otherwise who knows where the
properties may come from.
(David Morana, Karl Wright)

CONNECTORS-851: Add mail.jar to connector wsdl builder to turn off
warnings.  Also provide ability to extend build with optional include.
(B. Scott Michel, Karl Wright)

CONNECTORS-850: Add maximum recrawl interval parameter for all
jobs.  NOTE: Schema change!!
(Florian Schmedding, Karl Wright)

CONNECTORS-849: Upgrade to Hadoop 2.2.0.
(Karl Wright)

CONNECTORS-847: Upgrade to SolrJ 4.6.0.
(Karl Wright)

CONNECTORS-814: Make File System output connector handle
directory/file conflicts.
(Karl Wright)

CONNECTORS-733: Write a test which exercises database connection
interruption logic, and debug the same.
(Ahmet Arslan, Karl Wright)

CONNECTORS-816: Document revisions to SharePoint connector,
and new SharePoint authorities.
(Karl Wright)

CONNECTORS-553: Add email connector.
(Tishan DahanaYakage, Piergiorgio Lucidi, Karl Wright)

CONNECTORS-846: Once a service had grabbed all connector
instances, but was not using them any more, it would not release
them for other cluster members to use.
(Karl Wright)

CONNECTORS-844: Remove "per JVM" from connection maximum
messages in crawler UI.
(Karl Wright)

CONNECTORS-842: Update documentation to describe the functioning
of the org.apache.manifoldcf.mysql.client property.
(Chris Griffin, Karl Wright)

CONNECTORS-843: Solr Connector methods do not call getSession()
when they should, leading to unpredictable results.
(Markus Schuch, Karl Wright)

CONNECTORS-841: Always reset document schedules on job start.
(David Morana, Karl Wright)

CONNECTORS-839: Fix our CloudSolrServer usage to use multipart
post instead of putting everything in the URL.
(Alessandro Benedetti, Raymond Wiker, Karl Wright)

CONNECTORS-838: Character-stuff names that ZooKeeper sees, to
prevent issues with '/' characters.
(Karl Wright)

CONNECTORS-837: Specifying 1 connection causes hang.
(Karl Wright)

CONNECTORS-836: Use the same thread context in the registered
shutdown objects.
(Karl Wright)

CONNECTORS-835: Fix busted ZooKeeper implementation.
(Karl Wright)

CONNECTORS-833: Fix Null Pointer exception in LiveLink connector.
(David Morana, Karl Wright)

CONNECTORS-828: New stylesheet!  Apparently brings the
crawler UI into the modern world.
(Eranda Bandaranaike)

CONNECTORS-827: Add a feature which removes all ingeststatus
records for an output connection, in case that the target index
is gone forever and is inaccessible.
(Swami Rajamohan, Karl Wright)

CONNECTORS-795, CONNECTORS-821: Release new versions of
Solr 3.x, Solr 4.x, ElasticSearch, and SharePoint 2010 plugins.
(Karl Wright)

CONNECTORS-832: Add example second agents process to all
multiprocess examples.
(Karl Wright)

CONNECTORS-831: Refactor ReprioritizationTracker so that it uses
the interface/factory paradigm.
(Karl Wright)

CONNECTORS-830: Stuffer thread throttling now works globally, not
just locally.
(Karl Wright)

CONNECTORS-781: Add support for multiple agents processes.  This
ticket involved changing much of the underlying infrastructure for
the framework, including adding lock manager features, revamping the
agents framework, building tests, and adding schema features that
allow for an agents process failure.  All in all, a very significant change,
which could well have introduced various instabilities.  Please don't
hesitate to note any issues.
(Graeme Seaton, Karl Wright)

CONNECTORS-822: Use data size as Long value, not int.
(David Morana, Karl Wright)

CONNECTORS-819: Add missing metadata to JCIFS connector.
(Graeme Seaton)

CONNECTORS-817: Improve SharePoint logging.
(Mark Libucha, Karl Wright)

CONNECTORS-813: For list items, obtain the url from the EncodedAbsURL
metadata field.  This should allow list items to be clicked on in search results.
(Mark Libucha, Karl Wright)

CONNECTORS-812: SharePoint connector needs to ignore constructs
that it doesn't understand when enumerating list contents, because
under some configurations, SharePoint lists things that aren't list items
there.
(Mark Libucha, Karl Wright)

CONNECTORS-810: Update JDBC connector documentation, and add
documentation for the JDBC authority connector.
(Karl Wright)

CONNECTORS-805: Add author name/email support to RSS connector.
(Benjamin Brandmeier, Karl Wright)

CONNECTORS-13: Provide a ZooKeeper method of coordinating
various ManifoldCF processes, along with an example.
(Karl Wright)

CONNECTORS-808: Add raw jdbc string so smart users can override the
default behavior and supply gobbledegook Oracle connect strings.
(Marcello Lorenzi, Karl Wright)

CONNECTORS-807: Handle the case when there are no documents being
deleted.
(Adrian Conlon, Karl Wright)

CONNECTORS-804: Web connector documentation is out of date.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-806: Web connector session passwords were not being
handled in the UI properly.
(Karl Wright)

CONNECTORS-803: Add automatic and manual ability to clean out
repohistory rows.
(Marcello Lorenzi, Karl Wright)

CONNECTORS-801: Refactor JDBC authority to bring it into compliance with current
conventions in JDBC connector.  Warning: this change is not backwards
compatible!  JDBC authority queries now require explicit return column
names for the user id and token queries!
(Karl Wright)

CONNECTORS-798: Bring JDBC connector support for CLOBs into the
modern era.  This also required extension of the CharacterInputFile
paradigm slightly - a new method to find the utf8 byte length was needed.
(Karl Wright)

CONNECTORS-797: Bad query when maxcount was exceeded in the
database table for the jobstatus screen.
(Graeme Seaton, Karl Wright)

CONNECTORS-796: Fix NPE in RSS connector having to do with
tags that aren't nested as expected.  CDATA parsing was also broken.
(Benjamin Brandmeier, Karl Wright)

CONNECTORS-792: Introduce concepts of authorization domain
and authority group, and appropriate UI, API, etc. changes.  This
is to support federated authorization models such as what SharePoint
Claim Space fundamentally does, where there are multiple authorities
per repository.
WARNING: Schema change!
(Karl Wright)

======================= Release 1.4 =====================

CONNECTORS-791: Broken WHERE clause in job status query.
(Karl Wright)

CONNECTORS-790: Fix NPE when reading job status via API.
(Erlend Garåsen, Karl Wright)

CONNECTORS-789: Fix broken metadata field display in SharePoint
connector UI.
(Mark Libucha, Karl Wright)

CONNECTORS-786: Fix broken Discussion Groups in SharePoint.
(Mark Libucha, Karl Wright)

CONNECTORS-785: Turn of debug logging for Axis configuration
exception, to remove spurious log noise.
(Karl Wright)

CONNECTORS-771: Include new versions of SharePoint plugins in
distribution.
(Karl Wright)

CONNECTORS-784: Fix incorrect no-day-of-month-selected message
when viewing a schedule record.
(Adrian Conlon, Karl Wright)

CONNECTORS-783: Add support for limiting the amount of counting
needed for the job status page.
(Hiroshi Tatsumi, Karl Wright)

CONNECTORS-782: Add unique-ID metadata in SharePoint connector.
(Dmitry Goldenberg, Karl Wright)

CONNECTORS-778: Add support for attachments in SharePoint
connector.
(Dmitry Goldenberg, Karl Wright)

CONNECTORS-772: SharePoint connector wasn't working against
certain SharePoint instances.  The reason was that some paths
were relative and some absolute.  Fixed ALL path management to
have stronger check logic so bad paths are detected, warned, and
skipped.
(Dmitry Goldenberg, Karl Wright)

CONNECTORS-775: Use httpclient 4.2.6.
(Karl Wright)

CONNECTORS-774: Add support for proxies to Wiki connector.
(Karl Wright)

CONNECTORS-773: Add support for proxies to Jira connectors.
(Karl Wright)

CONNECTORS-770: Java7 no longer allows an interface to be
interchangeable with a class.  Modified FileNet stub accordingly.
(Yann Barraud, Karl Wright)

CONNECTORS-767: Add filename support to Web connector.
(Shinichiro Abe)

CONNECTORS-769: Include general_parentid in Livelink metadata.
(David Morana, Karl Wright)

CONNECTORS-768: Add more extensions to ExtensionMimeMap.
(Shinichiro Abe)

CONNECTORS-766: When using mcf-api-service, multiply query
parameters are not parsed correctly.
(Shinichiro Abe)

CONNECTORS-765: Increase crawler-ui session timeout to 30 minutes.
(Erlend Garåsen, Karl Wright)

CONNECTORS-764: HOPCOUNTREMOVED records need to be reset when
a job's hopcount limits change.  It also makes sense to reset them
when the set of documents is changed.
(Karl Wright)

CONNECTORS-750: Skip files when catching FileNotFoundException,
e.g. access/permission denied files in FileConnector.
(Shinichiro Abe)

======================= Release 1.3 =====================

CONNECTORS-761: Fix broken tab in Jira authority connector, and
don't use startsWith in javascript since IE doesn't recognize it.
(Shinichiro Abe, Karl Wright)

CONNECTORS-760: HDFSRepositoryConnector's version string is always start with '-'.
(Minoru Osuka)

CONNECTORS-759: Fix broken content type for login page.
(Shinichiro Abe, Karl Wright)

CONNECTORS-757: NPE's from GoogleDrive connector when crawling
documents that don't have a file length.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-756: Fix broken JDBC authority UI.
(Karl Wright)

CONNECTORS-755: ant rat-sources finds unlicensed files in alfresco connector
(Karl, Wright, Piergiorgio Lucidi)

CONNECTORS-753: Japanese translations needed for ManifoldCF crawler UI login page and logout link
(Minoru Osuka, Karl Wright)

CONNECTORS-737: Make crawler-UI more secure.  This ticket requires
that all users log in to the MCF UI, and also prevents passwords from
appearing in HTML pages.
(Maciej Lizewski, Karl Wright)

CONNECTORS-751: RequestMinimum field not handled properly in API.
(Maciej Lizewski, Karl Wright)

CONNECTORS-749: HDFSRepositoryConnector can not fetch files.
(Minoru Osuka)

CONNECTORS-748: Fix broken regular expressions in file connector, and
modify file output connector to deal with colons in the file name in an
acceptable way (so can be used on WIndows too).
(Minoru Osuka, Karl Wright)

CONNECTORS-729: Break up Jira URL into components, with proper
javascript checking.
(Karl Wright)

CONNECTORS-744: Use background threads in HDFS output connector.
(Karl Wright)

CONNECTORS-742: Document HDFS connector.
(Karl Wright)

CONNECTORS-741: Document HDFS output connector.
(Karl Wright)

CONNECTORS-743: Document user mapping functionality.
(Karl Wright)

CONNECTORS-703: Add mapper plugin functionality, and regular expression
mapper.  WARNING: This change represents a schema change!!
(Maciej Lizewski, Karl Wright)

CONNECTORS-745: Translate FileSystem and HDFS output connector's end-user documentation.
(Minoru Osuka)

CONNECTORS-740: Add documentation for filesystem connector changes
and for filesystem output connector.  Also refactor filesystem connector
for better UI.
(Karl Wright)

CONNECTORS-738: Update how-to-build-and-deploy to reflect new
connectors.
(Karl Wright)

CONNECTORS-739: Update included-connectors on site.
(Karl Wright)

CONNECTORS-735: Include crawl date in output.  Modified Solr connector
to allow you to specify indexeddate attribute name.
(Stephane Gamard, Karl Wright)

CONNECTORS-728: Add HDFS connector
(Minoru Osuka, Karl Wright)

CONNECTORS-727: Implemented generic API connector
(Maciej Lizewski, Karl Wright)

CONNECTORS-734: Catch deadlock error with EXPLAIN ANALYZE in
postgresql, and ignore it.
(Ahmet Arslan, Karl Wright)

CONNECTORS-732: Fix crawler-ui's message for 'Waiting' job status.
(Ahmet Arslan)

CONNECTORS-723: Add a Jira connector.  This connector does not yet
handle security or comments, but may be extended in the future to do
so.
(Andrew Janowczyk, Karl Wright)

CONNECTORS-725: Update to SolrJ 4.3.1.
(Karl Wright)

CONNECTORS-722: Fix hang during seeding in DropBox connector and
GoogleDrive connector.
(Andrew Janowczyk, Karl Wright)

CONNECTORS-721: Fix a refactoring error in DropBox connector.
(Andrew Janowczyk)

CONNECTORS-715: Add sufficient logging to the Web Connector so that
people can diagnose their own "why didn't it index" questions.
(TC Tobin-Campbell, Karl Wright)

CONNECTORS-717: Alfresco Connector needs a new parameter for the Socket Timeout
(Piergiorgio Lucidi)

CONNECTORS-714: All LiveLink connector to use LAPI for document fetches.
(David Morana, Karl Wright)

CONNECTORS-718: Alfresco Connector must throw exceptions with handler methods
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-713: Alfresco connector needs to deal with IOExceptions better
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-623: Use UTF-8 for encoding headers in SolrJ post.
(Shinichiro Abe, Karl Wright)

CONNECTORS-716: RepositoryDocument.addField() would go into an
infinite loop if field value was null.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-710: FileConnector should have option of outputting a full http url based on Wget conventions, not just a file:/ url
(Minoru Osuka, Karl Wright)

CONNECTORS-667: Refix NPE problem with Livelink authority.  This time
we were seeing it when SSL was not on.
(David Morana, Karl Wright)

CONNECTORS-712: ArrayIndexOutOfBoundsException in the Alfresco Connector
(Karl Wright)

CONNECTORS-711: Wrong date parsing of the Alfresco Connector
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-705: Upgrade the CMIS Connector to OpenCMIS 0.9.0
(Piergiorgio Lucidi)

CONNECTORS-706: Update documentation to require JDK 1.7.
(Karl Wright)

CONNECTORS-635: Alfresco test sometimes fails; upgrade to Alfresco 4.0 recommended
(Piergiorgio Lucidi)

CONNECTORS-707: Treat special character "." as meaning "no extension",
for ElasticSearch and OpenSearchServer output connectors.
(TC Tobin-Campbell, Karl Wright)

CONNECTORS-708: Make JDBC connector check mime type for indexability,
if it is present.
(Richard Nichols, Karl Wright)

CONNECTORS-709: Escape \r, \n, \f, and \b in ElasticSearch connector.
(Richard Nichols, Karl Wright)

CONNECTORS-701: Add forced ACLs to DropBox connector.  Fixed a
few UI-related other problems as well.
WARNING: This is a non-backwards-compatible change!!
(Karl Wright)

CONNECTORS-702: Add forced ACLs to GoogleDrive connector.  Also
fixed a number of UI-related issues.
(Karl Wright)

CONNECTORS-684: Add Dropbox connector end-user documentation for
Japanese.
(Shinichiro Abe)

CONNECTORS-687: Fix the way documents are indexed via DropBox, so
that dangling threads are not left unjoined, and all common metadata
is set in RepositoryDocument.
(Karl Wright)

CONNECTORS-700: Fix ISO8601 date parsing to handle timezones with
colons in them, e.g. -08:00
(Stephane Gamard, Karl Wright)

CONNECTORS-698: Add various required metadata values to the
GoogleDrive connector.
(Karl Wright)

CONNECTORS-693: Support for gzip and deflate encoding for web
connector.
(Maciej Li¿ewski, Karl Wright)

CONNECTORS-694: Add Google Drive connector.
(Andrew Janowczyk, Karl Wright)

CONNECTORS-690: For ElasticSearch connector, include _name and
_content_type field within "file" portion of JSON, so it will work properly
with the Mapper Attachment Plugin.
(Richard Nichols, Karl Wright)

CONNECTORS-692: Add support for basic auth in wiki connector.
(TC Tobin-Campbell, Karl Wright)

CONNECTORS-689: Add ability to crawl user workspaces in LiveLink
connector.
(David Morana, Karl Wright)

CONNECTORS-696: FileSystem Output Connector.
(Minoru Osuka)

======================= Release 1.2 =====================

CONNECTORS-682: Fix expect-continue issues with Solr when there is
a Solr delay of more than 3 seconds.
(Oleg Kalnichevski, Erlend Garåsen, Karl Wright)

CONNECTORS-683: Add Dropbox connector end-user documentation.
(Andrew Janowczyk)

CONNECTORS-586: Fix native2ascii incompatibility with Java 7.
(Christian Ziech, Karl Wright)

CONNECTORS-685: Handle the case when connector model is
ADD_CHANGE_DELETE and you change configuration data.
(Maciej Li¿ewski, Karl Wright)

CONNECTORS-676: Include DropBox connector.
(Andrew Janowczyk, Karl Wright)

CONNECTORS-678: Add missing noteModification() method calls, so
that jobqueue is reanalyzed more frequently.
(Karl Wright)

CONNECTORS-681: ElasticSearch and OpenSearchServer connectors
both misused the File object passed to them in checkFileIndexable()
in order to see if the extension was a supported one.  Instead they
should have been checking the URL.  Added that code as well as changed
the JCIFS connector to check indexability using the URL means.
(konrad, Karl Wright)

CONNECTORS-679: Web connector hangs during throttling.  Reason
appears to be that it is possible to interrupt the beginRead() method
after it goes into "obtain estimate" mode.  Added code to make it clean
up in that case.  Also applied to RSS connector.
(Erlend Garåsen, Karl Wright)

CONNECTORS-677: Close body streams where required.
(Karl Wright)

CONNECTORS-599: Upgrade to a new version of Derby which doesn't
stall.
(Karl Wright)

CONNECTORS-675: Fix for json UTF-8 encoding, elastic search
connector.
(Karl Wright)

CONNECTORS-649: Adopt httpclient 4.2.4.
(Karl Wright)

CONNECTORS-671: Trim end-user documentation images.
(Karl Wright)

CONNECTORS-673: Update end-user documentation for the Active
Directory authority.
(Karl Wright)

CONNECTORS-672: Update end-user documentation to include
Forced Metadata tab.
(Karl Wright)

CONNECTORS-669: UI did not allow empty connection name to be
changed, for either authority or repository connections.
(Karl Wright)

CONNECTORS-670: Update end-user documentation for RSS connector.
(Karl Wright)

CONNECTORS-642: Add Elastic Search plugin.
(Simon Willnauer, Piergiorgio Lucidi, Karl Wright)

CONNECTORS-668: Update end-user documentation for LiveLink
connector and authority.
(Karl Wright)

CONNECTORS-665: Update Solr connector type end-user documentation.
(Karl Wright)

CONNECTORS-667: Fix livelink authority caching to work properly with
new SSL connection support.
(David Morana, Karl Wright)

CONNECTORS-666: Ant build broken
(Piergiorgio Lucidi)

CONNECTORS-644: Add support for Livelink SSL connections via LAPI.
(David Morana, Karl Wright)

CONNECTORS-663: Add support for minimal crawling.
(Maciej Li¿ewski, Karl Wright)

CONNECTORS-662: RSS connector now supports ISO8601 dates.
(David Morana, Karl Wright)

CONNECTORS-661: Turn on expect-continue for solr output.  Otherwise
basic auth won't work.
(Erlend Garåsen, Karl Wright)

CONNECTORS-657: Add a standard way of handling created and modified dates
throughout ManifoldCF, so that these can be dealt with consistently in
an output connector.
(Maciej Li¿ewski, Karl Wright)

CONNECTORS-660: CMIS connector created date and modified date support
(Piergiorgio Lucidi)

CONNECTORS-659: Alfresco connector created date and modified date support
(Piergiorgio Lucidi)

CONNECTORS-656: Add mimetype and/or filename support to CMIS connector
(Piergiorgio Lucidi)

CONNECTORS-655: Add mimetype and/or filename support to Alfresco connector
(Piergiorgio Lucidi)

CONNECTORS-658: Add common metadata support (mimetype etc)
to Livelink connector.
(David Morana, Karl Wright)

CONNECTORS-654: Move extension to mimetype mapping to a 
central location.
(Mark Lugert, Karl Wright)

CONNECTORS-653: Include filename in SharePoint connector.
(Mark Lugert, Karl Wright)

CONNECTORS-652: Add documentation for new script client and API
features.
(Karl Wright)

CONNECTORS-651: Add query argument support to script client.
(Karl Wright)

CONNECTORS-63: Add API support for history and queue reports.
(Karl Wright)

CONNECTORS-650: Set a reasonable socket timeout for SharePoint
and Meridio connectors.
(Mark Lugert, Karl Wright)

CONNECTORS-648: Revamp how tld's are used, for compatibility with
Tomcat.
(Jan Høydahl)

CONNECTORS-647: Add the resource.name hint to the Solr output
connector.
(Maciej Li¿ewski, Karl Wright)

CONNECTORS-623: A better fix, overriding the posting method for
SolrJ and forcing multipart post.  Although still a hack, this should cause
the behavior to work like MCF 1.0.1 now.
(Karl Wright)

CONNECTORS-645: Handle null data properly in worker thread.
(Maciej Li¿ewski, Karl Wright)

CONNECTORS-644: Restart button did not work.
(Erlend Garåsen, Karl Wright)

CONNECTORS-643: Fix spurious error report for Elastic Search deletions
in Simple History.
(Karl Wright)

CONNECTORS-641: Add filename, mimetype, acls, and proper escaping
to ElasticSearch connector.
(Karl Wright)

CONNECTORS-633: Remove dependency on custom version of xerces;
extend the simple tag parser to be able to handle XML, and move it into
core/fuzzyml for general use.
(Karl Wright)

CONNECTORS-639: Maven execute of jetty-runner fails.
(Maciej Li¿ewski)

CONNECTORS-638: Idle-time leak of database connection handles,
so that allocation is lost forever from the pool.
(Erlend Garåsen, Maciej Li¿ewski, Karl Wright)

CONNECTORS-615: Add ability to exclude content based on regexp
to RSS connector.
(David Morana, Karl Wright)

CONNECTORS-637: Interpret null mime types and extensions reasonably
in ElasticSearch connector.
(Andrew Clegg, Karl Wright)

CONNECTORS-631: Support Znode path by Solr Output Connection.
(Minoru Osuka)

CONNECTORS-632: Get mvn-bootstrap scripts working again as
intended.
(Maciej Li¿ewski, Karl Wright)

CONNECTORS-629: Revamp error handling in ElasticSearch connector.
(Andrew Clegg, Karl Wright)

CONNECTORS-625: Finish internationalization work for parts of the
core crawler UI.
(Karl Wright)

CONNECTORS-552: Add support for forced metadata in all jobs.
(Maciej Li¿ewski, Karl Wright)

CONNECTORS-624: Add indexing via subsidiary thread to OpenSearchServer
connector.
(Karl Wright)

CONNECTORS-606: Add indexing via subsidiary thread to ElasticSearch
connector.
(Karl Wright)

CONNECTORS-394: Fully internationalize crawler UI.
(Karl Wright)

======================= Release 1.1 =====================

CONNECTORS-630: Work around SolrJ paramname encoding bug.
(David Morana, Karl Wright)

CONNECTORS-627: Upgrade SolrJ to 4.1.0 from 4.0.0
(Minoru Osuka)

CONNECTORS-623: The stream_size and stream_name can be sent to Solr now.
(Shinichiro Abe)

CONNECTORS-622: CMIS Connector returns NPE trying to get an empty boolean or date value
(Piergiorgio Lucidi)

CONNECTORS-617: Simple report NPE under Derby.
(Karl Wright)

CONNECTORS-621: Solr connector commit logic needs to use specified
update path.
(Karl Wright)

CONNECTORS-620: It was possible for the JDBC Connector to leak
JDBC connections under some error conditions.
(Anthony Leonard, Karl Wright)

CONNECTORS-619: Include slf4j jars in multiprocess agents classpath.
This was causing Solrj to not work on multiprocess deployments.
(Erlend Garåsen, Karl Wright) 

CONNECTORS-618: MySQL orders indexes so that NULL values are first.
This is a problem for the stuffer query, which then must go through
millions of rows before it finds the one it is looking for.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-616: Work around Solr 4.0 or Jetty bug where connections
are dropped randomly under multithreaded load.  Broken pipe exceptions
are now retried after a minute, for up to three times, before the Solr
connector concludes that the document cannot be indexed and skips it.
(Shinichiro Abe, Karl Wright)

CONNECTORS-613: Add a way of getting a document's mime type
to Solr, since Tika needs mime type in order to extract content
since Solr 4.0.0.
(Shinichiro Abe, Karl Wright)

CONNECTORS-614: Solr connection release not working right.
(Karl Wright)

CONNECTORS-582: Upgrade to official httpcomponents 4.2.3
release.
(Karl Wright)

CONNECTORS-612: Disable HttpClient retries everywhere.
(Karl Wright)

CONNECTORS-611: Handle inability to get permissions for funky docs
by skipping those docs, rather than throwing an NPE.
(Ahmet Arslan, Karl Wright)

CONNECTORS-610: Can't use retries with httpclient instance used
with solrj, so disable retries explicitly.
(Ahmet Arslan, Karl Wright)

CONNECTORS-609: Solrj doesn't always set the code property of
its http exceptions right, so we need to parse it out ourselves.
(Ahmet Arslan, Karl Wright)

CONNECTORS-608: Solr connector times out chronically on some
documents.
(David Morana, Karl Wright)

CONNECTORS-607: Handle multi-valued parameters properly in the
Solr connector.
(Minoru Osuka, Shinichiro Abe, Karl Wright)

CONNECTORS-603: Upgrade the CMIS Connector to OpenCMIS 0.8.0
(Piergiorgio Lucidi)

CONNECTORS-604: Make headers exactly the same as for MCF 1.0.1.
(Shinichiro Abe, Karl Wright)

CONNECTORS-605: Maven build is broken: commons-httpclient version is missing
(Piergiorgio Lucidi)

CONNECTORS-601: Revise algorithm for screening out documents that
are not text in the web connector.  Since CJK characters mess up the
old definition of "strange" character, use the more-limited definition of
all non-whitespace characters less than 32.
(Shinichiro Abe, Karl Wright)

CONNECTORS-600: Add a field to the RSS connector that contains
document origination date in ISO 8601 format.
(David Morana, Karl Wright)

CONNECTORS-598: Add an RSS connector mode that allows just
metadata to be consumed, in conjunction with content from description
or content fields.
(David Morana, Karl Wright)

CONNECTORS-596: RSS and Web connectors need to peel off any
namespace qualifies from tag names when processing XML feeds.
(David Morana, Karl Wright)

CONNECTORS-594: Port Solr connector to use SolrJ, and add
capability to work with SolrCloud installations.
(Minoru Osuka, Ryan McKinley, Karl Wright)

CONNECTORS-593: Skip hidden files in JCIFS connector.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-592: Add "last modified" metadata to JCIFs connector.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-591: Elasticsearch download URL has changed.
(Minoru Osuka)

CONNECTORS-589: Parse multiple link tags inside an entry tag, for
Atom feeds.
(David Morana, Karl Wright)

CONNECTORS-543: Add testing infrastructure for combined war.
(Karl Wright)

CONNECTORS-587: Manual startup did not properly set lastchecktime.
(Maciej Li¿ewski, Karl Wright)

CONNECTORS-578: Refactor Livelink connector, and add support for
general metadata.
(David Morana, Karl Wright)

CONNECTORS-584: Fix MySQL use of indexes on ORDER-BY stuffing query.
Turns out that MySQL will not order by an index unless only the first column
in the index is specified in the ordering criteria.  Still need to check if this
breaks other databases like PostgreSQL, Derby, or HSQLDB.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-583: Catch MySQL lock timeout, and retry that transaction.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-581: Port OpenSearchServer connector and ElasticSearch
connector to httpcomponents.
(Karl Wright)

CONNECTORS-566: Simple JDBC Authority connector.
(Maciej Li¿ewski)

CONNECTORS-563: Augment LDAP authority to include new features.
(Maciej Li¿ewski)

CONNECTORS-580: Remove build of commons-httpclient-mcf, and all
ant and maven dependencies.
(Karl Wright)

CONNECTORS-579: Add untrusted, unverified https support to the RSS
connector.
(David Morana, Karl Wright)

CONNECTORS-575: Modify Livelink connector build to use stub only when
there is no lapi.jar available.  This is to support the fact that lapi jars are
not compatible from release to release, class-wise, so clients will need to
build this connector against the jar that they have, instead of the jar that
we have.
(David Morana, Karl Wright)

CONNECTORS-577: Typo in language message properties which cause stack
traces
(Erlend Garåsen) 

CONNECTORS-120: Port ManifoldCF to httpcomponents 4.2.2, from legacy
commons-httpclient 3.1 (mcf edition).
(Karl Wright)

CONNECTORS-574: Add more Web connector session login stages, and
a session login test.
(Karl Wright)

CONNECTORS-573: Add the ability to specify path separator characters
in the LiveLink connector.
(David Morana, Karl Wright)

CONNECTORS-571: MySQL timeout was not being handled properly.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-569: Add User-Agent header for Wiki connector.
Newer versions of Wiki need this.
(Karl Wright)

CONNECTORS-560: Use standard patch if "svn patch" is not available.
(Alex Ott, Karl Wright)

CONNECTORS-568: Combined web.xml file contains wrong declarations.
(Swami Rajamohan)

CONNECTORS-562: Some web.xml files contain wrong declarations
(Alex Ott, Erlend Garåsen)

CONNECTORS-564: Configure velocity to use the ManifoldCF log
configuration and the logger "velocity".
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-561: Only download font packages if they aren't already
present.
(Alex Ott)

CONNECTORS-559: Help link of navigation.jsp is incorrect by locale.
(Shinichiro Abe)

CONNECTORS-558: Fix 'Insert Here' button.
(Shinichiro Abe)

CONNECTORS-556: performCommit() is in the wrong place for
ingeststatus table update.
(Karl Wright)

CONNECTORS-542: Add pom.xml for LDAP authority.
(Karl Wright)

CONNECTORS-550: Ant targets for zip distributions were not working
on Linux variants.
(Ahmet Arslan, Karl Wright)

CONNECTORS-535: Move readme files into Solr plugin modules.
(Karl Wright)

======================= Release 1.0.1 ====================

CONNECTORS-555: Alfresco maven build is broken
(Piergiorgio Lucidi)

CONNECTORS-551: Resetting agents process causes job's seed
documents to be flipped into the PURGATORY state, which in turn
may cause the documents to be deleted and the job to be shut down
if the seed documents are the only documents.
(Martin Gielow, Karl Wright)

CONNECTORS-546: Rework the how-to-build-and-deploy documentation
page to be clearer and also cover the combined war.
(Karl Wright)

======================= Release 1.0 =====================

CONNECTORS-549: Wrong credentials not correctly managed by CMIS Connector
(Piergiorgio Lucidi)

CONNECTORS-548: Update maven build documentation to reflect limitations
in how maven builds can be done.
(Erlend Garåsen, Piergiorgio Lucidi, Karl Wright)

CONNECTORS-547: Web crawler, on encountering fatal error with no
contents, would throw a StringIndexOutOfRange exception.
(Erlend Garåsen, Karl Wright)

CONNECTORS-545: web-proprietary wars need to be used by single-
process proprietary example.
(Shinichiro Abe, Karl Wright)

CONNECTORS-544: Add missing materials to combined service war.
Also include a way of easily invoking it from the single-process example
directory.
(Karl Wright)

CONNECTORS-540: Multi-process proprietary webapps run not properly
running the start-webapps.sh.
(Shinichiro Abe)

CONNECTORS-539: Multi-process agent run not properly initializing
crawler/authority environment.
(Karl Wright)

CONNECTORS-538: Maven build broken on SharePoint Connector
(Piergiorgio Lucidi)

CONNECTORS-537: NPE when trying to display a history report when
the corresponding connector is unregistered.
(Erlend Garåsen, Karl Wright)

CONNECTORS-533: Do not forgo xxx-README files in connector-lib-proprietary.
(Karl Wright)

CONNECTORS-532: Update 'incubator' and redirected URLs in various places.
(Ahmet Arslan)

CONNECTORS-531: Add Japanese translation for LDAP connector
documentation.
(Shinichiro Abe)

CONNECTORS-530: Add documentation for the Use SIDs checkbox in
the JCIFS connector Server tab.
(Karl Wright)

CONNECTORS-528: Add documentation for LDAP authority.
(Karl Wright)

CONNECTORS-529: Add Japanese translations for LDAP authority.
(Shinichiro Abe)

CONNECTORS-515: Add LDAP connector, and modify JCIFS connector
to allow account names to be used instead of SIDs.
(Maciej Lizewsky, Karl Wright)

CONNECTORS-526: Clarify JCIFS connector documentation.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-525: Upgrade to OpenCMIS 0.7.0
(Piergiorgio Lucidi)

CONNECTORS-527: Error during CMIS ingestion of nodes without binary content
(Piergiorgio Lucidi)

CONNECTORS-518: Add Wiki protected content access support to the
Wiki Connector.  Thanks to Maciej Lizewski for this contribution.
(Maciej Lizewski, Karl Wright)

CONNECTORS-486: Optionally encrypt the file which the crawler configuration
is exported to.
(Erlend Garåsen)

CONNECTORS-523: Build a combined war that can be deployed alone
on Tomcat and bring all of ManifoldCF's functionality with it.
(Maciej Lizewski, Karl Wright)

CONNECTORS-524: Do not deregister connectors in single-process
code unless they are being removed or changed.
(Karl Wright)

CONNECTORS-520 : Add pom.xml to SharePoint connector module
(Ahmet Arslan, Karl Wright)

CONNECTORS-519: maven build of mcf-test-materials/mcf-alfresco-war-test fails
(Ahmet Arslan, Piergiorgio Lucidi)

CONNECTORS-521: Fix project site's broken search
(Ahmet Arslan)

CONNECTORS-492: Replace Lists.GetListItems call with a custom call,
in SharePoint connector, to dodge limits on size of response.
(Ahmet Arslan, Piergiorgio Lucidi, Joe Becknell, Karl Wright)

CONNECTORS-522: Wiki connector namespace tab was non-functional.
(Maciej Lizewski, Karl Wright)

CONNECTORS-517: Internationalization bug; leftover "&nbsp;" in the
English translations file.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-513: Fix HTML parsing in WebConnector so that we
recognize a default input type to be "text", and deal with missing
"value" attributes in "option" tags.
(Karl Wright)

CONNECTORS-514: Revamp ManifoldCF.initializeEnvironment and
ManifoldCF.cleanUpEnvironment to use reference counting so that more
than one user of these methods can coexist in the same VM.
(Karl Wright)

CONNECTORS-512: Revise documentation to include new access-
method pulldown and corresponding screen shot.
(Karl Wright)

CONNECTORS-510: MySQL now periodically runs ANALYZE on tables
to be sure the plan(s) are reasonable.
(Karl Wright)

CONNECTORS-509: Allow JDBC Connector to choose which column
access method to use.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-507: Improve JCIFs Connector documentation.
(Swapna Vuppala)

CONNECTORS-508: Improve SharePoint connector documentation.
(Ahmet Arslan)

CONNECTORS-493: Improve JDBC connector documentation as it
pertains to metadata handling.
(Karl Wright)

CONNECTORS-506: Missing quotes in start-database.sh cause HSQLDB
to start with the wrong parameters.
(Fred Toussi, Karl Wright)

CONNECTORS-502: Fix MySQL transaction handling.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-505: Fix for "unknown state" issue with SharePoint
UI.
(Ahmet Arslan, Karl Wright)

CONNECTORS-504: Stop agents process from talking to database after 
the stop signal has been sent.
(Karl Wright)

CONNECTORS-503: Add support in status reports for hopcount exceeded
status.
(Karl Wright)

CONNECTORS-501: Fix hopcount logic to return a deterministic
number of documents.  A number of race conditions were discovered
and corrected.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-497: Add Lists support to the SharePoint connector.
(Ahmet Arslan, Karl Wright)

CONNECTORS-500: Tests were hanging or otherwise doing strange
things on exit.  This was because the connection pool was being
closed when the web application(s) were being unloaded, meaning
that cleanup of the database took place with the pool in an
inconsistent state.
(Karl Wright)

CONNECTORS-494: Fix the build to conditionally include registration
commands for connectors that are built with stubs.
(Shinichiro Abe, Karl Wright)

CONNECTORS-488: Add Cache tab for all authority connectors that
support caching, so that the cache parameters can be varied.
(Karl Wright)

CONNECTORS-470: Extend SharePoint connector to work with
SharePoint 2010.
(Ahmet Arslan, Fatih Samet Cetin, Joe Becknell, Karl Wright)

======================= Release 0.6 =====================

CONNECTORS-489: Fix user-agent string in web and rss connectors
so that ISA proxies don't refuse to proxy the requests.
(Jan van Haarst)

CONNECTORS-487: Upgrade to HSQLDB 2.2.9.
(Karl Wright)

CONNECTORS-485: Upgrade to manifoldcf solr plugin versions 0.2.
(Karl Wright)

CONNECTORS-99: Improve documentation for JSON in REST services so
that syntactic simplifications made by ManifoldCF are spelled out.
(Karl Wright)

CONNECTORS-474: Make it possible to build a complete release candidate
and site javadoc without requiring any proprietary libraries or interface
code installed.  This is accomplished by: (a) including stub non-proprietary
classes that can be compiled against, and (b) including WSDLs and XSDs
generated from proprietary .NET libraries, but which are not proprietary
themselves (according to LEGAL-137).
(Joe Becknell, Sam Ruby, Karl Wright)

CONNECTORS-484: The FileNet connector UI has been broken since
the i18n work was done on it.
(Joe Becknell, Karl Wright)

CONNECTORS-461: Mime types and document length restrictions and
commit option for Solr output connector need documentation
(Erlend Garåsen)

CONNECTORS-483: Add NTLM proxy support for Web Connector.
(Karl Wright)

CONNECTORS-482: Need to include at least a portion of the HTTP
body in history message whenever a non-200 HTTP code comes back.
(Karl Wright)

CONNECTORS-481: Documentation of API is wrong in a few spots.
(Adrian Conlon, Karl Wright)

CONNECTORS-480: Documentum and FileNet connector run.sh scripts
broken.
(Joe Becknell, Karl Wright)

CONNECTORS-479: Alfresco end-to-end tests were broken due to
missing jetty jar.
(Karl Wright)

CONNECTORS-478: Catch event constraint-violation exception in Derby.
This was not being interpreted as a retry situation because it is no
longer inside a transaction.
(Marcin Goss, Karl Wright)

CONNECTORS-473: Split the ManifoldCF site into two distinct pieces.
One is housed under "site/trunk" and contains the project site.  The other
is housed under "trunk/site" and generates the release documentation.
(Karl Wright)

CONNECTORS-476: Allow for remote MySQL connections.
(Shigeki Kobayashi, Karl Wright)

CONNECTORS-472: Make changes related to graduation.
(Karl Wright)

CONNECTORS-471: Replace broken HSQLDB 2.2.8 with a trunk build.
(Karl Wright)

CONNECTORS-96: Remove jdbcpool driver, and replace with a simple
set of pooling classes.  This gives us better control and makes failures
on long crawls less likely.
(Karl Wright)

CONNECTORS-469: Hook up context listener to catch web application
shutdown more efficiently.
(Karl Wright)

CONNECTORS-453: Getting deadlock problems and other issues with
Derby 10.8.1.1.
(Karl Wright)

CONNECTORS-467: Remove outdated taglib directives in web.xml
(Erlend Garåsen)

CONNECTORS-468: Wrap ResourceBundle class so that missing keys
in a resource bundle are dealt with in a friendlier way.
(Karl Wright)

CONNECTORS-466: Fix expression error in CMIS connector javascript.
(Karl Wright)

CONNECTORS-465: Revamp the expression parsing in the python
browser simulator to actually obey the Javascript precedence rules.
(Karl Wright)

CONNECTORS-464: Improve document deletion cleanup logic for
hopcounts, so that no references to deleted documents remain.
(Karl Wright)

CONNECTORS-462: Change "<" and ">" characters to HTML entities in
connectors
(Erlend Garåsen)

CONNECTORS-459: Upgrade to require JDK 1.6 across the board.  Get the
(broken) maven build also working consistently with the ant build.
(Karl Wright)

CONNECTORS-435: Replace incorrect Messages.getString() calls in the main
UI with correct ones.
(Erlend Garåsen, Karl Wright)

CONNECTORS-460: Add multi-domain-controller support to the
Active Directory authority.
(Colin Anderson, Karl Wright)

CONNECTORS-456: Fix a typo in dist-license/README.txt.
(Karl Wright, Alex Ott)

CONNECTORS-455: Fix an internationalization error on the max activities
and max bandwidth reports.
(Karl Wright)

CONNECTORS-450: Make sure all ant exec operations check properly for
errors.  This should prevent people from getting a bad dependencies
build if they have the wrong svn client (for instance).
(Karl Wright)

CONNECTORS-430: An error should be returned if invalid seeds are typed
into the seeds list for the web connector
(Erlend Garåsen, Karl Wright)

CONNECTORS-449: Fix browser simulator so that UI tests work again.
(Karl Wright)

CONNECTORS-436: Refer to older releases via archive.apache.org, not
via the mirrors.
(Karl Wright)

CONNECTORS-436: Upgrade the README.txt file to accurately describe
how to work with the binary distribution.
(Karl Wright)

CONNECTORS-432: Make sure quotations are in the javascript everywhere,
not in the translation resources.
(Erlend Garåsen, Karl Wright)

CONNECTORS-431: Update pom.xml versions.
(Karl Wright)

======================= Release 0.5 =========================

CONNECTORS-457: Fix for i18n problem with unknown locale picking up
partial translations.
(Karl Wright, Piergiorgio Lucidi, Alex Ott)

CONNECTORS-454: Provide disclaimer file for all packages, not just
source package.
(Karl Wright)

CONNECTORS-452: Get a version of postgresql jdbc driver compatible
with JDK 1.5, and make sure it is actually in the classpath for single-
process example.
(Karl Wright)

CONNECTORS-451: mvn-bootstrap scripts were broken.
(Karl Wright)

CONNECTORS-448: Fix xerces build for Linux machines.
(Karl Wright)

CONNECTORS-447: Deliver lib contents at root level in lib package.
(Karl Wright)

CONNECTORS-446: Correct problems blocking build in Japan.
(Karl Wright, Shinichiro Abe)

CONNECTORS-445: Each distribution has its own licensing and readme files.
(Karl Wright)

CONNECTORS-444: Update documentation to reflect new process for
building from source.
(Karl Wright)

CONNECTORS-442: Fix the binary exclusion rules to not include target
or the xml build files.
(Karl Wright)

CONNECTORS-443: Build all patched jars we distribute; do not rely on svn
for any binaries.
(Karl Wright)

CONNECTORS-441: Refactor how integration packages are delivered for
better consistency.
(Karl Wright)

CONNECTORS-440: Build should exclude integration content from external
sources.
(Karl Wright, Shinichiro Abe)

CONNECTORS-437: Change the ant jar distribution model so that no
binary files are included in the source distribution.  All of them are now
downloaded via the ant "download-dependencies" target.
(Karl Wright)

CONNECTORS-434: Describe which licenses we select for our dual-licensed
jars.
(Karl Wright)

CONNECTORS-433: Update copyright date.
(Karl Wright)

CONNECTORS-429: Check for the 'no process at end of pipe' condition
in the JCIFS connector.
(T.Akagi, Karl Wright)

CONNECTORS-428: Include LICENSE.txt file mention of the IPA license
for Japanese PDF documentation fonts.
(Karl Wright)

CONNECTORS-425: Elastic Search documentation missing images
(Piergiorgio Lucidi)

CONNECTORS-423: Elastic Search connector should handle document metadata
(Luca Stancapiano, Piergiorgio Lucidi, Karl Wright)

CONNECTORS-424: Add RepositoryDocument.getFileName for posting file
name as metadata.
(Shinichiro Abe)

CONNECTORS-427: The default value for "include only host matching seeds"
should be yes/checked
(Erlend Garåsen)

CONNECTORS-288: Add Elastic Search connector.
(Luca Stancapiano, Piergiorgio Lucidi, Karl Wright)

CONNECTORS-422: Rearrange Velocity templates so that there's one
template per tab.
(Karl Wright)

CONNECTORS-381: Add an OpenSearchServer UI test.  While we were
at it fixed a broken CMIS UI.
(Karl Wright)

CONNECTORS-421: Add hooks to permit agents "process" to be reset
by ManifoldCF.resetEnvironment().
(Karl Wright)

CONNECTORS-420: Revise the way we use Velocity so that we can make
better use of it for internationalization purposes, and for things like loops
etc.
(Karl Wright)

CONNECTORS-419: Alfresco Connector needs to invoke the ingestDocument for each d:content property of a node
(Piergiorgio Lucidi)

CONNECTORS-417: CMIS Connector creates documentURI with wrong value when version is null. 
Now the documentURI to get the content stream is retrieved from the CMIS server using an internal method of the OpenCMIS API.
(Piergiorgio Lucidi)

CONNECTORS-416: Fix web connector authentication tab.
(Karl Wright)

CONNECTORS-415: Fix script language documentation.
(Karl Wright)

CONNECTORS-414: Fix incorrect path in executecommand.sh, start-webapps.sh
and start-database.sh
(Shinichiro Abe)

CONNECTORS-413: Use the right variable variant in all places for the Open
Search Server connector.
(Karl Wright)

CONNECTORS-412: Port OpenSearchServer connector to use Velocity rather than
the internal home-grown substitution.
(Luca Stancapiano)

CONNECTORS-410: Allow dfc.properties to be used instead of dmcl.ini for
determination of correct value of the DOCUMENTUM environment variable.
(Karl Wright)

CONNECTORS-411: Execution of integration tests from Maven is broken
(Piergiorgio Lucidi)

CONNECTORS-406: Use MultiThreadedHttpConnection manager in script
engine and in OpenSearchServer connector.
(Luca Stancapiano, Karl Wright)

CONNECTORS-409: Set mcf-ui-core.jar to all the examples lib.
(Shinichiro Abe)

CONNECTORS-408: Rearrange the script-engine directory in a manner
consistent with other dist directories, and also use a different env variable
(ENGINE_HOME) so that we don't conflict with MCF_HOME.
(Karl Wright)

CONNECTORS-407: Set the executable bit in the distribution directory
for .sh files during ant build.
(Karl Wright)

CONNECTORS-405: Do not include sources in binary distribution.  This
is no longer essential since we deliver built jars for all the connectors
now.
(Karl Wright)

CONNECTORS-327: Share the web applications among all the examples.
(Karl Wright)

CONNECTORS-402: Change the ant build process to produce two artifacts -
one with proprietary material, and the other without.  This allows for
releases that include built connectors even though we do not ship the
proprietary material.
(Karl Wright, Piergiorgio Lucidi)

CONNECTORS-403: Fix the sidecar process scripts to use the same
definition for MCF_HOME as everything else uses.  Also promote these
scripts to the root level in their individual process directory.
(Karl Wright)

CONNECTORS-401: Update the website with some material about the project
(Piergiorgio Lucidi)

CONNECTORS-351: Alfresco Connector documentation must be updated
(Piergiorgio Lucidi)

CONNECTORS-398: Japanese localization for Alfresco connector.
(Hitoshi Ozawa)

CONNECTORS-396: Japanese updates for the CMIS connector.
(Hitoshi Ozawa)

CONNECTORS-399: Update Japanese site to reflect release of ManifoldCF 0.4-incubating.
(Hitoshi Ozawa)

CONNECTORS-387: Generate end-user-documentation.pdf properly in Japanese.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-397: Alfresco Connector UI must be conformed with Apache Velocity
(Piergiorgio Lucidi)

CONNECTORS-395: CMIS Connector UI must be completely conformed with Apache Velocity
(Piergiorgio Lucidi)

CONNECTORS-392: Complete translation to Japanese of index.xml and
concepts.xml.
(Hitoshi Ozawa)

CONNECTORS-388: Incorporate Apache Velocity as a connector UI rendering
option, and modify the CMIS connector's UI to use it as an example.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-391: Multiprocess example web apps didn't work, due to missing
jars.
(Karl Wright)

CONNECTORS-390: JDBC drivers cannot work from anything other than the
root classpath.  This is because of a flaw with JDBC.  I've changed the instructions
accordingly, and provided built-in support for all drivers the JDBC connector
knows about.
(Karl Wright)

CONNECTORS-389: Chemistry in-memory war renaming breaks mvn-bootstrap
(Piergiorgio Lucidi)

CONNECTORS-329: Upgrade to OpenCMIS 0.6.0
(Piergiorgio Lucidi)

CONNECTORS-385: Fix broken Forrest generation of Japanese HTML.
This workaround simply sets the environment for Forrest up so that
Cocoon does not fail.
(Karl Wright)

CONNECTORS-386: CMIS Integration tests implementation compile error
(Piergiorgio Lucidi)

CONNECTORS-336: Add Japanese documentation.
(Hitoshi Ozawa)

CONNECTORS-383: Add more Japanese localization for JCIFS connector.
(Hitoshi Ozawa)

CONNECTORS-382: Add more Japanese localization for JDBC connector.
(Hitoshi Ozawa)

CONNECTORS-376: Provide Japanese localization of Meridio connector.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-379: Internationalize Meridio connector.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-377: Use Maven standards for resource directories.
(Karl Wright)

CONNECTORS-375: Add Japanese messages for RSS connector.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-374: Add Japanes messages for SharePoint connector.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-373: Add Japanese messages for Solr connector.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-371: Add Japanese messages for LiveLink connector.
(Hitoshi Ozawa)

CONNECTORS-372: Finish the Japanese translation of the web connector's
strings.
(Hitoshi Ozawa)

CONNECTORS-370: Fix the use of MessageFormat for expanding
message arguments so that the proper locale is used.
(Karl Wright)

CONNECTORS-365: Internationalize SharePoint connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-368: Internationalize Wiki connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-367: Internationalize Web connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-364: Internationalize RSS connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-363: Internationalize more of the Livelink connector.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-362: Internationalize JDBC connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-361: Internationalize JCIFS connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-360: Internationalize GTS connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-359: Internationalize FileSystem connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-358: Internationalize FileNet connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-357: Internationalize Documentum connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-356: Internationalize ActiveDirectory connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-366: Internationalized Solr connector fully.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-318: Add debugging output for XML parsing errors.  The
code assumes UTF-8 encoding of the stream, and only outputs the first 64K.
This should be sufficient for most situations though.
(Martin Goldhahn, Karl Wright)

CONNECTORS-355: Fix some remaining uninternationalized strings.
(Hitoshi Ozawa)

CONNECTORS-353: Ship .wsdd configuration files as part of connector
jars rather than separate files with configuration parameters.  This
simplifies the building and deployment of the SharePoint and Meridio
connectors considerably.
(Karl Wright)

CONNECTORS-352: Remove duplicate logfile property output for tests.
(Martin Goldhahn)

CONNECTORS-344: Fix OpenSearchServer UI so that data is not lost between posts.
(Emmanuel Keller, Karl Wright)

CONNECTORS-346: Reorganize test class hierarchy, and main ant
build targets, to reduce duplication of code and make more sense.
(Karl Wright)

CONNECTORS-328: added explicit support for Multi-Tenancy in the job configuration
(Piergiorgio Lucidi)

CONNECTORS-337: Pay attention to -DskipITs for alfresco, cmis, and
wiki tests on Maven build.
(Karl Wright)

CONNECTORS-340: Separate labels with colons from labels without.
(Karl Wright)

CONNECTORS-338: Move localization to the ui-core jar.
(Karl Wright)

CONNECTORS-335: Add i18n infrastructure.  This commit also addresses
some problems found in the CMIS, Alfresco, and OpenSearchServer
connectors having to do with improper escaping of data values.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-334: Add MySQL database support.
(Hitoshi Ozawa, Karl Wright)

CONNECTORS-332: Provide a way of running the web applications on jetty
from within the multiprocess example.
(Karl Wright)

CONNECTORS-324: Maven build broken
(Piergiorgio Lucidi)

CONNECTORS-331: How-to-build-and-deploy page is missing section for Alfresco connector
(Piergiorgio Lucidi)

======================= Release 0.4 =========================

CONNECTORS-349: Content binary is not correctly read
(Piergiorgio Lucidi)

CONNECTORS-343: Fix lack of proper escaping for values in the
Alfresco, CMIS, and OpenSearchServer connectors.  Fix broken tabs
in the Alfresco and CMIS connectors.
(Karl Wright)

CONNECTORS-342: Fix bad HTML in the File System connector.
(Karl Wright)

CONNECTORS-330: Add infrastructure that permits the database class
to initialize a connection every time it is pulled from the pool.  This is
necessary to support HSQLDB, because a number of HSQLDB's states
are actually maintained in the JDBC driver and thus cannot be managed
well in a pooled connection paradigm.
(Fred Toussi, Karl Wright)

CONNECTORS-321: Correct a problem with external HSQLDB databases
where the schema wasn't being reliably set for the session.
(Fred Toussi, Karl Wright)

CONNECTORS-319: Added a shutdown hook to the AgentRun command,
so that if you ^C out of it you can rerun.
(Karl Wright)

CONNECTORS-325: Adeguate the content identifier with the Alfresco node reference
(Piergiorgio Lucidi)

CONNECTORS-326: Fix the ant image build target to not use build-dev.
(Karl Wright)

CONNECTORS-315: Include the latest distributed versions of the plugin
jars.
(Karl Wright)

CONNECTORS-323: Fix *.sh files in multiprocess-example.
(Shinichiro Abe)

CONNECTORS-313: Reorganize the dist directory to include a multiprocess
example as well as a single process example.
(Shinichiro Abe, Karl Wright)

CONNECTORS-320: Fix issues with remote HSQLDB driver having to do
with schema discovery.
(Karl Wright)

CONNECTORS-308: Get the alfresco connector integration tests to run
under ant.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-310: Get the alfresco connector to build with Maven on a clean
system.  This involves pushing some of the dependencies that are not available
via the current maven repository into the local repository.  I wound up just
changing the bouncycastle dep to 140 instead of 137, but did not change the
others because I wasn't sure of the potential effects.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-311: added missing licenses
(Piergiorgio Lucidi)

CONNECTORS-312: Move the Meridio web service into a separate package,
like we did for the SharePoint 3.0 plugin.
(Karl Wright)

CONNECTORS-301: added the detailed JavaDoc for the CMIS connector and integration tests
(Piergiorgio Lucidi)

CONNECTORS-300: added the defaul values for the CMIS connector configuration
(Piergiorgio Lucidi)

CONNECTORS-304: extended the endpoint parameter of the CMIS Connector with protocol, server, port and path
(Piergiorgio Lucidi)

CONNECTORS-307: CMIS and Alfresco connector configuration UI loses configuration when you switch tabs
(Piergiorgio Lucidi)

CONNECTORS-302: Add a specific Server tab for CMIS-related configuration information
(Piergiorgio Lucidi)

CONNECTORS-303: Maven build doesn't consider HTML and JS files for the connector
(Piergiorgio Lucidi)

CONNECTORS-284: HSQLDB runs out of memory on an extended load
test, and had other problems too.  A new version of the db software was
needed to correct this issue.  Thanks to the HSQLDB team for their
assistance!
(Fred Toussi, Karl Wright)

CONNECTORS-299: Handle Postgresql 9.1's newfound ability to throw
deadlock conditions on transaction ends.
(Erlend Garåsen, Karl Wright)

CONNECTORS-298: Improve the SSL error message when no trusted
certs are found.
(Michael Kelleher, Karl Wright)

CONNECTORS-297: Add a description of ant download-dependencies for
Building the SharePoint connector to how-to-build-and-deploy.html.
(Shinichiro Abe)

CONNECTORS-295: Add the support for multivalue properties
(Piergiorgio Lucidi)

CONNECTORS-296: Make independent the configuration against the WARs version for integration tests
(Piergiorgio Lucidi)

CONNECTORS-292: Problems with mvn-bootstrap.bat.  Also excluded (hopefully
temporarily) the HSQLDBext tests from the Maven build, since their properties.xml
conflict with HSQLDB tests.
(Luca Stancapiano, Karl Wright)

CONNECTORS-293: Fix the how-to-build-and-deploy documentation to include
the right version of jcifs.
(Luca Stancapiano, Karl Wright)

CONNECTORS-290: Revamp the way docpriorities are handled so as to avoid
flooding the jobqueue with documents that have a docpriority value but
a job or document status incompatible with stuffing.  This should help a lot
in very large crawls with multiple jobs.
(Karl Wright)

CONNECTORS-291: Active Directory authority reconnect logic had a
pathological case when server forcibly closed connection.
(Karl Wright)

CONNECTORS-209: Add support for remote HSQLDB instances.  There are
now configuration parameters for specifying protocol, server, and instance
name, which if specified cause the HSQLDB driver to communicate to the
specified remote instance.
(Karl Wright)

CONNECTORS-287: An Alfresco connector would be helpful
(Piergiorgio Lucidi)

CONNECTORS-289: Wrong version of the OpenCMIS InMemory Server war in the page How to build and deploy
(Piergiorgio Lucidi)

CONNECTORS-285: Provide a way through the IJobManager interface
and through the API to check on the status of a job without asking
for the counts of documents, which yields a full table scan.
(Karl Wright)

CONNECTORS-279: Prevent reindex or analyze from taking place within
a transaction.  This was causing hangs on our load tests.
(Karl Wright)

CONNECTORS-283: Upgrade to jcifs.jar 1.3.17 in the ant build (download-dependencies target).
(Shinichiro Abe)

CONNECTORS-282: Change order in which the incremental ingester does
things so we don't typically get unique constraint violation warnings in
the log.
(Karl Wright)

CONNECTORS-280: The job state "DELETESTARTINGUP" was not being
checked for in the status.  This meant that during the time that a
job delete was beginning, "Not yet run" would be displayed as the status.
(Karl Wright)

CONNECTORS-277: Add the ability to select namespaces and title
prefixes to the Wiki connector.
(Tobias Wunderlich, Karl Wright)

CONNECTORS-266: Upgraded the CMIS Connector libraries to OpenCMIS 0.5.0
(Piergiorgio Lucidi)

CONNECTORS-278: Wrong default parameters values for CMIS Connector in a clean installation
(Piergiorgio Lucidi)

CONNECTORS-262: Pull down .wsdls from SharePoint 3.0 example site
in the ant build (download-dependencies target).
(Shinichiro Abe, Karl Wright)

CONNECTORS-276: Pull down jtds and mysql drivers from maven repository
in the ant build (download-dependencies target),
and add these dependencies in appropriate places in the maven build as
well.
(Karl Wright)

CONNECTORS-259: Enable support for MySQL in JDBC connector.
(Karl Wright)

CONNECTORS-187: Fix how the worker threads handle document deletion
service interruptions.
(Karl Wright)

CONNECTORS-271: Wiki connector now has end-user documentation.
(Karl Wright)

CONNECTORS-263: Long-running tests should all be moved to Maven's integration-test phase
(Piergiorgio Lucidi)

CONNECTORS-273: Add last-modified metadata to indexing for the
Wiki connector.
(Tobias Wunderlich, Karl Wright)

CONNECTORS-274: Fix long-standing problem with XML parsing, which
affected the wiki connector in a big way.
(Tobias Wunderlich, Karl Wright)

CONNECTORS-256: Add a Wiki connector, including basic sanity tests
and build logic.
(Karl Wright, Tobias Wunderlich)

CONNECTORS-270: The OpenSearchServer connector pom.xml was incorrect,
and skipped the resources needed to run the connector properly.
(Karl Wright)

CONNECTORS-269: Get the maven build working properly again, including
the HSQLDB tests, and the clean operation.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-264: Changing the repositoryId to an empty value is not possible
(Piergiorgio Lucidi)

CONNECTORS-265: removed from the CMIS Connector all the HTML snippets from the Java code
(Piergiorgio Lucidi)

CONNECTORS-268: Move sources for, and prebuild, the MCPermissions
web service plugin for the SharePoint connector.
(Karl Wright)

CONNECTORS-257: Add cache control fields to make Active Directory authority
configuration more flexible with regards to cache.
(Karl Wright, Shinichiro Abe)

CONNECTORS-87: Add a framework load test.
(Karl Wright)

CONNECTORS-255: Add ability to process site map documents, in both
RSS connector and Web connector.
(Karl Wright)

CONNECTORS-202: Add commit-within parameter to Solr output connector.
(Jan Høydahl, Karl Wright)

CONNECTORS-251: Add target "download-dependencies" to build.xml.
(Shinichiro Abe)

CONNECTORS-252: Clean up build, dist and lib of each connector after build.
(Shinichiro Abe)

======================= Release 0.3 =========================

CONNECTORS-240: Add OpenSearchServer end-user documentation.
(Emmanuel Keller, Karl Wright)

CONNECTORS-250: Renew jcifs download site link.
(Shinichiro Abe)

CONNECTORS-253: Make script output of configurationnode script object
have attributes that are ordered, so the test does not depend on hash order.
(Shinichiro Abe, Karl Wright)

CONNECTORS-246, CONNECTORS-248, CONNECTORS-249: Problems with MVCC
model of Hsqldb causing query inconsistencies, fixed in HSQLDB 2.2.5-6-9-2011.
(Fred Toussi, Karl Wright)

CONNECTORS-247: Add unit tests for script engine.
(Karl Wright)

CONNECTORS-144: Remove Apache license from DISCLAIMER.txt, as per the
incubator's instructions.
(Karl Wright)

CONNECTORS-177: Remove test code from file system connector.
(Karl Wright)

CONNECTORS-141: Exclude files from rat report that the Forrest teams says I
should.
(Karl Wright)

CONNECTORS-58: Add client scripting language and a file-system-based example.
(Karl Wright)

CONNECTORS-245: Fix API bug where schedule JSON was incorrect when fetching
job description.
(Karl Wright)

CONNECTORS-229: CMIS connector needs to be documented in "how to build and deploy"
(Piergiorgio Lucidi)

CONNECTORS-244: Add a fix to recover for another Derby deadlock situation.
(Karl Wright)

CONNECTORS-243: Include most response headers in the metadata for
each web connector document.
(Jan Høydahl, Karl Wright)

CONNECTORS-224: Add OpenSearchServer output connector.
(Emmanuel Keller, Karl Wright)

CONNECTORS-157: Fixed a second kind of case where the java.net.URI
class is broken.  Relative queries starting with "?" now replace the query
part of the url.
(David Broadfoot, Karl Wright)

CONNECTORS-239: RSS connector chromed content mode was broken.
(Kate McGonigal, Karl Wright)

CONNECTORS-238: Hard errors from notification output connector method
should be noted and then ignored.
(Karl Wright)

CONNECTORS-61: Make it easy (and document) how to integrate
ManifoldCF into an application.
(Karl Wright)

CONNECTORS-226: Clean up usage of REPOSITORY_CONNECTION_ERROR
ManifoldCFException type.
(Karl Wright)

CONNECTORS-236: Add tests for CMIS connector.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-234: Add support for CMIS binding protocol.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-235: Fix broken Derby and HSQLDB file-based carrydown
data, and added the ability to handle RSS feed description values outside
of dechromed content.
(Kate McGonigal, Karl Wright)

CONNECTORS-232: Fix site icon link.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-230: Add CMIS mention to the ManifoldCF documentation.
(Karl Wright)

CONNECTORS-228: Add maven support for CMIS connector.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-231: Missing dependency in pom.xml.
(Piergiorgio Lucidi)

CONNECTORS-227: Fix the error reporting so it includes the problem message.
(Piergiorgio Lucidi)

CONNECTORS-221: Add CMIS connector.
(Piergiorgio Lucidi, Karl Wright)

CONNECTORS-214: Add post-fetch regular expression filtering to Web
connector.
(Karl Wright)

CONNECTORS-225: Derby throws deadlock exceptions when indexing
rapidly.
(Karl Wright)

CONNECTORS-223: Move test classes to be compatible with maven
conventions.
(Tobias Rübner, Karl Wright)

CONNECTORS-219: Update maven pom.xml files to include proper
dependencies and version numbers.
(Tobias Rübner)

CONNECTORS-220: Fix long-standing issue with database connection
problems.  Reset logic was insufficiently robust.
(Farzad Valad, Karl Wright)

CONNECTORS-217: Check running more than one of instance of agent. 
(Shinichiro Abe)

CONNECTORS-218: LockClean supports relative path 
to the synchronization directory. 
(Shinichiro Abe)

CONNECTORS-215: Setting an environment variable of agent.
Add options.env file, in which we can define optional value.
(Karl Wright, Shinichiro Abe)

CONNECTORS-216: Clean up document removal options in IProcessActivity,
and modify connectors accordingly to avoid using the deprecated form of
deleteDocument().
(Karl Wright)

CONNECTORS-214: Add output connector support for restricting documents based on
mime type, URL, and document length.  Hook this up to the web and RSS
connectors, and add mime type and maximum length fields to the Solr
connector.
(Erlend Garåsen, Karl Wright)

CONNECTORS-212: Failure during notify should send job back to
ReadyForNotify state, not ReadyForDelete state.
(Karl Wright)

CONNECTORS-211: Move pack() and unpack() utility methods into the
connector base class.
(Karl Wright)

CONNECTORS-210: Handle RuntimeException exceptions better in
connector factories.
(Farzad Valad, Karl Wright)

CONNECTORS-208: Make support for metadata Reader objects really
work.
(Karl Wright)

CONNECTORS-204: Add an HSQLDB set of test targets, which use that
database.
(Karl Wright)

CONNECTORS-206: Document HSQLDB properties, and mention it as a
supported choice in the documentation.
(Karl Wright)

CONNECTORS-114: Finish HSQLDB implementation.
(Fred Toussi, Karl Wright)

CONNECTORS-205: Changed the database interface distinct-on abstraction
to also include the order-by clause, so we can write something that will
work for HSQLDB.
(Karl Wright)

CONNECTORS-203: Move to Java 1.5 compilation and conventions.
(Erlend Garåsen, Tommaso Teofili, Karl Wright et al)

CONNECTORS-201: Add activity interface ICarrydownActivity to allow
sharing of functionality across IVersionActivity and IProcessActivity.
(Karl Wright)

CONNECTORS-200: Interpret TikaExceptions as being permanent failures.
(Erlend Garåsen, Shinichiro Abe, Karl Wright)

CONNECTORS-199: Modify site to point to new 0.2-incubating release.
(Karl Wright)

CONNECTORS-197: Add a switch that allows user to select which AD
attribute to use for login name.
(Shinichiro Abe, Karl Wright)

CONNECTORS-198: Update rat-sources ant target to exclude
test-output-postgresql folders.
(Karl Wright)

CONNECTORS-174: The standard logging.ini file for the Quick Start should
set a log format that includes at least date and time.
(Erlend Garåsen, Karl Wright)

CONNECTORS-194: Forrest doc build always gets an error because of relative
references to javadoc roots.
(Erlend Garåsen, Karl Wright)

CONNECTORS-196: Active directory authority did not work if login name
and common name differed.
(Kadri Atalay, Shinichiro Abe, Karl Wright)

CONNECTORS-195: Active directory authority does not properly identify
non-existing users on all versions of Java and all versions of AD.
(Kadri Atalay, Karl Wright)

CONNECTORS-192: Specification processing would sometimes be called
without the specification data being posted.
(Karl Wright)

CONNECTORS-191: Fix eol-style attribute for .bat files to always be
CRLF.
(Karl Wright)

CONNECTORS-190: Fix busted link to JSON stuff.
(Karl Wright)

CONNECTORS-189: Added links to directly access the group distribution
email archives.
(Farzad Valad)

Update the site to create a direct link to the book, and also bring the
copyrights and breadcrumbs to the current era.
(Karl Wright)

CONNECTORS-185: Clarify the build-and-deploy document to make sure
it is clear that the configfile define is needed for the application server.
(Mark Moloney, Karl Wright)

CONNECTORS-186: Refactor WorkerThread code to permit all output
connector methods to throw a ServiceInterruption, including the
getOutputDescription() method.
(Karl Wright)

CONNECTORS-183: Add a text field to make Active Directory authority
configuration more flexible with regards to protocol.
(Shinichiro Abe, Karl Wright)

CONNECTORS-32: Add access token caching to the Active Directory
authority connector, LiveLink authority connector, Meridio authority
connector, and Documentum authority connector.
(Shinichiro Abe, Karl Wright)

CONNECTORS-182: Install timed expiration of cached objects, which
was not hooked up to the idle cleanup architecture.
(Karl Wright)

CONNECTORS-181: Fix the way timed expiration works to agree with
the description, and pass in a current time parameter to make it
work readily for continuous renewal.
(Karl Wright)

CONNECTORS-179: Add ability to throw ManifoldCFException from the
IConnector method setThreadContext.
(Karl Wright)

CONNECTORS-175: Update documentation of properties.xml parameters
to include missing ones.
(Shinichiro Abe, Karl Wright)

CONNECTORS-173: Update javadoc to include table schemas.
(Shinichiro Abe)

CONNECTORS-171: Make sure XML output from within XML document does not
corrupt entity references.
(Fuad Efendi)

======================= Release 0.2 =======================
Release Date:  See http://incubator.apache.org/connectors for the official release date.

CONNECTORS-188: Change the eol-style attribute to LF for all the .sh files.
(Erlend Garåsen, Karl Wright)

Web site updated to reflect proposed release.

CONNECTORS-172: At the advice of the Derby team, build Derby in
"insane" mode to allow it to recover from internal errors.
(Koji Sekiguchi, Karl Wright)

CONNECTORS-170: Add support to the Derby driver for periodic analysis and
reindexing, since after 10.7.1.1 it seems this is now supported.
(Karl Wright)

CONNECTORS-169: Add a method to the database abstraction to
return the maximum number of OR clauses in a query.  This is to make
Derby efficient, since it can't seem to use indexes in this situation
(Karl Wright)

CONNECTORS-166: Pull a Derby fix down from trunk into Derby 10.7.1.1,
to fix deadlock problems
(Oleg Tikhonov, Karl Wright)

CONNECTORS-168: Change error reporting logic in Solr connector
to handle non-XML responses
(Fuad Efendi, Karl Wright)

CONNECTORS-159: Add support for external PostgreSQL server
(Erlend Garåsen, Karl Wright)

CONNECTORS-165: Upgrade to jetty 6.1.26, plus patches, which is what
Solr is using.
(Robert Muir, Karl Wright)

CONNECTORS-163: Use Derby 10.7.1.1.
(Oleg Tikhonov, Karl Wright)

CONNECTORS-162: Add infrastructure support for derived resource
loading, so that individual connectors can use this model to prevent jar
conflicts.
(Karl Wright)

CONNECTORS-160: Add local trust store and working https support
for Solr connector.
(Carina Lannig, Karl Wright)

CONNECTORS-151: Add folder support to FileNet connector.
(Oleg Tikhonov, Karl Wright)

CONNECTORS-157: Web crawler url resolution was broken for relative
paths, because the way java.net.URI resolved them changed.
(Karl Wright)

CONNECTORS-156: Update site to describe work-around instructions.
(Karl Wright)

CONNECTORS-154: Add an ant target, and tests, that work against the
postgresql database.
(Karl Wright)

CONNECTORS-155: Fix a query bug with fetching the job status of a single,
specified job.
(Karl Wright)

CONNECTORS-148: Intermittent failures creating the PostgreSQL database
still occurring; traced the problem this time to PostgreSQL not accepting
a parameter for the password when creating a user.
(Nicolas Max, Karl Wright)

CONNECTORS-153: Add support for robots meta tag to web connector.
(Erlend Garåsen, Karl Wright)

CONNECTORS-152: Refactor notification thread and states to make the framework
more resilient.
(Karl Wright)

CONNECTORS-145: Refactor cleanup worker threads, expire threads, and
document delete threads to handle failure of the output connection gracefully.
(Karl Wright)

CONNECTORS-130: Block the Solr output connector from accepting documents
that have folder-level security.
(Karl Wright)

CONNECTORS-129: Add an API reset/outputconnections/xxx command, to 
forget the index state for an output connection.
(Karl Wright)

======================= Release 0.1 =======================
Release Date:  See http://incubator.apache.org/connectors for the official release date.

CONNECTORS-149: Expire threads did not obey rules as far as deleting documents
belonging to other jobs.  Also, the test for whether a document was shared between
jobs did not take the output connection into account.  Finally, I found an infinite
loop in the job delete stuffer thread code.
(Karl Wright)

CONNECTORS-147: Disable PDF's everywhere except for user documentation.
(Grant Ingersoll, David Crossley, Karl Wright)

CONNECTORS-148: Creating the database in PostgreSQL failed intermittently
when a parameter was used for the encoding; the PostgreSQL documentation
specifies that it must be a quoted string in that case.
(Karl Wright)

CONNECTORS-146: Problem with document cleanup logic would cause data corruption
in carrydown data and in hopcount information.
(Karl Wright)

CONNECTORS-143: Copyright notice needs to be changed to 2011.
(Sebb, Karl Wright)

CONNECTORS-142: License and notice file revisions.
(Ant Elder, Sebb, Ralph Goers, Karl Wright)

CONNECTORS-140: Change build to generate both a -src and a -bin distribution.
(Grant Ingersoll, Karl Wright)

CONNECTORS-139: Change download area to www.apache.org/dist/incubator/manifoldcf,
as according to incubator rules.
(Karl Wright)

CONNECTORS-138: Change name of release from 0.1-incubator to 0.1-incubating,
as according to incubator rules.
(Various)

CONNECTORS-137: Add ASF headers to the jakarta standard tag library tld's
that the crawler-ui uses.  RAT detected these as a problem, and I have confirmed
that they have an Apache origin.
(Sebb, Karl Wright)

CONNECTORS-132: Remove build artifacts from the archives, except for documentation.
This is to save space.
(Karl Wright)

CONNECTORS-136: Change rat-sources build target to exclude all files known good
despite RAT complaints.
(Sebb, Karl Wright)

CONNECTORS-135: Adjust svn properties of files to be consistent with intended
usage.
(Sebb)

CONNECTORS-134: Put README.txt files in all empty directories that are meant
for a user to supply third-party content.  This prevents the archive from not
delivering an empty directory.
(Ant Elder, Sebb, Karl Wright)

CONNECTORS-133: Update README.txt to include incubator disclaimer.
(Ant Elder, Sebb, Karl Wright)

CONNECTORS-131: Create download page with separate references for KEYS,
CHANGES.txt, signatures, and artifacts.
(Chris Mattmann, Karl Wright)

CONNECTORS-128: Remove sql quoting logic to make sql injection attacks
less possible.
(Grant Ingersoll, Robert Muir, Karl Wright)

CONNECTORS-122: FileNet and Documentum connector-specific process
scripts needed.
(Oleg Tikhonov, Karl Wright)

CONNECTORS-127: Broken FileNet Document Classes tab.
(Oleg Tikhonov, Karl Wright)

CONNECTORS-126: Added a performance tuning page to the site.
(Farzad, Karl Wright)

Removed modules level of tree, and revamped build.xml in anticipation of
a release.
(Karl Wright)

CONNECTORS-125: Set the default max handles property to be consistent with
a default PostgreSQL installation.
(Farzad, Karl Wright)

CONNECTORS-124: Add a null authority connector, so authority tests can be
written.
(Karl Wright)

CONNECTORS-109: Hooked up user-defined functions in Derby to perform the needed
regular expression matching and grouping.
(Karl Wright)

CONNECTORS-121: Fixed broken javascript in the Windows Share connector "insert here"
button.
(Fred Schmitt, Karl Wright)

CONNECTORS-117: Revised manner by which dynamic table maintenance is performed,
so that it can be controlled by configuration parameters.
(Farzad, Karl Wright)

CONNECTORS-116: Removed Memex connector due to intellectual property concerns.
(Robert Muir)

CONNECTORS-113: Add properties that allow quick-start example to work properly with
PostgreSQL.
(Farzad, Karl Wright)

Name change to ManifoldCF
(Community)

CONNECTORS-107: Entering report forms now preselects all activities.
(Karl Wright)

CONNECTORS-106: noteJobCompleted() method in IOutputConnector now receives an
activities object, so activities can be recorded.
(Karl Wright)

CONNECTORS-98: Convert the API into a RESTful implementation.
(Jack Krupansky, Mark Miller, Karl Wright)

CONNECTORS-104: Add convenience feature to web connector to limit hosts to those
explicitly mentioned in seeds.
(Jack Krupansky, Karl Wright)

CONNECTORS-102: Web connector default throttling settings.
(Karl Wright)

CONNECTORS-103: RSS connector default throttling settings.
(Karl Wright)

CONNECTORS-105: File system connector UI enhancements, to use a table-based
metaphor for paths and rules.
(Karl Wright)

CONNECTORS-101: File system connector paths should automatically get default 
rules added.
(Karl Wright)

CONNECTORS-57: Add support in Solr connector for selecting whether end-of-job
commits take place, on a per-connection basis.
(Jack Krupansky, Karl Wright)

CONNECTORS-41: Add support in the framework for end-of-job notification to the
associated output connector, which can take an extended period of time.
(Jack Krupansky, Karl Wright)

CONNECTORS-97: Web connector session authentication was failing for some sites
due to cookies httpclient thought were illegal, but browsers would accept.
(Karl Wright)

CONNECTORS-91: Made the initialization commands more accessible via code. 
(Jettro Coenradie, Karl Wright)

CONNECTORS-90: Fixed a localization issue where database errors that should be
soft errors were instead interpreted as hard failures for non-English locales.
(Carina <c.a.r.e@gmx.de>, Marc Emery, Karl Wright)

CONNECTORS-62: Added additional LCF API Documentation (Karl Wright)

CONNECTORS-59: Packaged application so that it is ready to run with embedded
Jetty App Server. (Jack Krupansky, Karl Wright)

CONNECTORS-56: Enhanced API so that more features are accessible programmatically.
(Jack Krupansky, Karl Wright)

CONNECTORS-52: Updated documentation to reflect new features added to the Solr
connector.  (Karl Wright)

CONNECTORS-51: Reduce the number of required system properties needed to run the
JCIFS connector.  (Karl Wright)

CONNECTORS-49: Allow mapping of the metadata ID field in the Solr connector.
(Rohan G Patil, Jack Krupansky, Erik Hatcher, Karl Wright)

CONNECTORS-48: Improve rules description for the SharePoint connector.
(Karl Wright)

CONNECTORS-47: Framework UI called connector post-processing more than needed.
(Karl Wright)

CONNECTORS-46: Improve documentation for metadata with the JDBC Connector.
(Rohan G Patil, Karl Wright)

CONNECTORS-45: Allow specifying the Solr core name with the Solr Connector.
(Jack Krupansky, Erik Hatcher, Karl Wright)

CONNECTORS-44: Add metadata support to the JDBC Connector.
(Rohan G Patil, Karl Wright)

CONNECTORS-43: Wseless call to String.trim in MultiLineParser
(Mark Miller, Karl Wright)

CONNECTORS-42: Impossible cast in org.apache.lcf.core.database.Database
(Mark Miller, Karl Wright)

CONNECTORS-40: Change to a classloader-based plugin architecture
(Jack Krupansky, Mark Miller, Erik Hatcher, Karl Wright)

CONNECTORS-39: Allow abstraction of database transaction management.  (Karl Wright)

CONNECTORS-38: Add a jetty-based "quick-start". (Jack Krupansky, Karl Wright)

CONNECTORS-37: Switch to an XML configuration file.
(Erik Hatcher, Jack Krupansky, Karl Wright)

CONNECTORS-36: Improve the Solr Connector's UI to be more intuitive.  (Karl Wright)

CONNECTORS-35: Add a method to reset the framework.  (Karl Wright)

CONNECTORS-33: Document how to use the framework programmatically. (Karl Wright)

CONNECTORS-26: Rename war files from "tomcat" to "web" as there is nothing
tomcat-specific about them.  (Erik Hatcher, Karl Wright)

CONNECTORS-23: Add usage examples to Command documentation
(Damien Mabin, Karl Wright)

CONNECTORS-22: Add support for ACLs to the Solr Connector.
(Dominique Bejean, Peter Sturge, Karl Wright)

CONNECTORS-20, CONNECTORS-3: Add an ant build system. (Karl Wright)

CONNECTORS-18: The Lucene Connector was renamed to Solr Connector. (Karl Wright)

CONNECTORS-17: Fix broken link in the Crawler UI's help page.  (Karl Wright)

CONNECTORS-16: Generalize JCIFS connector's fingerprinting.
(Sami Siren, Karl Wright)

CONNECTORS-14: Remove some javac warnings.  (Robert Muir, Karl Wright)

CONNECTORS-12: Improve whitespace formatting to be consistent. (Erik Hatcher, Karl Wright)

CONNECTORS-11: Add automated build for the Apache2 Module. (Karl Wright)

CONNECTORS-9, CONNECTORS-8, CONNECTORS-7, CONNECTORS-5, CONNECTORS-2:
Remove Metacarta branding and setup.  (Karl Wright)

CONNECTORS-6: Move documentation from LaTeX to the wiki.  (Karl Wright)

CONNECTORS-4: Submit changes to other packages as patches.  (Oleg Kalnichevski, Karl Wright)

CONNECTORS-1: Created connectors website. (Grant Ingersoll)
