MAJOR
version bumps will have upgrade notes
posted here.
Twilio Python Helper Library’s major version 9.0.0 is now available. We ensured that you can upgrade to Python helper Library 9.0.0 version without any breaking changes of existing apis
Behind the scenes Python Helper is now auto-generated via OpenAPI with this release. This enables us to rapidly add new features and enhance consistency across versions and languages. We're pleased to inform you that version 9.0.0 adds support for the application/json content type in the request body.
-
Supported Python versions updated
- Dropped support for Python 3.6 (#632)
- Python 3.7 is the new required minimum version to use twilio-python helper library
-
Deletion of TwiML Voice Deprecated Methods (#643)
-
Refer.refer_sip()
replaced byRefer.sip()
-
Say.ssml_break()
replaced bySay.break_()
Say.ssml_emphasis()
replaced bySay.emphasis()
Say.ssml_lang()
replaced bySay.lang()
Say.ssml_p()
replaced bySay.p()
Say.ssml_phoneme()
replaced bySay.phoneme()
Say.ssml_prosody()
replaced bySay.prosody()
Say.ssml_s()
replaced bySay.s()
Say.ssml_say_as()
replaced bySay.say_as()
Say.ssml_sub()
replaced bySay.sub()
Say.ssml_w()
replaced bySay.w()
Old:
from twilio.twiml.voice_response import VoiceResponse resp = VoiceResponse() say = resp.say("Hello") say.ssml_emphasis("you")
New:
from twilio.twiml.voice_response import VoiceResponse resp = VoiceResponse() say = resp.say("Hello") say.emphasis("you")
-
-
JWT token building deprecations (#644)
ConversationsGrant
has been deprecated in favor ofVoiceGrant
IpMessagingGrant
has been removed
-
twilio.rest.api.v2010.account.available_phone_number
has been renamed totwilio.rest.api.v2010.account.available_phone_number_country
-
TaskRouter Workers Statistics operations updated (#653)
-
Cumulative and Real-Time Workers Statistics no longer accept a WorkerSid
-
GET /v1/Workspaces/{WorkspaceSid}/Workers/CumulativeStatistics
Old:
client.taskrouter.v1.workspaces('WS...').workers('WK...).cumulative_statistics()
New:
client.taskrouter.v1.workspaces('WS...').workers.cumulative_statistics()
-
GET /v1/Workspaces/{WorkspaceSid}/Workers/RealTimeStatistics
Old:
client.taskrouter.v1.workspaces('WS...').workers('WK...).real_time_statistics()
New:
client.taskrouter.v1.workspaces('WS...').workers.real_time_statistics()
-
-
Internal refactor of
instance._properties
- Instance properties moved out of the generic
_properties
dict (#696) - This is an implementation detail that should not be depended upon
- Instance properties moved out of the generic
Version 7.x.x
is the first version that officially drops support for Python versions 2.7, 3.4, and 3.5.
- Six
- Removed use of
u
a fake unicode literal - Removed use of
b
a fake bytes literal - Removed
PY3
a boolean indicating if the code is running on Python 3 text_type
type for representing (Unicode) textual data -->str
iteritems
returns an iterator over dictionary’s items -->items
string_types
possible types for text data like basestring() in Python 2 and str in Python 3.-->str
- Removed use of
- twilio/compat.py
from twilio.compat import urlencode
-->from urllib.parse import urlencode
izip
-->zip
- twilio/jwt/compat.py
- Removed
compat.compare_digest
- Removed
- twilio/jwt/init.py
- Removed import for
simplejson
andjson
- Removed import for
// 6.x.x
from twilio.jwt.access_token import AccessToken
token.to_jwt(algorithm='HS512')
// 7.x.x
from twilio.jwt.access_token import AccessToken
token.to_jwt()
This was changed to add support for sending media in Chat messages, users can now either provide a body
or a media_sid
.
from twilio.rest import Client
client = Client('AC123', 'auth')
client.chat.v2.services('IS123').channels('CH123').messages.create("this is the body")
from twilio.rest import Client
client = Client('AC123', 'auth')
client.chat.v2.services('IS123').channels('CH123').messages.create(body="this is the body")