[Twisted-Python] Twisted 16.7.0rc1 Release Candidate Announcement

John Santos john at egh.com
Thu Dec 29 10:43:22 MST 2016


Thank you (and Glyph for his followup) for the detailed instructions.  I 
will be trying this on our 2nd development system in a few days (or 
possibly sooner on the test system if 16.7.0 is released before I get 
around to it :-)) and will let you know if I encounter any difficulties.


On 12/28/2016 6:37 PM, Amber "Hawkie" Brown wrote:
> Hi John,
>
> .whl is just an optimised binary format, and can be installed by pip 
> from a local file. If you want to get all the dependencies of Twisted 
> in a future-proof way, without network on production, just do this on 
> a machine with the same arch/OS:
>
> hawkowl /p/t/tx> pip download twisted[tls]==16.7.0rc1
> [LOADING BARS ELINED]
> Successfully downloaded twisted zope.interface constantly incremental 
> Automat pyopenssl service-identity idna setuptools six characteristic 
> cryptography pyasn1 pyasn1-modules attrs ipaddress enum34 cffi pycparser
>
> hawkowl /p/t/tx> ls
> Automat-0.3.0-py2.py3-none-any.whl      ipaddress-1.0.17-py2-none-any.whl
> Twisted-16.7.0rc1.tar.bz2       pyOpenSSL-16.2.0-py2.py3-none-any.whl
> attrs-16.3.0-py2.py3-none-any.whl       pyasn1-0.1.9-py2.py3-none-any.whl
> cffi-1.9.1-cp27-cp27m-macosx_10_10_intel.whl     
>  pyasn1_modules-0.0.8-py2.py3-none-any.whl
> characteristic-14.3.0-py2.py3-none-any.whl      pycparser-2.17.tar.gz
> constantly-15.1.0-py2.py3-none-any.whl     
>  service_identity-16.0.0-py2.py3-none-any.whl
> cryptography-1.7.1-cp27-cp27m-macosx_10_10_intel.whl   
>  setuptools-32.3.0-py2.py3-none-any.whl
> enum34-1.1.6-py2-none-any.whl       six-1.10.0-py2.py3-none-any.whl
> idna-2.2-py2.py3-none-any.whl       
> zope.interface-4.3.3-cp27-cp27m-macosx_10_11_x86_64.whl
> incremental-16.10.1-py2.py3-none-any.whl
>
> Put these files on the target machine. Then on the target machine, 
> with no internet connection:
>
> hawkowl /p/t/tx> virtualenv venv
> Using real prefix 
> '/System/Library/Frameworks/Python.framework/Versions/2.7'
> New python executable in /private/tmp/tx/venv/bin/python
> Installing setuptools, pip, wheel...done.
>
> # Because incremental is setup_requires on twisted, install it 
> explicitly or setuptools will go try and fetch it
> hawkowl /p/t/tx [1]> venv/bin/pip install --no-index --find-links ./ 
> incremental
> Collecting incremental
> Installing collected packages: incremental
> Successfully installed incremental-16.10.1
>
> hawkowl /p/t/tx> venv/bin/pip install --no-index --find-links ./ 
> twisted[tls]
> Collecting twisted[tls]
> Collecting Automat>=0.3.0 (from twisted[tls])
> Collecting zope.interface>=3.6.0 (from twisted[tls])
> Collecting constantly>=15.1 (from twisted[tls])
> Requirement already satisfied: incremental>=16.10.1 in 
> ./venv/lib/python2.7/site-packages (from twisted[tls])
> Collecting service-identity; extra == "tls" (from twisted[tls])
> Collecting idna>=0.6; extra == "tls" (from twisted[tls])
> Collecting pyopenssl>=16.0.0; extra == "tls" (from twisted[tls])
> Requirement already satisfied: six in 
> ./venv/lib/python2.7/site-packages (from Automat>=0.3.0->twisted[tls])
> Requirement already satisfied: characteristic in 
> ./venv/lib/python2.7/site-packages (from Automat>=0.3.0->twisted[tls])
> Requirement already satisfied: setuptools in 
> ./venv/lib/python2.7/site-packages (from 
> zope.interface>=3.6.0->twisted[tls])
> Collecting pyasn1 (from service-identity; extra == "tls"->twisted[tls])
> Collecting pyasn1-modules (from service-identity; extra == 
> "tls"->twisted[tls])
> Requirement already satisfied: attrs in 
> ./venv/lib/python2.7/site-packages (from service-identity; extra == 
> "tls"->twisted[tls])
> Collecting cryptography>=1.3.4 (from pyopenssl>=16.0.0; extra == 
> "tls"->twisted[tls])
> Collecting ipaddress (from cryptography>=1.3.4->pyopenssl>=16.0.0; 
> extra == "tls"->twisted[tls])
> Collecting enum34 (from cryptography>=1.3.4->pyopenssl>=16.0.0; extra 
> == "tls"->twisted[tls])
> Collecting cffi>=1.4.1 (from cryptography>=1.3.4->pyopenssl>=16.0.0; 
> extra == "tls"->twisted[tls])
> Collecting pycparser (from 
> cffi>=1.4.1->cryptography>=1.3.4->pyopenssl>=16.0.0; extra == 
> "tls"->twisted[tls])
> Installing collected packages: Automat, zope.interface, constantly, 
> pyasn1, pyasn1-modules, idna, ipaddress, enum34, pycparser, cffi, 
> cryptography, pyopenssl, service-identity, twisted
> Successfully installed Automat-0.3.0 cffi-1.9.1 constantly-15.1.0 
> cryptography-1.7.1 enum34-1.1.6 idna-2.2 ipaddress-1.0.17 pyasn1-0.1.9 
> pyasn1-modules-0.0.8 pycparser-2.17 pyopenssl-16.2.0 
> service-identity-16.0.0 twisted-16.7.0rc1 zope.interface-4.3.3
>
> This will install Twisted and its dependencies the official pip way, 
> without needing to hardcode which libraries you fetch, and will do the 
> right thing as Twisted eventually adds more dependencies (like when we 
> split out FilePath and Deferred).
>
> - Amber
>
>> On 29 Dec. 2016, at 10:20, John Santos <john at egh.com 
>> <mailto:john at egh.com>> wrote:
>>
>> Seems to require a new Python module, Automat.  (Not mentioned in the 
>> NEWS file, INSTALL, etc.)  I found Automat 0.3.0 (with Glyph's 
>> fingerprints on it) at PyPI, but it only exists in .whl format.  
>> Downloaded it, but I'm not sure what to do next.  I was able to get 
>> it working by downloading and installing get-pip.py and Automat 
>> (contrary to the python.org <http://python.org> documentation, I 
>> didn't have pip installed on my system even though it is Python 
>> 2.7.13 downloaded from python.org <http://python.org>.)
>>    sudo python get-pip.py
>>    sudo pip install Automat
>>
>> This is worrisome to me because I think this requires Internet access 
>> to pypi.python.org <http://pypi.python.org>, which I have on my 
>> development and testing systems, but not on my production systems.  
>> Everything else I've ever needed, I could download and install source 
>> files.
>>
>> Having done this, my app seems to run fine (only quick sanity testing 
>> so far.)
>>
>>
>> ----install---
>> Searching for Automat>=0.3.0
>> Reading https://pypi.python.org/simple/Automat/
>> Download error on https://pypi.python.org/simple/Automat/: [SSL: 
>> CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- 
>> Some packages may not be found!
>> Couldn't find index page for 'Automat' (maybe misspelled?)
>> Scanning index of all packages (this may take a while)
>> Reading https://pypi.python.org/simple/
>> Download error on https://pypi.python.org/simple/: [SSL: 
>> CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- 
>> Some packages may not be found!
>> No local packages or working download links found for Automat>=0.3.0
>> error: Could not find suitable distribution for 
>> Requirement.parse('Automat>=0.3.0')
>> ------
>>
>> ---try to use without Automat---
>> medusa at Medusa:~/run> python medusa_server.py Rain
>> Traceback (most recent call last):
>>   File "medusa_server.py", line 72, in <module>
>>     from twisted.application import service, internet
>>   File 
>> "/usr/lib/python2.7/site-packages/Twisted-16.7.0rc1-py2.7-linux-x86_64.egg/twisted/application/internet.py", 
>> line 54, in <module>
>>     from automat import MethodicalMachine
>> ImportError: No module named automat
>> ------
>>
>> On 12/22/2016 11:33 PM, Amber "Hawkie" Brown wrote:
>>> Hello everyone, and happy holidays!
>>>
>>> Although it didn't quite fall on the solstice, one could call this 
>>> Twisted release a little ray of sunshine, with some nice new 
>>> improvements. 16.7.0rc1 brings the following stocking stuffers:
>>>
>>> - twisted.web.client.Agent now supports IPv6! It's also now the 
>>> primary web client in Twisted, with twisted.web.client.getPage being 
>>> deprecated in favour of it and Treq.
>>> - twisted.internet.ssl.CertificateOptions has had its `method` 
>>> argument deprecated, in favour of the new raiseMinimumTo, 
>>> lowerMaximumSecurityTo, and insecurelyLowerMinimumTo arguments, 
>>> which take TLSVersion arguments. This allows you to better give a 
>>> range of versions of TLS you wish to negotiate, rather than forcing 
>>> yourself to any one version.
>>> - twisted.internet.ssl.CertificateOptions will use OpenSSL's 
>>> MODE_RELEASE_BUFFERS, which will let it free unused memory that was 
>>> held by idle TLS connections.
>>> - You can now call the new twist runner with `python -m twisted`.
>>> - Conch has the beginnings of ECDH key exchange, and supports 
>>> `hmac-sha2-384` in twisted.conch.ssh.
>>> - Better Unicode support in twisted.internet.reactor.spawnProcess, 
>>> especially on Windows on Python 3.6.
>>> - More Python 3 porting in Conch, and more under-the-hood changes to 
>>> facilitate a Twisted-wide jump to new-style classes only on Python 2 
>>> in 2018/2019. This release has also been tested on Python 3.6 on Linux.
>>> - Lots of deprecated code removals, to make a sleeker, less 
>>> confusing Twisted.
>>> - 20+ closed tickets.
>>>
>>> You can get the tarball and the NEWS file at 
>>> https://twistedmatrix.com/Releases/rc/16.7.0rc1/ , or you can try it 
>>> out from PyPI:
>>>
>>>     python -m pip install Twisted==16.7.0rc1
>>>
>>> Please test it, and let me know how your applications fare, good or 
>>> bad! If nothing comes up, 16.7 looks like it'll land just before the 
>>> new year.
>>>
>>> With festive hoots,
>>>     Amber Brown
>>>
>>>
>>>
>>> _______________________________________________
>>> Twisted-Python mailing list
>>> Twisted-Python at twistedmatrix.com
>>> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>>
>>
>> -- 
>> John Santos
>> Evans Griffiths & Hart, Inc.
>> 781-861-0670 ext 539
>> _______________________________________________
>> Twisted-Python mailing list
>> Twisted-Python at twistedmatrix.com 
>> <mailto:Twisted-Python at twistedmatrix.com>
>> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
>
>
>
> _______________________________________________
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python

-- 
John Santos
Evans Griffiths & Hart, Inc.
781-861-0670 ext 539

-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/twisted-python/attachments/20161229/0f45da22/attachment-0002.html>


More information about the Twisted-Python mailing list