Modified: libcloud/site/trunk/generated/blog/tags/ikoula.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/ikoula.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/ikoula.html (original)
+++ libcloud/site/trunk/generated/blog/tags/ikoula.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -161,7 +161,7 @@ Ikoula</a>.</p>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/infrastructure.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/infrastructure.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/infrastructure.html (original)
+++ libcloud/site/trunk/generated/blog/tags/infrastructure.html Sun Jun  4 
14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -187,7 +187,7 @@ to manually edit markdown files again wh
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/linode.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/linode.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/linode.html (original)
+++ libcloud/site/trunk/generated/blog/tags/linode.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -208,7 +208,7 @@ and compatibility reasons. SSL v3.0 is c
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/new committer.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/new%20committer.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/new committer.html (original)
+++ libcloud/site/trunk/generated/blog/tags/new committer.html Sun Jun  4 
14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -507,7 +507,7 @@ easily and directly contribute to the pr
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/new features.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/new%20features.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/new features.html (original)
+++ libcloud/site/trunk/generated/blog/tags/new features.html Sun Jun  4 
14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -280,7 +280,7 @@ been written by one of our developers an
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/new pmc member.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/new%20pmc%20member.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/new pmc member.html (original)
+++ libcloud/site/trunk/generated/blog/tags/new pmc member.html Sun Jun  4 
14:37:45 2017
@@ -41,13 +41,13 @@
     
 
     
-      <meta content="https://libcloud.apache.org/blog/tags/new PMC 
member.html" property="og:url">
+      <meta content="https://libcloud.apache.org/blog/tags/new pmc 
member.html" property="og:url">
     
     
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -89,72 +89,75 @@
     <div class="container main-container">
       <div class="row section page-content">
   <div class="col-lg-8 col-lg-offset-2">
-    <h1>Tag: new PMC member</h1>
+    <h1>Tag: new pmc member</h1>
 
 
 
   
     <div class="post">
   
-    <h2><a href="/blog/2015/11/18/anthony-shaw-joins-our-team.html">Anthony 
Shaw (anthonyshaw) joins our team</a></h2>
+    <h2><a href="/blog/2014/12/04/eric-johnson-joins-our-team.html">Eric 
Johnson (erjohnso) joins our team</a></h2>
   
 
   
     
   
-  <span class="post-date-author">By Tomaz Muraus <span 
style="display:none">(<a 
href="https://plus.google.com/+TomazMuraus?rel=author";>Google+</a>)</span>on 
Nov 18, 2015</span>
+  <span class="post-date-author">By Tomaz Muraus <span 
style="display:none">(<a 
href="https://plus.google.com/+TomazMuraus?rel=author";>Google+</a>)</span>on 
Dec 04, 2014</span>
 
   <div class="post-content">
-    <p>Please help us extend a warm welcome to our newest team member <a 
href="https://github.com/tonybaloney";>Anthony
-Shaw</a>!</p>
+    <p>Please help us extend a warm welcome to our newest team member Eric 
Johnson!</p>
 
-<p>The Project Management Committee (PMC) for Apache Libcloud has invited 
Anthony
-Shaw to join us as a committer and a PMC member and we are pleased to announce
-that he has accepted.</p>
-
-<p>Anthony has joined the community fairly recently, but he has already made a 
lot
-of <a 
href="https://github.com/apache/libcloud/pulls?q=is%3Apr+author%3Atonybaloney+is%3Aclosed";>substantial
 contributions</a>. Those contributions range from new Dimension
-Data drivers and various related improvements to a proposal for a new <a 
href="https://github.com/apache/libcloud/pull/629";>backup
-API</a> for Backup as a Service products and projects.</p>
-
-<p>While we are talking about the new backup API - we would like to encourage
-everyone who is either a service provider offering Backup as a Service product
-or a person interested in using this API to join us and <a 
href="https://github.com/apache/libcloud/pull/629";>participate in the
-discussion</a>. The more feedback we get, the better and more widely applicable
-we can make this new API.</p>
-
-<p>For anyone who would like to know more about Anthony here is his short 
bio:</p>
-
-<blockquote>
-<p>Anthony Shaw works for the global system integrator Dimension Data as Head 
of
-Innovation. Anthony has been working in the hosting/service provider industry
-for the last 10 years for MSPs within Europe, North America and Australia in
-various Product Management and Product Development roles. Anthony is an
-open-source advocate and has been promoting the Libcloud project internally to
-Dimension Data for the last 9 months as well as maintaining its driver.</p>
-</blockquote>
-
-<p>And in his own words:</p>
-
-<blockquote>
-<p>I think we will continue to see consolidation in IaaS providers over the 
next
-12 months, so likelihood is the number of drivers will reduce, but the
-importance of being cloud agnostic to people is becoming more apparent as some
-are already being burnt by integrations into APIs that companies like Dell and
-Ninefold have pulled the plug on. Libcloud is a key project for developers not
-wanting to lock themselves too heavily to a vendor. I would also like to see
-expansion of additional services like backup, load balancing and containers so
-that users can still take advantages of these features through our driver.</p>
-</blockquote>
+<p>The Project Management Committee (PMC) for Apache Libcloud has asked Eric
+Johnson to join us as a committer and a PMC member and we are pleased to
+announce that he has accepted.</p>
+
+<p>Eric has been involved in the Libcloud community for a while now. He has 
made
+many substantial contributions to the Google Compute Engine drivers. On top of
+that, he also contributed to other projects which utilize Libcloud.</p>
 
-<p>We are happy to have him in our team and we are looking forward to his 
future
-participation and contributions.</p>
+<p>We are happy to have him on our team and we are looking forward to even 
better
+and more complete Google Compute Engine drivers.</p>
 
   </div>
 
   <div class="row section post-meta">
     <div class="col-md-12 post-tags">
-      <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a 
href="/blog/tags/new%20committer.html" rel="tag">new committer</a>, <a 
href="/blog/tags/new%20PMC%20member.html" rel="tag">new PMC member</a></p>
+      <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a 
href="/blog/tags/new%20committer.html" rel="tag">new committer</a>, <a 
href="/blog/tags/new%20pmc%20member.html" rel="tag">new pmc member</a></p>
+    </div>
+  </div>
+</div>
+
+  
+
+  
+    <div class="post">
+  
+    <h2><a 
href="/blog/2014/02/17/sebastien-goasguen-joins-our-team.html">Sebastien 
Goasguen (sebgoa) joins our team</a></h2>
+  
+
+  
+    
+  
+  <span class="post-date-author">By Tomaz Muraus <span 
style="display:none">(<a 
href="https://plus.google.com/+TomazMuraus?rel=author";>Google+</a>)</span>on 
Feb 17, 2014</span>
+
+  <div class="post-content">
+    <p>The Project Management Committee (PMC) for Apache Libcloud has asked 
Sebastien
+Goasguen (sebgoa) to join us as a committer and a PMC member. We are pleased
+to announce that he has accepted.</p>
+
+<p>Sebastien is no stranger to the Libcloud project. He has been contributing 
and
+actively participating in the Libcloud community for quite a while now.</p>
+
+<p>On top of that, he is also a PMC member at the Apache CloudStack project and
+our local &quot;CloudStack guy&quot;.</p>
+
+<p>We are happy to have him and some direct CloudStack expertise in our 
team.</p>
+
+  </div>
+
+  <div class="row section post-meta">
+    <div class="col-md-12 post-tags">
+      <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a 
href="/blog/tags/new%20committer.html" rel="tag">new committer</a>, <a 
href="/blog/tags/new%20pmc%20member.html" rel="tag">new pmc member</a></p>
     </div>
   </div>
 </div>
@@ -191,7 +194,7 @@ participation and contributions.</p>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/news.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/news.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/news.html (original)
+++ libcloud/site/trunk/generated/blog/tags/news.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -96,395 +96,6 @@
   
     <div class="post">
   
-    <h2><a href="/blog/2017/04/25/libcloud-2-0-0-released.html">Libcloud 2.0.0 
released</a></h2>
-  
-
-  
-    
-  
-  <span class="post-date-author">By Anthony Shaw on Apr 25, 2017</span>
-
-  <div class="post-content">
-    <p>We are pleased to announce the release of Libcloud 2.0.0.</p>
-
-<p>This major release brings many new features, improvements, bug-fixes, and 
drivers.</p>
-
-<h2>Release highlights</h2>
-
-<ul>
-<li>Apache Libcloud 2.0 series replaces the use of Python httplib with a hard 
dependency on the <code>requests</code> package. Users no longer
-have to specific Certificate Authority bundles when using Apache Libcloud</li>
-<li>10% performance improvement through the use of HTTP sessions</li>
-<li>Support for buffered IO streams for storage drivers</li>
-<li>Support for Python 3.6, deprecation of Python 3.2</li>
-<li>3 new drivers - <a 
href="http://libcloud.readthedocs.io/en/latest/compute/drivers/onapp.html";>OnApp
 Compute</a>, <a 
