<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    
      <meta name="description" content="Libcloud is a Python library for interacting with many of the popular cloud service providers using a uniform API">
    

    <meta name="author" content="The Apache Software Foundation">

    
      <meta name="keywords" content="python,libcloud,cloud,cloud computing,rackspace,amazon ec2,cloudfiles,openstack,cloudstack" />
    

    
      <title>About | Apache Libcloud</title>
    

    <!-- fav icons -->
    <link rel="shortcut icon" href="/images/favicon.png" />
    <link rel="apple-touch-icon" href="/images/apple-touch-icon.png" />
    <link rel="apple-touch-icon-precomposed" href="/images/apple-touch-icon.png" />

    <link href="/blog/atom.xml" type="application/atom+xml" rel="alternate" title="Apache Libcloud Blog Feed" />

    <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,400italic' rel='stylesheet' type='text/css'>
    <link href='https://fonts.googleapis.com/css?family=Inconsolata' rel='stylesheet' type='text/css'>

    <!-- Facebook OpenGraph tags -->
    <meta content="Apache Libcloud" property="og:site_name">
    
      <meta content="About" property="og:title">
    

    

    
      <meta content="Libcloud is a Python library for interacting with many of the popular cloud service providers using a uniform API" property="og:description">
    

    
      <meta content="website" property="og:type">
    

    
      <meta content="https://libcloud.apache.org/about" property="og:url">
    
    

    

    <link href='/assets/global-a40781fe261dc321dedf73b165dc6dff.css' rel='stylesheet' type='text/css' />
  </head>

  <body data-spy="scroll" data-target=".sidebar-nav" data-offset="80">
    <nav class="navbar navbar-fixed-top navbar-inverse" role="navigation">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="/index.html"><img src="/images/libcloud_logo.png" class="navbar-logo" /> Apache Libcloud</a>
        </div>
        <div class="collapse navbar-collapse navbar-ex1-collapse">
          <ul class="nav navbar-nav">
            
            
              
              <li ><a href="/" >Home</a></li>
            
              
              <li class="active"><a href="/about.html" >About</a></li>
            
              
              <li ><a href="/getting-started.html" >Quick Start</a></li>
            
              
              <li ><a href="https://libcloud.readthedocs.org/en/stable/" target="_blank">Documentation</a></li>
            
              
              <li ><a href="/downloads.html" >Downloads</a></li>
            
              
              <li ><a href="/community.html" >Community</a></li>
            
              
              <li ><a href="/blog/" >Blog</a></li>
            
          </ul>

          <div class="material-switch pull-right">
              <input id="theme-switch" name="theme-switch" type="checkbox" onclick="modeSwitcher()"/>
              <label for="theme-switch" class="label-default"></label>
              <span id="theme-toggle" class="theme-switch">Dark mode</span>
          </div>

        </div><!-- /.navbar-collapse -->
      </div><!-- /.container -->
    </nav>

    <div class="container main-container">
      <div class="row section page-content">
  <div class="col-lg-2 sidebar-nav visible-lg">
    <ul class="list-unstyled nav">
      
        <li><a href="#about">About</a></li>
<li><a href="#history">History</a></li>
<li><a href="#supported-python-versions">Supported Python Versions</a></li>
<li><a href="#release-schedule">Release Schedule</a></li>
<li><a href="#similar-libraries-in-other-languages">Similar Libraries in Other Languages</a></li>
<li><a href="#important-milestones-and-dates">Important Milestones and Dates</a></li>

      
    </ul>
  </div>
  <div class="col-lg-8 col-lg-offset-3">
    <h1 id="about">About</h1>

<p>Libcloud is a Python library for interacting with many of the popular cloud
service providers using a unified API. It was created to make it easy for
developers to build products that work between any of the services that it
supports.</p>

<p>Resource you can manage with Libcloud are divided in the following categories:</p>

<ul>
  <li>Cloud Servers and Block Storage - services such as Amazon EC2 and Rackspace
CloudServers</li>
  <li>Cloud Object Storage and CDN - services such as Amazon S3 and Rackspace
