Chaos Toolkit 1.0.0
Hi all, I'm really pleased to announce 1.0.0 of the Chaos Toolkit, a Python toolkit for Chaos Engineering. https://medium.com/chaos-toolkit/chaos-toolkit-1-0-0-and-a-lot-of-joy-71bcb39f11a7 Sources and binary packages can be found as usual on pypi: https://pypi.org/project/chaostoolkit/ The Chaos Toolkit aims at enabling your Chaos Engineering effort by respecting the Open Chaos and Principles of Chaos definitions. It's under Apache v2 license and runs on Python 3.5+ If you are curious and interested, please join its communuty at https://join.chaostoolkit.org/ Thanks, -- - Sylvain http://www.defuze.org http://twitter.com/lawouach -- https://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations/
ws4py 0.1.2: WebSocket for Python
Hi all, I recently pushed a new version of ws4py, a WebSocket client/server library for Python 2.x. == Overview == ws4py implements version 8 of draft-10 of the WebSocket specification. It supports CherryPy 3.2.1 and gevent as WebSocket servers. Tornado already ships supports for a WebSocket server. Client support comes for Tornado and a a threaded implementation only relying on Python stdlib. It heavily relies on generators using both .next() and .send(bytes) to decouple data provider from the actual WebSocket protocol implementation which makes it quite easy to port to other providers if need be (Kamaelia, circuits come to mind). The servers work fine against a Chrome 15. It hasn't been tested against other browsers. ws4py does run on Android devices via the SL4A package. == Get it == ws4py is a pure Python package and can be installed from PyPI: http://pypi.python.org/pypi/ws4py/0.1.2 Its repository is hosted on github: https://github.com/Lawouach/WebSocket-for-Python == Functional Test results == Some test results, using the Autobahn test suite: http://www.defuze.org/oss/ws4py/testreports/servers/ http://www.tavendo.de/autobahn Those tests show that for large messages, ws4py might not be yet tuned enough. This will be addressed in a near future release. == Examples == A daft in-browser chat example: https://github.com/Lawouach/WebSocket-for-Python/blob/master/example/echo_cherrypy_server.py An Android based demo that displays the device sensors in real-time in a HTML5 canvas: https://github.com/Lawouach/WebSocket-for-Python/tree/master/example http://www.defuze.org/oss/ws4py/screenshots/droidsensors.png == Acknowledgments == Jeff Lindsay for the gevent server implementation. https://github.com/progrium pywebsocket and Tornado for their implementations that were a fantastic starting point. Have fun, -- - Sylvain http://www.defuze.org http://twitter.com/lawouach -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations/
ANN: amplee 0.6.1 - AtomPub Python implementation
Hi all, I'm glad to announce the release of amplee in version 0.6.1 == Overview of this release == This release is a minor release that fixes a few annoying defects and improves overall performances of the internal of amplee: * removes many of the usage of the copy.copy function (thanks to Mohanaraj Gopala Krishnan for his previous help) * drops the cmemcache module in favor the python-memcached one * adds a prune(member) method to the indexer API * extends with a few helpful functions the atompub API * adds more unit tests * drops the graph subpackage from the egg distribution (and I will remove it altogether for license issue in the next release). If you're using 0.6.0 I would advise to upgrade. The API is fully compatible and you'll experience a more stable product. I really wish to thank Mohan for his feedback, patience and will to send patches. == Download == * easy_install -U amplee * Tarballs http://www.defuze.org/oss/amplee/ * svn co https://svn.defuze.org/oss/amplee/ == Documentation == Home page: http://trac.defuze.org/wiki/amplee API: http://www.defuze.org/oss/amplee/api-0.6.1/ Tutorial (sort of): http://trac.defuze.org/wiki/amplee/Tutorial-0.6.x -- Sylvain Hellegouarch http://www.defuze.org -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: headstock 0.1.0 - Python implementation of XMPP
All, I am pleased to announce headstock 0.1.0, a Python implementation of the XMPP protocol based on Kamaelia [1]. headstock is currently not production ready and lack documentation but offers a good sample case that shows how to use it. Documentation will come in a near future. == Features == * support for RFC 3920 and 3921 (except privacy list) Supports almost complete (at least usable) for a few extensions: * XEP-0004 * XEP-0077 * XEP-0060 (PubSub) == Download == * easy_install -U headstock * Tarballs http://www.defuze.org/oss/headstock/ * svn co https://svn.defuze.org/oss/headstock/ == More info == http://trac.defuze.org/wiki/headstock/ == TODO == * Documentation * Code cleanup * More extensions Have fun, -- Sylvain Hellegouarch http://www.defuze.org [1] http://kamaelia.sourceforge.net/Home -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: amplee 0.6.0 - AtomPub Python implementation
Hi all, I'm glad to announce the release of amplee in version 0.6.0 == Overview of this release == This release is an important move from previous releases as it doesn't include support for any HTTP layer out of the box anymore. The reason is that it made the previous API needlessly complex and stopped people to actually use amplee for what it aims at being: one simple representation of the AtomPub protocol server side. Basically I wish amplee was used as a library rather than as a host for AtomPub applications. The 0.6.x branch will focus therefore on polishing the AtomPub model API as well as the related sub-packages such as the index and graph extension. Moreover I would like to improve the performance of amplee although they have already improved since 0.5.x. The graph sub-package is a first stab at using graph theory via the igraph [1] package to perform foxy manipulations of Atom feeds. One major change since 0.5.x is the move from bridge [2] to Amara [3] to parse, query and generate XML documents within amplee. I think that change was for the best considering the capabilities of Amara. Another change is that I've dropped the INI file format for configuration and loading an amplee structure. Instead you can now directly use the XML service document itself and complete using a bit of extra code. That allows for some funny capabilities such as mirroring existing AtomPub service document (see the example directory for instance [4]). I would like to thank Eric Larson [5] and Mohanaraj Gopala Krishnan for their feedback and patience. They have provided the project with a tremendous help. == Download == * easy_install -U amplee * Tarballs http://www.defuze.org/oss/amplee/ * svn co https://svn.defuze.org/oss/amplee/ == Documentation == Home page: http://trac.defuze.org/wiki/amplee API: http://www.defuze.org/oss/amplee/api-0.6.0/ Tutorial (sort of): http://trac.defuze.org/wiki/amplee/Tutorial-0.6.x == TODO == * Add more tests * Improve documentation * Improve performance * Improve the graph and index sub-packages Have fun, -- Sylvain Hellegouarch http://www.defuze.org [1] http://cneurocvs.rmki.kfki.hu/igraph/ [2] http://trac.defuze.org/wiki/bridge [3] http://uche.ogbuji.net/tech/4suite/amara/ [4] http://trac.defuze.org/browser/oss/amplee/amplee/examples/miror [5] http://ionrock.org/ -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: amplee 0.5.1
All, I am really pleased to announce version 0.5.1 of amplee, a Python implementation of the Atom Publishing protocol as per draft-17 [1]. This version is a major release for amplee and will (unfortunately) break existing applications using it due to some changes in its API, although those modifications are minor and the design stays pretty much the same allowing for an easier upgrade. == What's new? == * Changed the member resource API to make it more robust and useful, handling many common tasks for the application developer. * Added support for a distinction of collection and public feed providing a very simple mechanism to create and handle both types of feeds. * Extended the collection API and fixed numerous bugs within. * Added a tarfile storage that permits to store data in a tarball in a transparent fashion (handy for multipart/form-data storage for instance). * Added a memcache storage that can as a proxy storage to cache resources in memcached server using either cmemcache or python-memcache. * Made the storage API more robust and resilient to unicode vs byte string. * Improved and enhanced the indexer module which can now also use memcached to store indexes. * Added a working (finally) example of amplee demonstrating its main features [2]. * Made the unit tests more useful * Added support for Etag in the HTTP handlers * Added a contrib directory containing a schematron schema for Atom related documents as well as a crawler.py module that can browse or test your AtomPub service and reports a set of details about it (simple but useful). * Support for entry points has been extended and allows to support any number of collections via the loader module. * Gazillions of bugs have been fixed and hopefully carefully tested to perish as they deserved. * Fixed memcached indexer defect. * Documentation added. == Download == * easy_install -U amplee * Tarballs http://www.defuze.org/oss/amplee/ * svn co https://svn.defuze.org/oss/amplee/ == Documentation == http://trac.defuze.org/wiki/amplee/ http://trac.defuze.org/wiki/amplee/Tutorial http://www.defuze.org/oss/amplee/api/ == TODO == * Support for collection paging * Improve documentation Have fun, -- Sylvain Hellegouarch http://www.defuze.org [1] http://bitworking.org/projects/atom/draft-ietf-atompub-protocol-17.html [2] http://atompub.defuze.org/ -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: bridge 0.2.4
Hi all, I am pleased to announce the release of bridge 0.2.4, a general purpose XML library for Python and IronPython. == Overview == bridge is very simple and light. It basically let you load an XML document via a set of different parsers (xml.dom, expat, Amara, lxml, System.Xml and ElementTree) and creates a tree of Elements and Attributes before releasing the parser resources. This means that once the document is loaded it is independent from the underlying parser. bridge then provides a straightforward interface to navigate through the tree and manipulate it. bridge does not try to replace underlying XML engines but offer a common API so that your applications are less dependent of those engines. bridge offers a couple of other goodies however to play with the tree of elements (see the documentation). == What's new? == This release is an important milestone for bridge: * added expat parser (seems to be the fatest parser bridge has) * many namespace issues fixed with the default parser * added incremental parsing with dispatching based on rules during the parsing of bridge Elements * added path lookup support (not XPath) * slightly increased the API of a few helps functions == TODO == Potentially the IronPython implementation is not as up-to-date as the other parsers. All parsers will generate the same bridge structure. The only minor difference at the present time is coming from the lxml parser which does not preserve processing instructions and comments before the root element. bridge cannot therefore access them. Add more unit tests. == Download == * easy_install -U bridge * Tarballs http://www.defuze.org/oss/bridge/ * svn co https://svn.defuze.org/oss/bridge/ == Documentation == Wiki: http://trac.defuze.org/wiki/bridge Have fun, -- Sylvain Hellegouarch http://www.defuze.org -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: amplee 0.4.0
Hi all, I finally released a new version of amplee. I've moved from 0.3.x to 0.4.x as there are a couple of modification to the API that were worse the bump. I think this version is much more stable and bug free. Mind you it's a long way before I can claim is entirely unit tested. But it gets there. The main modifications since 0.3.6 are: * Added a loader feature. I realized that setting up the store was a recurrent task and I wondered how to help in this task. I came up with the loader feature. Basically you describe your APP store within a config file (pure INI) and calls the loader method. This will construct entirely your store and returns it to you. This is quite handy and makes the creation of a store much easier. * Handler API introduced. Amplee does the best it can to provide you with an API an tools to handle the dirty work of APP and let you enhance it by a callback system. In previous version those callbacks were attached to the collection which forced to some not very friendly hacks. Now it's a matter of creating a class that implements a set of methods which will then be called by amplee at the right moment. This class is what I call a handler and associated with a media-type that the collection accepts. * The loading and reloading of members is more flexible. In the past you could solely reload all members of a store or none. Now you have more granularity upon what should be loaded into a collection's cache. * Many notable bugs have been fixed in the handling of Atom within the members and they should be much more reliable now. * You can now find a small blog example that shows you how to use amplee. If you think of upgrading you should note that because of the modification on the callback API you may have some work to do. But this should not be too difficult. == Download == * easy_install -U amplee * Tarballs http://www.defuze.org/oss/amplee/ * svn co https://svn.defuze.org/oss/amplee/ == Documentation == http://trac.defuze.org/wiki/amplee http://www.defuze.org/oss/amplee/doc/html/ == Examples == You can get some source code examples at http://defuze.org/oss/amplee/amplee-example-0.4.0.tgz == TODO == * Add more tests * Improve documentation * Test with IronPython * Enhance WSGI support Have fun, -- Sylvain Hellegouarch http://www.defuze.org Reply -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: bridge 0.2.0
Hi all, I am pleased to announce the release of bridge 0.2.0, a general purpose XML library for Python and IronPython (and ultimately Jython). bridge is very simple and light. It basically let you load an XML document via a set of different parsers (xml.dom, Amara, lxml, System.Xml and ElementTree) and creates a tree of Elements and Attributes before releasing the parser resources. This means that once the document is loaded it is independent from the underlying parser. bridge then provides a straightforward interface to navigate through the tree and manipulate it. bridge does not try to replace underlying XML engines but offer a common API so that your applications are less dependent of those engines. bridge offers a couple of other goodies however to play with the tree of elements (see the documentation). == What's new? == This release is an important milestone for bridge: * it now supports ElementTree * it fixes major issues with namespace handling and should now work correctly * it adds a set of unit tests * it adds support for Comment and ProcessingInstruction == TODO == Potentially the IronPython implementation is not as up-to-date as the other parsers. This will be quickly fixed. All parsers will generate the same bridge structure. The only minor difference at the present time is coming from the lxml parser which does not preserve processing instructions and comments before the root element. bridge cannot therefore access them. Mind you ElementTree does not preserve either but I was able to workaround this behavior. Add more unit tests. == Download == * easy_install -U bridge * Tarballs http://www.defuze.org/oss/bridge/ * svn co https://svn.defuze.org/oss/bridge/ == Documentation == Wiki: http://trac.defuze.org/wiki/bridge (not yet updated for 0.2.0) API: http://www.defuze.org/oss/bridge/doc/html/ To see the implementation of the parsers you'll need to look at the private API. Have fun, -- Sylvain Hellegouarch http://www.defuze.org -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: amplee 0.3.3
Hi all, I'm happy to introduce the release of Amplee 0.3.3, a Python implementation of the Atom Publishing Protocol. This release is a bug fixes but with a few new features as well: * Improved support of the Amazon S3 service as a storage * Support for the Hachoir library which should offer more format supported as members * Fixed the AtomMember class * Improved the potential of the different callbacks on creation, update and deletion of resources. * Added lots of docstrings (still not enough though) * Fixed quite a few bunch of bugs (thanks to David Turner) * Fix the WSGI handler to use the new routing_args spec. * Largely improved the demo as well This release is getting closer to what the final API will look like and I think it's a pretty stable version. == Download == * easy_install -U amplee * Tarballs http://www.defuze.org/oss/amplee/ * svn co https://svn.defuze.org/oss/amplee/ == Documentation == http://trac.defuze.org/wiki/amplee http://www.defuze.org/oss/amplee/doc/html/ == TODO == * Add tests * Remove genser dependency * Improve documentation Have fun, -- Sylvain Hellegouarch http://www.defuze.org -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: bridge 0.1.0 a general Python and IronPython XML library
Hi all, I'm happy to introduce the first release of bridge. A general purpose XML library for Python and IronPython (and ultimately Jython). bridge is very simple and light. It basically let you load an XML document via a set of different parsers (xml.dom, Amara, lxml, System.Xml) and creates a tree of Elements and Attributes before releasing the parser resources. This means that once the document is loaded it is independent from the underlying parser. bridge then provides a straightforward interface to navigate through the tree and manipulate it. bridge does not try to replace underlying XML engines but offer a common API so that your applications are less dependent of those engines. bridge offers a couple of other goodies however to play with the tree of elements (see the documentation). == Download == * easy_install -U bridge * Tarballs http://www.defuze.org/oss/bridge/ * svn co https://svn.defuze.org/oss/bridge/ == Documentation == http://trac.defuze.org/wiki/bridge Hope this will help a few people in working with XML without worrying on which engine they choose to use. Have fun, -- Sylvain Hellegouarch http://www.defuze.org -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
Re: [IronPython] [ANN] IronPython Community Edition 1.0r2
Brilliant Seo. Thanks a lot :) BTW, if it can be useful and you're happy with the code, don't hesitate to include my port of the Gzip module. Its a BSD license :) - Sylvain This is the second release of IronPython Community Edition (IPCE), 1.0 revision 2, based on IronPython 1.0. Get it here: http://sparcs.kaist.ac.kr/~tinuviel/download/IPCE-1.0r2.zip Binary is built with Mono 1.1.17.1. BIG WARNING: it won't work with Mono versions below 1.1.17. Please don't mail me or IronPython mailing list before checking your Mono version! IPCE has a new home on SourceForge: http://fepy.sourceforge.net/ And here's the license and the summary of applied patches: http://fepy.sourceforge.net/license.html http://fepy.sourceforge.net/patches.html Changes in this revision: * Includes the Python standard library from CPython 2.4.3. (Not everything is included -- that would be pointless. Those I tested and work reasonably are included.) * Includes following CPython-compatible wrappers for .NET library: md5, pyexpat, select, sha, socket, ssl, unicodedata. * Includes DB-API wrapper for ADO.NET. * Includes BeautifulSoup and ElementTree for you to test. (Both work great with IronPython!) * Does not include Doc, Src, Tutorial from the original IronPython release. You know where to get them... Reduces size by about half. * Extracts to IPCE-1.0r2. (The first revision extracted to IronPython-1.0 and it could overwrite existing installation. Thanks to Anthony Baxter for pointing this out.) -- Seo Sanghyeon ___ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com -- http://mail.python.org/mailman/listinfo/python-list
ANN: CherryPy book
Hello all, I am pleased to announce that I will be writing a book on CherryPy which will published by Packt Publishing [1]. Packt is a fairly recent publishing company based in the United Kingdom which has focused since the beginning in providing the developer community with books specific to their day to day tasks. I have been dealing with the guys at Packt for a bit more than a month and I can tell you that they are really excited by a book on CherryPy as I am. In fact if you are looking for a friendly and ready to support publisher, go and contact them [2]. The approach taken for the book is to go through the design of an application and see how CherryPy can be a great choice for rapid web application development. Throughout the book I will explain concepts behind CherryPy itself as well as third-party products such as ORMs and template engines. At the end of the book as an application developer you will understand how CherryPy can benefit you for web development while having a good overview of the CherryPy's design. Even though it will be a standalone book, I also believe that the book might be a good extension to the TurboGears book [3]. I cannot deny I am really thrilled by the project and I hope being able to finish it in a not far future for you guys. Stay tuned. - Sylvain http://www.defuze.org [1] http://www.packtpub.com/ [2] https://www.packtpub.com/article/aboutus [3] http://groups.google.com/group/turbogears-announce/browse_frm/thread/b960a318531cb9a0 -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: atomixlib 0.3.0
atomixlib 0.3.0 Available at : http://www.defuze.org/oss/atomixlib/ What's new? * It breaks the compatibility with previous version. Mainly you do not need to pass the current atom element being constructed to the Atomix methods. Instead the Atomix class keeps an handle to that element internally. * It adds a lot more documentation via docstrings and an epydoc version of the API. * It fixes some issues with XHTML content * It is more flexible for creating the atom document (feed or entry based). * It improves performances of atomixlib since 0.2.0 Get atomixlib http://www.defuze.org/oss/atomixlib/download/atomixlib-0.3.0.tgz What's atomixlib? A Python module to facilitate Atom 1.0 documents generation. License BSD Credits I would like to thank Uche Ogbuji for discussing atomixlib so much and giving me some very neat ideas. Enjoy! - Sylvain Hellegouarch sh defuze.org This message was sent using IMP, the Internet Messaging Program. -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
Announcing : pyglfw
Hello folks, I am please to announce the first release of pyglfw, a python binding for GLFW written as an extension module. GLFW is simple framework acting like a glue between OpenGL and the system. The aim of pyglfw is simply for me to get my hands on writing an extension for Python, so this is quite an alpha code I release. Although it works fine, it might need some fixing in some areas. Please have a look at it and feel free to let me know what you think about it. Here is the hope page of pyglfw : http://www.defuze.org/oss/pyglfw/ Regards, - Sylvain This message was sent using IMP, the Internet Messaging Program. -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html