ManifoldCF Change Log
$Id$

======================= Release 2.9.1 =====================

CONNECTORS-1481: Go completely to Tika 1.17.
(Karl Wright)

CONNECTORS-1478: Fix bad javascript for IE.
(Kishore Kumar)

======================= Release 2.9 =====================

CONNECTORS-1479: Correct classpath for running alfresco-webscript
tests.
(Shinichiro Abe, Karl Wright)

CONNECTORS-1478: Proprietary example missing CSS style files.
(Markus Schuch, Karl Wright)

CONNECTORS-1473: Alfresco authority did not return user token, just
groups.
(Phillip Rhodes, Karl Wright)

CONNECTORS-1471: File system output connector's delete method
was completely broken.
(David Hotchkiss)

CONNECTORS-1469: The slack notification connector is now properly
integrated into the maven build.
(Markus Schuch)

CONNECTORS-1468: Adds Rocket.Chat Notification Connector
(Markus Schuch)

CONNECTORS-1459: Allow the Tika service to override the mime type
in the metadata.
(Julien Massiera)

CONNECTORS-1458: Update to use SolrJ 7.0.0.  This required some
revision to the connector, and also to make zookeeper.jar available
to all connectors as a root dependency.
(Karl Wright)

CONNECTORS-1453: Integrate poi 3.17, which seems to fix the
classloader issue in 3.15.  Reverted the reassignment of poi and
dependencies to root-level classpath accordingly.
(Karl Wright)

CONNECTORS-1456: Tentative fix for API issue exporting jobs in JSON
format.  Basically, simple valued array elements did not work.
(Adrian Conlon, Karl Wright)

CONNECTORS-1455: Eventually skip a locked shared drive file, rather
than aborting the job.
(Julien Massiera, Karl Wright)

CONNECTORS-1452: The runzookeeper.bat/runzookeeper.sh scripts
were not properly starting zookeeper, because the zookeeper "main
process" uses log4j 1.2.x methods not compatible with the log4j-1.2-api
shim.  We have to include a 1.2.x jar and use that when starting the
zookeeper process.
(Karl Wright)

CONNECTORS-1451: Tika extractor was causing some out-of-memory
events to occur for simple crawls, so I increased the default memory
allocated in the examples to 512M.
(Karl Wright)

CONNECTORS-1450: Tika extractor cannot process MS Office files due
to a dependency problem.  The dependency issue is that poi-ooxml-schemas
is apparently accessed via reflection, and the class lookup does not
apparently use the current classloader, but rather some other classloader.
This requires the entire poi* set of jars, and all dependencies, to be
included in ManifoldCF's core jar list.
(Karl Wright)

======================= Release 2.8 =====================

CONNECTORS-1445: Fix timezone handling in reports to use browser timezone
and add a timezone field for the editjob schedule page as well. 
(Kishore Kumar, Karl Wright)

CONNECTORS-1447: Update postgresql driver to the most current version.
This should allow error free operation with Postgresql versions back to
version 8.
(Karl Wright)

CONNECTORS-1446: Confluence connector's UI was broken; protocol
selection was not working.
(Ty Taylor, Karl Wright)

CONNECTORS-1444: Documentum connector needs the ability to skip
corrupted files.
(Tamizh Kumaran Thamizharasan, Karl Wright)

CONNECTORS-1440: Add support for created date in File System connector.
(Steph van Schalkwyk, Karl Wright)

CONNECTORS-1438: Wrong content-type parse in Solr connector caused
failure when content type contained a charset.
(Kenta Kasahara, Karl Wright)

CONNECTORS-1434: Escape filenames in Solr Http headers to match spec.
This is a workaround for a fix that really should be in HttpClient.
(Karl Wright, Tamizh Kumaran Thamizharasan)

CONNECTORS-1433: Add pipeline specification to ES connector.
(Steph van Schalkwyk, Karl Wright)