CloudFiles</li>
  <li>Load Balancers as a Service - services such as Amazon Elastic Load Balancer
and GoGrid LoadBalancers</li>
  <li>DNS as a Service - services such as Amazon Route 53 and Zerigo</li>
  <li>Containers as a Service - services such as Amazon Elastic Containers (ECS)
and Google Container Engine (GKE)</li>
</ul>

<p>For more information about the features and supported providers, please refer
to the <a href="https://libcloud.readthedocs.org/en/stable/">documentation</a>.</p>

<h2 id="history">History</h2>

<p>Libcloud was originally developed and open-sourced in 2009 by folks at
<a href="http://en.wikipedia.org/wiki/Cloudkick">Cloudkick</a>. It was developed to solve a problem of talking to multiple
different cloud provider APIs.</p>

<p>Later that year, the project joined Apache Incubator. In May of 2011,
the project graduated from the incubator to a top level project.</p>

<p>For a full timeline of the events and other important dates, please see the
“Important Milestones and Dates” section bellow.</p>

<h2 id="supported-python-versions">Supported Python Versions</h2>

<p>Libcloud supports the following Python version:</p>

<ul>
  <li>Python 3.5</li>
  <li>Python 3.6</li>
  <li>Python 3.7 (since 2.5.0)</li>
  <li>Python 3.8 (since 2.7.0)</li>
  <li>PyPy 3 (3.5.x, 3.6.x)</li>
</ul>

<p>First version which introduced Python 3 support was 0.7.1.</p>

<p>Support for Python 2.7 and Python 3.4 has been dropped in
<strong>Libcloud 3.0.0</strong>.</p>

<p>Support for Python 2.4 has been dropped in <strong>Libcloud 0.4.0</strong>, Python 2.5 in
2016 and Python 2.6 and 3.3 in <strong>Libcloud 2.3.0</strong>.</p>

<h2 id="release-schedule">Release Schedule</h2>

<p>We don’t follow a regular releases schedule as you might know it from other
projects such as Ubuntu.</p>

<p>Here are the guidelines we follow when scheduling and preparing a release:</p>

<ol>
  <li>Normal (stable) release - We prepare and get the release out as soon as
enough changes accumulate in trunk.</li>
  <li>Bug fix release - It depends on the severity of a bug and how many users
it affects. If it affects a lot of users or a big chunk of the code we try
to prepare and get the release out as soon as possible.</li>
  <li>Security fix release - We prepare and get the release out as soon as
possible.</li>
</ol>

<h2 id="similar-libraries-in-other-languages">Similar Libraries in Other Languages</h2>

<p>As noted above, Libcloud is a Python library.</p>

<p>If you are looking for a similar library for a different language, you should
have a look at some of the libraries listed bellow:</p>

<ul>
  <li><a href="http://jclouds.apache.org/">Apache Jclouds</a> - Java</li>
  <li><a href="http://deltacloud.apache.org/">Apache Deltacloud</a> - Ruby, HTTP</li>
  <li><a href="http://fog.io/">Fog</a> - Ruby</li>
  <li><a href="https://github.com/nodejitsu/pkgcloud">pkgcloud</a> - Node.js</li>
  <li><a href="https://github.com/esl/elibcloud">elibloud</a> - Erlang (Erlang wrapper around Libcloud)</li>
</ul>

<p>If you feel adventures, you should also have a look at <a href="https://github.com/islamgulov/libcloud.rest">Libcloud REST</a>, a
<a href="/gsoc-2012.html">Google Summer of Code 2012</a> project which exposes most of the Libcloud
functionality over HTTP.</p>

<h2 id="important-milestones-and-dates">Important Milestones and Dates</h2>

<ul>
  <li>Summer 2009 - Libcloud development starts at Cloudkick</li>
  <li>July 23, 2009 - <a href="http://web.archive.org/web/20120517182502/https://www.cloudkick.com/blog/2009/jul/23/libcloud-announced/">First open-source version of Libcloud is released by folks
