# packages

pkgId: cce87df400b9c6b5d4e32edb1276f3abb034c65fea01f27cfe8887a367095cbd
name: ijson
arch: noarch
version: 2.2
epoch: 0
release: 1
summary: Iterative JSON parser with a standard Python iterator interface
url: https://github.com/isagalaev/ijson
rpm_license: BSD
rpm_vendor: Ivan Sagalaev <maniac@softwaremaniacs.org>
rpm_group: Development/Libraries
rpm_buildhost: 7aa5783a47d5
rpm_sourcerpm: ijson-2.2-1.src.rpm
rpm_packager: Shaun Crampton <shaun@projectcalico.org>
location_href: noarch/ijson-2.2-1.noarch.rpm
checksum_type: sha256
description:
  .. image:: https://travis-ci.org/isagalaev/ijson.svg?branch=master
      :target: https://travis-ci.org/isagalaev/ijson

  =====
  ijson
  =====

  Ijson is an iterative JSON parser with a standard Python iterator interface.


  Usage
  =====

  All usage example will be using a JSON document describing geographical
  objects::

      {
        "earth": {
          "europe": [
            {"name": "Paris", "type": "city", "info": { ... }},
            {"name": "Thames", "type": "river", "info": { ... }},
            // ...
          ],
          "america": [
            {"name": "Texas", "type": "state", "info": { ... }},
            // ...
          ]
        }
      }

  Most common usage is having ijson yield native Python objects out of a JSON
  stream located under a prefix. Here's how to process all European cities::

      import ijson

      f = urlopen('http://.../')
      objects = ijson.items(f, 'earth.europe.item')
      cities = (o for o in objects if o['type'] == 'city')
      for city in cities:
          do_something_with(city)

  Sometimes when dealing with a particularly large JSON payload it may worth to
  not even construct individual Python objects and react on individual events
  immediately producing some result::

      import ijson

      parser = ijson.parse(urlopen('http://.../'))
      stream.write('<geo>')
      for prefix, event, value in parser:
          if (prefix, event) == ('earth', 'map_key'):
              stream.write('<%s>' % value)
              continent = value
          elif prefix.endswith('.name'):
              stream.write('<object name="%s"/>' % value)
          elif (prefix, event) == ('earth.%s' % continent, 'end_map'):
              stream.write('</%s>' % continent)
      stream.write('</geo>')


  Backends
  ========

  Ijson provides several implementations of the actual parsing in the form of
  backends located in ijson/backends:

  - ``yajl2_cffi``: wrapper around `YAJL <http://lloyd.github.com/yajl/>`_ 2.x
    using CFFI, this is the fastest.
  - ``yajl2``: wrapper around YAJL 2.x using ctypes, for when you can't use CFFI
    for some reason.
  - ``yajl``: deprecated YAJL 1.x + ctypes wrapper, for even older systems.
  - ``python``: pure Python parser, good to use with PyPy

  You can import a specific backend and use it in the same way as the top level
  library::

      import ijson.backends.yajl2_cffi as ijson

      for item in ijson.items(...):
          

  Importing the top level library as ``import ijson`` uses the pure Python
  backend.


  Acknowledgements
  ================

  Python parser in ijson is relatively simple thanks to `Douglas Crockford
  <http://www.crockford.com/>`_ who invented a strict, easy to parse syntax.

  The `YAJL <http://lloyd.github.com/yajl/>`_ library by `Lloyd Hilaiel
  <http://lloyd.io/>`_ is the most popular and efficient way to parse JSON in an
  iterative fashion.

  Ijson was inspired by `yajl-py <http://pykler.github.com/yajl-py/>`_ wrapper by
  `Hatem Nassrat <http://www.nassrat.ca/>`_. Though ijson borrows almost nothing
  from the actual yajl-py code it was used as an example of integration with yajl
  using ctypes.


pkgId: c803d4d39368482c5c36b366303161f45cf309ae894968544e55bbcaf2e8ac11
name: openstack-neutron
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: OpenStack Networking Service
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron is a virtual network service for Openstack. Just like
  OpenStack Nova provides an API to dynamically request and configure
  virtual servers, Neutron provides an API to dynamically request and
  configure virtual networks. These networks connect "interfaces" from
  other OpenStack services (e.g., virtual NICs from Nova VMs). The
  Neutron API supports extensions to provide advanced network
  capabilities (e.g., QoS, ACLs, network monitoring, etc.)


pkgId: 63cea28bc76432ddc9b1a77c6e25045593e101b9ef0d3685b43ac11755c1fa34
name: openstack-neutron-bigswitch
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Big Switch plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-bigswitch-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using the FloodLight Openflow Controller or the Big Switch
  Networks Controller.


pkgId: 868adaf979d9d2856470c6d675354f92fa47bc83fe26dcf69561413ab609ebb2
name: openstack-neutron-brocade
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Brocade plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-brocade-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using Brocade VCS switches running NOS.


pkgId: 338b467326e2ce449ccb55d6b198f18a1917b72ec012df0da78628a33e37669f
name: openstack-neutron-cisco
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Cisco plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-cisco-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using Cisco UCS and Nexus.


pkgId: 5e2aa91e21bd0e29263020d88a7f6495aa1dbfdc28ca1c8c54bacd0ff700b160
name: openstack-neutron-embrane
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Embrane plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-embrane-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  L3-L7 network services using Embrane's heleos platform.


