Change history
==============

1.3 (2010-06-17)

 - Add a validateCredentials method that can be used from a remote monitor to
   confirm that the base connector is still able to connect to Salesforce.
   [davisagli]

 - Make sure that item access to QueryRecord objects is allowed from Restricted
   Python.
   [davisagli]

 - Make sure that QueryRecordSets can be accessed from Restricted Python.
   [davisagli]

1.2 (2009-11-12)

 - Make sure that QueryRecords can be accessed from Restricted Python.
   This fixes http://plone.org/products/salesforcebaseconnector/issues/6
   [davisagli]

 - Avoid deprecated import from Globals in Zope 2.12.
   [davisagli]

 - Confirmed compatibility with Plone 4.
   [davisagli]

1.2b2 (2009-09-11)

 - Enabled the beatbox type descriptions cache.  If you edit the schema of
   an object in Salesforce, you'll need to either go to
   portal_salesforcebaseconnector and press the 'Purge cache' button,
   or restart Zope.
   [davisagli]

1.2b1 (2009-09-08)

 - Added the search method from beatbox 16.0.

 - Modified the method signature of the query method to match beatbox and the
   Salesforce.com API.  Now a single full SOQL statement is expected, rather
   than the old 3-part field list, sObject type, and optional where clause.
   The old method signature is deprecated but should still work for now.
   [davisagli]

 - Refactored the session timeout handling to use a
   'recover_from_session_timeout' decorator to avoid code repetition.
   [davisagli]

 - Replaced the _getClient method with a property called client.
   _getClient is now deprecated.
   [davisagli]

 - Added button in ZMI to flush the beatbox type description cache.
   [davisagli]

 - beatbox 16.0dev or greater is now required.
   [davisagli]

 - Call describeSObjects in batches of 100 object types (Salesforce.com
   limit in recent versions of the API).
   [davisagli]

1.1.1 (2009-05-13)

 - Don't persist the serverUrl unless it differs from beatbox's default.
   [davisagli]

1.1 (2009-05-13)

 - Fixed configuration form so if the form validation fails it doesn't wipe
   out your form values.
   [davisagli]

 - Added option to configure the Salesforce API SOAP endpoint (server URL).
   [davisagli]

 - Remove deprecated parameter product_name from ToolInit call, this has been 
   gone since before 2.5.5 which is our earliest Salesforce Base Connector 
   version.
   [andrewb]

1.0.1 final (2009-01-20)

 - Fixed packaging issue and contain sfconfig.py in released version 1.0 final
   [andrewb]

1.0 final (2009-01-13)

 - Updated beatbox dependency to version 0.9.1.1
   [davisagli]

 - Don't use trademarked Salesforce.com icon.
   [davisagli]

1.0c1 (2008-12-22)

 - Protect the base connector's query, queryMore, retrieve, getDeleted, and
   getUpdated methods with the 'Manage portal' permission instead of making
   them publicly traversable.  Note that this means any restricted Python
   calling these methods (e.g. page templates or Python scripts) will need
   to use a proxy role that has this permission in order to continue functioning.
   [davisagli]

 - Don't display a configured password in the configuration form. [davisagli]

 - Refactored credentials check so that invalid credentials will result in a warning
   shown to the user, rather than failing silently.  This closes issue #2. [andrewb, davisagli]
   
 - Integration test suites all based on CMFTestCase and creation of CMF Site,
   rather than PloneTestCase and Plone site for performance reasons [andrewb]

1.0-alpha3

 - Added new publicly supported API "listFieldsRequiredForCreation" which
   encapsulates some of the rules for which fields are required upon object
   creation via the SOAP API for Salesforce.com.  The benefit being that 
   additional packages need not reproduce the following, which may evolve 
   anyway:
   
     not fieldData.nillable and \
        not fieldData.defaultedOnCreate and \
        fieldData.createable
        
    listFieldsRequiredForCreation accepts a Salesforce Object type as its
    lone required argument (Jesse Snyder)

 - Removing unneeded portal_skins FSDV (Jesse Snyder) 

 - Improved docstrings for interfaces (Jesse Snyder)


1.0-alpha2

 - Updating CMFCore permission imports to work with CMF-2.1.0 (Emyr Thomas)
 - Tested with Plone 3.0 final (Andrew Burkhalter)

1.0-alpha1

 - Initial import and creation of standalone product