ManifoldCF Change Log
$Id$

======================= 2.20-dev =====================


======================= Release 2.19 =====================

CONNECTORS-1666: Elastic Search connector now limits size of URI according to
ES rules.  Standard MCF hashing is done to insure this, but only if the documentURI
is large enough to warrant it.
(Shirai Takashi, Karl Wright)

CONNECTORS-1656: Ensure legit XML is produced for Tika by the html extractor.
(Julien Massiera)

CONNECTORS-1661: Encoding for multipart requests is sometimes not set by the new
UI, so assume UTF-8 if that happens.
(Julien Massiera)

CONNECTORS-1662: Apparently sometimes JIRA doesn't form the encoding properly.
(Julien Massiera)

======================= Release 2.18 =====================

NOTICKET: Get the CXF wsdl-2-java utility working on JDK 11.
(Karl Wright)

CONNECTORS-1660: Better handling of non-correctly-formatted HTML.
(Olivier Tavard)

NOTICKET: Add missing Jetty JSP jar so crawler UI works in the examples.
(Karl Wright)

CONNECTORS-1653: Add contributed solr repository connector, including patches.
(Olivier Tavard)

CONNECTORS-1655: Handle some forms of illegal content type.
(Karl Wright)

======================= Release 2.17 =====================

CONNECTORS-1646: Include javax.activation jars in root classpath.
(Uwe Wolfinger, Karl Wright)

CONNECTORS-1645: Web connector collision of page descriptions in login sequence.
(Julien Massiera, Karl Wright)

CONNECTORS-1644: Fix LDAPAuthority escaping to use replace instead of replaceAll
(Uwe Wolfinger)

======================= Release 2.16 =====================

CONNECTORS-1624: Correct issues with Java 11.  Thanks to Cihad Guzel for driving
this work!
(Cihad Guzel)

CONNECTORS-1639: Bring the version of the ES service used for testing up to date.
(Karl Wright, Michael Cizmar)

CONNECTORS-1637: Add Confluence V6+ connector.  Thanks to Julien Massiera
for the contribution!
(Julien Massiera)

CONNECTORS-1629: Add support for global Kerberos setup.
(Jörn Franke, Karl Wright)

CONNECTORS-1632: Use TLS sockets and no longer support old SSL connections.
(Jörn Franke)

======================= Release 2.15 =====================


======================= Release 2.14 =====================

CONNECTORS-1623: Harden HTML parser against stuff in SCRIPT tags that looks like tags.
(Julien Massiera, Karl Wright)

CONNECTORS-1566: Develop csws connector to replace deprecated LiveLink connector.
(Markus Schuch, Karl Wright)

CONNECTORS-1621: Fix broken ability to index Tika-extracted documents in Solr.
(Markus Schuch, Karl Wright)

CONNECTORS-1620: Add ability to extract links from application/xml documents.
(Markus Schuch)

CONNECTORS-1619: Fixes the elasticsearch output connector not to invalidate the 
password when saving the configuration.
(Michael Cizmar , Markus Schuch)

CONNECTORS-1618: Fix all malformed javadoc comments that broke the maven javadoc build.
(Markus Schuch)

CONNECTORS-1611: Update MySQL driver version.
(Furkan Kamaci)

CONNECTORS-1616: Improve error reporting for confluence authority.
(Karl Wright, Julien Massiera)

CONNECTORS-1614: Delete parameter for Generic Connector was broken.
(Olivier Tavard)

CONNECTORS-1613: Fix metadata AIOOBE exception in JDBC connector.
(Karl Wright)

CONNECTORS-1519: Fix ElasticSearch connector HTTP PUT operations to work in an
authorization environment without getting errors.
(Glenn Laenen)

CONNECTORS-1612: JCIFS connector: adopt a single retry with a three-hour wait for
unknown SMB errors.
(Karl Wright)

CONNECTORS-1609: SharePoint: Treat document fetch 403 and 503 errors as meaning
insufficient permissions, and skip the document.
(Karl Wright)

CONNECTORS-1605: HTML-extractor: Use body tag if specified tag is not available.
(Olivier Tavard)

======================= Release 2.13 =====================

CONNECTORS-1498: Redevelop the jcifs connector to use the newer jcifs-ng.jar.
(Karl Wright)

CONNECTORS-1588: Apply override of jcifs properties only if they are not
already specified.
(Cihad Guzel)

CONNECTORS-1579: Fix for JDBC connector's incorrect tracking of rejected
documents.
(Donald Van den Driessche, Karl Wright)

CONNECTORS-1535: Modify documentum server script on Linux because otherwise
dfc.properties can't be found.
(James Thomas)

CONNECTORS-1565: Upgrades commons-collections to 3.2.2. Please consider instructions
in https://commons.apache.org/proper/commons-collections/security-reports.html if your
custom connector makes use of the org.apache.commons.collections.functors package.
(Markus Schuch)

CONNECTORS-1506: Add fixes for CSS preservation when opening in new tab in UI.
(Kishore Kumar)