pkgId: 098aa944efb6572db433eb46448db3097c5221f0862fd6f3324a8a76b90fd2cb
name: openstack-neutron-hyperv
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Hyper-V plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-hyperv-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using Microsoft Hyper-V.


pkgId: f189d79f6b697f14ad6d5d76a7d34321b14260bf340cb923739bf87b629be225
name: openstack-neutron-ibm
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron IBM plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-ibm-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks from IBM.


pkgId: 48e4c97baa38a255e065fdacf68d76ce24b28a88de8d2a9fb162eafc4fecec37
name: openstack-neutron-linuxbridge
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron linuxbridge plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-linuxbridge-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks as VLANs using Linux bridging.


pkgId: 1baead0d87a45c3e4bd83c22207ba4adae466a3f2f6bc239f50a9c75f78318c9
name: openstack-neutron-mellanox
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Mellanox plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-mellanox-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  This plugin implements Neutron v2 APIs with support for Mellanox embedded
  switch functionality as part of the VPI (Ethernet/InfiniBand) HCA.


pkgId: d45b2846013194eb64feff08c5282de4bae65419fe99f500d24f1284dc13610a
name: openstack-neutron-metaplugin
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron meta plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-metaplugin-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using multiple other Neutron plugins.


pkgId: 8ffebca70f5596f320de84d153b85f49e6c862bc7d1b8bde00e0f03c3290e01c
name: openstack-neutron-metering-agent
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron bandwidth metering agent
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-metering-agent-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to measure bandwidth utilization

  This package contains the Neutron agent responsible for generating bandwidth
  utilization notifications.


pkgId: 2139410243a11f31e01f98b9bd2c8c67d5c9f25bb4755377e000eeb856b83d0f
name: openstack-neutron-midonet
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron MidoNet plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-midonet-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using MidoNet from Midokura.


pkgId: 9995376e73d3056f0b4adf37a838561fb0125b4fe6ca3e37456667b1a224e5c6
name: openstack-neutron-ml2
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron ML2 plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-ml2-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains a Neutron plugin that allows the use of drivers
  to support separately extensible sets of network types and the mechanisms
  for accessing those types.


pkgId: 90fe79a01921f18427f849a3f058e1e6c9971dc43158dfe452fabd087b390cd5
name: openstack-neutron-nec
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron NEC plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-nec-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using the NEC OpenFlow controller.


pkgId: 827198c66554abba44ddf970bede393a4f08d6b012e44023a7f0d0b25e9fc75b
name: openstack-neutron-nuage
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Nuage plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-nuage-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  This plugin implements Neutron v2 APIs with support for Nuage Networks
  Virtual Service Platform (VSP).


pkgId: c48ab3dd54b937be8b0566e7b34e26522e5f85d1395625341203b1b84a457c3d
name: openstack-neutron-oneconvergence-nvsd
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron One Convergence NVSD plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-oneconvergence-nvsd-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamnically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using One Convergence NVSD


pkgId: cb583d789aa65bd82a0fd578423709f36707ff9684ee758fc622b34b80f26521
name: openstack-neutron-openvswitch
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron openvswitch plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-openvswitch-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using Open vSwitch.


pkgId: 54172f11dac4325c32326d1020cd52c1106ad5d8a68c3cd070caac8adb5937ad
name: openstack-neutron-plumgrid
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron PLUMgrid plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-plumgrid-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using the PLUMgrid platform.


pkgId: 4efe1d9e68edfa75c777578f2bfb96411153b2c9829dbb0c84484d74388a1df1
name: openstack-neutron-ryu
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Ryu plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-ryu-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using the Ryu Network Operating System.


pkgId: cdce6455ad77603d11487bccdbf4a397acbeded27e4f9494758bdacea57983a5
name: openstack-neutron-sriov-nic-agent
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron SR-IOV NIC agent
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/system
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-sriov-nic-agent-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron allows to run virtual instances using SR-IOV NIC hardware

  This package contains the Neutron agent to support advanced features of
  SR-IOV network cards.


pkgId: da3b4a5030588ae6c9dabd24202d15f5fc74cae8ba45d1bdb7c7630557e7a855
name: openstack-neutron-vmware
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Nicira plugin
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-vmware-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron plugin that implements virtual
  networks using VMware NSX.


pkgId: 6219b11e66645c02e380d96ed4e206d823fbfad176e9b4aff5087a4938ab3182
name: openstack-neutron-vpn-agent
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron VPNaaS agent
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/openstack-neutron-vpn-agent-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to implement VPN as a service

  This package contains the Neutron agent responsible for implementing VPNaaS with
  IPSec.


pkgId: e2cf14078bc229bf63f3e2b5020729366bf3828fc2964e67f286cccf4b6b1f65
name: openstack-nova
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Compute (nova)
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.


pkgId: be270e3e22680381bcf093a2945b96a6e17f4356dc1d676c9a8a2c25512db602
name: openstack-nova-api
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova API services
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-api-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova services providing programmatic access.


