Skip to content

Latest commit

 

History

History
145 lines (103 loc) · 6.32 KB

UPGRADE.md

File metadata and controls

145 lines (103 loc) · 6.32 KB

Upgrade Guide

MAJOR version bumps will have upgrade notes posted here.

[2024-02-20] 8.x.x to 9.x.x

Overview

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.

[2023-04-05] 7.x.x to 8.x.x

  • 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.refer_sip() replaced by Refer.sip()
    • <Say>

      • Say.ssml_break() replaced by Say.break_()
      • Say.ssml_emphasis() replaced by Say.emphasis()
      • Say.ssml_lang() replaced by Say.lang()
      • Say.ssml_p() replaced by Say.p()
      • Say.ssml_phoneme() replaced by Say.phoneme()
      • Say.ssml_prosody() replaced by Say.prosody()
      • Say.ssml_s() replaced by Say.s()
      • Say.ssml_say_as() replaced by Say.say_as()
      • Say.ssml_sub() replaced by Say.sub()
      • Say.ssml_w() replaced by Say.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 of VoiceGrant
    • IpMessagingGrant has been removed
  • twilio.rest.api.v2010.account.available_phone_number has been renamed to twilio.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

[2021-09-22] 6.x.x to 7.x.x

Overview

Version 7.x.x is the first version that officially drops support for Python versions 2.7, 3.4, and 3.5.

Removal of files and dependencies that were added to support Python 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
  • twilio/compat.py
    • from twilio.compat import urlencode --> from urllib.parse import urlencode
    • izip --> zip
  • twilio/jwt/compat.py
    • Removed compat.compare_digest
  • twilio/jwt/init.py
    • Removed import for simplejson and json

Updated dependencies

Removed the ability to override the algorithm while using a jwt access token

// 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()

[2017-09-28] 6.6.x to 6.7.x

CHANGED - Body parameter on Chat Message creation is no longer required

Rationale

This was changed to add support for sending media in Chat messages, users can now either provide a body or a media_sid.

6.6.x

from twilio.rest import Client

client = Client('AC123', 'auth')
client.chat.v2.services('IS123').channels('CH123').messages.create("this is the body")

6.7.x

from twilio.rest import Client

client = Client('AC123', 'auth')
client.chat.v2.services('IS123').channels('CH123').messages.create(body="this is the body")