CONNECTORS-1432: Fix deleting stale check methods from window object
(Steph van Schalkwyk, Karl Wright, Kishore Kumar)

CONNECTORS-1251: Fix encoding issues with confluence connector.
(Marisol Redondo, Karl Wright)

CONNECTORS-1431: Support different versions of ES (including 5.x and
up).
(Karl Wright, Hans Van Goethem)

CONNECTORS-1428: Add support for configuring Tika extractor.
(Julien Massiera, Karl Wright)

CONNECTORS-1426: Fix New UI to prevent Bootstrap tab click event.
(Karl Wright, Kishore Kumar)

CONNECTORS-1425: Add tikaservice transformation connector.
(Julien Massiera, Karl Wright)

CONNECTORS-1424: Add contentlimiter transformation connector.
(Julien Massiera)

CONNECTORS-1423: Fix the new UI to add certificates to connections with certificate stores.
(Karl Wright, Kishore Kumar)

CONNECTORS-1422: Fix an HTML problem in SharePoint metadata UI.
(David Hotchkiss)

CONNECTORS-1403: Implement improved UI for web connector.
(Kishore Kumar)

CONNECTORS-1421: Have email connector retry when the connection
is not established properly.
(Cihad Guzel, Karl Wright)

CONNECTORS-1418: Build .less files into style.css as part of the build.
(Kishore Kumar, Karl Wright)

CONNECTORS-1420: Fix the email connector's date range code.
(Cihad Guzel)

CONNECTORS-1419: Handle the JDBC no-version-query case so that
deletes work.
(Julien Massiera, Karl Wright)

CONNECTORS-1417: Accept multipart/alternate email format.
(Cihad Guzel)

CONNECTORS-1416: Use a 4-character year for email dates.
(Cihad Guzel)

CONNECTORS-1415: Return descriptive error message when Internal Server Error occurs
(Kishore Kumar)

CONNECTORS-1414: Return descriptive error message when UI is disconnected
(Markus Schuch, Kishore Kumar, Karl Wright)

CONNECTORS-1413: Fix object equality bug at Cmis Authority Connector.
(Furkan KAMACI, JC)

CONNECTORS-1290: Merge Nuxeo Connector.  This also required going
to log4j 2.x.  This connector is a work in progress but since a great deal
of work has been done and the connector is nearly done, it's time to
commit to trunk.
(David Arroyo Escobar, Rafa Haro, Karl Wright)

======================= Release 2.7 =====================

CONNECTORS-1412: Fix null "to" recipient bug at email connector.
(Furkan KAMACI)

CONNECTORS-1411: Fix attachment URL template reset bug.
(Furkan KAMACI)

CONNECTORS-1410: Body is used as content at emails.
(Furkan KAMACI)

CONNECTORS-1408: Insure that there's a non-null document name in
the Solr connector, otherwise there will be no multipart post.
(Cihad Guzel, Karl Wright)

CONNECTORS-1409: Fix re-processing email bug.
(Furkan KAMACI)

CONNECTORS-1407: Extract email addresses from email metadata fields.
(Furkan KAMACI)

CONNECTORS-1406: Fix multiple To and From field bug at email.
(Furkan KAMACI)

CONNECTORS-1405: Add file name of attachment metadata information for email.
(Furkan KAMACI)

CONNECTORS-1402: Add metadata information for email attachments.
(Furkan KAMACI)

CONNECTORS-1401: Fix Documentum Authority query to exclude
access tokens that have matching negative groups or users.
(Sharnel Merdeck Pereira, Karl Wright)

CONNECTORS_1399: Remove all dependencies on json.jar, as per
Apache Legal advice.
(Karl Wright)

CONNECTORS-1398: Accept RDF feeds that use lowercase "rdf", even
though that's not legal by the spec.
(Joachim Butz, Karl Wright)

CONNECTORS-1196: New AJAX-based crawler-UI.
(Kishore Kumar, Karl Wright)

CONNECTORS-1395: Increase zookeeper session timeout to 300000,
because we were having sessions expire.
(Karl Wright)