pkgId: 2a4f408ded4f1f5e5cdf4055912adaf61621962ed72321832f678edd36ba65cc
name: openstack-nova-cells
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova Cells services
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-cells-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova Cells service providing additional
  scaling and (geographic) distribution for compute services.


pkgId: 00c9776ba6c7fb8e31e5f5ced2c5d71fab8212adb3aa26625300b1c0888ae1f5
name: openstack-nova-cert
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova certificate management service
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-cert-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova service for managing certificates.


pkgId: 1d160f1fc7baf683ed1849b0a5f59675f054beb771c878c84563fc685ffee437
name: openstack-nova-common
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: Components common to all OpenStack Nova services
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-common-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains scripts, config and dependencies shared
  between all the OpenStack nova services.


pkgId: 324694506cb2e249c0ac65db27dbc5813cb6a01c700d9083a6697d01a95cf881
name: openstack-nova-compute
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova Virtual Machine control service
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-compute-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova service for controlling Virtual Machines.


pkgId: 8019b10048d329e2a983e358f46a6cf03150e70e67a4c96f4ae3615bc39822a1
name: openstack-nova-conductor
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova Conductor services
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-conductor-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova services providing database access for
  the compute service


pkgId: 9c732fc804a64c05957c96d69455cc671ba0c86c1bee22f4111af33788c13486
name: openstack-nova-console
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova console access services
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-console-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova services providing
  console access services to Virtual Machines.


pkgId: 28f685acc8e919b6fade9ce32e08ec5ec1f56a16ff91e82ad13dce7c4e4f36c4
name: openstack-nova-doc
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: Documentation for OpenStack Compute
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Documentation
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-doc-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform.

  This package contains documentation files for nova.


pkgId: a1dd240c4695535e1ea2fcae0ffe468f8bab2228798ef2c958db0d982479f970
name: openstack-nova-network
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova Network control service
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-network-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova service for controlling networking.


pkgId: 17c58a97cf5478d1fc5e0b1df026b1658ca2a8e95a6950282d0d9aa9b1048724
name: openstack-nova-novncproxy
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova noVNC proxy service
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-novncproxy-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova noVNC Proxy service that can proxy
  VNC traffic over browser websockets connections.


pkgId: 1ec2063848e7699946e5ff8f477078bd5f96bbdd3eaeca1f21473c2c097a0430
name: openstack-nova-objectstore
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova simple object store service
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-objectstore-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova service providing a simple object store.


pkgId: e4b3a2856d5fdc78ba750310c1ae6b29773b96e75033131a03ea513fb2a7a94e
name: openstack-nova-scheduler
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova VM distribution service
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-scheduler-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the service for scheduling where
  to run Virtual Machines in the cloud.


pkgId: 425bdf5234f305ff55db11336f0fd91bd55cd9b9dbc7976e6e352b860d0e2315
name: openstack-nova-serialproxy
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova serial console access service
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-serialproxy-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova services providing the
  serial console access service to Virtual Machines.


pkgId: 40022a7e91ba5f2d4ad63e998cc187ca2e506bb407652251673b0ebebf4c87d4
name: openstack-nova-spicehtml5proxy
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: OpenStack Nova Spice HTML5 console access service
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/openstack-nova-spicehtml5proxy-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform. It gives you the
  software, control panels, and APIs required to orchestrate a cloud,
  including running instances, managing networks, and controlling access
  through users and projects. OpenStack Compute strives to be both
  hardware and hypervisor agnostic, currently supporting a variety of
  standard hardware configurations and seven major hypervisors.

  This package contains the Nova services providing the
  spice HTML5 console access service to Virtual Machines.