href="http://libcloud.readthedocs.io/en/latest/dns/drivers/onapp.html";>OnApp 
DNS</a>, <a 
href="http://libcloud.readthedocs.io/en/latest/compute/drivers/oneandone.html";>1&amp;1
 Compute</a></li>
-<li>Lots of improvements to our Azure ARM support</li>
-<li>Continuing udates to the Amazon drivers</li>
-</ul>
-
-<p>A detailed description of the 2.0 HTTP API is documented <a 
href="http://libcloud.readthedocs.io/en/latest/other/changes_in_2_0.html";>here</a></p>
-
-<h3>Compute API Changes</h3>
-
-<ul>
-<li>Outscale SAS doc improvements and logo update</li>
-</ul>
-
-<h4>OnApp Changes</h4>
-
-<ul>
-<li>Add list images support for OnApp driver</li>
-<li>Add keypair management to OnApp driver</li>
-</ul>
-
-<h4>Amazon EC2 Changes</h4>
-
-<ul>
-<li>Add r4 instance types for AWS</li>
-<li>Add support for AWS eu-west-2 and ca-central-1 regions</li>
-<li>Add P2 GPU instance types</li>
-<li>Add method to modify snapshot attribute for EC2</li>
-<li>Add ENA support for EC2 compute images</li>
-<li>Add support for forcing detachment of EBS volumes to EC2 driver</li>
-<li>Add support for ModifyVolume and DescribeVolumesModifications</li>
-<li>Added Import Snapshot and Describe Import Snapshot to EC2 compute 
driver</li>
-<li>Add missing regions in AWS storage and compute drivers</li>
-<li>Add SR-IOV net support to images in EC2 compute driver</li>
-<li>Fix - update t2.small image size from 11 CPU to 1</li>
-<li>Added Billing Product for image in EC2 compute driver</li>
-</ul>
-
-<h4>Linode changes</h4>
-
-<ul>
-<li>Add start, stop instance methods and fix incorrect state TERMINATED to 
STOPPED</li>
-</ul>
-
-<h4>Azure ARM changes</h4>
-
-<ul>
-<li>Fix typeerror on ex<em>list</em>nics</li>
-<li>Add support for Azure Cloud Environments as well as Locations</li>
-<li>Fix string representation of the VhdImage type and fix listing of Public 
IP addresses</li>
-<li>Add network security groups to azure ARM</li>
-<li>Add the ability to list resource groups</li>
-<li>Fix Azure ARM driver condition for ex<em>list</em>publishers where 
location is specified</li>
-</ul>
-
-<h4>Google Cloud changes</h4>
-
-<ul>
-<li>Allow delete instances from managed group</li>
-<li>Allow preemptible instances to be created</li>
-<li>Remove validation checks for guestOsFeatures</li>
-</ul>
-
-<h4>Alibaba Aliyun changes</h4>
-
-<ul>
-<li>Add aliyun ecs instance join leave security group</li>
-<li>Fix Aliyun ECS, Load balancer and storage adapters when using unicode 
UTF-8 characters in the names of resources</li>
-</ul>
-
-<h4>DigitalOcean changes</h4>
-
-<ul>
-<li>Add price_monthly extra param to digitalocean sizes</li>
-</ul>
-
-<h4>VMWare vSphere changes</h4>
-
-<ul>
-<li>Fix issue with authentication methods crashing</li>
-</ul>
-
-<h3>Storage</h3>
-
-<ul>
-<li>Reintroduce S3 multipart upload support with signature v4</li>
-</ul>
-
-<h3>DNS</h3>
-
-<ul>
-<li>Add <a 
href="http://libcloud.readthedocs.io/en/latest/dns/drivers/onapp.html";>OnApp 
driver</a></li>
-</ul>
-
-<h2>Minor changes</h2>
-
-<h3>Common</h3>
-
-<ul>
-<li>Added an integration test API and a test suite for validating functionality
-without mocking any libcloud subsystems</li>
-<li>Change Cloudscale to cloudscale.ch.</li>
-</ul>
-
-<h2>Bug Fixes</h2>
-
-<h3>Compute</h3>
-
-<h4>2.0.0</h4>
-
-<ul>
-<li><p>Fix OpenStack drivers not correctly setting URLs when used with 
identity API, would default to 127.0.0.1 and service
-catalog URLs were not adhered to.</p></li>
-<li><p>Fix Aliyun ECS, Load balancer and storage adapters when using unicode 
UTF-8 characters in the names of resources
-in 2.0.0rc2 &lt; it would fail as a MalformedResponseError, Python 2.7 element 
tree was raising a unicode error</p></li>
-<li><p>Refactor the test classes to use the full libcloud.http and 
libcloud.common.base modules, with Connection,
-Response all used with requests<em>mock. This increases our test coverages and 
catches bugs in drivers&#39; custom
-parse</em>body and auth modules</p></li>
-<li><p>Rename libcloud.httplib_ssl to libcloud.http now that we don&#39;t use 
httplib</p></li>
-</ul>
-
-<h4>2.0.0rc2</h4>
-
-<ul>
-<li>Fix Public IP not assigned when creating NIC on Azure ARM</li>
-<li>Fix a bug in profitbricks driver where listing snapshots would request a 
malformed URL</li>
-<li>Fix LIBCLOUD-806 bug where vsphere driver cannot be instantiated</li>
-<li>[google compute] Improve performance of list nodes by caching volume 
information.</li>
-</ul>
-
-<p>Full change log can be found at <a 
href="https://libcloud.readthedocs.org/en/latest/changelog.html";>here</a>.</p>
-
-<h3>Special thank you</h3>
-
-<p>I would like to wish a special thank you to all of our community 
contributors
-for their ongoing support to the project.</p>
-
-<ul>
-<li>Tinu Cleatus for the OnApp driver</li>
-<li>Alex Misstear for the EC2 improvements</li>
-<li>Jie Ren for the Aliyun improvements</li>
-<li>Francisco Ros for the DigitalOcean improvements</li>
-<li>Peter Amstutz and Joseph Hall for the Azure ARM API updates</li>
-<li>All of our community for their ongoing support and contributions...</li>
-</ul>
-
-<h3>Download</h3>
-
-<p>The release can can be downloaded from
-<a 
href="https://libcloud.apache.org/downloads.html";>https://libcloud.apache.org/downloads.html</a>
 or installed using pip:</p>
-
-<pre>
-pip install apache-libcloud==2.0.0
-</pre>
-
-<h3>Upgrading</h3>
-
-<p>If you have installed Libcloud using pip you can also use it to upgrade 
it:</p>
-
-<pre>
-pip install --upgrade apache-libcloud==2.0.0
-</pre>
-
-<h3>Upgrade notes</h3>
-
-<p>A page which describes backward incompatible or semi-incompatible
-changes and how to preserve the old behavior when this is possible
-can be found at <a 
href="https://libcloud.readthedocs.org/en/latest/upgrade_notes.html";>https://libcloud.readthedocs.org/en/latest/upgrade_notes.html</a></p>
-
-<h3>Documentation</h3>
-
-<p>Regular and API documentation is available at <a 
href="https://libcloud.readthedocs.org/en/latest/";>https://libcloud.readthedocs.org/en/latest/</a></p>
-
-<h3>Bugs / Issues</h3>
-
-<p>If you find any bug or issue, please report it on our issue tracker
-<a 
href="https://issues.apache.org/jira/browse/LIBCLOUD";>https://issues.apache.org/jira/browse/LIBCLOUD</a>.
-Don&#39;t forget to attach an example and / or test which reproduces your
-problem.</p>
-
-<h3>Thanks</h3>
-
-<p>Thanks to everyone who contributed and made this release possible! Full
-list of people who contributed to this release can be found in the
-<a href="https://libcloud.readthedocs.org/en/latest/changelog.html";>CHANGES 
file</a>.</p>
-
-  </div>
-
-  <div class="row section post-meta">
-    <div class="col-md-12 post-tags">
-      <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a 
href="/blog/tags/release%20announcement.html" rel="tag">release 
announcement</a></p>
-    </div>
-  </div>
-</div>
-
-  
-
-  
-    <div class="post">
-  
-    <h2><a href="/blog/2017/04/09/async-rfc.html">Have your say - async 
support in Apache Libcloud</a></h2>
-  
-
-  
-    
-  
-  <span class="post-date-author">By Anthony Shaw on Apr 09, 2017</span>
-
-  <div class="post-content">
-    <p>One of the big requests whilst we were replacing <code>httplib</code> 
with the <code>requests</code> package in 2.0 was why didn&#39;t
-we use a HTTP library that supports <em>asynchronous</em> API calls.</p>
-
-<p>The intention for 2.0 and replacing the HTTP backend classes was to improve 
the usability of the project, by making SSL
-certificates easier to manage, improving the maintainability of our source 
code by using an active 3rd party package and
-also improving performance and stability.</p>
-
-<p>Apache Libcloud already has documentation on threaded libraries like gevent 
and callback-based libraries like Twisted, see
-<a 
href="https://libcloud.readthedocs.io/en/latest/other/using-libcloud-in-multithreaded-and-async-environments.html";>using
 libcloud in multithreaded environments</a>