CONNECTORS-1396: Fix email connector class cast exception.
(Cihad Guzel, Karl Wright)

CONNECTORS-1394: Fix email connector ArrayIndexOutOfBounds
exception.
(Cihad Guzel, Karl Wright)

CONNECTORS-1392: The Webcrawler connector now has an option to ignore
meta robots tags in HTML pages
(Markus Schuch)

CONNECTORS-1390: Add user-settable connect timeout field for
Active Directory authority.
(Cihad Guzel, Karl Wright)

CONNECTORS-1389: The email notification connector now supports
multiple comma separated recipients
(Markus Schuch)

CONNECTORS-1388: The User ID field is now focused when the login
page is loaded
(Markus Schuch)

CONNECTORS-1387: Fix Amazon S3 connector not storing secret key
and proxy credentials properly
(Markus Schuch)

CONNECTORS-1383: Fix Generic connector not to send the password
to the client in plaintext
(Markus Schuch)

CONNECTORS-1384: Fix GridFS connector not to send the password
to the client in plaintext and enabled password obfuscation
(Markus Schuch)

CONNECTORS-1385: Confluence connector was constructing bad paths
which confused CF 6.4.
(Andrew Shumway, Karl Wright)

CONNECTORS-1382: Slack notification connector now treats the webhook url
as sensitive information
(Markus Schuch)

CONNECTORS-1381: Fix slack notification connector not to send the proxy
password to the client in plaintext
(Markus Schuch)

CONNECTORS-1380: DropBox connector editSpecification.js velocity template incorrect variable
(Kishore Kumar)

CONNECTORS-1378: History reports End time year resets to Start Time year
(Kishore Kumar)

CONNECTORS-1372: Bizarre errors while reading data out of a RepositoryDocument
in some cases.  This was due to the implicit conversion of Readers to
Strings.
(Karl Wright)

CONNECTORS-1375: Add email attachment support, done as separate
documents.
(Cihad Guzel, Karl Wright)

CONNECTORS-1371: Fix RSS connector to use same SSL support as
the web connector.
(Karl Wright)

CONNECTORS-1370: Fix bug in Solr Connector so when an illegal
metadata field name is mapped to a legal one, the metadata values
are not lost.
(Karl Wright)

CONNECTORS-1368: Add date range support to email connector.
(Cihad Guzel)

CONNECTORS-1366: Wrong report code in email connector when mime
type is rejected.
(Furkan KAMACI)

CONNECTORS-1364: Add support in the JCIFS connector for allowing user-
settable bin names.  This allows for better resource balancing since it
is not possible to discover the correct resource balancing empirically.
(Aeham Abushwashi, Karl Wright)

CONNECTORS-1365: Use zero seconds and milliseconds when evaluating
DocumentFilter.
(Furkan KAMACI)

======================= Release 2.6 =====================

CONNECTORS-1360: Fix MySQL and Sybase handling in the JDBC
connector and authority connector.
(Furkan KAMACI)

CONNECTORS-1362: Don't output the stage_id field for jobs in the API.
It's not accepted for readback.
(Cathal Mcguinness, Karl Wright)

CONNECTORS-1361: The max_interval job field was missing from the API.
(Cathal Mcguinness, Karl Wright)

CONNECTORS-1357: Delete button doesn't work on listnotifications
(Markus Schuch)

CONNECTORS-1336: Update the Compatibility Matrix
(Piergiorgio Lucidi)

CONNECTORS-1355: Missing code for API deletion of mapping and
transformation connections.
(Julien Massiera, Karl Wright)

CONNECTORS-1344: Adds Slack Notification Connector
(Odilo Oehmichen, Markus Schuch, Rüdiger Kurz)

CONNECTORS-1349: Fix the modified_date and original_size Solr
attributes.
(Cihad Guzel)

CONNECTORS-1338: Upgrade to SolrJ 6.3.0.
(Shinichiro Abe)