pkgId: def6e9735abb26c45ac7ed6d57e94359ddde073f7ec0d60b61655b6c5175d728
name: python-etcd
arch: noarch
version: 0.4.3
epoch: 0
release: 1
summary: A python client for etcd
url: http://github.com/jplana/python-etcd
rpm_license: MIT
rpm_vendor: Jose Plana <jplana@gmail.com>
rpm_group: Development/Libraries
rpm_buildhost: 7aa5783a47d5
rpm_sourcerpm: python-etcd-0.4.3-1.src.rpm
rpm_packager: Shaun Crampton <shaun@projectcalico.org>
location_href: noarch/python-etcd-0.4.3-1.noarch.rpm
checksum_type: sha256
description:
  python-etcd documentation
  =========================

  A python client for Etcd https://github.com/coreos/etcd

  Official documentation: http://python-etcd.readthedocs.org/

  .. image:: https://travis-ci.org/jplana/python-etcd.png?branch=master
     :target: https://travis-ci.org/jplana/python-etcd

  .. image:: https://coveralls.io/repos/jplana/python-etcd/badge.svg?branch=master&service=github
     :target: https://coveralls.io/github/jplana/python-etcd?branch=master

  Installation
  ------------

  Pre-requirements
  ~~~~~~~~~~~~~~~~

  Install etcd (2.0.1 or later). This version of python-etcd will only work correctly with the etcd version 2.0.x or later. If you are running an older version of etcd, please use python-etcd 0.3.3 or earlier.

  This client is known to work with python 2.7 and with python 3.3 or above. It is not tested or expected to work in more outdated versions of python.

  From source
  ~~~~~~~~~~~

  .. code:: bash

      $ python setup.py install

  Usage
  -----

  The basic methods of the client have changed compared to previous versions, to reflect the new API structure; however a compatibility layer has been maintained so that you don't necessarily need to rewrite all your existing code.

  Create a client object
  ~~~~~~~~~~~~~~~~~~~~~~

  .. code:: python

      import etcd

      client = etcd.Client() # this will create a client against etcd server running on localhost on port 4001
      client = etcd.Client(port=4002)
      client = etcd.Client(host='127.0.0.1', port=4003)
      client = etcd.Client(host='127.0.0.1', port=4003, allow_redirect=False) # wont let you run sensitive commands on non-leader machines, default is true
      
      client = etcd.Client(srv_domain='example.com', protocol="https")
      
      client = etcd.Client(host='api.example.com', protocol='https', port=443, version_prefix='/etcd')
  Write a key
  ~~~~~~~~~

  .. code:: python

      client.write('/nodes/n1', 1)
      
      client.write('/nodes/n2', 2, ttl=4)  # sets the ttl to 4 seconds
      client.set('/nodes/n2', 1) # Equivalent, for compatibility reasons.

  Read a key
  ~~~~~~~~~

  .. code:: python

      client.read('/nodes/n2').value
      client.read('/nodes', recursive = True) #get all the values of a directory, recursively.
      client.get('/nodes/n2').value

  Delete a key
  ~~~~~~~~~~~~

  .. code:: python

      client.delete('/nodes/n1')

  Atomic Compare and Swap
  ~~~~~~~~~~~~

  .. code:: python

      client.write('/nodes/n2', 2, prevValue = 4) # will set /nodes/n2 's value to 2 only if its previous value was 4 and
      client.write('/nodes/n2', 2, prevExist = False) # will set /nodes/n2 's value to 2 only if the key did not exist before
      client.write('/nodes/n2', 2, prevIndex = 30) # will set /nodes/n2 's value to 2 only if the key was last modified at index 30
      client.test_and_set('/nodes/n2', 2, 4) #equivalent to client.write('/nodes/n2', 2, prevValue = 4)

  You can also atomically update a result:

  .. code:: python

      result = client.read('/foo')
      print(result.value) # bar
      result.value += u'bar'
      updated = client.update(result) # if any other client wrote '/foo' in the meantime this will fail
      print(updated.value) # barbar

  Watch a key
  ~~~~~~~~~~~

  .. code:: python

      client.read('/nodes/n1', wait = True) # will wait till the key is changed, and return once its changed
      client.read('/nodes/n1', wait = True, timeout=30) # will wait till the key is changed, and return once its changed, or exit with an exception after 30 seconds.
      client.read('/nodes/n1', wait = True, waitIndex = 10) # get all changes on this key starting from index 10
      client.watch('/nodes/n1') #equivalent to client.read('/nodes/n1', wait = True)
      client.watch('/nodes/n1', index = 10)

  Locking module
  ~~~~~~~~~~~~~~

  .. code:: python

      
      
      client = etcd.Client()
      lock = etcd.Lock(client, 'my_lock_name')

      
      lock.acquire(blocking=True, # will block until the lock is acquired
            lock_ttl=None) # lock will live until we release it
      lock.is_acquired()  #
      lock.acquire(lock_ttl=60) # renew a lock
      lock.release() # release an existing lock
      lock.is_acquired()  # False

      
      client = etcd.Client()
      with etcd.Lock(client, 'customer1') as my_lock:
          do_stuff()
          my_lock.is_acquired()  # True
          my_lock.acquire(lock_ttl = 60)
      my_lock.is_acquired() # False


  Get machines in the cluster
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~

  .. code:: python

      client.machines

  Get leader of the cluster
  ~~~~~~~~~~~~~~~~~~~~~~~~~

  .. code:: python

      client.leader

  Generate a sequential key in a directory
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  .. code:: python

      x = client.write("/dir/name", "value", append=True)
      print("generated key: " + x.key)
      print("stored value: " + x.value)

  List contents of a directory
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  .. code:: python

      
      client.write("/dir/name", "value1", append=True)
      client.write("/dir/name", "value2", append=True)

      directory = client.get("/dir/name")

      
      for result in directory.children:
        print(result.key + ": " + result.value)

      
      print(directory.children.next().value)

  Development setup
  -----------------

  To create a buildout,

  .. code:: bash

      $ python bootstrap.py
      $ bin/buildout

  to test you should have etcd available in your system path:

  .. code:: bash

      $ bin/test

  to generate documentation,

  .. code:: bash

      $ cd docs
      $ make

  Release HOWTO
  -------------

  To make a release

      1) Update release date/version in NEWS.txt and setup.py
      2) Run 'python setup.py sdist'
      3) Test the generated source distribution in dist/
      4) Upload to PyPI: 'python setup.py sdist register upload'


  News
  ====

  0.4.3
  -----
  *Release date: 14-Dec-2015*

  * Fix check for parameters in case of connection error
  * Python 3.5 compatibility and general python3 cleanups
  * Added authentication and module for managing ACLs
  * Added srv record-based DNS discovery
  * Fixed (again) logging of cluster id changes
  * Fixed leader lookup
  * Properly retry request on exception
  * Client: clean up open connections when deleting

  0.4.2
  -----
  *Release date: 8-Oct-2015*

  * Fixed lock documentation
  * Fixed lock sequences due to etcd 2.2 change
  * Better exception management during response processing
  * Fixed logging of cluster ID changes
  * Fixed subtree results
  * Do not check cluster ID if etcd responses don't contain the ID
  * Added a cause to EtcdConnectionFailed


  0.4.1
  -----
  *Release date: 1-Aug-2015*

  * Added client-side leader election
  * Added stats endpoints
  * Added logging
  * Better exception handling
  * Check for cluster ID on each request
  * Added etcd.Client.members and fixed etcd.Client.leader
  * Removed locking and election etcd support
  * Allow the use of etcd proxies with reconnections
  * Implement pop: Remove key from etc and return the corresponding value.
  * Eternal watcher can be now recursive
  * Fix etcd.Client machines
  * Do not send parameters with `None` value to etcd
  * Support ttl=0 in write.
  * Moved pyOpenSSL into test requirements.
  * Always set certificate information so redirects from http to https work.


  0.3.3
  -----
  *Release date: 12-Apr-2015*

  * Forward leaves_only value in get_subtree() recursive calls
  * Fix README prevExists->prevExist
  * Added configurable version_prefix
  * Added support for recursive watch
  * Better error handling support (more detailed exceptions)
  * Fixed some unreliable tests


  0.3.2
  -----

  *Release date: 4-Aug-2014*

  * Fixed generated documentation version.


  0.3.1
  -----

  *Release date: 4-Aug-2014*

  * Added consisten read option
  * Fixed timeout parameter in read()
  * Added atomic delete parameter support
  * Fixed delete behaviour
  * Added update method that allows atomic updated on results
  * Fixed checks on write()
  * Added leaves generator to EtcdResult and get_subtree for recursive fetch
  * Added etcd_index to EtcdResult
  * Changed ethernal -> eternal
  * Updated urllib3 & pyOpenSSL libraries
  * Several performance fixes
  * Better parsing of etcd_index and raft_index
  * Removed duplicated tests
  * Added several integration and unit tests
  * Use etcd v0.3.0 in travis
  * Execute test using `python setup.py test` and nose


  0.3.0
  -----

  *Release date: 18-Jan-2014*

  * API v2 support
  * Python 3.3 compatibility


  0.2.1
  -----

  *Release data: 30-Nov-2013*

  * SSL support
  * Added support for subdirectories in results.
  * Improve test
  * Added support for reconnections, allowing death node tolerance.


  0.2.0
  -----

  *Release date: 30-Sep-2013*

  * Allow fetching of multiple keys (sub-nodes)


  0.1
  ---

  *Release date: 18-Sep-2013*

  * Initial release