-for examples.</p>
-
-<p><a href="https://www.python.org/dev/peps/pep-0492/#";>PEP 492</a>, 
implemented in Python 3.5 provides a new coroutine protocol using methods,
-<code>__await__</code> for classes, a coroutine method wrapper, or a method 
that returns a coroutine object.
-Also async <a 
href="https://www.python.org/dev/peps/pep-0492/#asynchronous-iterators-and-async-for";>iterators</a>
 and <a 
href="https://www.python.org/dev/peps/pep-0492/#asynchronous-context-managers-and-async-with";>context
 managers</a>
-have been introduced.</p>
-
-<p>We would like to take advantage of the new language features by offering 
APIs in Apache Libcloud without breaking backward compatibility and
-compatibility for users of &lt;Python 3.5.</p>
-
-<p>Use cases for this would be:</p>
-
-<ul>
-<li>Being able to fetch <code>Node</code> or <code>StorageObject</code>s from 
multiple geographies or drivers simultaneously.</li>
-<li>Being able to quickly upload or download storage objects by parallelizing 
operations on the <code>StorageDriver</code>.</li>
-<li>Being able to call a long-running API method (e.g. generate report), 
whilst running other code.</li>
-</ul>
-
-<h2>Design 1 - async context managers <a 
href="https://github.com/apache/libcloud/pull/1016";>PR 1016</a></h2>
-
-<p>This design would allow drivers to operate in 2 modes, the first is for 
synchronous method calls, they return list or object
-data as per usual. The second mode, API methods like 
<code>NodeDriver.list_nodes</code> would return a <a 
href="https://www.python.org/dev/peps/pep-0492/#coroutine-objects";>coroutine 
object</a>
-and could be awaited or gathered using an event loop.</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python"><span class="kn">import</span> <span 
class="nn">asyncio</span>
-
-<span class="kn">from</span> <span class="nn">integration.driver.test</span> 
<span class="kn">import</span> <span class="n">TestNodeDriver</span>
-<span class="kn">from</span> <span class="nn">libcloud.async_util</span> <span 
class="kn">import</span> <span class="n">AsyncSession</span>
-
-<span class="n">driver</span> <span class="o">=</span> <span 
class="n">TestNodeDriver</span><span class="p">(</span><span 
class="s">&#39;apache&#39;</span><span class="p">,</span> <span 
class="s">&#39;libcloud&#39;</span><span class="p">)</span>
-
-<span class="n">async</span> <span class="k">def</span> <span 
class="nf">run</span><span class="p">():</span>
-    <span class="c"># regular API call</span>
-    <span class="n">nodes</span> <span class="o">=</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">list_nodes</span><span class="p">()</span>
-
-    <span class="n">async</span> <span class="k">with</span> <span 
class="n">AsyncSession</span><span class="p">(</span><span 
class="n">driver</span><span class="p">)</span> <span class="k">as</span> <span 
class="n">async_instance</span><span class="p">:</span>
-        <span class="n">nodes</span> <span class="o">=</span> <span 
class="n">await</span> <span class="n">async_instance</span><span 
class="o">.</span><span class="n">list_nodes</span><span class="p">()</span>
-
-    <span class="k">assert</span> <span class="nb">len</span><span 
class="p">(</span><span class="n">nodes</span><span class="p">)</span> <span 
class="o">==</span> <span class="mi">2</span>
-
-<span class="n">loop</span> <span class="o">=</span> <span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">get_event_loop</span><span class="p">()</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">run_until_complete</span><span class="p">(</span><span 
class="n">run</span><span class="p">())</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">close</span><span class="p">()</span>
-</code></pre></div>
-
-<h2>Design 2 - Additional methods in each driver for coroutines <a 
href="https://github.com/apache/libcloud/pull/1027";>PR 1027</a></h2>
-
-<p>This is the second design concept for async support in Libcloud.</p>
-
-<p>The concept here is to have Asynchronous Mixins, 
<code>LibcloudConnection</code> uses requests and 
<code>LibcloudAsyncConnection</code> uses aiohttp for async transport <a 
href="https://github.com/tonybaloney/libcloud/blob/d4fe097476d2f02941e17d5e1b1d405fcf44c0f7/libcloud/connection_async.py#L22-L42";>see</a></p>
-
-<p>The LibcloudAsyncConnection is an implementation detail of AsyncConnection, 
which is the API for the drivers to consume <a 
href="https://github.com/tonybaloney/libcloud/blob/d4fe097476d2f02941e17d5e1b1d405fcf44c0f7/libcloud/common/base.py#L742-L778";>see</a></p>
-
-<p>The drivers then use this mixin for their custom connection classes, 
e.g.</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python"><span class="k">class</span> <span 
class="nc">GoogleStorageConnection</span><span class="p">(</span><span 
class="n">ConnectionUserAndKey</span><span class="p">,</span> <span 
class="n">AsyncConnection</span><span class="p">):</span>
-    <span class="o">...</span>
-</code></pre></div>
-
-<p>They then inherit from 
<code>libcloud.storage.base.StorageAsyncDriver</code>, which uses a new set of 
base methods, e.g. <code>iterate_containers_async</code> and can be implemented 
like this:</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python">        <span class="n">async</span> <span 
class="k">def</span> <span class="nf">iterate_containers_async</span><span 
class="p">(</span><span class="bp">self</span><span class="p">):</span>
-            <span class="n">response</span> <span class="o">=</span> <span 
class="n">await</span> <span class="bp">self</span><span 
class="o">.</span><span class="n">connection</span><span 
class="o">.</span><span class="n">request_async</span><span 
class="p">(</span><span class="s">&#39;/&#39;</span><span class="p">)</span>
-            <span class="k">if</span> <span class="n">response</span><span 
class="o">.</span><span class="n">status</span> <span class="o">==</span> <span 
class="n">httplib</span><span class="o">.</span><span class="n">OK</span><span 
class="p">:</span>
-                <span class="n">containers</span> <span class="o">=</span> 
<span class="bp">self</span><span class="o">.</span><span 
class="n">_to_containers</span><span class="p">(</span><span 
class="n">obj</span><span class="o">=</span><span 
class="n">response</span><span class="o">.</span><span 
class="n">object</span><span class="p">,</span>
-                                                 <span 
class="n">xpath</span><span class="o">=</span><span 
class="s">&#39;Buckets/Bucket&#39;</span><span class="p">)</span>
-                <span class="k">return</span> <span class="n">containers</span>
-
-            <span class="k">raise</span> <span 
class="n">LibcloudError</span><span class="p">(</span><span 
class="s">&#39;Unexpected status code: </span><span class="si">%s</span><span 
class="s">&#39;</span> <span class="o">%</span> <span class="p">(</span><span 
class="n">response</span><span class="o">.</span><span 
class="n">status</span><span class="p">),</span>
-                                <span class="n">driver</span><span 
class="o">=</span><span class="bp">self</span><span class="p">)</span>
-</code></pre></div>
-
-<p>Now the consumer can more or less do this:</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python"><span class="kn">from</span> <span 
class="nn">libcloud.storage.providers</span> <span class="kn">import</span> 
<span class="n">get_driver</span>
-<span class="kn">from</span> <span class="nn">libcloud.storage.types</span> 
<span class="kn">import</span> <span class="n">Provider</span>
-
-<span class="kn">import</span> <span class="nn">asyncio</span>
-
-<span class="n">GoogleStorageDriver</span> <span class="o">=</span> <span 
class="n">get_driver</span><span class="p">(</span><span 
class="n">Provider</span><span class="o">.</span><span 
class="n">GOOGLE_STORAGE</span><span class="p">)</span>
-<span class="n">driver</span> <span class="o">=</span> <span 
class="n">GoogleStorageDriver</span><span class="p">(</span><span 
class="n">key</span><span class="o">=</span><span class="n">KEY</span><span 
class="p">,</span> <span class="n">secret</span><span class="o">=</span><span 
class="n">SECRET</span><span class="p">)</span>
-
-<span class="k">def</span> <span class="nf">do_stuff_with_object</span><span 
class="p">(</span><span class="n">obj</span><span class="p">):</span>
-    <span class="k">print</span><span class="p">(</span><span 
class="n">obj</span><span class="p">)</span>
-
-<span class="n">async</span> <span class="k">def</span> <span 
class="nf">run</span><span class="p">():</span>
-    <span class="n">tasks</span> <span class="o">=</span> <span 
class="p">[]</span>
-    <span class="n">async</span> <span class="k">for</span> <span 
class="n">container</span> <span class="ow">in</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">iterate_containers_async</span><span class="p">():</span>
-        <span class="n">async</span> <span class="k">for</span> <span 
class="n">obj</span> <span class="ow">in</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">iterate_container_objects_async</span><span class="p">(</span><span 
class="n">container</span><span class="p">):</span>
-            <span class="n">tasks</span><span class="o">.</span><span 
class="n">append</span><span class="p">(</span><span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">ensure_future</span><span class="p">(</span><span 
class="n">do_stuff_with_object</span><span class="p">(</span><span 
class="n">obj</span><span class="p">)))</span>
-    <span class="n">await</span> <span class="n">asyncio</span><span 
class="o">.</span><span class="n">gather</span><span class="p">(</span><span 
class="o">*</span><span class="n">tasks</span><span class="p">)</span>
-
-<span class="n">loop</span> <span class="o">=</span> <span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">get_event_loop</span><span class="p">()</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">run_until_complete</span><span class="p">(</span><span 
class="n">run</span><span class="p">())</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">close</span><span class="p">()</span>
-</code></pre></div>
-
-<h2>Design 3 - Initializer with &quot;<em>async</em>&quot; mode</h2>
-
-<p>This option is similar to 2, except that if a driver is instantiated with 
&quot;<code>async=True</code>&quot;,
-then all driver class methods would return coroutine objects. Internally, it 
would
-patch the Connection class with the AsyncConnection class.</p>
-
-<p>The downside of this is that all method calls to a driver would need to be 
awaited or used
-by an event loop.</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python"><span class="kn">from</span> <span 
class="nn">libcloud.storage.providers</span> <span class="kn">import</span> 
<span class="n">get_driver</span>
-<span class="kn">from</span> <span class="nn">libcloud.storage.types</span> 
<span class="kn">import</span> <span class="n">Provider</span>
-
-<span class="kn">import</span> <span class="nn">asyncio</span>
-
-<span class="n">GoogleStorageDriver</span> <span class="o">=</span> <span 
class="n">get_driver</span><span class="p">(</span><span 
class="n">Provider</span><span class="o">.</span><span 
class="n">GOOGLE_STORAGE</span><span class="p">)</span>
-<span class="n">driver</span> <span class="o">=</span> <span 
class="n">GoogleStorageDriver</span><span class="p">(</span><span 
class="n">key</span><span class="o">=</span><span class="n">KEY</span><span 
class="p">,</span> <span class="n">secret</span><span class="o">=</span><span 
class="n">SECRET</span><span class="p">,</span> <span 
class="n">async</span><span class="o">=</span><span class="bp">True</span><span 
class="p">)</span>
-
-<span class="k">def</span> <span class="nf">do_stuff_with_object</span><span 
class="p">(</span><span class="n">obj</span><span class="p">):</span>
-    <span class="k">print</span><span class="p">(</span><span 
class="n">obj</span><span class="p">)</span>
-
-<span class="n">async</span> <span class="k">def</span> <span 
class="nf">run</span><span class="p">():</span>
-    <span class="n">tasks</span> <span class="o">=</span> <span 
class="p">[]</span>
-    <span class="n">async</span> <span class="k">for</span> <span 
class="n">container</span> <span class="ow">in</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">iterate_containers</span><span class="p">():</span>
-        <span class="n">async</span> <span class="k">for</span> <span 
class="n">obj</span> <span class="ow">in</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">iterate_container_objects</span><span class="p">(</span><span 
class="n">container</span><span class="p">):</span>
-            <span class="n">tasks</span><span class="o">.</span><span 
class="n">append</span><span class="p">(</span><span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">ensure_future</span><span class="p">(</span><span 
class="n">do_stuff_with_object</span><span class="p">(</span><span 
class="n">obj</span><span class="p">)))</span>
-    <span class="n">await</span> <span class="n">asyncio</span><span 
class="o">.</span><span class="n">gather</span><span class="p">(</span><span 
class="o">*</span><span class="n">tasks</span><span class="p">)</span>
-
-<span class="n">loop</span> <span class="o">=</span> <span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">get_event_loop</span><span class="p">()</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">run_until_complete</span><span class="p">(</span><span 
class="n">run</span><span class="p">())</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">close</span><span class="p">()</span>
-</code></pre></div>
-
-<h1>Give us feedback</h1>
-
-<p>Got a better idea? Have an API or design, the question we&#39;re asking is 
-&quot;if you wanted to use Libcloud for an async application, what would the 
code look like?&quot; This helps us design
-the API and the implementation details can follow.</p>
-
-<p>Feel free to comment on the mailing list or on the pull requests, or raise 
your own pull-request with an API design.</p>
-
-  </div>
-
-  <div class="row section post-meta">
-    <div class="col-md-12 post-tags">
-      <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a 
href="/blog/tags/tutorial.html" rel="tag">tutorial</a></p>
-    </div>
-  </div>
-</div>
-
-  
-
-  
-    <div class="post">
-  
     <h2><a href="/blog/2017/04/07/libcloud-2-0-0-rc2-released.html">Libcloud 