CONNECTORS-1343: Allow maximum year in report UI to be set based
on current year.
(Markus Schuch)

CONNECTORS-1342: Bad UI logic for "path" field in livelink connector.
(Lena Gurevich, Karl Wright)

CONNECTORS-1341: Bad logic in jira connector disables document
indexing.
(Chalitha Perera)

CONNECTORS-1325: Another example of bad XML from Microsoft has
been found and worked around.
(Konstantin Avdeev, Karl Wright)

CONNECTORS-1340: Revise connection strings for sybase and for
Oracle.  It's not clear why these were working before, given the change.
(Julien Massiera)

CONNECTORS-1337: Update POI jars to make them consistent with
Tika 1.13.
(Olivier Tavard)

======================= Release 2.5 =====================

CONNECTORS-1335: Log message cleanup.
(Furkan KAMACI)

CONNECTORS-1316: Upgrade to Tika 1.13.
(Furkan KAMACI)

CONNECTORS-1334: Break out forbidden api check into separate
precommit target.
(Furkan KAMACI)

CONNECTORS-1332: Add check for forbidden api's to ant build.
(Furkan KAMACI)

CONNECTORS-1238: Update to use SolrJ 5.5.2, ZooKeeper 3.4.8.
(Karl Wright)

CONNECTORS-1331: Do not set SSL socket factory unless SSL.
(Furkan KAMACI)

CONNECTORS-1330: Minor refactoring of LDAP connector.
(Furkan KAMACI)

CONNECTORS-1329: Add logging to LDAP connector.
(Furkan KAMACI)

CONNECTORS-1326: Fix URL for Confluence documents.
(Chalitha Perera)

CONNECTORS-1325: Deal with SharePoint bad XML when document has
optional plane utf-16 characters.  Documents with these are skipped
since Java can't represent them either.
(Karl Wright)

CONNECTORS-1324: Fix (again) the SharePoint connector's "use all metadata"
option.
(Konstantin Avdeev)

CONNECTORS-1323: When there were multiple outputs, the second,
third, etc outputs would not have their activities properly logged.
(Karl Wright)

CONNECTORS-1322: Fix email connector "from" field.
(Olivier Tavard)

CONNECTORS-1318: Documentation errors.
(KOIZUMI Satoru)

CONNECTORS-1317: Missing JDOM2 dependency for Tika.
(Karl Wright)

CONNECTORS-1309: SharePoint connector would blow up looking for
lists when SharePoint returned non-list entities.
(Phil Reithmuller, Karl Wright)

CONNECTORS-1315: Handle control characters in ES connector.
(Silvio Meier, Karl Wright)

CONNECTORS-1313: Add multivalued data support to JDBC connector.
(Luca Alciata, Karl Wright)

CONNECTORS-1312: Treat "connection reset by peer" same way as "busy"
in JCIFS connector.
(Konstantin Avdeev, Karl Wright)

CONNECTORS-1308: Update to Tika 1.12, and all associated downstream
dependencies.
(Karl Wright)

CONNECTORS-1305: Skip documents that get server-side resource
problems in JCIFS connector.
(Konstantin Avdeev, Karl Wright)

CONNECTORS-1189: Fix SearchBlox's test cases so that they don't depend on JDK hash order.
(Naveen.A.N, Ahmet Arslan)

CONNECTORS-1302: Catch newer version of 'in-use' SmbException in
JCIFS connector.
(Vince McNamara, Karl Wright)

CONNECTORS-1301: Addition of SSL to LDAP connector broke non-SSL
functionality.
(Yulin He, Karl Wright)

CONNECTORS-1297: Detect symlink in JCifs connector and explicitly
skip in that case.
(Konstantin Avdeev, Karl Wright)

======================= Release 2.4 =====================

CONNECTORS-1296: Revamp email notification connector to do
SMTP and be more configurable.
(Markus Schuch, Karl Wright)