======================= Release 2.12 =====================

CONNECTORS-1562: HopDeleteDeps table was using NULL values instead of empty
strings, but nothing else knew about this and therefore all queries involving invalidation
that used empty strings would not work as expected.  This was a long-standing problem,
in effect since at least 2012.
(Karl Wright, Tim Steenbeke)

CONNECTORS-1522: Add SSL and basic auth support to ElasticSearch connector.
(Karl Wright, Steph van Schwalkwyk)

CONNECTORS-1556: Modify retry strategy for Tika Service connector.
(Karl Wright)

CONNECTORS-1542:  Add switch to let user select the Version Policy to be applied to ingested documents
(Piergiorgio Lucidi)

CONNECTORS-1548: CMIS output connector test fails with versioning state error
(Piergiorgio Lucidi)

CONNECTORS-1551: Various changes and improvements for the
Confluence connector.
(Shirai Takashi)

CONNECTORS-1549: Problem with API output JSON: losing order in child records.
(Julien Massiera, Karl Wright)

CONNECTORS-1545: Fix UI - tab names are unescaped in javascript:SelectTab method
(Julien Massiera, Kishore Kumar)

CONNECTORS-1541: Fix occasional zero-length CMIS output file.
(Douglas C. R. Paes)

CONNECTORS-1543: Map illegal file name characters to '_'.
(Douglas C. R. Paes)

CONNECTORS-1537: Numerous changes to GoogleDrive connector to support paths etc.
(Douglas C. R. Paes)

CONNECTORS-1536: Update GoogleDrive connector to support Teams.
(Douglas C. R. Paes, Karl Wright)

CONNECTORS-1532: Documentum connector would not remove docs that
were no longer eligible because of path changes or mime type changes.
(James Thomas, Karl Wright)

======================= Release 2.11 =====================

CONNECTORS-1533: Fix problems with Solrj 7.4.0 integration.
(Julien Massiera, Karl Wright)

CONNECTORS-1531: Support Solrj 7.4.0.
(Julien Massiera, Karl Wright)

CONNECTORS-1528: Fix Canonicalization tab in Web Connector, and add
IIS support (map to lowercase and collapse multiple slashes to one).
(Kishore Kumar, Karl Wright)

CONNECTORS-1490: GSOC MongoDB Output Connector
(Irindu Nugawela, Piergiorgio Lucidi)

CONNECTORS-1517: Documentum mimetypes form didn't allow for no restrictions
(James Thomas, Karl Wright)

CONNECTORS-1520: Transformation connector registration and de-registration was broken
due to early cut/paste error.
(Mike Hugo)

CONNECTORS-1518: Elastic search without mapper attachment
did not stream document.
(Steph van Schwalk)

CONNECTORS-1514: Fix MCF Combined Service UI
(Kishore Kumar)

CONNECTORS-1513: Fix SeleniumTester clickTab method
(Karl Wright, Kishore Kumar)

CONNECTORS-1512: Fix NPE in documentum connector when a document
is removed from the Documentum repository (not deleted, completely
removed).

CONNECTORS-1510: Fix NPE in solr connector with null mime type.

CONNECTORS-1507: Restarting the cluster could leave documents
that were formerly active in PENDING or PENDINGPURGATORY without
document priorities.

CONNECTORS-1503: Fix for Solr standard update handler
parameter transmission to Solr.

======================= Release 2.10 =====================

CONNECTORS-1500: HTML Extractor transformation connector contribution
(Olivier Tavard)

CONNECTORS-1501: Add dynamic snippet for the next Apache event
(Piergiorgio Lucidi)

CONNECTORS-1437: Documentation for the CMIS Output Connector
(Piergiorgio Lucidi)

CONNECTORS-1356: Initial implementation of the CMIS Output Connector
(Piergiorgio Lucidi)

CONNECTORS-1462: Add support for rootPath attribute in File System Connector repository
(Luis Cabaceira)

CONNECTORS-1499: Reading in JSON in exported format did not
preserve the order because the new JSON parser does things in
hash order for keys in objects.  The fix is to use the more verbose
alternate form if there's any possibility of order dependency being
needed.
(Karl Wright)

CONNECTORS-1493: Jira connector could not fetch acls.
(Damien Collis, Karl Wright)

CONNECTORS-1488: Use a mime type that ElasticSearch 6.x allows.
(Richard Wardrobe)

CONNECTORS-1485: Prevent Form submit on Enter key press
(Maxence SAUNIER, Kishore Kumar)

CONNECTORS-1482: Improve solr connector handling of include/exclude
for mime types to be case insenstive and to actually reject documents
if upstream connector ignores or doesn't call checkMimeTypeIndexable().

CONNECTORS-1476: TLS/SSL support for MySQL/MariaDB database connections
(Markus Schuch)

======================= 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-1436: Porting of CMIS Output Connector from 2.6 to 2.8
(Piergiorgio Lucidi)

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)