2.0.0rc2 released</a></h2>
   
 
@@ -6461,7 +6072,7 @@ Cloud and SoftLayer.</li>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/pmc.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/pmc.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/pmc.html (original)
+++ libcloud/site/trunk/generated/blog/tags/pmc.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -155,7 +155,7 @@ help me welcome him to the team :)</p>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/podcasts.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/podcasts.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/podcasts.html (original)
+++ libcloud/site/trunk/generated/blog/tags/podcasts.html Sun Jun  4 14:37:45 
2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -152,7 +152,7 @@ about Apache Libcloud.</p>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/presentations.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/presentations.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/presentations.html (original)
+++ libcloud/site/trunk/generated/blog/tags/presentations.html Sun Jun  4 
14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -177,7 +177,7 @@ strecthing for over 3 weeks, I sadly had
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/providers.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/providers.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/providers.html (original)
+++ libcloud/site/trunk/generated/blog/tags/providers.html Sun Jun  4 14:37:45 
2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -323,7 +323,7 @@ to fix and enhance the Compute Engine dr
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/pycon.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/pycon.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/pycon.html (original)
+++ libcloud/site/trunk/generated/blog/tags/pycon.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -149,7 +149,7 @@ please refer to the <a href="http://mail
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/release announcement.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/release%20announcement.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/release announcement.html (original)
+++ libcloud/site/trunk/generated/blog/tags/release announcement.html Sun Jun  
4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -96,226 +96,6 @@
   
     <div class="post">
   
-    <h2><a href="/blog/2017/04/25/libcloud-2-0-0-released.html">Libcloud 2.0.0 
released</a></h2>
-  
-
-  
-    
-  
-  <span class="post-date-author">By Anthony Shaw on Apr 25, 2017</span>
-
-  <div class="post-content">
-    <p>We are pleased to announce the release of Libcloud 2.0.0.</p>
-
-<p>This major release brings many new features, improvements, bug-fixes, and 
drivers.</p>
-
-<h2>Release highlights</h2>
-
-<ul>
-<li>Apache Libcloud 2.0 series replaces the use of Python httplib with a hard 
dependency on the <code>requests</code> package. Users no longer
-have to specific Certificate Authority bundles when using Apache Libcloud</li>
-<li>10% performance improvement through the use of HTTP sessions</li>
-<li>Support for buffered IO streams for storage drivers</li>
-<li>Support for Python 3.6, deprecation of Python 3.2</li>
-<li>3 new drivers - <a 
href="http://libcloud.readthedocs.io/en/latest/compute/drivers/onapp.html";>OnApp
 Compute</a>, <a 
href="http://libcloud.readthedocs.io/en/latest/dns/drivers/onapp.html";>OnApp 
DNS</a>, <a 
href="http://libcloud.readthedocs.io/en/latest/compute/drivers/oneandone.html";>1&amp;1
 Compute</a></li>