CONNECTORS-1295: JCIFS connector ignoring max file length value
sometimes.
(Konstantin Avdeev, Karl Wright)

CONNECTORS-1293: Duplication of attribute names in the UI when
multiple languages are installed in Documentum.
(Radek Sklenicka, Karl Wright)

CONNECTORS-1288: SharePoint connector proxy password obfuscation
was breaking this feature.
(Markus Schuch, Karl Wright)

CONNECTORS-1284: SharePoint fields that do not have a different
display name from their field name (or which are defined in some way
as yet not well understood) were being overlooked in SharePoint crawling.
(Markus Schuch, Karl Wright)

CONNECTORS-1283: "Document has no version" signal was not working.
This problem has been around since MCF 1.8/2.0.  The fix is simple but
may change the functioning of some custom repository connectors.  This
fix also restores broken functionality in the MCF JDBC connector, when
no document version query is provided.
(Markus Schuch, Karl Wright)

CONNECTORS-1282: Missing translation for Metadata Adjuster.
(Markus Schuch, Karl Wright)

CONNECTORS-1281: SQLServer under JTDS throws AbstractMethodException.
(Olivier Tavard, Karl Wright)

CONNECTORS-1275: Help ES deal with dates properly.  Also added
support for built-in Repository Document attributes.
(Andrey Leybovich, Karl Wright)

CONNECTORS-1272: Update _status command for Elastic Search to _stats.
(Andrey Leybovich, Karl Wright)

CONNECTORS-1271: Broken AmazonCloudSearch connector.
(Juan Pablo Diaz-Vaz, Karl Wright)

CONNECTORS-1270: Contribute OpenNLP transformation connector.
(Chalitha Perera, Rafa Haro, Karl Wright)

CONNECTORS-1268: Add missing mime types to FileNet connector.
(Damien Picard)

CONNECTORS-1267: Added enter key pressed event to the login page
(Muhammed Olgun)

======================= Release 2.3 =====================

CONNECTORS-1266: Fix an infinite loop in email notification connector.
(Markus Schuch)

CONNECTORS-1265: Adjust interval for checking validity of http connection.
(Shinichiro Abe, Karl Wright)

CONNECTORS-1263: New version of Alfresco-indexer package.
(Maurizio Pillitu)

CONNECTORS-1262: Fix Alfresco-webscript connector's version string,
so changes to ACLs will be detected as document changes.
(Chalitha Perera)

CONNECTORS-1264: Fix handling of slashes in unquoted attribute values
in html parsing.
(Issei Nishigata, Karl Wright)

CONNECTORS-1249: Independent priority setting for different
connectors, and bring individual connectors up to speed with proper
document bin names.
(Karl Wright)

CONNECTORS-1261: Supply commit-within argument for /update
handler in Solr connector.
(Karl Wright, Shinichiro Abe, Adrian Conlon)

CONNECTORS-1251: Confluence connector encoding issue.
(Karl Wright, Jens Grassel)

CONNECTORS-1260: Fix completely broken email connector.
(Karl Wright, Julien Massiera)

CONNECTORS-1259: Use Travis CI.
(Shinichiro Abe)

CONNECTORS-1258: Update Japanese translations.
(KOIZUMI Satoru)

CONNECTORS-1256: Spanish translations.
(Gladys Carrizales)

CONNECTORS-1254: Some Jetty dependencies are missing in jetty-runner.
(Shinichiro Abe)

CONNECTORS-1255: Ignore CheckObjectIDTest.
(Shinichiro Abe)

CONNECTORS-1252: jetty.xml is missing in jetty-runner QuickStart.
(Shinichiro Abe)

CONNECTORS-1250: Fix Confluence specification UI.
(Jens Grassel, Karl Wright)

CONNECTORS-1246: Get Kafka integration test running.
(Karl Wright)

CONNECTORS-1162: Kafka connector.
(Tugba Dogan)

CONNECTORS-1245: Using wrong logger for confluence authority.
(Jens Grassel, Karl Wright)