pkgId: 02db1743b155c9426b796dd93721f60cfeaba5239585661b619cf57d7d111d64
name: python-neutron
arch: noarch
version: 2014.2.3calico1.2.1
epoch: 0
release: 1.el7
summary: Neutron Python libraries
url: http://launchpad.net/neutron/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-neutron-2014.2.3calico1.2.1-1.el7.src.rpm
location_href: noarch/python-neutron-2014.2.3calico1.2.1-1.el7.noarch.rpm
checksum_type: sha256
description:
  Neutron provides an API to dynamically request and configure virtual
  networks.

  This package contains the Neutron Python library.


pkgId: fdf80c544e2507c6a2596f45d44bc597fdf2ffbbe9b674d38bf7608781d7a64f
name: python-nova
arch: noarch
version: 2014.2.2calico1.0.0
epoch: 0
release: 1.el7
summary: Nova Python libraries
url: http://openstack.org/projects/compute/
rpm_license: ASL 2.0
rpm_group: Applications/System
rpm_buildhost: calico-rh00.datcon.co.uk
rpm_sourcerpm: openstack-nova-2014.2.2calico1.0.0-1.el7.src.rpm
location_href: noarch/python-nova-2014.2.2calico1.0.0-1.el7.noarch.rpm
checksum_type: sha256
description:
  OpenStack Compute (codename Nova) is open source software designed to
  provision and manage large networks of virtual machines, creating a
  redundant and scalable cloud computing platform.

  This package contains the nova Python library.