-<li>Lots of improvements to our Azure ARM support</li>
-<li>Continuing udates to the Amazon drivers</li>
-</ul>
-
-<p>A detailed description of the 2.0 HTTP API is documented <a 
href="http://libcloud.readthedocs.io/en/latest/other/changes_in_2_0.html";>here</a></p>
-
-<h3>Compute API Changes</h3>
-
-<ul>
-<li>Outscale SAS doc improvements and logo update</li>
-</ul>
-
-<h4>OnApp Changes</h4>
-
-<ul>
-<li>Add list images support for OnApp driver</li>
-<li>Add keypair management to OnApp driver</li>
-</ul>
-
-<h4>Amazon EC2 Changes</h4>
-
-<ul>
-<li>Add r4 instance types for AWS</li>
-<li>Add support for AWS eu-west-2 and ca-central-1 regions</li>
-<li>Add P2 GPU instance types</li>
-<li>Add method to modify snapshot attribute for EC2</li>
-<li>Add ENA support for EC2 compute images</li>
-<li>Add support for forcing detachment of EBS volumes to EC2 driver</li>
-<li>Add support for ModifyVolume and DescribeVolumesModifications</li>
-<li>Added Import Snapshot and Describe Import Snapshot to EC2 compute 
driver</li>
-<li>Add missing regions in AWS storage and compute drivers</li>
-<li>Add SR-IOV net support to images in EC2 compute driver</li>
-<li>Fix - update t2.small image size from 11 CPU to 1</li>
-<li>Added Billing Product for image in EC2 compute driver</li>
-</ul>
-
-<h4>Linode changes</h4>
-
-<ul>
-<li>Add start, stop instance methods and fix incorrect state TERMINATED to 
STOPPED</li>
-</ul>
-
-<h4>Azure ARM changes</h4>
-
-<ul>
-<li>Fix typeerror on ex<em>list</em>nics</li>
-<li>Add support for Azure Cloud Environments as well as Locations</li>
-<li>Fix string representation of the VhdImage type and fix listing of Public 
IP addresses</li>
-<li>Add network security groups to azure ARM</li>
-<li>Add the ability to list resource groups</li>
-<li>Fix Azure ARM driver condition for ex<em>list</em>publishers where 
location is specified</li>
-</ul>
-
-<h4>Google Cloud changes</h4>
-
-<ul>
-<li>Allow delete instances from managed group</li>
-<li>Allow preemptible instances to be created</li>
-<li>Remove validation checks for guestOsFeatures</li>
-</ul>
-
-<h4>Alibaba Aliyun changes</h4>
-
-<ul>
-<li>Add aliyun ecs instance join leave security group</li>
-<li>Fix Aliyun ECS, Load balancer and storage adapters when using unicode 
UTF-8 characters in the names of resources</li>
-</ul>
-
-<h4>DigitalOcean changes</h4>
-
-<ul>
-<li>Add price_monthly extra param to digitalocean sizes</li>
-</ul>
-
-<h4>VMWare vSphere changes</h4>
-
-<ul>
-<li>Fix issue with authentication methods crashing</li>
-</ul>
-
-<h3>Storage</h3>
-
-<ul>
-<li>Reintroduce S3 multipart upload support with signature v4</li>
-</ul>
-
-<h3>DNS</h3>
-
-<ul>
-<li>Add <a 
href="http://libcloud.readthedocs.io/en/latest/dns/drivers/onapp.html";>OnApp 
driver</a></li>
-</ul>
-
-<h2>Minor changes</h2>
-
-<h3>Common</h3>
-
-<ul>
-<li>Added an integration test API and a test suite for validating functionality
-without mocking any libcloud subsystems</li>
-<li>Change Cloudscale to cloudscale.ch.</li>
-</ul>
-
-<h2>Bug Fixes</h2>
-
-<h3>Compute</h3>
-
-<h4>2.0.0</h4>
-
-<ul>
-<li><p>Fix OpenStack drivers not correctly setting URLs when used with 
identity API, would default to 127.0.0.1 and service
-catalog URLs were not adhered to.</p></li>
-<li><p>Fix Aliyun ECS, Load balancer and storage adapters when using unicode 
UTF-8 characters in the names of resources
-in 2.0.0rc2 &lt; it would fail as a MalformedResponseError, Python 2.7 element 
tree was raising a unicode error</p></li>
-<li><p>Refactor the test classes to use the full libcloud.http and 
libcloud.common.base modules, with Connection,
-Response all used with requests<em>mock. This increases our test coverages and 
catches bugs in drivers&#39; custom
-parse</em>body and auth modules</p></li>
-<li><p>Rename libcloud.httplib_ssl to libcloud.http now that we don&#39;t use 
httplib</p></li>
-</ul>
-
-<h4>2.0.0rc2</h4>
-
-<ul>
-<li>Fix Public IP not assigned when creating NIC on Azure ARM</li>
-<li>Fix a bug in profitbricks driver where listing snapshots would request a 
malformed URL</li>
-<li>Fix LIBCLOUD-806 bug where vsphere driver cannot be instantiated</li>
-<li>[google compute] Improve performance of list nodes by caching volume 
information.</li>
-</ul>
-
-<p>Full change log can be found at <a 
href="https://libcloud.readthedocs.org/en/latest/changelog.html";>here</a>.</p>
-
-<h3>Special thank you</h3>
-
-<p>I would like to wish a special thank you to all of our community 
contributors
-for their ongoing support to the project.</p>
-
-<ul>
-<li>Tinu Cleatus for the OnApp driver</li>
-<li>Alex Misstear for the EC2 improvements</li>
-<li>Jie Ren for the Aliyun improvements</li>
-<li>Francisco Ros for the DigitalOcean improvements</li>
-<li>Peter Amstutz and Joseph Hall for the Azure ARM API updates</li>
-<li>All of our community for their ongoing support and contributions...</li>
-</ul>
-
-<h3>Download</h3>
-
-<p>The release can can be downloaded from
-<a 
href="https://libcloud.apache.org/downloads.html";>https://libcloud.apache.org/downloads.html</a>
 or installed using pip:</p>
-
-<pre>
-pip install apache-libcloud==2.0.0
-</pre>
-
-<h3>Upgrading</h3>
-
-<p>If you have installed Libcloud using pip you can also use it to upgrade 
it:</p>
-
-<pre>
-pip install --upgrade apache-libcloud==2.0.0
-</pre>
-
-<h3>Upgrade notes</h3>
-
-<p>A page which describes backward incompatible or semi-incompatible
-changes and how to preserve the old behavior when this is possible
-can be found at <a 
href="https://libcloud.readthedocs.org/en/latest/upgrade_notes.html";>https://libcloud.readthedocs.org/en/latest/upgrade_notes.html</a></p>
-
-<h3>Documentation</h3>
-
-<p>Regular and API documentation is available at <a 
href="https://libcloud.readthedocs.org/en/latest/";>https://libcloud.readthedocs.org/en/latest/</a></p>
-
-<h3>Bugs / Issues</h3>
-
-<p>If you find any bug or issue, please report it on our issue tracker
-<a 
href="https://issues.apache.org/jira/browse/LIBCLOUD";>https://issues.apache.org/jira/browse/LIBCLOUD</a>.
-Don&#39;t forget to attach an example and / or test which reproduces your
-problem.</p>
-
-<h3>Thanks</h3>
-
-<p>Thanks to everyone who contributed and made this release possible! Full
-list of people who contributed to this release can be found in the
-<a href="https://libcloud.readthedocs.org/en/latest/changelog.html";>CHANGES 
file</a>.</p>
-
-  </div>
-
-  <div class="row section post-meta">
-    <div class="col-md-12 post-tags">
-      <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a 
href="/blog/tags/release%20announcement.html" rel="tag">release 
announcement</a></p>
-    </div>
-  </div>
-</div>
-
-  
-
-  
-    <div class="post">
-  
     <h2><a href="/blog/2017/04/07/libcloud-2-0-0-rc2-released.html">Libcloud 
2.0.0rc2 released</a></h2>
   
 
@@ -4508,7 +4288,7 @@ Cloud and SoftLayer.</li>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/security release.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/security%20release.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/security release.html (original)
+++ libcloud/site/trunk/generated/blog/tags/security release.html Sun Jun  4 
14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -374,7 +374,7 @@ http://wiki.apache.org/incubator/Libclou
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/sprints.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/sprints.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/sprints.html (original)
+++ libcloud/site/trunk/generated/blog/tags/sprints.html Sun Jun  4 14:37:45 
2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -175,7 +175,7 @@ please refer to the <a href="http://mail
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/svn.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/svn.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/svn.html (original)
+++ libcloud/site/trunk/generated/blog/tags/svn.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -187,7 +187,7 @@ to manually edit markdown files again wh
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/tutorial.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/tutorial.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/tutorial.html (original)
+++ libcloud/site/trunk/generated/blog/tags/tutorial.html Sun Jun  4 14:37:45 
2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -96,175 +96,6 @@
   
     <div class="post">
   
