- Added support for
get_deleted
call (@adambird)
- Raise a
Faraday::Error::ClientError
for300
responses triggered by a conflicting external ID, providing access to the response, which contains an array of the conflicting IDs (@timrogers, @michaelminter) - Improve the consistency of
Faraday::Error::ClientError
s raised, so they all have a message with the same format (@timrogers)
- Raise a
Restforce::ServerError
when Salesforce responds with a500
due to an internal error (@greysteil) - Improving handling of response body in errors (@kuono)
- Always parse the JSON response before errors are raised to improve exceptions (@kouno)
- Added support for
get_updated
call (@web-connect) - Respect Faraday adapter option in authentication middleware (@stenlarsson)
- Added support for
query_all
,explain
andlimits
API calls (which require a newerapi_version
than the default of 26.0) (@theSteveMitchell, @zenchild) - Added support for
recent
API call (@davebrace) - Changed
PROXY_URI
environment variable toSALESFORCE_PROXY_URI
(with warning toSTDOUT
if the old variable is set) (@timrogers) - Implemented
version_guard
inRestforce::Concerns::API
to standardise behaviour of API calls which require a particular version of the Salesforce API (@zenchild) - Fixed bug with construction of
Faraday::Error::ClientError
exceptions (@debussyman) - Added support for specifying SSL options to be passed to Faraday (@jonathanrico)
- Added support for specifying a custom logger and log level (@ilyakatz)
- Improved experience for contributors to the gem with bootstrapping process (@rafalchmiel)
- Drop support for versions of Ruby earlier than 1.9.3, which were end-of-lifed long ago
- Take advantages of Ruby 1.9.3 syntax, and drop old Ruby 1.8 shims
- Enforce code style with Rubocop
- Fixed a bug with
update!
andupsert!
mutating provided attributes (@timrogers) - Added note about thread safety to
README.md
(@epbarger) - Improved documentation for
select
inREADME.md
(@theSteveMitchell) - Tweaked and improved consistency of
README.md
(@timrogers) - Pass through blocks given to
Restforce.new
(@jxa) - Add
#page_size
toRestforce::Collection
(@theSteveMitchell)
- Better autopagination performance #141 @th7
- Looser restrictions on hashie gem #123 @zenchild
- Upgrade faraday dependency to 0.9 #124 @zenchild
- Fixed a bug with HTTP 413 responses #75 @patronmanager
- Added support for the tooling API.
- Fixed a bug with EMSynchrony adapter.
- Added proxy support.
- Added support for lazily traversing paginated collections #61 by @nahiluhmot.
- Added support for proxies #60 by @wazoo.
-
Added ability to download attachments easily.
Example
attachment = client.query('select Id, Name, Body from Attachment').first File.open(attachment.Name, 'wb') { |f| f.write(attachment.Body) }
-
Added
url
method.Example
# Url to a record id client.url('0013000000rRz') # => https://na1.salesforce.com/0013000000rRz # Url to an object that responds to `to_sparam` record = Struct.new(:to_sparam).new('0013000000rRz') client.url('0013000000rRz') # => https://na1.salesforce.com/0013000000rRz
-
Added
picklist_values
method.Example
client.picklist_values('Account', 'Type') client.picklist_values('Automobile__c', 'Model__c', :valid_for => 'Honda')
-
Added CHANGELOG.md
-
Restforce::Client#inspect
now only prints out the options and not the Faraday connection. -
The Faraday adapter is now configurabled:
Example:
Restforce.configure do |config| config.adapter = :excon end
-
The http connection read/open timeout is now configurabled.
Example:
Restforce.configure do |config| config.timeout = 300 end
- Fixed typo in method call.
- Minor cleanup.
- Moved decoding of signed requests into it's own class.
username
,password
,security_token
,client_id
andclient_secret
options now obtain defaults from environment variables.- Add
head
verb.
- Default api version changed from 24.0 to 26.0.
- Fixed tests for streaming api to work with latest versions of faye.
- Added .find method to obtain all fields from an sobject.