pkgId: f3662f368c2a2725b0ed49fbdfaa8b52ba5ff88ffbc0b3a1954fc1c552659b40
name: datrie
arch: x86_64
version: 0.7
epoch: 0
release: 1
summary: Super-fast, efficiently stored Trie for Python.
url: https://github.com/kmike/datrie
rpm_license: LGPLv2+
rpm_vendor: Mikhail Korobov <kmike84@gmail.com>
rpm_group: Development/Libraries
rpm_buildhost: 7aa5783a47d5
rpm_sourcerpm: datrie-0.7-1.src.rpm
rpm_packager: Shaun Crampton <shaun@projectcalico.org>
location_href: x86_64/datrie-0.7-1.x86_64.rpm
checksum_type: sha256
description:
  datrie |travis| |appveyor|
  ======

  .. |travis| image:: https://travis-ci.org/kmike/datrie.png
     :target: https://travis-ci.org/kmike/datrie

  .. |appveyor| image:: https://ci.appveyor.com/api/projects/status/6bpvhllpjhlau7x0?svg=true
     :target: https://ci.appveyor.com/project/superbobry/datrie

  Super-fast, efficiently stored Trie for Python (2.x and 3.x).
  Uses `libdatrie`_.

  .. _libdatrie: http://linux.thai.net/~thep/datrie/datrie.html

  Installation
  ============

  ::

      pip install datrie

  Usage
  =====

  Create a new trie capable of storing items with lower-case ascii keys::

      >>> import string
      >>> import datrie
      >>> trie = datrie.Trie(string.ascii_lowercase)

  ``trie`` variable is a dict-like object that can have unicode keys of
  certain ranges and Python objects as values.

  In addition to implementing the mapping interface, tries facilitate
  finding the items for a given prefix, and vice versa, finding the
  items whose keys are prefixes of a given string. As a common special
  case, finding the longest-prefix item is also supported.

  .. warning::

      For efficiency you must define allowed character range(s) while
      creating trie. ``datrie`` doesn't check if keys are in allowed
      ranges at runtime, so be careful! Invalid keys are OK at lookup time
      but values won't be stored correctly for such keys.

  Add some values to it (datrie keys must be unicode; the examples
  are for Python 2.x)::

      >>> trie[u'foo'] = 5
      >>> trie[u'foobar'] = 10
      >>> trie[u'bar'] = 'bar value'
      >>> trie.setdefault(u'foobar', 15)
      10

  Check if u'foo' is in trie::

      >>> u'foo' in trie
      True

  Get a value::

      >>> trie[u'foo']
      5

  Find all prefixes of a word::

      >>> trie.prefixes(u'foobarbaz')
      [u'foo', u'foobar']

      >>> trie.prefix_items(u'foobarbaz')
      [(u'foo', 5), (u'foobar', 10)]

      >>> trie.iter_prefixes(u'foobarbaz')
      <generator object ...>

      >>> trie.iter_prefix_items(u'foobarbaz')
      <generator object ...>

  Find the longest prefix of a word::

      >>> trie.longest_prefix(u'foo')
      u'foo'

      >>> trie.longest_prefix(u'foobarbaz')
      u'foobar'

      >>> trie.longest_prefix(u'gaz')
      KeyError: u'gaz'

      >>> trie.longest_prefix(u'gaz', default=u'vasia')
      u'vasia'

      >>> trie.longest_prefix_item(u'foobarbaz')
      (u'foobar', 10)

  Check if the trie has keys with a given prefix::

      >>> trie.has_keys_with_prefix(u'fo')
      True

      >>> trie.has_keys_with_prefix(u'FO')
      False

  Get all items with a given prefix from a trie::

      >>> trie.keys(u'fo')
      [u'foo', u'foobar']

      >>> trie.items(u'ba')
      [(u'bar', 'bar value')]

      >>> trie.values(u'foob')
      [10]

  Get all suffixes of certain word starting with a given prefix from a trie::

      >>> trie.suffixes()
      [u'pro', u'producer', u'producers', u'product', u'production', u'productivity', u'prof']
      >>> trie.suffixes(u'prod')
      [u'ucer', u'ucers', u'uct', u'uction', u'uctivity']


  Save & load a trie (values must be picklable)::

      >>> trie.save('my.trie')
      >>> trie2 = datrie.Trie.load('my.trie')



  Trie and BaseTrie
  =================

  There are two Trie classes in datrie package: ``datrie.Trie`` and
  ``datrie.BaseTrie``. ``datrie.BaseTrie`` is slightly faster and uses less
  memory but it can store only integer numbers -2147483648 <= x <= 2147483647.
  ``datrie.Trie`` is a bit slower but can store any Python object as a value.

  If you don't need values or integer values are OK then use ``datrie.BaseTrie``::

      import datrie
      import string
      trie = datrie.BaseTrie(string.ascii_lowercase)

  Custom iteration
  ================

  If the built-in trie methods don't fit you can use ``datrie.State`` and
  ``datrie.Iterator`` to implement custom traversal.

  .. note::

      If you use ``datrie.BaseTrie`` you need ``datrie.BaseState`` and
      ``datrie.BaseIterator`` for custom traversal.


  For example, let's find all suffixes of ``'fo'`` for our trie and get
  the values::

      >>> state = datrie.State(trie)
      >>> state.walk(u'foo')
      >>> it = datrie.Iterator(state)
      >>> while it.next():
      ...     print(it.key())
      ...     print(it.data))
      o
      5
      obar
      10

  Performance
  ===========

  Performance is measured for ``datrie.Trie`` against Python's dict with
  100k unique unicode words (English and Russian) as keys and '1' numbers
  as values.

  ``datrie.Trie`` uses about 5M memory for 100k words; Python's dict
  uses about 22M for this according to my unscientific tests.

  This trie implementation is 2-6 times slower than python's dict
  on __getitem__. Benchmark results (macbook air i5 1.8GHz,
  "1.000M ops/sec" == "1 000 000 operations per second")::

      Python 2.6:
      dict __getitem__: 7.107M ops/sec
      trie __getitem__: 2.478M ops/sec

      Python 2.7:
      dict __getitem__: 6.550M ops/sec
      trie __getitem__: 2.474M ops/sec

      Python 3.2:
      dict __getitem__: 8.185M ops/sec
      trie __getitem__: 2.684M ops/sec

      Python 3.3:
      dict __getitem__: 7.050M ops/sec
      trie __getitem__: 2.755M ops/sec

  Looking for prefixes of a given word is almost as fast as
  ``__getitem__`` (results are for Python 3.3)::

      trie.iter_prefix_items (hits):      0.461M ops/sec
      trie.prefix_items (hits):           0.743M ops/sec
      trie.prefix_items loop (hits):      0.629M ops/sec
      trie.iter_prefixes (hits):          0.759M ops/sec
      trie.iter_prefixes (misses):        1.538M ops/sec
      trie.iter_prefixes (mixed):         1.359M ops/sec
      trie.has_keys_with_prefix (hits):   1.896M ops/sec
      trie.has_keys_with_prefix (misses): 2.590M ops/sec
      trie.longest_prefix (hits):         1.710M ops/sec
      trie.longest_prefix (misses):       1.506M ops/sec
      trie.longest_prefix (mixed):        1.520M ops/sec
      trie.longest_prefix_item (hits):    1.276M ops/sec
      trie.longest_prefix_item (misses):  1.292M ops/sec
      trie.longest_prefix_item (mixed):   1.379M ops/sec

  Looking for all words starting with a given prefix is mostly limited
  by overall result count (this can be improved in future because a
  lot of time is spent decoding strings from utf_32_le to Python's
  unicode)::

      trie.items(prefix="xxx"), avg_len(res)==415:        0.609K ops/sec
      trie.keys(prefix="xxx"), avg_len(res)==415:         0.642K ops/sec
      trie.values(prefix="xxx"), avg_len(res)==415:       4.974K ops/sec
      trie.items(prefix="xxxxx"), avg_len(res)==17:       14.781K ops/sec
      trie.keys(prefix="xxxxx"), avg_len(res)==17:        15.766K ops/sec
      trie.values(prefix="xxxxx"), avg_len(res)==17:      96.456K ops/sec
      trie.items(prefix="xxxxxxxx"), avg_len(res)==3:     75.165K ops/sec
      trie.keys(prefix="xxxxxxxx"), avg_len(res)==3:      77.225K ops/sec
      trie.values(prefix="xxxxxxxx"), avg_len(res)==3:    320.755K ops/sec
      trie.items(prefix="xxxxx..xx"), avg_len(res)==1.4:  173.591K ops/sec
      trie.keys(prefix="xxxxx..xx"), avg_len(res)==1.4:   180.678K ops/sec
      trie.values(prefix="xxxxx..xx"), avg_len(res)==1.4: 503.392K ops/sec
      trie.items(prefix="xxx"), NON_EXISTING:             2023.647K ops/sec
      trie.keys(prefix="xxx"), NON_EXISTING:              1976.928K ops/sec
      trie.values(prefix="xxx"), NON_EXISTING:            2060.372K ops/sec

  Random insert time is very slow compared to dict, this is the limitation
  of double-array tries; updates are quite fast. If you want to build a trie,
  consider sorting keys before the insertion::

      dict __setitem__ (updates):            6.497M ops/sec
      trie __setitem__ (updates):            2.633M ops/sec
      dict __setitem__ (inserts, random):    5.808M ops/sec
      trie __setitem__ (inserts, random):    0.053M ops/sec
      dict __setitem__ (inserts, sorted):    5.749M ops/sec
      trie __setitem__ (inserts, sorted):    0.624M ops/sec
      dict setdefault (updates):             3.455M ops/sec
      trie setdefault (updates):             1.910M ops/sec
      dict setdefault (inserts):             3.466M ops/sec
      trie setdefault (inserts):             0.053M ops/sec

  Other results (note that ``len(trie)`` is currently implemented
  using trie traversal)::

      dict __contains__ (hits):    6.801M ops/sec
      trie __contains__ (hits):    2.816M ops/sec
      dict __contains__ (misses):  5.470M ops/sec
      trie __contains__ (misses):  4.224M ops/sec
      dict __len__:                334336.269 ops/sec
      trie __len__:                22.900 ops/sec
      dict values():               406.507 ops/sec
      trie values():               20.864 ops/sec
      dict keys():                 189.298 ops/sec
      trie keys():                 2.773 ops/sec
      dict items():                48.734 ops/sec
      trie items():                2.611 ops/sec

  Please take this benchmark results with a grain of salt; this
  is a very simple benchmark and may not cover your use case.

  Current Limitations
  ===================

  * keys must be unicode (no implicit conversion for byte strings
    under Python 2.x, sorry);
  * there are no iterator versions of keys/values/items (this is not
    implemented yet);
  * it is painfully slow and maybe buggy under pypy;
  * library is not tested with narrow Python builds.

  Contributing
  ============

  Development happens at github and bitbucket:

  * https://github.com/kmike/datrie
  * https://bitbucket.org/kmike/datrie

  The main issue tracker is at github.

  Feel free to submit ideas, bugs, pull requests (git or hg) or
  regular patches.

  Running tests and benchmarks
  ----------------------------

  Make sure `tox`_ is installed and run

  ::

      $ tox

  from the source checkout. Tests should pass under python 2.6, 2.7 and 3.2.

  ::

      $ tox -c tox-bench.ini

  runs benchmarks.

  If you've changed anything in the source code then
  make sure `cython`_ is installed and run

  ::

      $ update_c.sh

  before each ``tox`` command.

  Please note that benchmarks are not included in the release
  tar.gz's because benchmark data is large and this
  saves a lot of bandwidth; use source checkouts from
  github or bitbucket for the benchmarks.

  .. _cython: http://cython.org
  .. _tox: http://tox.testrun.org

  Authors & Contributors
  ----------------------

  * Mikhail Korobov <kmike84@gmail.com>
  * Jared Suttles
  * Gabi Davar
  * Ahmed T. Youssef

  This module is based on `libdatrie`_ C library by Theppitak Karoonboonyanan
  and is inspired by `fast_trie`_ Ruby bindings, `PyTrie`_ pure
  Python implementation and `Tree::Trie`_ Perl implementation;
  some docs and API ideas are borrowed from these projects.

  .. _fast_trie: https://github.com/tyler/trie
  .. _PyTrie: https://bitbucket.org/gsakkis/pytrie
  .. _Tree::Trie: http://search.cpan.org/~avif/Tree-Trie-1.9/Trie.pm

  License
  =======

  Licensed under LGPL v2.1.

  CHANGES
  =======

  0.7 (2014-02-18)
  ----------------

  * bundled libdatrie C library is updated to version 0.2.8;
  * new `.suffixes()` method (thanks Ahmed T. Youssef);
  * wrapper is rebuilt with Cython 0.20.1.

  0.6.1 (2013-09-21)
  ------------------

  * fixed build for Visual Studio (thanks Gabi Davar).

  0.6 (2013-07-09)
  ----------------

  * datrie is rebuilt with Cython 0.19.1;
  * ``iter_prefix_values``, ``prefix_values`` and ``longest_prefix_value``
    methods for ``datrie.BaseTrie`` and ``datrie.Trie`` (thanks Jared Suttles).

  0.5.1 (2013-01-30)
  ------------------

  * Recently introduced memory leak in ``longest_prefix``
    and ``longest_prefix_item`` is fixed.

  0.5 (2013-01-29)
  ----------------

  * ``longest_prefix`` and ``longest_prefix_item`` methods are fixed;
  * datrie is rebuilt with Cython 0.18;
  * misleading benchmark results in README are fixed;
  * State._walk is renamed to State.walk_char.

  0.4.2 (2012-09-02)
  ------------------

  * Update to latest libdatrie; this makes ``.keys()`` method a bit slower but
    removes a keys length limitation.

  0.4.1 (2012-07-29)
  ------------------

  * cPickle is used for saving/loading ``datrie.Trie`` if it is available.

  0.4 (2012-07-27)
  ----------------

  * ``libdatrie`` improvements and bugfixes, including C iterator API support;
  * custom iteration support using ``datrie.State`` and ``datrie.Iterator``.
  * speed improvements: ``__length__``, ``keys``, ``values`` and
    ``items`` methods should be up to 2x faster.
  * keys longer than 32768 are not supported in this release.


  0.3 (2012-07-21)
  ----------------

  There are no new features or speed improvements in this release.

  * ``datrie.new`` is deprecated; use ``datrie.Trie`` with the same arguments;
  * small test & benchmark improvements.

  0.2 (2012-07-16)
  ----------------

  * ``datrie.Trie`` items can have any Python object as a value
    (``Trie`` from 0.1.x becomes ``datrie.BaseTrie``);
  * ``longest_prefix`` and ``longest_prefix_items`` are fixed;
  * ``save`` & ``load`` are rewritten;
  * ``setdefault`` method.


  0.1.1 (2012-07-13)
  ------------------

  * Windows support (upstream libdatrie changes are merged);
  * license is changed from LGPL v3 to LGPL v2.1 to match the libdatrie license.

  0.1 (2012-07-12)
  ----------------

  Initial release.