-    <h2><a href="/blog/2017/04/09/async-rfc.html">Have your say - async 
support in Apache Libcloud</a></h2>
-  
-
-  
-    
-  
-  <span class="post-date-author">By Anthony Shaw on Apr 09, 2017</span>
-
-  <div class="post-content">
-    <p>One of the big requests whilst we were replacing <code>httplib</code> 
with the <code>requests</code> package in 2.0 was why didn&#39;t
-we use a HTTP library that supports <em>asynchronous</em> API calls.</p>
-
-<p>The intention for 2.0 and replacing the HTTP backend classes was to improve 
the usability of the project, by making SSL
-certificates easier to manage, improving the maintainability of our source 
code by using an active 3rd party package and
-also improving performance and stability.</p>
-
-<p>Apache Libcloud already has documentation on threaded libraries like gevent 
and callback-based libraries like Twisted, see
-<a 
href="https://libcloud.readthedocs.io/en/latest/other/using-libcloud-in-multithreaded-and-async-environments.html";>using
 libcloud in multithreaded environments</a>
-for examples.</p>
-
-<p><a href="https://www.python.org/dev/peps/pep-0492/#";>PEP 492</a>, 
implemented in Python 3.5 provides a new coroutine protocol using methods,
-<code>__await__</code> for classes, a coroutine method wrapper, or a method 
that returns a coroutine object.
-Also async <a 
href="https://www.python.org/dev/peps/pep-0492/#asynchronous-iterators-and-async-for";>iterators</a>
 and <a 
href="https://www.python.org/dev/peps/pep-0492/#asynchronous-context-managers-and-async-with";>context
 managers</a>
-have been introduced.</p>
-
-<p>We would like to take advantage of the new language features by offering 
APIs in Apache Libcloud without breaking backward compatibility and
-compatibility for users of &lt;Python 3.5.</p>
-
-<p>Use cases for this would be:</p>
-
-<ul>
-<li>Being able to fetch <code>Node</code> or <code>StorageObject</code>s from 
multiple geographies or drivers simultaneously.</li>
-<li>Being able to quickly upload or download storage objects by parallelizing 
operations on the <code>StorageDriver</code>.</li>
-<li>Being able to call a long-running API method (e.g. generate report), 
whilst running other code.</li>
-</ul>
-
-<h2>Design 1 - async context managers <a 
href="https://github.com/apache/libcloud/pull/1016";>PR 1016</a></h2>
-
-<p>This design would allow drivers to operate in 2 modes, the first is for 
synchronous method calls, they return list or object
-data as per usual. The second mode, API methods like 
<code>NodeDriver.list_nodes</code> would return a <a 
href="https://www.python.org/dev/peps/pep-0492/#coroutine-objects";>coroutine 
object</a>
-and could be awaited or gathered using an event loop.</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python"><span class="kn">import</span> <span 
class="nn">asyncio</span>
-
-<span class="kn">from</span> <span class="nn">integration.driver.test</span> 
<span class="kn">import</span> <span class="n">TestNodeDriver</span>
-<span class="kn">from</span> <span class="nn">libcloud.async_util</span> <span 
class="kn">import</span> <span class="n">AsyncSession</span>
-
-<span class="n">driver</span> <span class="o">=</span> <span 
class="n">TestNodeDriver</span><span class="p">(</span><span 
class="s">&#39;apache&#39;</span><span class="p">,</span> <span 
class="s">&#39;libcloud&#39;</span><span class="p">)</span>
-
-<span class="n">async</span> <span class="k">def</span> <span 
class="nf">run</span><span class="p">():</span>
-    <span class="c"># regular API call</span>
-    <span class="n">nodes</span> <span class="o">=</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">list_nodes</span><span class="p">()</span>
-
-    <span class="n">async</span> <span class="k">with</span> <span 
class="n">AsyncSession</span><span class="p">(</span><span 
class="n">driver</span><span class="p">)</span> <span class="k">as</span> <span 
class="n">async_instance</span><span class="p">:</span>
-        <span class="n">nodes</span> <span class="o">=</span> <span 
class="n">await</span> <span class="n">async_instance</span><span 
class="o">.</span><span class="n">list_nodes</span><span class="p">()</span>
-
-    <span class="k">assert</span> <span class="nb">len</span><span 
class="p">(</span><span class="n">nodes</span><span class="p">)</span> <span 
class="o">==</span> <span class="mi">2</span>
-
-<span class="n">loop</span> <span class="o">=</span> <span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">get_event_loop</span><span class="p">()</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">run_until_complete</span><span class="p">(</span><span 
class="n">run</span><span class="p">())</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">close</span><span class="p">()</span>
-</code></pre></div>
-
-<h2>Design 2 - Additional methods in each driver for coroutines <a 
href="https://github.com/apache/libcloud/pull/1027";>PR 1027</a></h2>
-
-<p>This is the second design concept for async support in Libcloud.</p>
-
-<p>The concept here is to have Asynchronous Mixins, 
<code>LibcloudConnection</code> uses requests and 
<code>LibcloudAsyncConnection</code> uses aiohttp for async transport <a 
href="https://github.com/tonybaloney/libcloud/blob/d4fe097476d2f02941e17d5e1b1d405fcf44c0f7/libcloud/connection_async.py#L22-L42";>see</a></p>
-
-<p>The LibcloudAsyncConnection is an implementation detail of AsyncConnection, 
which is the API for the drivers to consume <a 
href="https://github.com/tonybaloney/libcloud/blob/d4fe097476d2f02941e17d5e1b1d405fcf44c0f7/libcloud/common/base.py#L742-L778";>see</a></p>
-
-<p>The drivers then use this mixin for their custom connection classes, 
e.g.</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python"><span class="k">class</span> <span 
class="nc">GoogleStorageConnection</span><span class="p">(</span><span 
class="n">ConnectionUserAndKey</span><span class="p">,</span> <span 
class="n">AsyncConnection</span><span class="p">):</span>
-    <span class="o">...</span>
-</code></pre></div>
-
-<p>They then inherit from 
<code>libcloud.storage.base.StorageAsyncDriver</code>, which uses a new set of 
base methods, e.g. <code>iterate_containers_async</code> and can be implemented 
like this:</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python">        <span class="n">async</span> <span 
class="k">def</span> <span class="nf">iterate_containers_async</span><span 
class="p">(</span><span class="bp">self</span><span class="p">):</span>
-            <span class="n">response</span> <span class="o">=</span> <span 
class="n">await</span> <span class="bp">self</span><span 
class="o">.</span><span class="n">connection</span><span 
class="o">.</span><span class="n">request_async</span><span 
class="p">(</span><span class="s">&#39;/&#39;</span><span class="p">)</span>
-            <span class="k">if</span> <span class="n">response</span><span 
class="o">.</span><span class="n">status</span> <span class="o">==</span> <span 
class="n">httplib</span><span class="o">.</span><span class="n">OK</span><span 
class="p">:</span>
-                <span class="n">containers</span> <span class="o">=</span> 
<span class="bp">self</span><span class="o">.</span><span 
class="n">_to_containers</span><span class="p">(</span><span 
class="n">obj</span><span class="o">=</span><span 
class="n">response</span><span class="o">.</span><span 
class="n">object</span><span class="p">,</span>
-                                                 <span 
class="n">xpath</span><span class="o">=</span><span 
class="s">&#39;Buckets/Bucket&#39;</span><span class="p">)</span>
-                <span class="k">return</span> <span class="n">containers</span>
-
-            <span class="k">raise</span> <span 
class="n">LibcloudError</span><span class="p">(</span><span 
class="s">&#39;Unexpected status code: </span><span class="si">%s</span><span 
class="s">&#39;</span> <span class="o">%</span> <span class="p">(</span><span 
class="n">response</span><span class="o">.</span><span 
class="n">status</span><span class="p">),</span>
-                                <span class="n">driver</span><span 
class="o">=</span><span class="bp">self</span><span class="p">)</span>
-</code></pre></div>
-
-<p>Now the consumer can more or less do this:</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python"><span class="kn">from</span> <span 
class="nn">libcloud.storage.providers</span> <span class="kn">import</span> 
<span class="n">get_driver</span>
-<span class="kn">from</span> <span class="nn">libcloud.storage.types</span> 
<span class="kn">import</span> <span class="n">Provider</span>
-
-<span class="kn">import</span> <span class="nn">asyncio</span>
-
-<span class="n">GoogleStorageDriver</span> <span class="o">=</span> <span 
class="n">get_driver</span><span class="p">(</span><span 
class="n">Provider</span><span class="o">.</span><span 
class="n">GOOGLE_STORAGE</span><span class="p">)</span>
-<span class="n">driver</span> <span class="o">=</span> <span 
class="n">GoogleStorageDriver</span><span class="p">(</span><span 
class="n">key</span><span class="o">=</span><span class="n">KEY</span><span 
class="p">,</span> <span class="n">secret</span><span class="o">=</span><span 
class="n">SECRET</span><span class="p">)</span>
-
-<span class="k">def</span> <span class="nf">do_stuff_with_object</span><span 
class="p">(</span><span class="n">obj</span><span class="p">):</span>
-    <span class="k">print</span><span class="p">(</span><span 
class="n">obj</span><span class="p">)</span>
-
-<span class="n">async</span> <span class="k">def</span> <span 
class="nf">run</span><span class="p">():</span>
-    <span class="n">tasks</span> <span class="o">=</span> <span 
class="p">[]</span>
-    <span class="n">async</span> <span class="k">for</span> <span 
class="n">container</span> <span class="ow">in</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">iterate_containers_async</span><span class="p">():</span>
-        <span class="n">async</span> <span class="k">for</span> <span 
class="n">obj</span> <span class="ow">in</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">iterate_container_objects_async</span><span class="p">(</span><span 
class="n">container</span><span class="p">):</span>
-            <span class="n">tasks</span><span class="o">.</span><span 
class="n">append</span><span class="p">(</span><span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">ensure_future</span><span class="p">(</span><span 
class="n">do_stuff_with_object</span><span class="p">(</span><span 
class="n">obj</span><span class="p">)))</span>
-    <span class="n">await</span> <span class="n">asyncio</span><span 
class="o">.</span><span class="n">gather</span><span class="p">(</span><span 
class="o">*</span><span class="n">tasks</span><span class="p">)</span>
-
-<span class="n">loop</span> <span class="o">=</span> <span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">get_event_loop</span><span class="p">()</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">run_until_complete</span><span class="p">(</span><span 
class="n">run</span><span class="p">())</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">close</span><span class="p">()</span>
-</code></pre></div>
-
-<h2>Design 3 - Initializer with &quot;<em>async</em>&quot; mode</h2>
-
-<p>This option is similar to 2, except that if a driver is instantiated with 
&quot;<code>async=True</code>&quot;,
-then all driver class methods would return coroutine objects. Internally, it 
would
-patch the Connection class with the AsyncConnection class.</p>
-
-<p>The downside of this is that all method calls to a driver would need to be 
awaited or used
-by an event loop.</p>
-
-<div class="highlight"><pre><code class="python language-python" 
data-lang="python"><span class="kn">from</span> <span 
class="nn">libcloud.storage.providers</span> <span class="kn">import</span> 
<span class="n">get_driver</span>
-<span class="kn">from</span> <span class="nn">libcloud.storage.types</span> 
<span class="kn">import</span> <span class="n">Provider</span>
-
-<span class="kn">import</span> <span class="nn">asyncio</span>
-
-<span class="n">GoogleStorageDriver</span> <span class="o">=</span> <span 
class="n">get_driver</span><span class="p">(</span><span 
class="n">Provider</span><span class="o">.</span><span 
class="n">GOOGLE_STORAGE</span><span class="p">)</span>
-<span class="n">driver</span> <span class="o">=</span> <span 
class="n">GoogleStorageDriver</span><span class="p">(</span><span 
class="n">key</span><span class="o">=</span><span class="n">KEY</span><span 
class="p">,</span> <span class="n">secret</span><span class="o">=</span><span 
class="n">SECRET</span><span class="p">,</span> <span 
class="n">async</span><span class="o">=</span><span class="bp">True</span><span 
class="p">)</span>
-
-<span class="k">def</span> <span class="nf">do_stuff_with_object</span><span 
class="p">(</span><span class="n">obj</span><span class="p">):</span>
-    <span class="k">print</span><span class="p">(</span><span 
class="n">obj</span><span class="p">)</span>
-
-<span class="n">async</span> <span class="k">def</span> <span 
class="nf">run</span><span class="p">():</span>
-    <span class="n">tasks</span> <span class="o">=</span> <span 
class="p">[]</span>
-    <span class="n">async</span> <span class="k">for</span> <span 
class="n">container</span> <span class="ow">in</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">iterate_containers</span><span class="p">():</span>
-        <span class="n">async</span> <span class="k">for</span> <span 
class="n">obj</span> <span class="ow">in</span> <span 
class="n">driver</span><span class="o">.</span><span 
class="n">iterate_container_objects</span><span class="p">(</span><span 
class="n">container</span><span class="p">):</span>
-            <span class="n">tasks</span><span class="o">.</span><span 
class="n">append</span><span class="p">(</span><span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">ensure_future</span><span class="p">(</span><span 
class="n">do_stuff_with_object</span><span class="p">(</span><span 
class="n">obj</span><span class="p">)))</span>
-    <span class="n">await</span> <span class="n">asyncio</span><span 
class="o">.</span><span class="n">gather</span><span class="p">(</span><span 
class="o">*</span><span class="n">tasks</span><span class="p">)</span>
-
-<span class="n">loop</span> <span class="o">=</span> <span 
class="n">asyncio</span><span class="o">.</span><span 
class="n">get_event_loop</span><span class="p">()</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">run_until_complete</span><span class="p">(</span><span 
class="n">run</span><span class="p">())</span>
-<span class="n">loop</span><span class="o">.</span><span 
class="n">close</span><span class="p">()</span>
-</code></pre></div>
-
-<h1>Give us feedback</h1>
-
-<p>Got a better idea? Have an API or design, the question we&#39;re asking is 
-&quot;if you wanted to use Libcloud for an async application, what would the 
code look like?&quot; This helps us design
-the API and the implementation details can follow.</p>
-
-<p>Feel free to comment on the mailing list or on the pull requests, or raise 
your own pull-request with an API design.</p>
-
-  </div>
-
-  <div class="row section post-meta">
-    <div class="col-md-12 post-tags">
-      <p>Tags: <a href="/blog/tags/news.html" rel="tag">news</a>, <a 
href="/blog/tags/tutorial.html" rel="tag">tutorial</a></p>
-    </div>
-  </div>
-</div>
-
-  
-
-  
-    <div class="post">
-  
     <h2><a href="/blog/2016/04/06/requests-support.html">Experimental support 