CONNECTORS-1237: Upgrade the CMIS Connector to OpenCMIS 0.13.0
(Piergiorgio Lucidi)

CONNECTORS-1235: Indexing all properties fetched with the cmis query
(Piergiorgio Lucidi, Christian Tiralosi, Deanna Delapasse, Elisa Croci)

CONNECTORS-1244: Add support for LDAPS and TLS to LDAP
authority connector.
(Karl Wright)

CONNECTORS-1234: Add use-mapper-attachments option
to Elasticsearch connector.
(Shinichiro Abe)

CONNECTORS-1242: Fix document reprioritization on job resume.
(Niall Colreavy, Karl Wright)

CONNECTORS-1241: Documentum connector not handling subtypes
properly.
(Bipul Podder)

CONNECTORS-1231: Upgrade to JUnit 4.12.
(Shinichiro Abe)

CONNECTORS-1239: Handle code 401 from Solr more appropriately.
(Cathal McGuinness, Karl Wright)

CONNECTORS-1236: Upgrade to Tika 1.10.
(Karl Wright)

CONNECTORS-1233: Add Amazon S3 connector.
(Gunaratnam Kuhajeyan, Karl Wright)

CONNECTORS-1230: Add writeLimit option on Tika extractor.
(Shinichiro Abe)

======================= Release 2.2 =====================

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-1221: Update documentation for properties.xml to
include new ldap authentication properties.
(Karl Wright)

CONNECTORS-1131: Add infrastructure for controlling individual
user access to parts of the UI and API, also allow this to be
configured via LDAP.
(Colin Joyce, 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 2.1 =====================

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-1173: Option to change View URL for Livelink Connector
(Kishore Kumar)

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

CONNECTORS-1178: Script example broken.
(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-1160: Update Livelink Connector HTML String to Velocity Template
(Kishore Kumar)

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 2.0 =====================

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-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-921: Change Zookeeper paths so all ManifoldCF nodes
are under one root.
(Graeme Seaton, Karl Wright)

CONNECTORS-969: Don't use JSON as an output specification format.
(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-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-1076: Revamp ManifoldCF obfuscation to use a
standard encryption algorithm.
(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-1085: Reduce binary space requirement by introducing a
connector-common-lib.
(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-1072: Remove 1.x-related import fallback code, since
2.0 is not backwards compatible with 1.x.
(Karl Wright)

CONNECTORS-1073: Remove 1.x-related upgrade code, since schema
for 2.0 is not backwards compatible with 1.x anyhow.
(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-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-1065: Reorganize authority packages to be consistent
with the standard.
(Karl Wright)

CONNECTORS-1056: Use ContentUrlPath attribute for actual URI for
the document in Alfresco.
(Maurizio Pillitu, Karl Wright)

CONNECTORS-1062: Livelink connector date stamps etc should be in
ms since epoch, not in human-readable timezone-dependent dates.
(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-1053: Provide stop scripts for single-process examples.
(Shinichiro Abe, Karl Wright)

CONNECTORS-1054: Document plugins for SharePoint more completely.
(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-1046: Remove user mapping support except for
official regexp mapper.
(Karl Wright)

CONNECTORS-1044: Remove all support for Derby as an internally
used database.
(Karl Wright)

CONNECTORS-982: Remove all output connector tabs that are
roughly equivalent to what the Document Filter transformation
connector does.
(Karl Wright)

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

CONNECTORS-418: Finish implementation of preferred way to get content
URL for CMIS.
(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-1026: Change JIRA URL to use the standard form.
(Daniel Aschaeur)

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-975: Remove all 'forced metadata' equivalent tabs.
(Karl Wright)

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-973: Remove field mapping tab from Solr connector.
(Karl Wright)

CONNECTORS-1018: Fix broken job UI.
(Karl Wright)

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-972: Remove Forced Metadata tab from all jobs.
THIS IS A NON-BACKWARDS-COMPATIBLE CHANGE.
(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)