pkgId: 74ab0be64bdd2dba79b2a13fed34ef1e8de6593dc352c416ee6fa37fca2c05f4
name: datrie-debuginfo
arch: x86_64
version: 0.7
epoch: 0
release: 1
summary: Debug information for package datrie
url: https://github.com/kmike/datrie
rpm_license: LGPLv2+
rpm_vendor: Mikhail Korobov <kmike84@gmail.com>
rpm_group: Development/Debug
rpm_buildhost: 7aa5783a47d5
rpm_sourcerpm: datrie-0.7-1.src.rpm
rpm_packager: Shaun Crampton <shaun@projectcalico.org>
location_href: x86_64/datrie-debuginfo-0.7-1.x86_64.rpm
checksum_type: sha256
description:
  This package provides debug information for package datrie.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: 8c6880a72942f2a9c6df8ccf21d415b7ff44f9611eb9fdbe08c8aa4a82ac3187
name: posix-spawn-debuginfo
arch: x86_64
version: 0.2.post7
epoch: 0
release: 1
summary: Debug information for package posix-spawn
rpm_license: MIT
rpm_vendor: UNKNOWN <UNKNOWN>
rpm_group: Development/Debug
rpm_buildhost: 7aa5783a47d5
rpm_sourcerpm: posix-spawn-0.2.post7-1.src.rpm
rpm_packager: Shaun Crampton <shaun@projectcalico.org>
location_href: x86_64/posix-spawn-debuginfo-0.2.post7-1.x86_64.rpm
checksum_type: sha256
description:
  This package provides debug information for package posix-spawn.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