for the requests package</a></h2>
   
 
@@ -580,7 +411,7 @@ swap this out for any of the Amazon publ
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/blog/tags/website.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/blog/tags/website.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/blog/tags/website.html (original)
+++ libcloud/site/trunk/generated/blog/tags/website.html Sun Jun  4 14:37:45 
2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -257,7 +257,7 @@ the changes yourself.</p>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/community-resources.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/community-resources.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/community-resources.html (original)
+++ libcloud/site/trunk/generated/community-resources.html Sun Jun  4 14:37:45 
2017
@@ -51,7 +51,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -182,7 +182,7 @@ would like to have it listed on this pag
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/community.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/community.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/community.html (original)
+++ libcloud/site/trunk/generated/community.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -210,7 +210,7 @@ the documentation.</p>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/credits.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/credits.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/credits.html (original)
+++ libcloud/site/trunk/generated/credits.html Sun Jun  4 14:37:45 2017
@@ -51,7 +51,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -610,7 +610,7 @@ someone&#39;s name, this simply means th
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/downloads.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/downloads.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/downloads.html (original)
+++ libcloud/site/trunk/generated/downloads.html Sun Jun  4 14:37:45 2017
@@ -51,7 +51,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -111,17 +111,17 @@
 <p>This page contains link to the latest stable release of Libcloud. If you are
 interested in an older release, please visit the <a 
href="http://archive.apache.org/dist/libcloud/";>archive page</a>.</p>
 
-<p><a name="latest-stable-release" id="latest-stable-release"><h2 
class="anchor">Libcloud 2.0.0 (stable) - Released on April 25, 2017</h2></a></p>
+<p><a name="latest-stable-release" id="latest-stable-release"><h2 
class="anchor">Libcloud 2.0.0rc2 (stable) - Released on April 7, 
2017</h2></a></p>
 
 <p>Files:</p>
 
 <ul>