at Cloudkick</a></li>
  <li>November 11th, 2009 - <a href="http://incubator.apache.org/projects/libcloud.html">Project enters Apache Incubator</a></li>
  <li>March 22nd, 2011 - <a href="http://mail-archives.apache.org/mod_mbox/incubator-libcloud/201103.mbox/%3CAANLkTi=aYQQfcZRJW0yz4Fhm8WeHSzDFbGM5tdsOz4sd@mail.gmail.com%3E">Website has been ported to Apache CMS</a></li>
  <li>February 2nd, 2010 - First Apache release (0.2.0) is out</li>
  <li>May 10th, 2011 - <a href="http://mail-archives.apache.org/mod_mbox/incubator-libcloud/201105.mbox/%3CBANLkTimouwpSUkw-BVPV_KnpbfFgU6yqeQ@mail.gmail.com%3E">Community voting for graduation to a Top Level Project has started</a></li>
  <li>May 19th, 2011 - <a href="https://blogs.apache.org/foundation/entry/the_apache_software_foundation_announces12">Project graduates to a top level project</a></li>
  <li>May 19th, 2011 - <a href="https://blogs.apache.org/foundation/entry/the_apache_software_foundation_announces12">Project gets a chair - Tomaz Muraus</a></li>
  <li>May 25, 2011 - <a href="http://mail-archives.apache.org/mod_mbox/libcloud-dev/201105.mbox/%3CBANLkTi%3DLqBidHLHUwAJSAWSzd-qSpad%2BdA%40mail.gmail.com%3E">Libcloud 0.5.0 which moves away from compute only and includes
support for object storage and load balancer API is released</a></li>
  <li>November 5th, 2011 - <a href="http://mail-archives.apache.org/mod_mbox/libcloud-dev/201111.mbox/%3CCAJMHEmKkRPVeLjJ%2BCeTFU0wrW2QbyOz2bd3HVLi3Ydw283oDKQ%40mail.gmail.com%3E">Libcloud 0.6.0 which includes support for a new DNS
API is released</a></li>
  <li>April 2012 - Libcloud participates in GSoC 2012. Student Ilgiz Islamgulov
works on “Libcloud REST interface” project.</li>
  <li>August 30th, 2012 - <a href="http://google-opensource.blogspot.com/2012/08/8th-year-of-google-summer-of-code-draws.html">Libcloud REST GSoC 2012 project has been successfully
completed</a></li>
  <li>June 12th, 2011 - <a href="http://mail-archives.apache.org/mod_mbox/libcloud-dev/201306.mbox/%3CCAJMHEmLUxAri0Pkw8-sHHb5tF2tH-qxjU7GC1zwVaNbFT%3DrUMg%40mail.gmail.com%3EZ">Code repository has moved from SVN to git</a></li>
  <li>July 2013 - Work has started on a new and improved documentation which is
now hosted on ReadTheDocs</li>
  <li>April 2020 - <a href="https://libcloud.apache.org/blog/2020/04/15/libcloud-3-0-0-released.html">Libcloud 3.0.0 is released and we drop support for Python 2</a></li>
</ul>


  </div>
</div>


      <hr />

      <footer>
        <div class="row">
          <div class="col-lg-12 text-center">
            <div class="footer-links">
  <p><a href="http://www.apache.org/licenses/">License</a> | <a
  href="/security.html">Security</a> | <a
  href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a> |
  <a href="http://www.apache.org/foundation/thanks.html">Thanks</a> |
  <a href="/credits.html">Credits</a> | <a href="/media.html">Media</a>
</div>

<div class="footer-text">
  <p class="">Copyright &copy; 2009-2022 <a href="https://www.apache.org/" target="_blank">The Apache Software Foundation</a></p>
  <p class="">Apache Libcloud, Libcloud, Apache, the Apache feather, and the Apache Libcloud project logo are trademarks of the Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</p>
  <p class="">Site last updated on 2022-03-29 21:02:21 +0000</p>
</div>

          </div>
        </div>
      </footer>

    </div><!-- /.container -->

    <!-- JavaScript -->
    <script src='/assets/global-9d3ec4fa3c143ff7102734d40de1aad8.js' type='text/javascript'></script>

    

    <script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-23580482-1']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
</script>

  </body>
</html>
