- #14 Apply schema filtering per property selection rules.
- #11 Don't run indefinitely when using OAuth and job runs for more than 15 minutes
- #11 Don't run indefinitely when using OAuth
- #10 Fix broken
is_sandboxsetting
- Mark json fields as
unsupportedinstead of throwing exception. If, in the future, we find streams with json fields that have records, we can consider supporting the json field type. commit
- Protect against empty strings for quota config fields commit
- Filter out *ChangeEvent tables from discovery as neither REST nor BULK can sync them #62
- Move the transformer outside of the record write-loop to quiet logging #61
- (Bulk Rest API) Sync the second half of the date range After a timeout occurs and the date window is halved #60
- (Bulk API) Removes failed jobs that don't exists in Salesforce from state when encountered #57
- (All APIs) Makes
BackgroundOperationResultsync full table, since it cannot be sorted byCreatedDate#58 - Update version of
requeststo2.20.0in response to CVE 2018-18074 #59
- Increases the
field_size_limiton the CSV reader to enable larger fields coming through without error #53
- Adds the suffix "FieldHistory" to those checked for when finding the parent object to fix the
OpportunityFieldHistorystream #52
- Fixes a few bugs with PK chunking including allowing a custom table to be chunked by its parent table #51
- Added a correct else condition to fix an error being raised during the PK Chunking query #50
- Updated the usage of singer-python's Transformer to reduce its scope #48
- Updated the JSON schema generated for Salesforce Date types to use
anyOfso when a bad date comes through we use the String instead #47
- Bug fix for metadata when resuming bulk sync jobs.
- Moved ContentFolderItem to query restricted objects list since the REST API requires specific IDs to query this object.
- Read replication-method, replication-key from metadata instead of Catalog. Publish key-properties as table-key-properties metadata instead of including on the Catalog.
- Fixes logging output when an HTTP error occurs
- Bumps singer-python dependency to help with formatting dates < 1000
- Fixes a bug with datetime conversion during the generation of the SF query string #40
- Fixes more bugs with exception handling where the REST API was not capturing the correct error #39
- Fixes a schema issue with 'location' fields that come back as JSON objects #36
- Fixes a bug where a
"version"in the state would not be preserved due to truthiness #37 - Fixes a bug in exception handling where rendering an exception as a string would cause an additional exception #38
- Fixes automatic property selection when select-fields-by-default is true #35
- Adds the
AttachedContentNoteandQuoteTemplateRichTextDataobjects to the list of query-incompatible Salesforce objects so they are excluded from discovery / catalogs #34
- Adds backoff for the
_make_requestfunction to prevent failures in certain cases #33
- Adds detection for certain SF Objects whose parents can be used as the parent during PK Chunking #32
- Fixes a logic bug in the build_state function
- Improves upon streaming bulk results by first writing the file to a tempfile and then consuming it #31
- Updates the retrieval of a bulk result set to be downloaded entirely instead of streaming #30
- Removes
multipleOfJSON Schema parameters for latitude / longitude fields that are part of an Address object
- Adds a check to make sure the start_date has time information associated with it
- Adds more robust parsing for select_fields_by_default
- Fixes a bug with running the tap when provided a Catalog containing streams without a replication key #27
- Bumps the dependency singer-python's version to 5.0.4
- Fixes a bug where bookmark state would not get set after resuming a PK Chunked Bulk Sync #24
- Adds additional logging and state management during a PK Chunked Bulk Sync
- Fixes a bad variable name
- Uses the correct datetime to string function for chunked bookmarks
- Adds a feature for resuming a PK-Chunked Bulk API job #22
- Fixes an issue where a Salesforce's field data containing NULL bytes would cause an error reading the CSV response #21
- Fixes an issue where the timed
login()thread could die and never call a new login #20
- Fixes a bug with with yield records when the Bulk job is successful #19
- Fixes a bug with a missing pk_chunking attribute
- Adds support for Bulk API jobs which time out to be retried with Salesforce's PK Chunking feature enabled
- Allows compound fields to be supported with the exception of "address" types
- Adds additional unsupported Bulk API Objects
- Support for time_extracted property on Singer messages
- Initial release