-<li><a 
href="http://www.apache.org/dyn/closer.cgi/libcloud/apache-libcloud-2.0.0.tar.gz";>apache-libcloud-2.0.0.tar.gz</a>
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0.tar.gz.asc";>asc</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0.tar.gz.sha1";>sha1</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0.tar.gz.md5";>md5</a>]</li>
-<li><a 
href="http://www.apache.org/dyn/closer.cgi/libcloud/apache-libcloud-2.0.0.tar.bz2";>apache-libcloud-2.0.0.tar.bz2</a>
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0.tar.bz2.asc";>asc</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0.tar.bz2.sha1";>sha1</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0.tar.bz2.md5";>md5</a>]</li>
-<li><a 
href="http://www.apache.org/dyn/closer.cgi/libcloud/apache-libcloud-2.0.0.zip";>apache-libcloud-2.0.0.tar.zip</a>
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0.zip.asc";>asc</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0.zip.sha1";>sha1</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0.zip.md5";>md5</a>]</li>
+<li><a 
href="http://www.apache.org/dyn/closer.cgi/libcloud/apache-libcloud-2.0.0rc2.tar.gz";>apache-libcloud-2.0.0rc2.tar.gz</a>
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0rc2.tar.gz.asc";>asc</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0rc2.tar.gz.sha1";>sha1</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0rc2.tar.gz.md5";>md5</a>]</li>
+<li><a 
href="http://www.apache.org/dyn/closer.cgi/libcloud/apache-libcloud-2.0.0rc2.tar.bz2";>apache-libcloud-2.0.0rc2.tar.bz2</a>
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0rc2.tar.bz2.asc";>asc</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0rc2.tar.bz2.sha1";>sha1</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0rc2.tar.bz2.md5";>md5</a>]</li>
+<li><a 
href="http://www.apache.org/dyn/closer.cgi/libcloud/apache-libcloud-2.0.0rc2.zip";>apache-libcloud-2.0.0rc2.tar.zip</a>
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0rc2.zip.asc";>asc</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0rc2.zip.sha1";>sha1</a>]
 [<a 
href="http://www.apache.org/dist/libcloud/apache-libcloud-2.0.0rc2.zip.md5";>md5</a>]</li>
 </ul>
 
-<p>Upgrade notes: <a 
href="https://libcloud.readthedocs.org/en/latest/upgrade_notes.html#libcloud-2.0.0";>Click</a></p>
+<p>Upgrade notes: <a 
href="https://libcloud.readthedocs.org/en/latest/upgrade_notes.html#libcloud-2.0.0rc2";>Click</a></p>
 
 <p>You are strongly encouraged to verify those packages using the <a 
href="https://www.apache.org/dist/libcloud/KEYS";>Apache Libcloud
 developers KEYS</a>. You can find information on how to do that in the
@@ -254,7 +254,7 @@ is mentioned above.</p>
 
 <p>3.. Verify package with <code>.asc</code> signature file</p>
 
-<div class="highlight"><pre><code class="bash">gpg --verify 
apache-libcloud-2.0.0.tar.bz2.asc
+<div class="highlight"><pre><code class="bash">gpg --verify 
apache-libcloud-2.0.0rc2.tar.bz2.asc
 gpg: Signature made Wed Oct  6 15:31:35 2010 CDT using DSA key ID 42721F00
 gpg: Good signature from <span class="s2">&quot;Paul Querna 
&lt;...&gt;&quot;</span>
 gpg:                 aka <span class="s2">&quot;Paul Querna 
&lt;...&gt;&quot;</span>
@@ -266,7 +266,7 @@ Primary key fingerprint: 39F6 691A 0ECF
 
 <p>Example of a bad signature:</p>
 
-<div class="highlight"><pre><code class="bash">gpg --verify 
apache-libcloud-2.0.0.tar.bz2.asc
+<div class="highlight"><pre><code class="bash">gpg --verify 
apache-libcloud-2.0.0rc2.tar.bz2.asc
 gpg: Signature made Wed Oct  6 15:31:35 2010 CDT using DSA key ID 42721F00
 gpg: BAD signature from <span class="s2">&quot;Paul Querna 
&lt;...&gt;&quot;</span>
 </code></pre></div>
@@ -300,7 +300,7 @@ gpg: BAD signature from <span class="s2"
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/getting-started.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/getting-started.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/getting-started.html (original)
+++ libcloud/site/trunk/generated/getting-started.html Sun Jun  4 14:37:45 2017
@@ -51,7 +51,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -224,7 +224,7 @@ docstrings for that driver.</p>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/gsoc-2012.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/gsoc-2012.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/gsoc-2012.html (original)
+++ libcloud/site/trunk/generated/gsoc-2012.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -194,7 +194,7 @@ mailing list ([email protected]).<
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/gsoc-2014.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/gsoc-2014.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/gsoc-2014.html (original)
+++ libcloud/site/trunk/generated/gsoc-2014.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -180,7 +180,7 @@ mailing list ([email protected]).<
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/gsoc.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/gsoc.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/gsoc.html (original)
+++ libcloud/site/trunk/generated/gsoc.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -140,7 +140,7 @@ we have participated in the past:</p>
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/index.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/index.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/index.html (original)
+++ libcloud/site/trunk/generated/index.html Sun Jun  4 14:37:45 2017
@@ -53,7 +53,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -169,7 +169,7 @@
     <div class="row section row-2">
       <div class="col-md-6">
         <h3>Installation</h3>
-        <p>Latest stable version: <a 
href="https://pypi.python.org/pypi/apache-libcloud/2.0.0"; 
target="_blank">2.0.0</a></p>
+        <p>Latest stable version: <a 
href="https://pypi.python.org/pypi/apache-libcloud/2.0.0rc2"; 
target="_blank">2.0.0rc2</a></p>
         <p><code>pip install apache-libcloud</code></p>
         <p>Or <a href="downloads.html">download it from our servers</a> and 
install it manually.</p>
       </div>
@@ -242,19 +242,19 @@
         <h3>Latest Blog Posts</h3>
         
           
-            <p><a 
href="/blog/2017/04/25/libcloud-2-0-0-released.html">Libcloud 2.0.0 released</a>
+            <p><a 
href="/blog/2017/04/07/libcloud-2-0-0-rc2-released.html">Libcloud 2.0.0rc2 
released</a>
           
         
           
-            <p><a href="/blog/2017/04/09/async-rfc.html">Have your say - async 
support in Apache Libcloud</a>
+            <p><a 
href="/blog/2016/12/29/libcloud-1-5-0-released.html">Libcloud 1.5.0 released</a>
           
         
           
-            <p><a 
href="/blog/2017/04/07/libcloud-2-0-0-rc2-released.html">Libcloud 2.0.0rc2 
released</a>
+            <p><a 
href="/blog/2016/11/27/libcloud-1-4-0-released.html">Libcloud 1.4.0 released</a>
           
         
           
-            <p><a 
href="/blog/2016/12/29/libcloud-1-5-0-released.html">Libcloud 1.5.0 released</a>
+            <p><a 
href="/blog/2016/10/14/libcloud-1-3-0-released.html">Libcloud 1.3.0 released</a>
           
         
 
@@ -337,11 +337,11 @@
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     
-      <script src='/assets/index-d17376588103a83f56501d9ab6b96eb1.js' 
type='text/javascript'></script>
+      <script src='/assets/index-326436a009a390ecdd6ea59e13a2e1bc.js' 
type='text/javascript'></script>
 
     
 

Modified: libcloud/site/trunk/generated/media.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/media.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/media.html (original)
+++ libcloud/site/trunk/generated/media.html Sun Jun  4 14:37:45 2017
@@ -47,7 +47,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -150,7 +150,7 @@ your servers instead of directly linking
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     

Modified: libcloud/site/trunk/generated/security.html
URL: 
http://svn.apache.org/viewvc/libcloud/site/trunk/generated/security.html?rev=1797582&r1=1797581&r2=1797582&view=diff
==============================================================================
--- libcloud/site/trunk/generated/security.html (original)
+++ libcloud/site/trunk/generated/security.html Sun Jun  4 14:37:45 2017
@@ -51,7 +51,7 @@
 
     
 
-    <link href='/assets/global-eb5319c938d664847c83b2674bfd22c2.css' 
rel='stylesheet' type='text/css' />
+    <link href='/assets/global-57b0092d353d0369071e1021782bb38d.css' 
rel='stylesheet' type='text/css' />
 
   </head>
 
@@ -234,7 +234,7 @@ which is described at
     </div><!-- /.container -->
 
     <!-- JavaScript -->
-    <script src='/assets/global-c6949aebbeb9952ae7967e9bc1aedfbc.js' 
type='text/javascript'></script>
+    <script src='/assets/global-14c8e0124e6d563413005cb909342e2a.js' 
type='text/javascript'></script>
 
 
     


Reply via email to