# packages

pkgId: 62736e12a5edd5cfcd1bf9ed8a760400b87bb3cdef02d1d186b1ad8b63b85d03
name: ansible-tower-cli
arch: noarch
version: 3.3.0
epoch: 0
release: 2.el7
summary: Commandline interface for Ansible Tower
url: https://github.com/ansible/tower-cli
rpm_license: ASL 2.0
rpm_group: Development/Tools
rpm_buildhost: f8229425d32d40ffbe3c6aa11402131d
rpm_sourcerpm: ansible-tower-cli-3.3.0-2.el7.src.rpm
location_href: 01387019-ansible-tower-cli/ansible-tower-cli-3.3.0-2.el7.noarch.rpm
checksum_type: sha256
description:
  ansible-tower-cli is a command line tool for Ansible Tower. It allows Tower
  commands to be easily run from the Unix command line. It can also be
  used as a client library for other python apps, or as a reference for
  others developing API interactions with Tower's REST API.


pkgId: 226877dd846ddba766107fe4c478a270ea5647beebf1b932b19b1836f0917823
name: lemon
arch: x86_64
version: 3.29.0
epoch: 0
release: 1.el7
summary: A parser generator
url: http://www.sqlite.org/
rpm_license: Public Domain
rpm_group: Development/Tools
rpm_buildhost: a697f928f8014be08ee2fbb35163a41c
rpm_sourcerpm: sqlite-3.29.0-1.el7.src.rpm
location_href: 01387278-sqlite/lemon-3.29.0-1.el7.x86_64.rpm
checksum_type: sha256
description:
  Lemon is an LALR(1) parser generator for C or C++. It does the same
  job as bison and yacc. But lemon is not another bison or yacc
  clone. It uses a different grammar syntax which is designed to reduce
  the number of coding errors. Lemon also uses a more sophisticated
  parsing engine that is faster than yacc and bison and which is both
  reentrant and thread-safe. Furthermore, Lemon implements features
  that can be used to eliminate resource leaks, making is suitable for
  use in long-running programs such as graphical user interfaces or
  embedded controllers.


pkgId: de642066364ea8880eeaa92c65ad440866ec90ab6ee4f735f98fd14d29858a06
name: rh-python36-Automat
arch: noarch
version: 20.2.0
epoch: 0
release: 1
summary: Self-service finite-state machines for the programmer on the go.
url: https://github.com/glyph/Automat
rpm_license: MIT
rpm_vendor: Glyph <glyph@twistedmatrix.com>
rpm_group: Development/Libraries
rpm_buildhost: 7a40777b47d846c6aa3d315ec8e056d5
rpm_sourcerpm: rh-python36-Automat-20.2.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387096-rh-python36-Automat/rh-python36-Automat-20.2.0-1.noarch.rpm
checksum_type: sha256
description:
  [![Build Status](https://travis-ci.org/glyph/automat.svg?branch=master)](https://travis-ci.org/glyph/automat)
  [![Coverage Status](https://coveralls.io/repos/glyph/automat/badge.png)](https://coveralls.io/r/glyph/automat)



  Automat is a library for concise, idiomatic Python expression of finite-state
  automata (particularly deterministic finite-state transducers).



  Sometimes you have to create an object whose behavior varies with its state,
  but still wishes to present a consistent interface to its callers.

  For example, let's say you're writing the software for a coffee machine.  It
  has a lid that can be opened or closed, a chamber for water, a chamber for
  coffee beans, and a button for "brew".

  There are a number of possible states for the coffee machine.  It might or
  might not have water.  It might or might not have beans.  The lid might be open
  or closed.  The "brew" button should only actually attempt to brew coffee in
  one of these configurations, and the "open lid" button should only work if the
  coffee is not, in fact, brewing.

  With diligence and attention to detail, you can implement this correctly using
  a collection of attributes on an object; `has_water`, `has_beans`,
  `is_lid_open` and so on.  However, you have to keep all these attributes
  consistent.  As the coffee maker becomes more complex - perhaps you add an
  additional chamber for flavorings so you can make hazelnut coffee, for
  example - you have to keep adding more and more checks and more and more
  reasoning about which combinations of states are allowed.

  Rather than adding tedious 'if' checks to every single method to make sure that
  each of these flags are exactly what you expect, you can use a state machine to
  ensure that if your code runs at all, it will be run with all the required
  values initialized, because they have to be called in the order you declare
  them.

  You can read about state machines and their advantages for Python programmers
  in considerably more detail
  [in this excellent series of articles from ClusterHQ](https://clusterhq.com/blog/what-is-a-state-machine/).



  There are
  [dozens of libraries on PyPI implementing state machines](https://pypi.org/search/?q=finite+state+machine).
  So it behooves me to say why yet another one would be a good idea.

  Automat is designed around this principle: while organizing your code around
  state machines is a good idea, your callers don't, and shouldn't have to, care
  that you've done so.  In Python, the "input" to a stateful system is a method
  call; the "output" may be a method call, if you need to invoke a side effect,
  or a return value, if you are just performing a computation in memory.  Most
  other state-machine libraries require you to explicitly create an input object,
  provide that object to a generic "input" method, and then receive results,
  sometimes in terms of that library's interfaces and sometimes in terms of
  classes you define yourself.

  For example, a snippet of the coffee-machine example above might be implemented
  as follows in naive Python:

  ```python
  class CoffeeMachine(object):
      def brew_button(self):
          if self.has_water and self.has_beans and not self.is_lid_open:
              self.heat_the_heating_element()
              
  ```

  With Automat, you'd create a class with a `MethodicalMachine` attribute:

  ```python
  from automat import MethodicalMachine

  class CoffeeBrewer(object):
      _machine = MethodicalMachine()
  ```

  and then you would break the above logic into two pieces - the `brew_button`
  *input*, declared like so:

  ```python
      @_machine.input()
      def brew_button(self):
          "The user pressed the 'brew' button."
  ```

  It wouldn't do any good to declare a method *body* on this, however, because
  input methods don't actually execute their bodies when called; doing actual
  work is the *output*'s job:

  ```python
      @_machine.output()
      def _heat_the_heating_element(self):
          "Heat up the heating element, which should cause coffee to happen."
          self._heating_element.turn_on()
  ```

  As well as a couple of *states* - and for simplicity's sake let's say that the
  only two states are `have_beans` and `dont_have_beans`:

  ```python
      @_machine.state()
      def have_beans(self):
          "In this state, you have some beans."
      @_machine.state(initial=True)
      def dont_have_beans(self):
          "In this state, you don't have any beans."
  ```

  `have_beans` is the `initial` state because `CoffeeBrewer` starts without beans
  in it.

  (And another input to put some beans in:)

  ```python
      @_machine.input()
      def put_in_beans(self):
          "The user put in some beans."
  ```

  Finally, you hook everything together with the `upon` method of the functions
  decorated with `machine.state`:

  ```python

      
      
      dont_have_beans.upon(put_in_beans, enter=have_beans, outputs=[])

      
      
      
      have_beans.upon(brew_button, enter=dont_have_beans,
                      outputs=[_heat_the_heating_element])
  ```

  To *users* of this coffee machine class though, it still looks like a POPO
  (Plain Old Python Object):

  ```python
  >>> coffee_machine = CoffeeMachine()
  >>> coffee_machine.put_in_beans()
  >>> coffee_machine.brew_button()
  ```

  All of the *inputs* are provided by calling them like methods, all of the
  *outputs* are automatically invoked when they are produced according to the
  outputs specified to `upon` and all of the states are simply opaque tokens -
  although the fact that they're defined as methods like inputs and outputs
  allows you to put docstrings on them easily to document them.



  Don't do that.

  One major reason for having a state machine is that you want the callers of the
  state machine to just provide the appropriate input to the machine at the
  appropriate time, and *not have to check themselves* what state the machine is
  in.  So if you are tempted to write some code like this:

  ```python
  if connection_state_machine.state == "CONNECTED":
      connection_state_machine.send_message()
  else:
      print("not connected")
  ```

  Instead, just make your calling code do this:

  ```python
  connection_state_machine.send_message()
  ```

  and then change your state machine to look like this:

  ```python
      @machine.state()
      def connected(self):
          "connected"
      @machine.state()
      def not_connected(self):
          "not connected"
      @machine.input()
      def send_message(self):
          "send a message"
      @machine.output()
      def _actually_send_message(self):
          self._transport.send(b"message")
      @machine.output()
      def _report_sending_failure(self):
          print("not connected")
      connected.upon(send_message, enter=connected, [_actually_send_message])
      not_connected.upon(send_message, enter=not_connected, [_report_sending_failure])
  ```

  so that the responsibility for knowing which state the state machine is in
  remains within the state machine itself.



  Quite often you want to be able to pass parameters to your methods, as well as
  inspecting their results.  For example, when you brew the coffee, you might
  expect a cup of coffee to result, and you would like to see what kind of coffee
  it is.  And if you were to put delicious hand-roasted small-batch artisanal
  beans into the machine, you would expect a *better* cup of coffee than if you
  were to use mass-produced beans.  You would do this in plain old Python by
  adding a parameter, so that's how you do it in Automat as well.

  ```python
      @_machine.input()
      def put_in_beans(self, beans):
          "The user put in some beans."
  ```

  However, one important difference here is that *we can't add any
  implementation code to the input method*.  Inputs are purely a declaration of
  the interface; the behavior must all come from outputs.  Therefore, the change
  in the state of the coffee machine must be represented as an output.  We can
  add an output method like this:

  ```python
      @_machine.output()
      def _save_beans(self, beans):
          "The beans are now in the machine; save them."
          self._beans = beans
  ```

  and then connect it to the `put_in_beans` by changing the transition from
  `dont_have_beans` to `have_beans` like so:

  ```python
      dont_have_beans.upon(put_in_beans, enter=have_beans,
                           outputs=[_save_beans])
  ```

  Now, when you call:

  ```python
  coffee_machine.put_in_beans("real good beans")
  ```

  the machine will remember the beans for later.

  So how do we get the beans back out again?  One of our outputs needs to have a
  return value.  It would make sense if our `brew_button` method returned the cup
  of coffee that it made, so we should add an output.  So, in addition to heating
  the heating element, let's add a return value that describes the coffee.  First
  a new output:

  ```python
      @_machine.output()
      def _describe_coffee(self):
          return "A cup of coffee made with {}.".format(self._beans)
  ```

  Note that we don't need to check first whether `self._beans` exists or not,
  because we can only reach this output method if the state machine says we've
  gone through a set of states that sets this attribute.

  Now, we need to hook up `_describe_coffee` to the process of brewing, so change
  the brewing transition to:

  ```python
      have_beans.upon(brew_button, enter=dont_have_beans,
                      outputs=[_heat_the_heating_element,
                               _describe_coffee])
  ```

  Now, we can call it:

  ```python
  >>> coffee_machine.brew_button()
  [None, 'A cup of coffee made with real good beans.']
  ```

  Except... wait a second, what's that `None` doing there?

  Since every input can produce multiple outputs, in automat, the default return
  value from every input invocation is a `list`.  In this case, we have both
  `_heat_the_heating_element` and `_describe_coffee` outputs, so we're seeing
  both of their return values.  However, this can be customized, with the
  `collector` argument to `upon`; the `collector` is a callable which takes an
  iterable of all the outputs' return values and "collects" a single return value
  to return to the caller of the state machine.

  In this case, we only care about the last output, so we can adjust the call to
  `upon` like this:

  ```python
      have_beans.upon(brew_button, enter=dont_have_beans,
                      outputs=[_heat_the_heating_element,
                               _describe_coffee],
                      collector=lambda iterable: list(iterable)[-1]
      )
  ```

  And now, we'll get just the return value we want:

  ```python
  >>> coffee_machine.brew_button()
  'A cup of coffee made with real good beans.'
  ```



  There are APIs for serializing the state machine.

  First, you have to decide on a persistent representation of each state, via the
  `serialized=` argument to the `MethodicalMachine.state()` decorator.

  Let's take this very simple "light switch" state machine, which can be on or
  off, and flipped to reverse its state:

  ```python
  class LightSwitch(object):
      machine = MethodicalMachine()
      @machine.state(serialized="on")
      def on_state(self):
          "the switch is on"
      @machine.state(serialized="off", initial=True)
      def off_state(self):
          "the switch is off"
      @machine.input()
      def flip(self):
          "flip the switch"
      on_state.upon(flip, enter=off_state, outputs=[])
      off_state.upon(flip, enter=on_state, outputs=[])
  ```

  In this case, we've chosen a serialized representation for each state via the
  `serialized` argument.  The on state is represented by the string `"on"`, and
  the off state is represented by the string `"off"`.

  Now, let's just add an input that lets us tell if the switch is on or not.

  ```python
      @machine.input()
      def query_power(self):
          "return True if powered, False otherwise"
      @machine.output()
      def _is_powered(self):
          return True
      @machine.output()
      def _not_powered(self):
          return False
      on_state.upon(query_power, enter=on_state, outputs=[_is_powered],
                    collector=next)
      off_state.upon(query_power, enter=off_state, outputs=[_not_powered],
                     collector=next)
  ```

  To save the state, we have the `MethodicalMachine.serializer()` method.  A
  method decorated with `@serializer()` gets an extra argument injected at the
  beginning of its argument list: the serialized identifier for the state.  In
  this case, either `"on"` or `"off"`.  Since state machine output methods can
  also affect other state on the object, a serializer method is expected to
  return *all* relevant state for serialization.

  For our simple light switch, such a method might look like this:

  ```python
      @machine.serializer()
      def save(self, state):
          return {"is-it-on": state}
  ```

  Serializers can be public methods, and they can return whatever you like.  If
  necessary, you can have different serializers - just multiple methods decorated
  with `@machine.serializer()` - for different formats; return one data-structure
  for JSON, one for XML, one for a database row, and so on.

  When it comes time to unserialize, though, you generally want a private method,
  because an unserializer has to take a not-fully-initialized instance and
  populate it with state.  It is expected to *return* the serialized machine
  state token that was passed to the serializer, but it can take whatever
  arguments you like.  Of course, in order to return that, it probably has to
  take it somewhere in its arguments, so it will generally take whatever a paired
  serializer has returned as an argument.

  So our unserializer would look like this:

  ```python
      @machine.unserializer()
      def _restore(self, blob):
          return blob["is-it-on"]
  ```

  Generally you will want a classmethod deserialization constructor which you
  write yourself to call this, so that you know how to create an instance of your
  own object, like so:

  ```python
      @classmethod
      def from_blob(cls, blob):
          self = cls()
          self._restore(blob)
          return self
  ```

  Saving and loading our `LightSwitch` along with its state-machine state can now
  be accomplished as follows:

  ```python
  >>> switch1 = LightSwitch()
  >>> switch1.query_power()
  False
  >>> switch1.flip()
  []
  >>> switch1.query_power()
  True
  >>> blob = switch1.save()
  >>> switch2 = LightSwitch.from_blob(blob)
  >>> switch2.query_power()
  True
  ```

  More comprehensive (tested, working) examples are present in `docs/examples`.

  Go forth and machine all the state!


pkgId: a64409f53b118f3d2356d740803626ca15a07ff833e9ebaf9b3b954c4a0fc719
name: rh-python36-Click
arch: noarch
version: 7.1.1
epoch: 0
release: 1
summary: Composable command line interface toolkit
url: https://palletsprojects.com/p/click/
rpm_license: BSD
rpm_vendor: Pallets Team <contact@palletsprojects.com>
rpm_group: Development/Libraries
rpm_buildhost: 6328fc0ee3044647812801ead9bcd437
rpm_sourcerpm: rh-python36-Click-7.1.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387023-rh-python36-Click/rh-python36-Click-7.1.1-1.noarch.rpm
checksum_type: sha256
description:
  \$ click\_
  ==========

  Click is a Python package for creating beautiful command line interfaces
  in a composable way with as little code as necessary. It's the "Command
  Line Interface Creation Kit". It's highly configurable but comes with
  sensible defaults out of the box.

  It aims to make the process of writing command line tools quick and fun
  while also preventing any frustration caused by the inability to
  implement an intended CLI API.

  Click in three points:

  -   Arbitrary nesting of commands
  -   Automatic help page generation
  -   Supports lazy loading of subcommands at runtime


  Installing
  ----------

  Install and update using `pip`_:

  .. code-block:: text

      $ pip install click

  Click supports Python 3.4 and newer, Python 2.7, and PyPy.

  .. _pip: https://pip.pypa.io/en/stable/quickstart/


  A Simple Example
  ----------------

  What does it look like? Here is an example of a simple Click program:

  .. code-block:: python

      import click

      @click.command()
      @click.option("--count", default=1, help="Number of greetings.")
      @click.option("--name", prompt="Your name",
                    help="The person to greet.")
      def hello(count, name):
          """Simple program that greets NAME for a total of COUNT times."""
          for _ in range(count):
              click.echo("Hello, %s!" % name)

      if __name__ == '__main__':
          hello()

  And what it looks like when run:

  .. code-block:: text

      $ python hello.py --count=3
      Your name: Click
      Hello, Click!
      Hello, Click!
      Hello, Click!


  Donate
  ------

  The Pallets organization develops and supports Click and other popular
  packages. In order to grow the community of contributors and users, and
  allow the maintainers to devote more time to the projects, `please
  donate today`_.

  .. _please donate today: https://palletsprojects.com/donate


  Links
  -----

  *   Website: https://palletsprojects.com/p/click/
  *   Documentation: https://click.palletsprojects.com/
  *   License: `BSD <https://github.com/pallets/click/blob/master/LICENSE.rst>`_
  *   Releases: https://pypi.org/project/click/
  *   Code: https://github.com/pallets/click
  *   Issue tracker: https://github.com/pallets/click/issues
  *   Test status:

      *   Linux, Mac: https://travis-ci.org/pallets/click
      *   Windows: https://ci.appveyor.com/project/pallets/click

  *   Test coverage: https://codecov.io/gh/pallets/click


pkgId: fdf86fe9e9806144affb259fef0a09a30e9eff8a535ed9adbd45cf0bc3e48506
name: rh-python36-Flask
arch: noarch
version: 1.1.1
epoch: 0
release: 1
summary: A simple framework for building complex web applications.
url: https://www.palletsprojects.com/p/flask/
rpm_license: BSD
rpm_vendor: Pallets team <contact@palletsprojects.com>
rpm_group: Development/Libraries
rpm_buildhost: 356a256e3e394aa998c7287741a14997
rpm_sourcerpm: rh-python36-Flask-1.1.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387027-rh-python36-Flask/rh-python36-Flask-1.1.1-1.noarch.rpm
checksum_type: sha256
description:
  Flask
  =====

  Flask is a lightweight `WSGI`_ web application framework. It is designed
  to make getting started quick and easy, with the ability to scale up to
  complex applications. It began as a simple wrapper around `Werkzeug`_
  and `Jinja`_ and has become one of the most popular Python web
  application frameworks.

  Flask offers suggestions, but doesn't enforce any dependencies or
  project layout. It is up to the developer to choose the tools and
  libraries they want to use. There are many extensions provided by the
  community that make adding new functionality easy.


  Installing
  ----------

  Install and update using `pip`_:

  .. code-block:: text

      pip install -U Flask


  A Simple Example
  ----------------

  .. code-block:: python

      from flask import Flask

      app = Flask(__name__)

      @app.route('/')
      def hello():
          return 'Hello, World!'

  .. code-block:: text

      $ FLASK_APP=hello.py flask run
       * Serving Flask app "hello"
       * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)


  Donate
  ------

  The Pallets organization develops and supports Flask and the libraries
  it uses. In order to grow the community of contributors and users, and
  allow the maintainers to devote more time to the projects, `please
  donate today`_.

  .. _please donate today: https://psfmember.org/civicrm/contribute/transact?reset=1&id=20


  Links
  -----

  * Website: https://www.palletsprojects.com/p/flask/
  * Documentation: http://flask.pocoo.org/docs/
  * License: `BSD <https://github.com/pallets/flask/blob/master/LICENSE>`_
  * Releases: https://pypi.org/project/Flask/
  * Code: https://github.com/pallets/flask
  * Issue tracker: https://github.com/pallets/flask/issues
  * Test status:

    * Linux, Mac: https://travis-ci.org/pallets/flask
    * Windows: https://ci.appveyor.com/project/pallets/flask

  * Test coverage: https://codecov.io/gh/pallets/flask

  .. _WSGI: https://wsgi.readthedocs.io
  .. _Werkzeug: https://www.palletsprojects.com/p/werkzeug/
  .. _Jinja: https://www.palletsprojects.com/p/jinja/
  .. _pip: https://pip.pypa.io/en/stable/quickstart/


pkgId: 37fb2edd524a5a6d5e0c177021e7df6b0e510272b61b3d98737179c0c4cdf1cf
name: rh-python36-Flask-SQLAlchemy
arch: noarch
version: 2.4.0
epoch: 0
release: 1
summary: Adds SQLAlchemy support to your Flask application.
url: https://github.com/pallets/flask-sqlalchemy
rpm_license: BSD-3-Clause
rpm_vendor: Pallets <contact@palletsprojects.com>
rpm_group: Development/Libraries
rpm_buildhost: ae0da20826e34cf1bae0916a915c0c53
rpm_sourcerpm: rh-python36-Flask-SQLAlchemy-2.4.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387030-rh-python36-Flask-SQLAlchemy/rh-python36-Flask-SQLAlchemy-2.4.0-1.noarch.rpm
checksum_type: sha256
description:
  Flask-SQLAlchemy
  ================

  Flask-SQLAlchemy is an extension for `Flask`_ that adds support for
  `SQLAlchemy`_ to your application. It aims to simplify using SQLAlchemy
  with Flask by providing useful defaults and extra helpers that make it
  easier to accomplish common tasks.


  Installing
  ----------

  Install and update using `pip`_:

  .. code-block:: text

    $ pip install -U Flask-SQLAlchemy


  A Simple Example
  ----------------

  .. code-block:: python

      from flask import Flask
      from flask_sqlalchemy import SQLAlchemy

      app = Flask(__name__)
      app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///example.sqlite"
      db = SQLAlchemy(app)


      class User(db.Model):
          id = db.Column(db.Integer, primary_key=True)
          username = db.Column(db.String, unique=True, nullable=False)
          email = db.Column(db.String, unique=True, nullable=False)


      db.session.add(User(name="Flask", email="example@example.com"))
      db.session.commit()

      users = User.query.all()


  Links
  -----

  -   Documentation: https://flask-sqlalchemy.palletsprojects.com/
  -   Releases: https://pypi.org/project/Flask-SQLAlchemy/
  -   Code: https://github.com/pallets/flask-sqlalchemy
  -   Issue tracker: https://github.com/pallets/flask-sqlalchemy/issues
  -   Test status: https://travis-ci.org/pallets/flask-sqlalchemy
  -   Test coverage: https://codecov.io/gh/pallets/flask-sqlalchemy

  .. _Flask: https://palletsprojects.com/p/flask/
  .. _SQLAlchemy: https://www.sqlalchemy.org
  .. _pip: https://pip.pypa.io/en/stable/quickstart/


pkgId: 9789e519f20a14d43df11c345b9f6a31ad296f5a60aa20de8e4290d8993ab0a7
name: rh-python36-Flask-Script
arch: noarch
version: 2.0.6
epoch: 0
release: 1
summary: Scripting support for Flask
url: http://github.com/smurfix/flask-script
rpm_license: BSD
rpm_vendor: Matthias Urlichs <matthias@urlichs.de>
rpm_group: Development/Libraries
rpm_buildhost: 4f9b2bb3587244dab7bbf0a1a369499a
rpm_sourcerpm: rh-python36-Flask-Script-2.0.6-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387026-rh-python36-Flask-Script/rh-python36-Flask-Script-2.0.6-1.noarch.rpm
checksum_type: sha256
description:
  Flask-Script
  --------------

  Flask support for writing external scripts.

  Links
  `````

  * `documentation <http://flask-script.readthedocs.org>`_


pkgId: ba4ea0e3890cab9cdb188a965e31f7b3a66bbeacfa83d6eab67e6c9a73398c3c
name: rh-python36-Flask-XStatic
arch: noarch
version: 0.0.1
epoch: 0
release: 1
summary: Flask support for XStatic assets
url: https://github.com/emillon/flask-xstatic
rpm_license: BSD
rpm_vendor: Etienne Millon <me@emillon.org>
rpm_group: Development/Libraries
rpm_buildhost: 272b575d053b4a80a957fad661d87d37
rpm_sourcerpm: rh-python36-Flask-XStatic-0.0.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387029-rh-python36-Flask-XStatic/rh-python36-Flask-XStatic-0.0.1-1.noarch.rpm
checksum_type: sha256
description:
  Flask support for XStatic assets
  --------------------------------

  |Build Status| |Coverage Status|

  **Flask** is a Python microframework for building websites.

  **XStatic** is a format for packaging static assets. For example, XStatic-jQuery
  is jquery in a form that you can `pip install`.

  This (**Flask-XStatic**) is a Flask extension that simplifies using XStatic
  assets in your project.

  .. |Build Status| image:: https://img.shields.io/travis/emillon/flask-xstatic/master.svg
     :target: http://travis-ci.org/emillon/flask-xstatic
  .. |Coverage Status| image:: https://img.shields.io/coveralls/emillon/flask-xstatic/master.svg
     :target: https://coveralls.io/r/emillon/flask-xstatic


  Changelog
  =========

  0.0.1
  -----
  **release date:** 2015-01-30

  * Initial release


pkgId: a182d3bcbf730d1d32c024672fa477de9273161d95d9a102655227a7ced55204
name: rh-python36-Frozen-Flask
arch: noarch
version: 0.15
epoch: 0
release: 1
summary: Freezes a Flask application into a set of static files.
url: https://github.com/Frozen-Flask/Frozen-Flask
rpm_license: BSD
rpm_vendor: Simon Sapin <simon.sapin@exyr.org>
rpm_group: Development/Libraries
rpm_buildhost: c9561aace71243bda7aebe8c9d5fecbb
rpm_sourcerpm: rh-python36-Frozen-Flask-0.15-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387037-rh-python36-Frozen-Flask/rh-python36-Frozen-Flask-0.15-1.noarch.rpm
checksum_type: sha256
description:
  Frozen-Flask
  ------------

  Freezes a Flask application into a set of static files. The result can be hosted
  without any server-side software other than a traditional web server.

  Links
  `````

  * `documentation <http://pythonhosted.org/Frozen-Flask/>`_
  * `development version
    <http://github.com/Frozen-Flask/Frozen-Flask/zipball/master#egg=Frozen-Flask-dev>`_


pkgId: c58e47430cf07828c37ed52a55aedeed0b7257645f3246136da762a230805c93
name: rh-python36-Mako
arch: noarch
version: 1.0.10
epoch: 0
release: 1
url: https://www.makotemplates.org/
rpm_license: MIT
rpm_vendor: Mike Bayer <mike@zzzcomputing.com>
rpm_group: Development/Libraries
rpm_buildhost: 40fbaa58f59b4c7e85ab3dccebae0ff1
rpm_sourcerpm: rh-python36-Mako-1.0.10-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387051-rh-python36-Mako/rh-python36-Mako-1.0.10-1.noarch.rpm
checksum_type: sha256
summary:
  A super-fast templating language that borrows the  best ideas from the existing templating languages.

description:
  =========================
  Mako Templates for Python
  =========================

  Mako is a template library written in Python. It provides a familiar, non-XML
  syntax which compiles into Python modules for maximum performance. Mako's
  syntax and API borrows from the best ideas of many others, including Django
  templates, Cheetah, Myghty, and Genshi. Conceptually, Mako is an embedded
  Python (i.e. Python Server Page) language, which refines the familiar ideas
  of componentized layout and inheritance to produce one of the most
  straightforward and flexible models available, while also maintaining close
  ties to Python calling and scoping semantics.

  Nutshell
  ========

  ::

      <%inherit file="base.html"/>
      <%
          rows = [[v for v in range(0,10)] for row in range(0,10)]
      %>
      <table>
          % for row in rows:
              ${makerow(row)}
          % endfor
      </table>

      <%def name="makerow(row)">
          <tr>
          % for name in row:
              <td>${name}</td>\
          % endfor
          </tr>
      </%def>

  Philosophy
  ===========

  Python is a great scripting language. Don't reinvent the wheel...your templates can handle it !

  Documentation
  ==============

  See documentation for Mako at https://docs.makotemplates.org/en/latest/

  License
  ========

  Mako is licensed under an MIT-style license (see LICENSE).
  Other incorporated projects may be licensed under different licenses.
  All licenses allow for non-commercial and commercial use.


pkgId: 0128ce47413c9cc29d828e7e3055f1af519e277805ef3d26b3dfc3e3212d6379
name: rh-python36-Markdown
arch: noarch
version: 3.2.1
epoch: 0
release: 1
summary: Python implementation of Markdown.
url: https://Python-Markdown.github.io/
rpm_license: BSD License
rpm_vendor: Waylan Limberg <waylan.limberg@icloud.com>
rpm_group: Development/Libraries
rpm_buildhost: 7a900d440f064c509eb005fff2fc22d6
rpm_sourcerpm: rh-python36-Markdown-3.2.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387106-rh-python36-Markdown/rh-python36-Markdown-3.2.1-1.noarch.rpm
checksum_type: sha256
description:
  This is a Python implementation of John Gruber's Markdown_.
  It is almost completely compliant with the reference implementation,
  though there are a few known issues. See Features_ for information
  on what exactly is supported and what is not. Additional features are
  supported by the `Available Extensions`_.

  .. _Markdown: http://daringfireball.net/projects/markdown/
  .. _Features: https://Python-Markdown.github.io#features
  .. _`Available Extensions`: https://Python-Markdown.github.io/extensions/

  Support
  =======

  You may ask for help and discuss various other issues on the
  `mailing list`_ and report bugs on the `bug tracker`_.

  .. _`mailing list`: http://lists.sourceforge.net/lists/listinfo/python-markdown-discuss
  .. _`bug tracker`: http://github.com/Python-Markdown/markdown/issues


pkgId: 6b75faa80661839d8af546f71e0045e72dfeb053eb50736b2746cf180806a543
name: rh-python36-PyHamcrest
arch: noarch
version: 2.0.2
epoch: 0
release: 1
summary: Hamcrest framework for matcher objects
url: https://github.com/hamcrest/PyHamcrest
rpm_license: New BSD
rpm_vendor: Chris Rose <offline@offby1.net>
rpm_group: Development/Libraries
rpm_buildhost: 34458e716132459290e20f4acef703c6
rpm_sourcerpm: rh-python36-PyHamcrest-2.0.2-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387271-rh-python36-PyHamcrest/rh-python36-PyHamcrest-2.0.2-1.noarch.rpm
checksum_type: sha256
description:
  PyHamcrest
  ==========

  | |docs| |travis| |coveralls| |landscape| |scrutinizer| |codeclimate|
  | |version| |downloads| |wheel| |supported-versions| |supported-implementations|

  .. |docs| image:: https://readthedocs.org/projects/pyhamcrest/badge/?style=flat
      :target: https://pyhamcrest.readthedocs.org/
      :alt: Documentation Status

  .. |travis| image:: http://img.shields.io/travis/hamcrest/PyHamcrest/master.png?style=flat
      :alt: Travis-CI Build Status
      :target: https://travis-ci.org/hamcrest/PyHamcrest

  .. |appveyor| image:: https://ci.appveyor.com/api/projects/status/github/hamcrest/PyHamcrest?branch=master
      :alt: AppVeyor Build Status
      :target: https://ci.appveyor.com/project/hamcrest/PyHamcrest

  .. |coveralls| image:: http://img.shields.io/coveralls/hamcrest/PyHamcrest/master.png?style=flat
      :alt: Coverage Status
      :target: https://coveralls.io/r/hamcrest/PyHamcrest

  .. |landscape| image:: https://landscape.io/github/hamcrest/PyHamcrest/master/landscape.svg?style=flat
      :target: https://landscape.io/github/hamcrest/PyHamcrest/master
      :alt: Code Quality Status

  .. |codeclimate| image:: https://codeclimate.com/github/hamcrest/PyHamcrest/badges/gpa.svg
     :target: https://codeclimate.com/github/hamcrest/PyHamcrest
     :alt: Code Climate

  .. |version| image:: http://img.shields.io/pypi/v/PyHamcrest.png?style=flat
      :alt: PyPI Package latest release
      :target: https://pypi.python.org/pypi/PyHamcrest

  .. |downloads| image:: http://img.shields.io/pypi/dm/PyHamcrest.png?style=flat
      :alt: PyPI Package monthly downloads
      :target: https://pypi.python.org/pypi/PyHamcrest

  .. |wheel| image:: https://pypip.in/wheel/PyHamcrest/badge.png?style=flat
      :alt: PyPI Wheel
      :target: https://pypi.python.org/pypi/PyHamcrest

  .. |supported-versions| image:: https://pypip.in/py_versions/PyHamcrest/badge.png?style=flat
      :alt: Supported versions
      :target: https://pypi.python.org/pypi/PyHamcrest

  .. |supported-implementations| image:: https://pypip.in/implementation/PyHamcrest/badge.png?style=flat
      :alt: Supported imlementations
      :target: https://pypi.python.org/pypi/PyHamcrest

  .. |scrutinizer| image:: https://img.shields.io/scrutinizer/g/hamcrest/PyHamcrest/master.png?style=flat
      :alt: Scrtinizer Status
      :target: https://scrutinizer-ci.com/g/hamcrest/PyHamcrest/


  Introduction
  ============

  PyHamcrest is a framework for writing matcher objects, allowing you to
  declaratively define "match" rules. There are a number of situations where
  matchers are invaluable, such as UI validation, or data filtering, but it is in
  the area of writing flexible tests that matchers are most commonly used. This
  tutorial shows you how to use PyHamcrest for unit testing.

  When writing tests it is sometimes difficult to get the balance right between
  overspecifying the test (and making it brittle to changes), and not specifying
  enough (making the test less valuable since it continues to pass even when the
  thing being tested is broken). Having a tool that allows you to pick out
  precisely the aspect under test and describe the values it should have, to a
  controlled level of precision, helps greatly in writing tests that are "just
  right." Such tests fail when the behavior of the aspect under test deviates
  from the expected behavior, yet continue to pass when minor, unrelated changes
  to the behaviour are made.

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

  Hamcrest can be installed using the usual Python packaging tools. It depends on
  distribute, but as long as you have a network connection when you install, the
  installation process will take care of that for you.

  My first PyHamcrest test
  ========================

  We'll start by writing a very simple PyUnit test, but instead of using PyUnit's
  ``assertEqual`` method, we'll use PyHamcrest's ``assert_that`` construct and
  the standard set of matchers:

  .. code:: python

   from hamcrest import *
   import unittest

   class BiscuitTest(unittest.TestCase):
       def testEquals(self):
           theBiscuit = Biscuit('Ginger')
           myBiscuit = Biscuit('Ginger')
           assert_that(theBiscuit, equal_to(myBiscuit))

   if __name__ == '__main__':
       unittest.main()

  The ``assert_that`` function is a stylized sentence for making a test
  assertion. In this example, the subject of the assertion is the object
  ``theBiscuit``, which is the first method parameter. The second method
  parameter is a matcher for ``Biscuit`` objects, here a matcher that checks one
  object is equal to another using the Python ``==`` operator. The test passes
  since the ``Biscuit`` class defines an ``__eq__`` method.

  If you have more than one assertion in your test you can include an identifier
  for the tested value in the assertion:

  .. code:: python

   assert_that(theBiscuit.getChocolateChipCount(), equal_to(10), 'chocolate chips')
   assert_that(theBiscuit.getHazelnutCount(), equal_to(3), 'hazelnuts')

  As a convenience, assert_that can also be used to verify a boolean condition:

  .. code:: python

   assert_that(theBiscuit.isCooked(), 'cooked')

  This is equivalent to the ``assert_`` method of unittest.TestCase, but because
  it's a standalone function, it offers greater flexibility in test writing.


  Predefined matchers
  ===================

  PyHamcrest comes with a library of useful matchers:

  * Object

    * ``equal_to`` - match equal object
    * ``has_length`` - match ``len()``
    * ``has_property`` - match value of property with given name
    * ``has_properties`` - match an object that has all of the given properties.
    * ``has_string`` - match ``str()``
    * ``instance_of`` - match object type
    * ``none``, ``not_none`` - match ``None``, or not ``None``
    * ``same_instance`` - match same object
    * ``calling, raises`` - wrap a method call and assert that it raises an exception

  * Number

    * ``close_to`` - match number close to a given value
    * ``greater_than``, ``greater_than_or_equal_to``, ``less_than``,
      ``less_than_or_equal_to`` - match numeric ordering

  * Text

    * ``contains_string`` - match part of a string
    * ``ends_with`` - match the end of a string
    * ``equal_to_ignoring_case`` - match the complete string but ignore case
    * ``equal_to_ignoring_whitespace`` - match the complete string but ignore extra whitespace
    * ``matches_regexp`` - match a regular expression in a string
    * ``starts_with`` - match the beginning of a string
    * ``string_contains_in_order`` - match parts of a string, in relative order

  * Logical

    * ``all_of`` - ``and`` together all matchers
    * ``any_of`` - ``or`` together all matchers
    * ``anything`` - match anything, useful in composite matchers when you don't care about a particular value
    * ``is_not`` - negate the matcher

  * Sequence

    * ``contains`` - exactly match the entire sequence
    * ``contains_inanyorder`` - match the entire sequence, but in any order
    * ``has_item`` - match if given item appears in the sequence
    * ``has_items`` - match if all given items appear in the sequence, in any order
    * ``is_in`` - match if item appears in the given sequence
    * ``only_contains`` - match if sequence's items appear in given list
    * ``empty`` - match if the sequence is empty

  * Dictionary

    * ``has_entries`` - match dictionary with list of key-value pairs
    * ``has_entry`` - match dictionary containing a key-value pair
    * ``has_key`` - match dictionary with a key
    * ``has_value`` - match dictionary with a value

  * Decorator

    * ``calling`` - wrap a callable in a deffered object, for subsequent matching on calling behaviour
    * ``raises`` - Ensure that a deferred callable raises as expected
    * ``described_as`` - give the matcher a custom failure description
    * ``is_`` - decorator to improve readability - see `Syntactic sugar` below

  The arguments for many of these matchers accept not just a matching value, but
  another matcher, so matchers can be composed for greater flexibility. For
  example, ``only_contains(less_than(5))`` will match any sequence where every
  item is less than 5.


  Syntactic sugar
  ===============

  PyHamcrest strives to make your tests as readable as possible. For example, the
  ``is_`` matcher is a wrapper that doesn't add any extra behavior to the
  underlying matcher. The following assertions are all equivalent:

  .. code:: python

   assert_that(theBiscuit, equal_to(myBiscuit))
   assert_that(theBiscuit, is_(equal_to(myBiscuit)))
   assert_that(theBiscuit, is_(myBiscuit))

  The last form is allowed since ``is_(value)`` wraps most non-matcher arguments
  with ``equal_to``. But if the argument is a type, it is wrapped with
  ``instance_of``, so the following are also equivalent:

  .. code:: python

   assert_that(theBiscuit, instance_of(Biscuit))
   assert_that(theBiscuit, is_(instance_of(Biscuit)))
   assert_that(theBiscuit, is_(Biscuit))

  *Note that PyHamcrest's ``is_`` matcher is unrelated to Python's ``is``
  operator. The matcher for object identity is ``same_instance``.*


  Writing custom matchers
  =======================

  PyHamcrest comes bundled with lots of useful matchers, but you'll probably find
  that you need to create your own from time to time to fit your testing needs.
  This commonly occurs when you find a fragment of code that tests the same set
  of properties over and over again (and in different tests), and you want to
  bundle the fragment into a single assertion. By writing your own matcher you'll
  eliminate code duplication and make your tests more readable!

  Let's write our own matcher for testing if a calendar date falls on a Saturday.
  This is the test we want to write:

  .. code:: python

   def testDateIsOnASaturday(self):
       d = datetime.date(2008, 04, 26)
       assert_that(d, is_(on_a_saturday()))

  And here's the implementation:

  .. code:: python

   from hamcrest.core.base_matcher import BaseMatcher
   from hamcrest.core.helpers.hasmethod import hasmethod

   class IsGivenDayOfWeek(BaseMatcher):

       def __init__(self, day):
           self.day = day  # Monday is 0, Sunday is 6

       def _matches(self, item):
           if not hasmethod(item, 'weekday'):
               return False
           return item.weekday() == self.day

       def describe_to(self, description):
           day_as_string = ['Monday', 'Tuesday', 'Wednesday', 'Thursday',
                            'Friday', 'Saturday', 'Sunday']
           description.append_text('calendar date falling on ')    \
                      .append_text(day_as_string[self.day])

   def on_a_saturday():
       return IsGivenDayOfWeek(5)

  For our Matcher implementation we implement the ``_matches`` method - which
  calls the ``weekday`` method after confirming that the argument (which may not
  be a date) has such a method - and the ``describe_to`` method - which is used
  to produce a failure message when a test fails. Here's an example of how the
  failure message looks:

  .. code:: python

   assert_that(datetime.date(2008, 04, 06), is_(on_a_saturday()))

  fails with the message::

      AssertionError:
      Expected: is calendar date falling on Saturday
           got: <2008-04-06>

  Let's say this matcher is saved in a module named ``isgivendayofweek``. We
  could use it in our test by importing the factory function ``on_a_saturday``:

  .. code:: python

   from hamcrest import *
   import unittest
   from isgivendayofweek import on_a_saturday

   class DateTest(unittest.TestCase):
       def testDateIsOnASaturday(self):
           d = datetime.date(2008, 04, 26)
           assert_that(d, is_(on_a_saturday()))

   if __name__ == '__main__':
       unittest.main()

  Even though the ``on_a_saturday`` function creates a new matcher each time it
  is called, you should not assume this is the only usage pattern for your
  matcher. Therefore you should make sure your matcher is stateless, so a single
  instance can be reused between matches.


  More resources
  ==============

  * Documentation_
  * Package_
  * Sources_
  * Hamcrest_

  .. _Documentation: http://readthedocs.org/docs/pyhamcrest/en/V1.8.2/
  .. _Package: http://pypi.python.org/pypi/PyHamcrest
  .. _Sources: https://github.com/hamcrest/PyHamcrest
  .. _Hamcrest: http://hamcrest.org


pkgId: c3aa0a4662c1abac45e4e2ade9c29acb7e6ed0641c5fd4eaed917f8de7e256ac
name: rh-python36-PyNaCl
arch: src
version: 1.3.0
epoch: 0
release: 1
summary: Python binding to the Networking and Cryptography (NaCl) library
url: https://github.com/pyca/pynacl/
rpm_license: Apache License 2.0
rpm_vendor: The PyNaCl developers <cryptography-dev@python.org>
rpm_group: Development/Libraries
rpm_buildhost: 74aff53e4507473c98a9491f47dceb36
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387219-rh-python36-PyNaCl/rh-python36-PyNaCl-1.3.0-1.src.rpm
checksum_type: sha256
description:
  ===============================================
  PyNaCl: Python binding to the libsodium library
  ===============================================

  .. image:: https://img.shields.io/pypi/v/pynacl.svg
      :target: https://pypi.python.org/pypi/PyNaCl/
      :alt: Latest Version

  .. image:: https://travis-ci.org/pyca/pynacl.svg?branch=master
      :target: https://travis-ci.org/pyca/pynacl

  .. image:: https://codecov.io/github/pyca/pynacl/coverage.svg?branch=master
      :target: https://codecov.io/github/pyca/pynacl?branch=master

  PyNaCl is a Python binding to `libsodium`_, which is a fork of the
  `Networking and Cryptography library`_. These libraries have a stated goal of
  improving usability, security and speed. It supports Python 2.7 and 3.4+ as
  well as PyPy 2.6+.

  .. _libsodium: https://github.com/jedisct1/libsodium
  .. _Networking and Cryptography library: https://nacl.cr.yp.to/

  Features
  --------

  * Digital signatures
  * Secret-key encryption
  * Public-key encryption
  * Hashing and message authentication
  * Password based key derivation and password hashing

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

  Binary wheel install
  --------------------

  PyNaCl ships as a binary wheel on OS X, Windows and Linux ``manylinux1`` [#many]_ ,
  so all dependencies are included. Make sure you have an up-to-date pip
  and run:

  .. code-block:: console

      $ pip install pynacl

  Linux source build
  ------------------

  PyNaCl relies on `libsodium`_, a portable C library. A copy is bundled
  with PyNaCl so to install you can run:

  .. code-block:: console

      $ pip install pynacl

  If you'd prefer to use the version of ``libsodium`` provided by your
  distribution, you can disable the bundled copy during install by running:

  .. code-block:: console

      $ SODIUM_INSTALL=system pip install pynacl

  .. warning:: Usage of the legacy ``easy_install`` command provided by setuptools
     is generally discouraged, and is completely unsupported in PyNaCl's case.

  .. _libsodium: https://github.com/jedisct1/libsodium

  .. [#many] `manylinux1 wheels <https://www.python.org/dev/peps/pep-0513/>`_
      are built on a baseline linux environment based on Centos 5.11
      and should work on most x86 and x86_64 glibc based linux environments.

  Changelog
  =========

  1.2.1 - 2017-12-04
  ------------------

  * Update hypothesis minumum allowed version.
  * Infrastructure: add proper configuration for readthedocs builder
    runtime environment.

  1.2.0 - 2017-11-01
  ------------------

  * Update ``libsodium`` to 1.0.15.
  * Infrastructure: add jenkins support for automatic build of
    ``manylinux1`` binary wheels
  * Added support for ``SealedBox`` construction.
  * Added support for ``argon2i`` and ``argon2id`` password hashing constructs
    and restructured high-level password hashing implementation to expose
    the same interface for all hashers.
  * Added support for 128 bit ``siphashx24`` variant of ``siphash24``.
  * Added support for ``from_seed`` APIs for X25519 keypair generation.
  * Dropped support for Python 3.3.

  1.1.2 - 2017-03-31
  ------------------

  * reorder link time library search path when using bundled
    libsodium

  1.1.1 - 2017-03-15
  ------------------

  * Fixed a circular import bug in ``nacl.utils``.

  1.1.0 - 2017-03-14
  ------------------

  * Dropped support for Python 2.6.
  * Added ``shared_key()`` method on ``Box``.
  * You can now pass ``None`` to ``nonce`` when encrypting with ``Box`` or
    ``SecretBox`` and it will automatically generate a random nonce.
  * Added support for ``siphash24``.
  * Added support for ``blake2b``.
  * Added support for ``scrypt``.
  * Update ``libsodium`` to 1.0.11.
  * Default to the bundled ``libsodium`` when compiling.
  * All raised exceptions are defined mixing-in
    ``nacl.exceptions.CryptoError``

  1.0.1 - 2016-01-24
  ------------------

  * Fix an issue with absolute paths that prevented the creation of wheels.

  1.0 - 2016-01-23
  ----------------

  * PyNaCl has been ported to use the new APIs available in cffi 1.0+.
    Due to this change we no longer support PyPy releases older than 2.6.
  * Python 3.2 support has been dropped.
  * Functions to convert between Ed25519 and Curve25519 keys have been added.

  0.3.0 - 2015-03-04
  ------------------

  * The low-level API (`nacl.c.*`) has been changed to match the
    upstream NaCl C/C++ conventions (as well as those of other NaCl bindings).
    The order of arguments and return values has changed significantly. To
    avoid silent failures, `nacl.c` has been removed, and replaced with
    `nacl.bindings` (with the new argument ordering). If you have code which
    calls these functions (e.g. `nacl.c.crypto_box_keypair()`), you must review
    the new docstrings and update your code/imports to match the new
    conventions.


pkgId: 1b53f8e65a7d59c04638b765da5a2ceab66597f18bfeb31b46a8e44fb8c8d545
name: rh-python36-PyNaCl-debuginfo
arch: x86_64
version: 1.3.0
epoch: 0
release: 1
summary: Debug information for package rh-python36-PyNaCl
url: https://github.com/pyca/pynacl/
rpm_license: Apache License 2.0
rpm_vendor: The PyNaCl developers <cryptography-dev@python.org>
rpm_group: Development/Debug
rpm_buildhost: 0ae06151aebb45bca3e04750503f0072
rpm_sourcerpm: rh-python36-PyNaCl-1.3.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387219-rh-python36-PyNaCl/rh-python36-PyNaCl-debuginfo-1.3.0-1.x86_64.rpm
checksum_type: sha256
description:
  This package provides debug information for package rh-python36-PyNaCl.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: becaefb0e1c60f5c84a7b935af59aec57a269943a6e47c7a7125335d0067cab4
name: rh-python36-PyYAML
arch: src
version: 5.3
epoch: 0
release: 1
summary: YAML parser and emitter for Python
url: http://pyyaml.org/wiki/PyYAML
rpm_license: MIT
rpm_vendor: Kirill Simonov <xi@resolvent.net>
rpm_group: Development/Libraries
rpm_buildhost: faf41e1fa206479a8acfb6d22dbdc6b8
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387118-rh-python36-PyYAML/rh-python36-PyYAML-5.3-1.src.rpm
checksum_type: sha256
description:
  YAML is a data serialization format designed for human readability
  and interaction with scripting languages.  PyYAML is a YAML parser
  and emitter for Python.

  PyYAML features a complete YAML 1.1 parser, Unicode support, pickle
  support, capable extension API, and sensible error messages.  PyYAML
  supports standard YAML tags and provides Python-specific tags that
  allow to represent an arbitrary Python object.

  PyYAML is applicable for a broad range of tasks from complex
  configuration files to object serialization and persistance.


pkgId: d0f7eca3a06d31dc9e782185fa57fd1a12265fc0b4277d250453cc203e7768a4
name: rh-python36-PyYAML-debuginfo
arch: x86_64
version: 5.3
epoch: 0
release: 1
summary: Debug information for package rh-python36-PyYAML
url: http://pyyaml.org/wiki/PyYAML
rpm_license: MIT
rpm_vendor: Kirill Simonov <xi@resolvent.net>
rpm_group: Development/Debug
rpm_buildhost: c61cdf0133044e60ba58654adf6ec78f
rpm_sourcerpm: rh-python36-PyYAML-5.3-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387118-rh-python36-PyYAML/rh-python36-PyYAML-debuginfo-5.3-1.x86_64.rpm
checksum_type: sha256
description:
  This package provides debug information for package rh-python36-PyYAML.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: 00ca17ce975d1efb423d7ef9c8cd385c33b15ece0345f318bb43f4a8b93d1c70
name: rh-python36-Twisted
arch: src
version: 19.10.0
epoch: 0
release: 1
summary: An asynchronous networking framework written in Python
url: http://twistedmatrix.com/
rpm_license: MIT
rpm_vendor: Glyph Lefkowitz <glyph@twistedmatrix.com>
rpm_group: Development/Libraries
rpm_buildhost: 229fd3d522bb49b5a4d1faf55f15e474
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387175-rh-python36-Twisted/rh-python36-Twisted-19.10.0-1.src.rpm
checksum_type: sha256
description:
  An extensible framework for Python programming, with special focus
  on event-based network programming and multiprotocol integration.


pkgId: d587faa6d807950426b8e1e86ae4f79d590d996a1a8b82ef27d312cd77cedb18
name: rh-python36-Twisted-debuginfo
arch: x86_64
version: 19.10.0
epoch: 0
release: 1
summary: Debug information for package rh-python36-Twisted
url: http://twistedmatrix.com/
rpm_license: MIT
rpm_vendor: Glyph Lefkowitz <glyph@twistedmatrix.com>
rpm_group: Development/Debug
rpm_buildhost: 2df93efc04a3405f98181ca615df8043
rpm_sourcerpm: rh-python36-Twisted-19.10.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387175-rh-python36-Twisted/rh-python36-Twisted-debuginfo-19.10.0-1.x86_64.rpm
checksum_type: sha256
description:
  This package provides debug information for package rh-python36-Twisted.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: 6d89239e52c7d8c155f223ab72ef3b1b176f3886465c402a17913e997fd5efcb
name: rh-python36-Werkzeug
arch: noarch
version: 1.0.0
epoch: 0
release: 1
summary: The comprehensive WSGI web application library.
url: https://palletsprojects.com/p/werkzeug/
rpm_license: BSD-3-Clause
rpm_vendor: The Pallets Team <contact@palletsprojects.com>
rpm_group: Development/Libraries
rpm_buildhost: 07b6903c40924f39ad635937ee049f67
rpm_sourcerpm: rh-python36-Werkzeug-1.0.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387034-rh-python36-Werkzeug/rh-python36-Werkzeug-1.0.0-1.noarch.rpm
checksum_type: sha256
description:
  Werkzeug
  ========

  *werkzeug* German noun: "tool". Etymology: *werk* ("work"), *zeug* ("stuff")

  Werkzeug is a comprehensive `WSGI`_ web application library. It began as
  a simple collection of various utilities for WSGI applications and has
  become one of the most advanced WSGI utility libraries.

  It includes:

  -   An interactive debugger that allows inspecting stack traces and
      source code in the browser with an interactive interpreter for any
      frame in the stack.
  -   A full-featured request object with objects to interact with
      headers, query args, form data, files, and cookies.
  -   A response object that can wrap other WSGI applications and handle
      streaming data.
  -   A routing system for matching URLs to endpoints and generating URLs
      for endpoints, with an extensible system for capturing variables
      from URLs.
  -   HTTP utilities to handle entity tags, cache control, dates, user
      agents, cookies, files, and more.
  -   A threaded WSGI server for use while developing applications
      locally.
  -   A test client for simulating HTTP requests during testing without
      requiring running a server.

  Werkzeug is Unicode aware and doesn't enforce any dependencies. It is up
  to the developer to choose a template engine, database adapter, and even
  how to handle requests. It can be used to build all sorts of end user
  applications such as blogs, wikis, or bulletin boards.

  `Flask`_ wraps Werkzeug, using it to handle the details of WSGI while
  providing more structure and patterns for defining powerful
  applications.


  Installing
  ----------

  Install and update using `pip`_:

  .. code-block:: text

      pip install -U Werkzeug


  A Simple Example
  ----------------

  .. code-block:: python

      from werkzeug.wrappers import Request, Response

      @Request.application
      def application(request):
          return Response('Hello, World!')

      if __name__ == '__main__':
          from werkzeug.serving import run_simple
          run_simple('localhost', 4000, application)


  Links
  -----

  -   Website: https://www.palletsprojects.com/p/werkzeug/
  -   Documentation: https://werkzeug.palletsprojects.com/
  -   Releases: https://pypi.org/project/Werkzeug/
  -   Code: https://github.com/pallets/werkzeug
  -   Issue tracker: https://github.com/pallets/werkzeug/issues
  -   Test status:

      -   Linux, Mac: https://travis-ci.org/pallets/werkzeug
      -   Windows: https://ci.appveyor.com/project/pallets/werkzeug

  -   Test coverage: https://codecov.io/gh/pallets/werkzeug

  .. _WSGI: https://wsgi.readthedocs.io/en/latest/
  .. _Flask: https://www.palletsprojects.com/p/flask/
  .. _pip: https://pip.pypa.io/en/stable/quickstart/


pkgId: 2a6a174af99d9c0cc3cc63c0768ba14152790b75d27a03da52850af1389a99e3
name: rh-python36-XStatic
arch: noarch
version: 1.0.2
epoch: 0
release: 1
summary: XStatic base package with minimal support code
url: https://github.com/xstatic-py/xstatic
rpm_license: MIT license
rpm_vendor: Thomas Waldmann <tw@waldmann-edv.de>
rpm_group: Development/Libraries
rpm_buildhost: b3b13af0a7904e91b08e6c259dfa4b05
rpm_sourcerpm: rh-python36-XStatic-1.0.2-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387028-rh-python36-XStatic/rh-python36-XStatic-1.0.2-1.noarch.rpm
checksum_type: sha256
description:
  XStatic
  -------

  The goal of XStatic family of packages is to provide static file packages
  with minimal overhead - without selling you some dependencies you don't want.

  XStatic has some minimal support code for working with the XStatic-* packages.

  Docs: https://xstatic.readthedocs.io/

  Repository: https://github.com/xstatic-py/xstatic (base package)

  Find more stuff already packaged as xstatic package there:

  https://github.com/xstatic-py/

  https://pypi.org/search/?q=xstatic

  Licenses:

  * MIT license (for XStatic code)
  * same license as packaged file (for static file packages)


pkgId: e39161e8cd1ac0f212a26f5969f2c54614d7015ace63d15b20346fadfdde7a2b
name: rh-python36-XStatic-Bootstrap-SCSS
arch: noarch
version: 3.3.7.1
epoch: 0
release: 1
summary: Bootstrap-SCSS 3.3.7 (XStatic packaging standard)
url: http://getbootstrap.com/
rpm_license: MIT
rpm_vendor: Radomir Dopieralski <openstack@sheep.art.pl>
rpm_group: Development/Libraries
rpm_buildhost: a7608dba46c940e083ec7d0f2b050803
rpm_sourcerpm: rh-python36-XStatic-Bootstrap-SCSS-3.3.7.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387033-rh-python36-XStatic-Bootstrap-SCSS/rh-python36-XStatic-Bootstrap-SCSS-3.3.7.1-1.noarch.rpm
checksum_type: sha256
description:
  XStatic-Bootstrap-SCSS
  --------------

  Bootstrap style library packaged for setuptools (easy_install) / pip.

  This package is intended to be used by **any** project that needs these files.

  It intentionally does **not** provide any extra code except some metadata
  **nor** has any extra requirements. You MAY use some minimal support code from
  the XStatic base package, if you like.

  You can find more info about the xstatic packaging way in the package `XStatic`.


pkgId: 3003b7bb609a1db5772f64b2f6acded1426f9c2a4c73be3f60044ffe2b57c4b0
name: rh-python36-XStatic-DataTables
arch: noarch
version: 1.10.15.1
epoch: 0
release: 1
summary: DataTables 1.10.15 (XStatic packaging standard)
url: http://www.datatables.net
rpm_license: (same as DataTables)
rpm_vendor: David Moreau Simard <dmsimard@redhat.com>
rpm_group: Development/Libraries
rpm_buildhost: 7583444e572842768a4ef399d72caa23
rpm_sourcerpm: rh-python36-XStatic-DataTables-1.10.15.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387044-rh-python36-XStatic-DataTables/rh-python36-XStatic-DataTables-1.10.15.1-1.noarch.rpm
checksum_type: sha256
description:
  XStatic-DataTables
  ------------------

  The DataTables plugin for jQuery packaged for setuptools (easy_install) / pip.

  This package is intended to be used by **any** project that needs these files.

  It intentionally does **not** provide any extra code except some metadata
  **nor** has any extra requirements. You MAY use some minimal support code from
  the XStatic base package, if you like.

  You can find more info about the xstatic packaging way in the package `XStatic`.


pkgId: ccef58edbbea7da8538671c2813eef9c871a6354d02bb953dbe8c4056d3beff8
name: rh-python36-XStatic-Patternfly
arch: noarch
version: 3.21.0.1
epoch: 0
release: 1
summary: Patternfly 3.21.0 (XStatic packaging standard)
url: https://www.patternfly.org/
rpm_license: Apache v2
rpm_vendor: David Moreau Simard <dmsimard@redhat.com>
rpm_group: Development/Libraries
rpm_buildhost: 319c87886dad4a798f12ee4652d665bb
rpm_sourcerpm: rh-python36-XStatic-Patternfly-3.21.0.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387039-rh-python36-XStatic-Patternfly/rh-python36-XStatic-Patternfly-3.21.0.1-1.noarch.rpm
checksum_type: sha256
description:
  XStatic-Patternfly
  ======================

  Patternfly style library packaged for setuptools (easy_install) / pip.

  This package is intended to be used by **any** project that needs these files.

  It intentionally does **not** provide any extra code except some metadata
  **nor** has any extra requirements. You MAY use some minimal support code from
  the XStatic base package, if you like.

  You can find more info about the xstatic packaging way in the package `XStatic`.


pkgId: e6af2de1ef1e1febb18db2ee7d61709410ef75a521e58dc453b66405f9662daf
name: rh-python36-XStatic-Patternfly-Bootstrap-Treeview
arch: noarch
version: 2.1.3.2
epoch: 0
release: 1
summary: Patternfly-Bootstrap-Treeview 2.1.3 (XStatic packaging standard)
url: https://www.patternfly.org/
rpm_license: Apache v2
rpm_vendor: David Moreau Simard <dmsimard@redhat.com>
rpm_group: Development/Libraries
rpm_buildhost: 8a49c3b90ca042fc9ed27eb8a9217add
rpm_sourcerpm: rh-python36-XStatic-Patternfly-Bootstrap-Treeview-2.1.3.2-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
checksum_type: sha256
description:
  XStatic-Patternfly-Bootstrap-Treeview
  =====================================

  Patternfly Bootstrap Treeview library packaged for setuptools (easy_install) / pip.

  This package is intended to be used by **any** project that needs these files.

  It intentionally does **not** provide any extra code except some metadata
  **nor** has any extra requirements. You MAY use some minimal support code from
  the XStatic base package, if you like.

  You can find more info about the xstatic packaging way in the package `XStatic`.

location_href:
  01387047-rh-python36-XStatic-Patternfly-Bootstrap-Treeview/rh-python36-XStatic-Patternfly-Bootstrap-Treeview-2.1.3.2-1.noarch.rpm


pkgId: 17f6aa38acd2092df95eaecb2ab7250731c6cc525fbdacd708cb2b801606c9d6
name: rh-python36-XStatic-Patternfly-Bootstrap-Treeview
arch: src
version: 2.1.3.2
epoch: 0
release: 1
summary: Patternfly-Bootstrap-Treeview 2.1.3 (XStatic packaging standard)
url: https://www.patternfly.org/
rpm_license: Apache v2
rpm_vendor: David Moreau Simard <dmsimard@redhat.com>
rpm_group: Development/Libraries
rpm_buildhost: 9d5212e4ad334064b751d34042bcc21a
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
checksum_type: sha256
description:
  XStatic-Patternfly-Bootstrap-Treeview
  =====================================

  Patternfly Bootstrap Treeview library packaged for setuptools (easy_install) / pip.

  This package is intended to be used by **any** project that needs these files.

  It intentionally does **not** provide any extra code except some metadata
  **nor** has any extra requirements. You MAY use some minimal support code from
  the XStatic base package, if you like.

  You can find more info about the xstatic packaging way in the package `XStatic`.

location_href:
  01387047-rh-python36-XStatic-Patternfly-Bootstrap-Treeview/rh-python36-XStatic-Patternfly-Bootstrap-Treeview-2.1.3.2-1.src.rpm


pkgId: 44c799bd1b84ba0298c348971466dcf2403a2c1357acb5a57fa7e6f0108bf24c
name: rh-python36-XStatic-jQuery
arch: noarch
version: 3.3.1.1
epoch: 0
release: 1
summary: jQuery 3.3.1 (XStatic packaging standard)
url: https://jquery.com/
rpm_license: (same as jQuery)
rpm_vendor: Thomas Waldmann <tw@waldmann-edv.de>
rpm_group: Development/Libraries
rpm_buildhost: 1d44b03137244ff29fa5ef345c811b85
rpm_sourcerpm: rh-python36-XStatic-jQuery-3.3.1.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387046-rh-python36-XStatic-jQuery/rh-python36-XStatic-jQuery-3.3.1.1-1.noarch.rpm
checksum_type: sha256
description:
  XStatic-jQuery
  --------------

  jQuery javascript library packaged for setuptools (easy_install) / pip.

  This package is intended to be used by **any** project that needs these files.

  It intentionally does **not** provide any extra code except some metadata
  **nor** has any extra requirements. You MAY use some minimal support code from
  the XStatic base package, if you like.

  You can find more info about the xstatic packaging way in the package `XStatic`.


pkgId: 7997bb2f5526f6405063506c577e7a9d0e361026160d701cd286457a9c8130e3
name: rh-python36-adal
arch: noarch
version: 1.2.2
epoch: 0
release: 1
description: UNKNOWN
url: https://github.com/AzureAD/azure-activedirectory-library-for-python
rpm_license: MIT
rpm_vendor: Microsoft Corporation <nugetaad@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 015f2d2f5d7a4690b7df0b7126643f0a
rpm_sourcerpm: rh-python36-adal-1.2.2-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387198-rh-python36-adal/rh-python36-adal-1.2.2-1.noarch.rpm
checksum_type: sha256
summary:
  The ADAL for Python library makes it easy for python application to authenticate to Azure Active Directory (AAD) in order to access AAD protected web resources.


pkgId: d5252bc3e6139ed9f2f7b43dd21304d84878c129892176de16fadd59d98c73d7
name: rh-python36-aiohttp
arch: src
version: 3.6.2
epoch: 0
release: 1
summary: Async http client/server framework (asyncio)
url: https://github.com/aio-libs/aiohttp
rpm_license: Apache 2
rpm_group: Development/Libraries
rpm_buildhost: 7eef62e003a045728b92e5d234b18b7e
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387018-rh-python36-aiohttp/rh-python36-aiohttp-3.6.2-1.src.rpm
checksum_type: sha256
description:
  ==================================
  Async http client/server framework
  ==================================

  .. image:: https://raw.githubusercontent.com/aio-libs/aiohttp/master/docs/_static/aiohttp-icon-128x128.png
     :height: 64px
     :width: 64px
     :alt: aiohttp logo

  |

  .. image:: https://travis-ci.com/aio-libs/aiohttp.svg?branch=master
     :target: https://travis-ci.com/aio-libs/aiohttp
     :align: right
     :alt: Travis status for master branch

  .. image:: https://ci.appveyor.com/api/projects/status/tnddy9k6pphl8w7k/branch/master?svg=true
     :target: https://ci.appveyor.com/project/aio-libs/aiohttp
     :align: right
     :alt: AppVeyor status for master branch

  .. image:: https://codecov.io/gh/aio-libs/aiohttp/branch/master/graph/badge.svg
     :target: https://codecov.io/gh/aio-libs/aiohttp
     :alt: codecov.io status for master branch

  .. image:: https://badge.fury.io/py/aiohttp.svg
     :target: https://pypi.org/project/aiohttp
     :alt: Latest PyPI package version

  .. image:: https://readthedocs.org/projects/aiohttp/badge/?version=latest
     :target: https://docs.aiohttp.org/
     :alt: Latest Read The Docs

  .. image:: https://badges.gitter.im/Join%20Chat.svg
      :target: https://gitter.im/aio-libs/Lobby
      :alt: Chat on Gitter

  Key Features
  ============

  - Supports both client and server side of HTTP protocol.
  - Supports both client and server Web-Sockets out-of-the-box and avoids
    Callback Hell.
  - Provides Web-server with middlewares and pluggable routing.


  Getting started
  ===============

  Client
  ------

  To get something from the web:

  .. code-block:: python

    import aiohttp
    import asyncio

    async def fetch(session, url):
        async with session.get(url) as response:
            return await response.text()

    async def main():
        async with aiohttp.ClientSession() as session:
            html = await fetch(session, 'http://python.org')
            print(html)

    if __name__ == '__main__':
        loop = asyncio.get_event_loop()
        loop.run_until_complete(main())


  Server
  ------

  An example using a simple server:

  .. code-block:: python

      
      from aiohttp import web

      async def handle(request):
          name = request.match_info.get('name', "Anonymous")
          text = "Hello, " + name
          return web.Response(text=text)

      async def wshandle(request):
          ws = web.WebSocketResponse()
          await ws.prepare(request)

          async for msg in ws:
              if msg.type == web.WSMsgType.text:
                  await ws.send_str("Hello, {}".format(msg.data))
              elif msg.type == web.WSMsgType.binary:
                  await ws.send_bytes(msg.data)
              elif msg.type == web.WSMsgType.close:
                  break

          return ws


      app = web.Application()
      app.add_routes([web.get('/', handle),
                      web.get('/echo', wshandle),
                      web.get('/{name}', handle)])

      if __name__ == '__main__':
          web.run_app(app)


  Documentation
  =============

  https://aiohttp.readthedocs.io/


  Demos
  =====

  https://github.com/aio-libs/aiohttp-demos


  External links
  ==============

  * `Third party libraries
    <http://aiohttp.readthedocs.io/en/latest/third_party.html>`_
  * `Built with aiohttp
    <http://aiohttp.readthedocs.io/en/latest/built_with.html>`_
  * `Powered by aiohttp
    <http://aiohttp.readthedocs.io/en/latest/powered_by.html>`_

  Feel free to make a Pull Request for adding your link to these pages!


  Communication channels
  ======================

  *aio-libs* google group: https://groups.google.com/forum/#!forum/aio-libs

  Feel free to post your questions and ideas here.

  *gitter chat* https://gitter.im/aio-libs/Lobby

  We support `Stack Overflow
  <https://stackoverflow.com/questions/tagged/aiohttp>`_.
  Please add *aiohttp* tag to your question there.

  Requirements
  ============

  - Python >= 3.5.3
  - async-timeout_
  - attrs_
  - chardet_
  - multidict_
  - yarl_

  Optionally you may install the cChardet_ and aiodns_ libraries (highly
  recommended for sake of speed).

  .. _chardet: https://pypi.python.org/pypi/chardet
  .. _aiodns: https://pypi.python.org/pypi/aiodns
  .. _attrs: https://github.com/python-attrs/attrs
  .. _multidict: https://pypi.python.org/pypi/multidict
  .. _yarl: https://pypi.python.org/pypi/yarl
  .. _async-timeout: https://pypi.python.org/pypi/async_timeout
  .. _cChardet: https://pypi.python.org/pypi/cchardet

  License
  =======

  ``aiohttp`` is offered under the Apache 2 license.


  Keepsafe
  ========

  The aiohttp community would like to thank Keepsafe
  (https://www.getkeepsafe.com) for its support in the early days of
  the project.


  Source code
  ===========

  The latest developer version is available in a GitHub repository:
  https://github.com/aio-libs/aiohttp

  Benchmarks
  ==========

  If you are interested in efficiency, the AsyncIO community maintains a
  list of benchmarks on the official wiki:
  https://github.com/python/asyncio/wiki/Benchmarks

  =========
  Changelog
  =========

  ..
      You should *NOT* be adding new change log entries to this file, this
      file is managed by towncrier. You *may* edit previous change logs to
      fix problems like typo corrections or such.
      To add a new change log entry, please see
      https://pip.pypa.io/en/latest/development/#adding-a-news-entry
      we named the news folder "changes".

      WARNING: Don't drop the next directive!

  .. towncrier release notes start

  3.6.2 (2019-10-09)
  ==================

  Features
  --------

  - Made exceptions pickleable. Also changed the repr of some exceptions.
    `#4077 <https://github.com/aio-libs/aiohttp/issues/4077>`_
  - Use ``Iterable`` type hint instead of ``Sequence`` for ``Application`` *middleware*
    parameter.  `#4125 <https://github.com/aio-libs/aiohttp/issues/4125>`_


  Bugfixes
  --------

  - Reset the ``sock_read`` timeout each time data is received for a
    ``aiohttp.ClientResponse``.  `#3808
    <https://github.com/aio-libs/aiohttp/issues/3808>`_
  - Fix handling of expired cookies so they are not stored in CookieJar.
    `#4063 <https://github.com/aio-libs/aiohttp/issues/4063>`_
  - Fix misleading message in the string representation of ``ClientConnectorError``;
    ``self.ssl == None`` means default SSL context, not SSL disabled `#4097
    <https://github.com/aio-libs/aiohttp/issues/4097>`_
  - Don't clobber HTTP status when using FileResponse.
    `#4106 <https://github.com/aio-libs/aiohttp/issues/4106>`_


  Improved Documentation
  ----------------------

  - Added minimal required logging configuration to logging documentation.
    `#2469 <https://github.com/aio-libs/aiohttp/issues/2469>`_
  - Update docs to reflect proxy support.
    `#4100 <https://github.com/aio-libs/aiohttp/issues/4100>`_
  - Fix typo in code example in testing docs.
    `#4108 <https://github.com/aio-libs/aiohttp/issues/4108>`_


  Misc
  ----

  - `#4102 <https://github.com/aio-libs/aiohttp/issues/4102>`_


  ----


  3.6.1 (2019-09-19)
  ==================

  Features
  --------

  - Compatibility with Python 3.8.
    `#4056 <https://github.com/aio-libs/aiohttp/issues/4056>`_


  Bugfixes
  --------

  - correct some exception string format
    `#4068 <https://github.com/aio-libs/aiohttp/issues/4068>`_
  - Emit a warning when ``ssl.OP_NO_COMPRESSION`` is
    unavailable because the runtime is built against
    an outdated OpenSSL.
    `#4052 <https://github.com/aio-libs/aiohttp/issues/4052>`_
  - Update multidict requirement to >= 4.5
    `#4057 <https://github.com/aio-libs/aiohttp/issues/4057>`_


  Improved Documentation
  ----------------------

  - Provide pytest-aiohttp namespace for pytest fixtures in docs.
    `#3723 <https://github.com/aio-libs/aiohttp/issues/3723>`_


  ----


  3.6.0 (2019-09-06)
  ==================

  Features
  --------

  - Add support for Named Pipes (Site and Connector) under Windows. This feature requires
    Proactor event loop to work.  `#3629
    <https://github.com/aio-libs/aiohttp/issues/3629>`_
  - Removed ``Transfer-Encoding: chunked`` header from websocket responses to be
    compatible with more http proxy servers.  `#3798
    <https://github.com/aio-libs/aiohttp/issues/3798>`_
  - Accept non-GET request for starting websocket handshake on server side.
    `#3980 <https://github.com/aio-libs/aiohttp/issues/3980>`_


  Bugfixes
  --------

  - Raise a ClientResponseError instead of an AssertionError for a blank
    HTTP Reason Phrase.
    `#3532 <https://github.com/aio-libs/aiohttp/issues/3532>`_
  - Fix an issue where cookies would sometimes not be set during a redirect.
    `#3576 <https://github.com/aio-libs/aiohttp/issues/3576>`_
  - Change normalize_path_middleware to use 308 redirect instead of 301.

    This behavior should prevent clients from being unable to use PUT/POST
    methods on endpoints that are redirected because of a trailing slash.
    `#3579 <https://github.com/aio-libs/aiohttp/issues/3579>`_
  - Drop the processed task from ``all_tasks()`` list early. It prevents logging about a
    task with unhandled exception when the server is used in conjunction with
    ``asyncio.run()``.  `#3587 <https://github.com/aio-libs/aiohttp/issues/3587>`_
  - ``Signal`` type annotation changed from ``Signal[Callable[['TraceConfig'],
    Awaitable[None]]]`` to ``Signal[Callable[ClientSession, SimpleNamespace, ...]``.
    `#3595 <https://github.com/aio-libs/aiohttp/issues/3595>`_
  - Use sanitized URL as Location header in redirects
    `#3614 <https://github.com/aio-libs/aiohttp/issues/3614>`_
  - Improve typing annotations for multipart.py along with changes required
    by mypy in files that references multipart.py.
    `#3621 <https://github.com/aio-libs/aiohttp/issues/3621>`_
  - Close session created inside ``aiohttp.request`` when unhandled exception occurs
    `#3628 <https://github.com/aio-libs/aiohttp/issues/3628>`_
  - Cleanup per-chunk data in generic data read. Memory leak fixed.
    `#3631 <https://github.com/aio-libs/aiohttp/issues/3631>`_
  - Use correct type for add_view and family
    `#3633 <https://github.com/aio-libs/aiohttp/issues/3633>`_
  - Fix _keepalive field in __slots__ of ``RequestHandler``.
    `#3644 <https://github.com/aio-libs/aiohttp/issues/3644>`_
  - Properly handle ConnectionResetError, to silence the "Cannot write to closing
    transport" exception when clients disconnect uncleanly.
    `#3648 <https://github.com/aio-libs/aiohttp/issues/3648>`_
  - Suppress pytest warnings due to ``test_utils`` classes
    `#3660 <https://github.com/aio-libs/aiohttp/issues/3660>`_
  - Fix overshadowing of overlapped sub-application prefixes.
    `#3701 <https://github.com/aio-libs/aiohttp/issues/3701>`_
  - Fixed return type annotation for WSMessage.json()
    `#3720 <https://github.com/aio-libs/aiohttp/issues/3720>`_
  - Properly expose TooManyRedirects publicly as documented.
    `#3818 <https://github.com/aio-libs/aiohttp/issues/3818>`_
  - Fix missing brackets for IPv6 in proxy CONNECT request
    `#3841 <https://github.com/aio-libs/aiohttp/issues/3841>`_
  - Make the signature of ``aiohttp.test_utils.TestClient.request`` match
    ``asyncio.ClientSession.request`` according to the docs `#3852
    <https://github.com/aio-libs/aiohttp/issues/3852>`_
  - Use correct style for re-exported imports, makes mypy ``--strict`` mode happy.
    `#3868 <https://github.com/aio-libs/aiohttp/issues/3868>`_
  - Fixed type annotation for add_view method of UrlDispatcher to accept any subclass of
    View `#3880 <https://github.com/aio-libs/aiohttp/issues/3880>`_
  - Made cython HTTP parser set Reason-Phrase of the response to an empty string if it is
    missing.  `#3906 <https://github.com/aio-libs/aiohttp/issues/3906>`_
  - Add URL to the string representation of ClientResponseError.
    `#3959 <https://github.com/aio-libs/aiohttp/issues/3959>`_
  - Accept ``istr`` keys in ``LooseHeaders`` type hints.
    `#3976 <https://github.com/aio-libs/aiohttp/issues/3976>`_
  - Fixed race conditions in _resolve_host caching and throttling when tracing is enabled.
    `#4013 <https://github.com/aio-libs/aiohttp/issues/4013>`_
  - For URLs like "unix://localhost/..." set Host HTTP header to "localhost" instead of
    "localhost:None".  `#4039 <https://github.com/aio-libs/aiohttp/issues/4039>`_


  Improved Documentation
  ----------------------

  - Modify documentation for Background Tasks to remove deprecated usage of event loop.
    `#3526 <https://github.com/aio-libs/aiohttp/issues/3526>`_
  - use ``if __name__ == '__main__':`` in server examples.
    `#3775 <https://github.com/aio-libs/aiohttp/issues/3775>`_
  - Update documentation reference to the default access logger.
    `#3783 <https://github.com/aio-libs/aiohttp/issues/3783>`_
  - Improve documentation for ``web.BaseRequest.path`` and ``web.BaseRequest.raw_path``.
    `#3791 <https://github.com/aio-libs/aiohttp/issues/3791>`_
  - Removed deprecation warning in tracing example docs
    `#3964 <https://github.com/aio-libs/aiohttp/issues/3964>`_


  ----


  3.5.4 (2019-01-12)
  ==================

  Bugfixes
  --------

  - Fix stream ``.read()`` / ``.readany()`` / ``.iter_any()`` which used to return a
    partial content only in case of compressed content
    `#3525 <https://github.com/aio-libs/aiohttp/issues/3525>`_


  3.5.3 (2019-01-10)
  ==================

  Bugfixes
  --------

  - Fix type stubs for ``aiohttp.web.run_app(access_log=True)`` and fix edge case of
    ``access_log=True`` and the event loop being in debug mode.  `#3504
    <https://github.com/aio-libs/aiohttp/issues/3504>`_
  - Fix ``aiohttp.ClientTimeout`` type annotations to accept ``None`` for fields
    `#3511 <https://github.com/aio-libs/aiohttp/issues/3511>`_
  - Send custom per-request cookies even if session jar is empty
    `#3515 <https://github.com/aio-libs/aiohttp/issues/3515>`_
  - Restore Linux binary wheels publishing on PyPI

  ----


  3.5.2 (2019-01-08)
  ==================

  Features
  --------

  - ``FileResponse`` from ``web_fileresponse.py`` uses a ``ThreadPoolExecutor`` to work
    with files asynchronously.  I/O based payloads from ``payload.py`` uses a
    ``ThreadPoolExecutor`` to work with I/O objects asynchronously.  `#3313
    <https://github.com/aio-libs/aiohttp/issues/3313>`_
  - Internal Server Errors in plain text if the browser does not support HTML.
    `#3483 <https://github.com/aio-libs/aiohttp/issues/3483>`_


  Bugfixes
  --------

  - Preserve MultipartWriter parts headers on write.  Refactor the way how
    ``Payload.headers`` are handled. Payload instances now always have headers and
    Content-Type defined.  Fix Payload Content-Disposition header reset after initial
    creation.  `#3035 <https://github.com/aio-libs/aiohttp/issues/3035>`_
  - Log suppressed exceptions in ``GunicornWebWorker``.
    `#3464 <https://github.com/aio-libs/aiohttp/issues/3464>`_
  - Remove wildcard imports.
    `#3468 <https://github.com/aio-libs/aiohttp/issues/3468>`_
  - Use the same task for app initialization and web server handling in gunicorn workers.
    It allows to use Python3.7 context vars smoothly.
    `#3471 <https://github.com/aio-libs/aiohttp/issues/3471>`_
  - Fix handling of chunked+gzipped response when first chunk does not give uncompressed
    data `#3477 <https://github.com/aio-libs/aiohttp/issues/3477>`_
  - Replace ``collections.MutableMapping`` with ``collections.abc.MutableMapping`` to
    avoid a deprecation warning.  `#3480
    <https://github.com/aio-libs/aiohttp/issues/3480>`_
  - ``Payload.size`` type annotation changed from ``Optional[float]`` to
    ``Optional[int]``.  `#3484 <https://github.com/aio-libs/aiohttp/issues/3484>`_
  - Ignore done tasks when cancels pending activities on ``web.run_app`` finalization.
    `#3497 <https://github.com/aio-libs/aiohttp/issues/3497>`_


  Improved Documentation
  ----------------------

  - Add documentation for ``aiohttp.web.HTTPException``.
    `#3490 <https://github.com/aio-libs/aiohttp/issues/3490>`_


  Misc
  ----

  - `#3487 <https://github.com/aio-libs/aiohttp/issues/3487>`_


  ----


  3.5.1 (2018-12-24)
  ====================

  - Fix a regression about ``ClientSession._requote_redirect_url`` modification in debug
    mode.

  3.5.0 (2018-12-22)
  ====================

  Features
  --------

  - The library type annotations are checked in strict mode now.
  - Add support for setting cookies for individual request (`#2387
    <https://github.com/aio-libs/aiohttp/pull/2387>`_)
  - Application.add_domain implementation (`#2809
    <https://github.com/aio-libs/aiohttp/pull/2809>`_)
  - The default ``app`` in the request returned by ``test_utils.make_mocked_request`` can
    now have objects assigned to it and retrieved using the ``[]`` operator. (`#3174
    <https://github.com/aio-libs/aiohttp/pull/3174>`_)
  - Make ``request.url`` accessible when transport is closed. (`#3177
    <https://github.com/aio-libs/aiohttp/pull/3177>`_)
  - Add ``zlib_executor_size`` argument to ``Response`` constructor to allow compression
    to run in a background executor to avoid blocking the main thread and potentially
    triggering health check failures. (`#3205
    <https://github.com/aio-libs/aiohttp/pull/3205>`_)
  - Enable users to set ``ClientTimeout`` in ``aiohttp.request`` (`#3213
    <https://github.com/aio-libs/aiohttp/pull/3213>`_)
  - Don't raise a warning if ``NETRC`` environment variable is not set and ``~/.netrc``
    file doesn't exist. (`#3267 <https://github.com/aio-libs/aiohttp/pull/3267>`_)
  - Add default logging handler to web.run_app If the ``Application.debug``` flag is set
    and the default logger ``aiohttp.access`` is used, access logs will now be output
    using a *stderr* ``StreamHandler`` if no handlers are attached. Furthermore, if the
    default logger has no log level set, the log level will be set to ``DEBUG``. (`#3324
    <https://github.com/aio-libs/aiohttp/pull/3324>`_)
  - Add method argument to ``session.ws_connect()``.  Sometimes server API requires a
    different HTTP method for WebSocket connection establishment.  For example, ``Docker
    exec`` needs POST. (`#3378 <https://github.com/aio-libs/aiohttp/pull/3378>`_)
  - Create a task per request handling. (`#3406
    <https://github.com/aio-libs/aiohttp/pull/3406>`_)


  Bugfixes
  --------

  - Enable passing ``access_log_class`` via ``handler_args`` (`#3158
    <https://github.com/aio-libs/aiohttp/pull/3158>`_)
  - Return empty bytes with end-of-chunk marker in empty stream reader. (`#3186
    <https://github.com/aio-libs/aiohttp/pull/3186>`_)
  - Accept ``CIMultiDictProxy`` instances for ``headers`` argument in ``web.Response``
    constructor. (`#3207 <https://github.com/aio-libs/aiohttp/pull/3207>`_)
  - Don't uppercase HTTP method in parser (`#3233
    <https://github.com/aio-libs/aiohttp/pull/3233>`_)
  - Make method match regexp RFC-7230 compliant (`#3235
    <https://github.com/aio-libs/aiohttp/pull/3235>`_)
  - Add ``app.pre_frozen`` state to properly handle startup signals in
    sub-applications. (`#3237 <https://github.com/aio-libs/aiohttp/pull/3237>`_)
  - Enhanced parsing and validation of helpers.BasicAuth.decode. (`#3239
    <https://github.com/aio-libs/aiohttp/pull/3239>`_)
  - Change imports from collections module in preparation for 3.8. (`#3258
    <https://github.com/aio-libs/aiohttp/pull/3258>`_)
  - Ensure Host header is added first to ClientRequest to better replicate browser (`#3265
    <https://github.com/aio-libs/aiohttp/pull/3265>`_)
  - Fix forward compatibility with Python 3.8: importing ABCs directly from the
    collections module will not be supported anymore. (`#3273
    <https://github.com/aio-libs/aiohttp/pull/3273>`_)
  - Keep the query string by ``normalize_path_middleware``. (`#3278
    <https://github.com/aio-libs/aiohttp/pull/3278>`_)
  - Fix missing parameter ``raise_for_status`` for aiohttp.request() (`#3290
    <https://github.com/aio-libs/aiohttp/pull/3290>`_)
  - Bracket IPv6 addresses in the HOST header (`#3304
    <https://github.com/aio-libs/aiohttp/pull/3304>`_)
  - Fix default message for server ping and pong frames. (`#3308
    <https://github.com/aio-libs/aiohttp/pull/3308>`_)
  - Fix tests/test_connector.py typo and tests/autobahn/server.py duplicate loop
    def. (`#3337 <https://github.com/aio-libs/aiohttp/pull/3337>`_)
  - Fix false-negative indicator end_of_HTTP_chunk in StreamReader.readchunk function
    (`#3361 <https://github.com/aio-libs/aiohttp/pull/3361>`_)
  - Release HTTP response before raising status exception (`#3364
    <https://github.com/aio-libs/aiohttp/pull/3364>`_)
  - Fix task cancellation when ``sendfile()`` syscall is used by static file
    handling. (`#3383 <https://github.com/aio-libs/aiohttp/pull/3383>`_)
  - Fix stack trace for ``asyncio.TimeoutError`` which was not logged, when it is caught
    in the handler. (`#3414 <https://github.com/aio-libs/aiohttp/pull/3414>`_)


  Improved Documentation
  ----------------------

  - Improve documentation of ``Application.make_handler`` parameters. (`#3152
    <https://github.com/aio-libs/aiohttp/pull/3152>`_)
  - Fix BaseRequest.raw_headers doc. (`#3215
    <https://github.com/aio-libs/aiohttp/pull/3215>`_)
  - Fix typo in TypeError exception reason in ``web.Application._handle`` (`#3229
    <https://github.com/aio-libs/aiohttp/pull/3229>`_)
  - Make server access log format placeholder %b documentation reflect
    behavior and docstring. (`#3307 <https://github.com/aio-libs/aiohttp/pull/3307>`_)


  Deprecations and Removals
  -------------------------

  - Deprecate modification of ``session.requote_redirect_url`` (`#2278
    <https://github.com/aio-libs/aiohttp/pull/2278>`_)
  - Deprecate ``stream.unread_data()`` (`#3260
    <https://github.com/aio-libs/aiohttp/pull/3260>`_)
  - Deprecated use of boolean in ``resp.enable_compression()`` (`#3318
    <https://github.com/aio-libs/aiohttp/pull/3318>`_)
  - Encourage creation of aiohttp public objects inside a coroutine (`#3331
    <https://github.com/aio-libs/aiohttp/pull/3331>`_)
  - Drop dead ``Connection.detach()`` and ``Connection.writer``. Both methods were broken
    for more than 2 years. (`#3358 <https://github.com/aio-libs/aiohttp/pull/3358>`_)
  - Deprecate ``app.loop``, ``request.loop``, ``client.loop`` and ``connector.loop``
    properties. (`#3374 <https://github.com/aio-libs/aiohttp/pull/3374>`_)
  - Deprecate explicit debug argument. Use asyncio debug mode instead. (`#3381
    <https://github.com/aio-libs/aiohttp/pull/3381>`_)
  - Deprecate body parameter in HTTPException (and derived classes) constructor. (`#3385
    <https://github.com/aio-libs/aiohttp/pull/3385>`_)
  - Deprecate bare connector close, use ``async with connector:`` and ``await
    connector.close()`` instead. (`#3417
    <https://github.com/aio-libs/aiohttp/pull/3417>`_)
  - Deprecate obsolete ``read_timeout`` and ``conn_timeout`` in ``ClientSession``
    constructor. (`#3438 <https://github.com/aio-libs/aiohttp/pull/3438>`_)


  Misc
  ----

  - #3341, #3351

rpm_vendor:
  Nikolay Kim <fafhrd91@gmail.com>, Andrew Svetlov <andrew.svetlov@gmail.com> <aio-libs@googlegroups.com>


pkgId: 93115da5cec7c22d1173f83e89b2d144472466ee3085374d3c89a8c01b27e096
name: rh-python36-aiohttp-debuginfo
arch: x86_64
version: 3.6.2
epoch: 0
release: 1
summary: Debug information for package rh-python36-aiohttp
url: https://github.com/aio-libs/aiohttp
rpm_license: Apache 2
rpm_group: Development/Debug
rpm_buildhost: 37df0bc825c3464ba9f3b21e2d7ae70c
rpm_sourcerpm: rh-python36-aiohttp-3.6.2-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387018-rh-python36-aiohttp/rh-python36-aiohttp-debuginfo-3.6.2-1.x86_64.rpm
checksum_type: sha256
description:
  This package provides debug information for package rh-python36-aiohttp.
  Debug information is useful when developing applications that use this
  package or when debugging this package.

rpm_vendor:
  Nikolay Kim <fafhrd91@gmail.com>, Andrew Svetlov <andrew.svetlov@gmail.com> <aio-libs@googlegroups.com>


pkgId: 007ac92cc33cec6ade492159e5b006d0d71d83c10b40269fc3685c71a44a098e
name: rh-python36-aioredis
arch: noarch
version: 1.3.1
epoch: 0
release: 1
summary: asyncio (PEP 3156) Redis support
url: https://github.com/aio-libs/aioredis
rpm_license: MIT
rpm_vendor: Alexey Popravka <alexey.popravka@horsedevel.com>
rpm_group: Development/Libraries
rpm_buildhost: 7beee5c80bf94dfa844255ea1bd3745f
rpm_sourcerpm: rh-python36-aioredis-1.3.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387017-rh-python36-aioredis/rh-python36-aioredis-1.3.1-1.noarch.rpm
checksum_type: sha256
description:
  aioredis
  ========

  asyncio (PEP 3156) Redis client library.

  .. image:: https://travis-ci.com/aio-libs/aioredis.svg?branch=master
     :target: https://travis-ci.com/aio-libs/aioredis


  .. image:: https://codecov.io/gh/aio-libs/aioredis/branch/master/graph/badge.svg
     :target: https://codecov.io/gh/aio-libs/aioredis

  .. image:: https://ci.appveyor.com/api/projects/status/wngyx6s98o6hsxmt/branch/master?svg=true
     :target: https://ci.appveyor.com/project/popravich/aioredis

  Features
  --------

  ================================  ==============================
  hiredis_ parser                     Yes
  Pure-python parser                  Yes
  Low-level & High-level APIs         Yes
  Connections Pool                    Yes
  Pipelining support                  Yes
  Pub/Sub support                     Yes
  SSL/TLS support                     Yes
  Sentinel support                    Yes
  Redis Cluster support               WIP
  Trollius (python 2.7)               No
  Tested CPython versions             `3.5.3, 3.6, 3.7 <travis_>`_ [1]_
  Tested PyPy3 versions               `pypy3.5-7.0 pypy3.6-7.1.1 <travis_>`_
  Tested for Redis server             `2.6, 2.8, 3.0, 3.2, 4.0 5.0 <travis_>`_
  Support for dev Redis server        through low-level API
  ================================  ==============================

  .. [1] For Python 3.3, 3.4 support use aioredis v0.3.

  Documentation
  -------------

  http://aioredis.readthedocs.io/

  Usage example
  -------------

  Simple high-level interface with connections pool:

  .. code:: python

      import asyncio
      import aioredis

      async def go():
          redis = await aioredis.create_redis_pool(
              'redis://localhost')
          await redis.set('my-key', 'value')
          val = await redis.get('my-key', encoding='utf-8')
          print(val)
          redis.close()
          await redis.wait_closed()

      asyncio.run(go())
      

  Requirements
  ------------

  * Python_ 3.5.3+
  * hiredis_

  .. note::

      hiredis is preferred requirement.
      Pure-python protocol parser is implemented as well and can be used
      through ``parser`` parameter.

  Benchmarks
  ----------

  Benchmarks can be found here: https://github.com/popravich/python-redis-benchmark

  Discussion list
  ---------------

  *aio-libs* google group: https://groups.google.com/forum/#!forum/aio-libs

  Or gitter room: https://gitter.im/aio-libs/Lobby

  License
  -------

  The aioredis is offered under MIT license.

  .. _Python: https://www.python.org
  .. _hiredis: https://pypi.python.org/pypi/hiredis
  .. _travis: https://travis-ci.com/aio-libs/aioredis

  Changes
  -------

  .. towncrier release notes start

  1.3.1 (2019-12-02)
  ^^^^^^^^^^^^^^^^^^
  Bugfixes
  ~~~~~~~~

  - Fix transaction data decoding
    (see `#657 <https://github.com/aio-libs/aioredis/issues/657>`_);
  - Fix duplicate calls to ``pool.wait_closed()`` upon ``create_pool()`` exception.
    (see `#671 <https://github.com/aio-libs/aioredis/issues/671>`_);

  Deprecations and Removals
  ~~~~~~~~~~~~~~~~~~~~~~~~~

  - Drop explicit loop requirement in API.
    Deprecate ``loop`` argument.
    Throw warning in Python 3.8+ if explicit ``loop`` is passed to methods.
    (see `#666 <https://github.com/aio-libs/aioredis/issues/666>`_);

  Misc
  ~~~~

  - `#643 <https://github.com/aio-libs/aioredis/issues/643>`_,
    `#646 <https://github.com/aio-libs/aioredis/issues/646>`_,
    `#648 <https://github.com/aio-libs/aioredis/issues/648>`_;


  1.3.0 (2019-09-24)
  ^^^^^^^^^^^^^^^^^^
  Features
  ~~~~~~~~

  - Added ``xdel`` and ``xtrim`` method which missed in ``commands/streams.py`` & also added unit test code for them
    (see `#438 <https://github.com/aio-libs/aioredis/issues/438>`_);
  - Add ``count`` argument to ``spop`` command
    (see `#485 <https://github.com/aio-libs/aioredis/issues/485>`_);
  - Add support for ``zpopmax`` and ``zpopmin`` redis commands
    (see `#550 <https://github.com/aio-libs/aioredis/issues/550>`_);
  - Add ``towncrier``: change notes are now stored in ``CHANGES.txt``
    (see `#576 <https://github.com/aio-libs/aioredis/issues/576>`_);
  - Type hints for the library
    (see `#584 <https://github.com/aio-libs/aioredis/issues/584>`_);
  - A few additions to the sorted set commands:

    - the blocking pop commands: ``BZPOPMAX`` and ``BZPOPMIN``

    - the ``CH`` and ``INCR`` options of the ``ZADD`` command

    (see `#618 <https://github.com/aio-libs/aioredis/issues/618>`_);
  - Added ``no_ack`` parameter to ``xread_group`` streams method in ``commands/streams.py``
    (see `#625 <https://github.com/aio-libs/aioredis/issues/625>`_);

  Bugfixes
  ~~~~~~~~

  - Fix for sensitive logging
    (see `#459 <https://github.com/aio-libs/aioredis/issues/459>`_);
  - Fix slow memory leak in ``wait_closed`` implementation
    (see `#498 <https://github.com/aio-libs/aioredis/issues/498>`_);
  - Fix handling of instances were Redis returns null fields for a stream message
    (see `#605 <https://github.com/aio-libs/aioredis/issues/605>`_);

  Improved Documentation
  ~~~~~~~~~~~~~~~~~~~~~~

  - Rewrite "Getting started" documentation.
    (see `#641 <https://github.com/aio-libs/aioredis/issues/641>`_);

  Misc
  ~~~~

  - `#585 <https://github.com/aio-libs/aioredis/issues/585>`_,
    `#611 <https://github.com/aio-libs/aioredis/issues/611>`_,
    `#612 <https://github.com/aio-libs/aioredis/issues/612>`_,
    `#619 <https://github.com/aio-libs/aioredis/issues/619>`_,
    `#620 <https://github.com/aio-libs/aioredis/issues/620>`_,
    `#642 <https://github.com/aio-libs/aioredis/issues/642>`_;


  1.2.0 (2018-10-24)
  ^^^^^^^^^^^^^^^^^^

  **NEW**:

  * Implemented new Stream command support
    (see `#299 <https://github.com/aio-libs/aioredis/pull/299>`_);

  * Reduce ``encode_command()`` cost about 60%
    (see `#397 <https://github.com/aio-libs/aioredis/pull/397>`_);


  **FIX**:

  * Fix pipeline commands buffering was causing multiple ``sendto`` syscalls
    (see `#464 <https://github.com/aio-libs/aioredis/pull/464>`_
    and  `#473 <https://github.com/aio-libs/aioredis/pull/473>`_);

  * Python 3.7 compatibility fixes
    (see `#426 <https://github.com/aio-libs/aioredis/pull/426>`_);

  * Fix typos in documentation
    (see `#400 <https://github.com/aio-libs/aioredis/pull/400>`_);

  * Fix ``INFO`` command result parsing
    (see `#405 <https://github.com/aio-libs/aioredis/pull/405>`_);

  * Fix bug in ``ConnectionsPool._drop_closed`` method
    (see `#461 <https://github.com/aio-libs/aioredis/pull/461>`_);

  **MISC**:

  * Update dependencies versions;

  * Multiple tests improvements;

  1.1.0 (2018-02-16)
  ^^^^^^^^^^^^^^^^^^

  **NEW**:

  * Implement new commands: ``wait``, ``touch``, ``swapdb``, ``unlink``
    (see `#376 <https://github.com/aio-libs/aioredis/pull/376>`_);

  * Add ``async_op`` argument to ``flushall`` and ``flushdb`` commands
    (see `#364 <https://github.com/aio-libs/aioredis/pull/364>`_,
    and `#370 <https://github.com/aio-libs/aioredis/pull/370>`_);

  **FIX**:

  * **Important!** Fix Sentinel sentinel client with pool ``minsize``
    greater than 1
    (see `#380 <https://github.com/aio-libs/aioredis/pull/380>`_);

  * Fix ``SentinelPool.discover_timeout`` usage
    (see `#379 <https://github.com/aio-libs/aioredis/pull/379>`_);

  * Fix ``Receiver`` hang on disconnect
    (see `#354 <https://github.com/aio-libs/aioredis/pull/354>`_,
    and `#366 <https://github.com/aio-libs/aioredis/pull/366>`_);

  * Fix an issue with ``subscribe``/``psubscribe`` with empty pool
    (see `#351 <https://github.com/aio-libs/aioredis/pull/351>`_,
    and `#355 <https://github.com/aio-libs/aioredis/pull/355>`_);

  * Fix an issue when ``StreamReader``'s feed_data is called before set_parser
    (see `#347 <https://github.com/aio-libs/aioredis/pull/347>`_);

  **MISC**:

  * Update dependencies versions;

  * Multiple test fixes;


  1.0.0 (2017-11-17)
  ^^^^^^^^^^^^^^^^^^

  **NEW**:

  * **Important!** Drop Python 3.3, 3.4 support;
    (see `#321 <https://github.com/aio-libs/aioredis/pull/321>`_,
    `#323 <https://github.com/aio-libs/aioredis/pull/323>`_
    and `#326 <https://github.com/aio-libs/aioredis/pull/326>`_);

  * **Important!** Connections pool has been refactored; now ``create_redis``
    function will yield ``Redis`` instance instead of ``RedisPool``
    (see `#129 <https://github.com/aio-libs/aioredis/pull/129>`_);

  * **Important!** Change sorted set commands reply format:
    return list of tuples instead of plain list for commands
    accepting ``withscores`` argument
    (see `#334 <https://github.com/aio-libs/aioredis/pull/334>`_);

  * **Important!** Change ``hscan`` command reply format:
    return list of tuples instead of mixed key-value list
    (see `#335 <https://github.com/aio-libs/aioredis/pull/335>`_);

  * Implement Redis URI support as supported ``address`` argument value
    (see `#322 <https://github.com/aio-libs/aioredis/pull/322>`_);

  * Dropped ``create_reconnecting_redis``, ``create_redis_pool`` should be
    used instead;

  * Implement custom ``StreamReader``
    (see `#273 <https://github.com/aio-libs/aioredis/pull/273>`_);

  * Implement Sentinel support
    (see `#181 <https://github.com/aio-libs/aioredis/pull/181>`_);

  * Implement pure-python parser
    (see `#212 <https://github.com/aio-libs/aioredis/pull/212>`_);

  * Add ``migrate_keys`` command
    (see `#187 <https://github.com/aio-libs/aioredis/pull/187>`_);

  * Add ``zrevrangebylex`` command
    (see `#201 <https://github.com/aio-libs/aioredis/pull/201>`_);

  * Add ``command``, ``command_count``, ``command_getkeys`` and
    ``command_info`` commands
    (see `#229 <https://github.com/aio-libs/aioredis/pull/229>`_);

  * Add ``ping`` support in pubsub connection
    (see `#264 <https://github.com/aio-libs/aioredis/pull/264>`_);

  * Add ``exist`` parameter to ``zadd`` command
    (see `#288 <https://github.com/aio-libs/aioredis/pull/288>`_);

  * Add ``MaxClientsError`` and implement ``ReplyError`` specialization
    (see `#325 <https://github.com/aio-libs/aioredis/pull/325>`_);

  * Add ``encoding`` parameter to sorted set commands
    (see `#289 <https://github.com/aio-libs/aioredis/pull/289>`_);

  **FIX**:

  * Fix ``CancelledError`` in ``conn._reader_task``
    (see `#301 <https://github.com/aio-libs/aioredis/pull/301>`_);

  * Fix pending commands cancellation with ``CancelledError``,
    use explicit exception instead of calling ``cancel()`` method
    (see `#316 <https://github.com/aio-libs/aioredis/pull/316>`_);

  * Correct error message on Sentinel discovery of master/slave with password
    (see `#327 <https://github.com/aio-libs/aioredis/pull/327>`_);

  * Fix ``bytearray`` support as command argument
    (see `#329 <https://github.com/aio-libs/aioredis/pull/329>`_);

  * Fix critical bug in patched asyncio.Lock
    (see `#256 <https://github.com/aio-libs/aioredis/pull/256>`_);

  * Fix Multi/Exec transaction canceled error
    (see `#225 <https://github.com/aio-libs/aioredis/pull/225>`_);

  * Add missing arguments to ``create_redis`` and ``create_redis_pool``;

  * Fix deprecation warning
    (see `#191 <https://github.com/aio-libs/aioredis/pull/191>`_);

  * Make correct ``__aiter__()``
    (see `#192 <https://github.com/aio-libs/aioredis/pull/192>`_);

  * Backward compatibility fix for ``with (yield from pool) as conn:``
    (see `#205 <https://github.com/aio-libs/aioredis/pull/205>`_);

  * Fixed pubsub receiver stop()
    (see `#211 <https://github.com/aio-libs/aioredis/pull/211>`_);

  **MISC**:

  * Multiple test fixes;

  * Add PyPy3 to build matrix;

  * Update dependencies versions;

  * Add missing Python 3.6 classifier;


  0.3.5 (2017-11-08)
  ^^^^^^^^^^^^^^^^^^

  **FIX**:

  * Fix for indistinguishable futures cancellation with
    ``asyncio.CancelledError``
    (see `#316 <https://github.com/aio-libs/aioredis/pull/316>`_),
    cherry-picked from master;


  0.3.4 (2017-10-25)
  ^^^^^^^^^^^^^^^^^^

  **FIX**:

  * Fix time command result decoding when using connection-wide encoding setting
    (see `#266 <https://github.com/aio-libs/aioredis/pull/266>`_);


  0.3.3 (2017-06-30)
  ^^^^^^^^^^^^^^^^^^

  **FIX**:

  * Critical bug fixed in patched asyncio.Lock
    (see `#256 <https://github.com/aio-libs/aioredis/pull/256>`_);


  0.3.2 (2017-06-21)
  ^^^^^^^^^^^^^^^^^^

  **NEW**:

  * Added ``zrevrangebylex`` command
    (see `#201 <https://github.com/aio-libs/aioredis/pull/201>`_),
    cherry-picked from master;

  * Add connection timeout
    (see `#221 <https://github.com/aio-libs/aioredis/pull/221>`_),
    cherry-picked from master;

  **FIX**:

  * Fixed pool close warning
    (see `#239 <https://github.com/aio-libs/aioredis/pull/239>`_
    and `#236 <https://github.com/aio-libs/aioredis/issues/236>`_),
    cherry-picked from master;

  * Fixed asyncio Lock deadlock issue
    (see `#231 <https://github.com/aio-libs/aioredis/issues/231>`_
    and `#241 <https://github.com/aio-libs/aioredis/pull/241>`_);


  0.3.1 (2017-05-09)
  ^^^^^^^^^^^^^^^^^^

  **FIX**:

  * Fix pubsub Receiver missing iter() method
    (see `#203 <https://github.com/aio-libs/aioredis/issues/203>`_);


  0.3.0 (2017-01-11)
  ^^^^^^^^^^^^^^^^^^

  **NEW**:

  * Pub/Sub connection commands accept ``Channel`` instances
    (see `#168 <https://github.com/aio-libs/aioredis/pull/168>`_);

  * Implement new Pub/Sub MPSC (multi-producers, single-consumer) Queue --
    ``aioredis.pubsub.Receiver``
    (see `#176 <https://github.com/aio-libs/aioredis/pull/176>`_);

  * Add ``aioredis.abc`` module providing abstract base classes
    defining interface for basic lib components;
    (see `#176 <https://github.com/aio-libs/aioredis/pull/176>`_);

  * Implement Geo commands support
    (see `#177 <https://github.com/aio-libs/aioredis/pull/177>`_
    and `#179 <https://github.com/aio-libs/aioredis/pull/179>`_);

  **FIX**:

  * Minor tests fixes;

  **MISC**:

  * Update examples and docs to use ``async``/``await`` syntax
    also keeping ``yield from`` examples for history
    (see `#173 <https://github.com/aio-libs/aioredis/pull/173>`_);

  * Reflow Travis CI configuration; add Python 3.6 section
    (see `#170 <https://github.com/aio-libs/aioredis/pull/170>`_);

  * Add AppVeyor integration to run tests on Windows
    (see `#180 <https://github.com/aio-libs/aioredis/pull/180>`_);

  * Update multiple development requirements;


  0.2.9 (2016-10-24)
  ^^^^^^^^^^^^^^^^^^

  **NEW**:

  * Allow multiple keys in ``EXISTS`` command
    (see `#156 <https://github.com/aio-libs/aioredis/issues/156>`_
    and `#157 <https://github.com/aio-libs/aioredis/issues/157>`_);

  **FIX**:

  * Close RedisPool when connection to Redis failed
    (see `#136 <https://github.com/aio-libs/aioredis/issues/136>`_);

  * Add simple ``INFO`` command argument validation
    (see `#140 <https://github.com/aio-libs/aioredis/issues/140>`_);

  * Remove invalid uses of ``next()``

  **MISC**:

  * Update devel.rst docs; update Pub/Sub Channel docs (cross-refs);

  * Update MANIFEST.in to include docs, examples and tests in source bundle;


  0.2.8 (2016-07-22)
  ^^^^^^^^^^^^^^^^^^

  **NEW**:

  * Add ``hmset_dict`` command
    (see `#130 <https://github.com/aio-libs/aioredis/issues/130>`_);

  * Add ``RedisConnection.address`` property;

  * RedisPool ``minsize``/``maxsize`` must not be ``None``;

  * Implement ``close()``/``wait_closed()``/``closed`` interface for pool
    (see `#128 <https://github.com/aio-libs/aioredis/issues/128>`_);

  **FIX**:

  * Add test for ``hstrlen``;

  * Test fixes

  **MISC**:

  * Enable Redis 3.2.0 on Travis;

  * Add spell checking when building docs
    (see `#132 <https://github.com/aio-libs/aioredis/issues/132>`_);

  * Documentation updated;


  0.2.7 (2016-05-27)
  ^^^^^^^^^^^^^^^^^^

  * ``create_pool()`` minsize default value changed to 1;

  * Fixed cancellation of wait_closed
    (see `#118 <https://github.com/aio-libs/aioredis/issues/118>`_);

  * Fixed ``time()`` conversion to float
    (see `#126 <https://github.com/aio-libs/aioredis/issues/126>`_);

  * Fixed ``hmset()`` method to return bool instead of ``b'OK'``
    (see `#126`_);

  * Fixed multi/exec + watch issue (changed watch variable was causing
    ``tr.execute()`` to fail)
    (see `#121 <https://github.com/aio-libs/aioredis/issues/121>`_);

  * Replace ``asyncio.Future`` uses with utility method
    (get ready to Python 3.5.2 ``loop.create_future()``);

  * Tests switched from unittest to pytest (see `#126`_);

  * Documentation updates;


  0.2.6 (2016-03-30)
  ^^^^^^^^^^^^^^^^^^

  * Fixed Multi/Exec transactions cancellation issue
    (see `#110 <https://github.com/aio-libs/aioredis/issues/110>`_
    and `#114 <https://github.com/aio-libs/aioredis/issues/114>`_);

  * Fixed Pub/Sub subscribe concurrency issue
    (see `#113 <https://github.com/aio-libs/aioredis/issues/113>`_
    and `#115 <https://github.com/aio-libs/aioredis/issues/115>`_);

  * Add SSL/TLS support
    (see  `#116 <https://github.com/aio-libs/aioredis/issues/116>`_);

  * ``aioredis.ConnectionClosedError`` raised in ``execute_pubsub`` as well
    (see `#108 <https://github.com/aio-libs/aioredis/issues/108>`_);

  * ``Redis.slaveof()`` method signature changed: now to disable
    replication one should call ``redis.slaveof(None)`` instead of ``redis.slaveof()``;

  * More tests added;


  0.2.5 (2016-03-02)
  ^^^^^^^^^^^^^^^^^^

  * Close all Pub/Sub channels on connection close
    (see `#88 <https://github.com/aio-libs/aioredis/issues/88>`_);

  * Add ``iter()`` method to ``aioredis.Channel`` allowing to use it
    with ``async for``
    (see `#89 <https://github.com/aio-libs/aioredis/issues/89>`_);

  * Inline code samples in docs made runnable and downloadable
    (see `#92 <https://github.com/aio-libs/aioredis/issues/92>`_);

  * Python 3.5 examples converted to use ``async``/``await`` syntax
    (see `#93 <https://github.com/aio-libs/aioredis/issues/93>`_);

  * Fix Multi/Exec to honor encoding parameter
    (see `#94 <https://github.com/aio-libs/aioredis/issues/94>`_
    and `#97 <https://github.com/aio-libs/aioredis/issues/97>`_);

  * Add debug message in ``create_connection``
    (see `#90 <https://github.com/aio-libs/aioredis/issues/90>`_);

  * Replace ``asyncio.async`` calls with wrapper that respects asyncio version
    (see `#101 <https://github.com/aio-libs/aioredis/issues/101>`_);

  * Use NODELAY option for TCP sockets
    (see `#105 <https://github.com/aio-libs/aioredis/issues/105>`_);

  * New ``aioredis.ConnectionClosedError`` exception added. Raised if
    connection to Redis server is lost
    (see `#108 <https://github.com/aio-libs/aioredis/issues/108>`_
    and `#109 <https://github.com/aio-libs/aioredis/issues/109>`_);

  * Fix RedisPool to close and drop connection in subscribe mode on release;

  * Fix ``aioredis.util.decode`` to recursively decode list responses;

  * More examples added and docs updated;

  * Add google groups link to README;

  * Bump year in LICENSE and docs;


  0.2.4 (2015-10-13)
  ^^^^^^^^^^^^^^^^^^

  * Python 3.5 ``async`` support:

    - New scan commands API (``iscan``, ``izscan``, ``ihscan``);

    - Pool made awaitable (allowing ``with await pool: ...`` and ``async
      with pool.get() as conn:`` constructs);

  * Fixed dropping closed connections from free pool
    (see `#83 <https://github.com/aio-libs/aioredis/issues/83>`_);

  * Docs updated;


  0.2.3 (2015-08-14)
  ^^^^^^^^^^^^^^^^^^

  * Redis cluster support work in progress;

  * Fixed pool issue causing pool growth over max size & ``acquire`` call hangs
    (see `#71 <https://github.com/aio-libs/aioredis/issues/71>`_);

  * ``info`` server command result parsing implemented;

  * Fixed behavior of util functions
    (see `#70 <https://github.com/aio-libs/aioredis/issues/70>`_);

  * ``hstrlen`` command added;

  * Few fixes in examples;

  * Few fixes in documentation;


  0.2.2 (2015-07-07)
  ^^^^^^^^^^^^^^^^^^

  * Decoding data with ``encoding`` parameter now takes into account
    list (array) replies
    (see `#68 <https://github.com/aio-libs/aioredis/pull/68>`_);

  * ``encoding`` parameter added to following commands:

    - generic commands: keys, randomkey;

    - hash commands: hgetall, hkeys, hmget, hvals;

    - list commands: blpop, brpop, brpoplpush, lindex, lpop, lrange, rpop, rpoplpush;

    - set commands: smembers, spop, srandmember;

    - string commands: getrange, getset, mget;

  * Backward incompatibility:

    ``ltrim`` command now returns bool value instead of 'OK';

  * Tests updated;


  0.2.1 (2015-07-06)
  ^^^^^^^^^^^^^^^^^^

  * Logging added (aioredis.log module);

  * Fixed issue with ``wait_message`` in pub/sub
    (see `#66 <https://github.com/aio-libs/aioredis/issues/66>`_);


  0.2.0 (2015-06-04)
  ^^^^^^^^^^^^^^^^^^

  * Pub/Sub support added;

  * Fix in ``zrevrangebyscore`` command
    (see `#62 <https://github.com/aio-libs/aioredis/pull/62>`_);

  * Fixes/tests/docs;


  0.1.5 (2014-12-09)
  ^^^^^^^^^^^^^^^^^^

  * AutoConnector added;

  * wait_closed method added for clean connections shutdown;

  * ``zscore`` command fixed;

  * Test fixes;


  0.1.4 (2014-09-22)
  ^^^^^^^^^^^^^^^^^^

  * Dropped following Redis methods -- ``Redis.multi()``,
    ``Redis.exec()``, ``Redis.discard()``;

  * ``Redis.multi_exec`` hack'ish property removed;

  * ``Redis.multi_exec()`` method added;

  * High-level commands implemented:

    * generic commands (tests);

    * transactions commands (api stabilization).

  * Backward incompatibilities:

    * Following sorted set commands' API changed:

      ``zcount``, ``zrangebyscore``, ``zremrangebyscore``, ``zrevrangebyscore``;

    * set string command' API changed;



  0.1.3 (2014-08-08)
  ^^^^^^^^^^^^^^^^^^

  * RedisConnection.execute refactored to support commands pipelining
    (see `#33 <http://github.com/aio-libs/aioredis/issues/33>`_);

  * Several fixes;

  * WIP on transactions and commands interface;

  * High-level commands implemented and tested:

    * hash commands;
    * hyperloglog commands;
    * set commands;
    * scripting commands;
    * string commands;
    * list commands;


  0.1.2 (2014-07-31)
  ^^^^^^^^^^^^^^^^^^

  * ``create_connection``, ``create_pool``, ``create_redis`` functions updated:
    db and password arguments made keyword-only
    (see `#26 <http://github.com/aio-libs/aioredis/issues/26>`_);

  * Fixed transaction handling
    (see `#32 <http://github.com/aio-libs/aioredis/issues/32>`_);

  * Response decoding
    (see `#16 <http://github.com/aio-libs/aioredis/issues/16>`_);


  0.1.1 (2014-07-07)
  ^^^^^^^^^^^^^^^^^^

  * Transactions support (in connection, high-level commands have some issues);
  * Docs & tests updated.


  0.1.0 (2014-06-24)
  ^^^^^^^^^^^^^^^^^^

  * Initial release;
  * RedisConnection implemented;
  * RedisPool implemented;
  * Docs for RedisConnection & RedisPool;
  * WIP on high-level API.


pkgId: fa849478d73ea081d57d9c920dcb166aa30dc186e0d9bce39509128d799f5f64
name: rh-python36-alembic
arch: noarch
version: 1.0.10
epoch: 0
release: 1
summary: A database migration tool for SQLAlchemy.
url: https://alembic.sqlalchemy.org
rpm_license: MIT
rpm_vendor: Mike Bayer <mike@zzzcomputing.com>
rpm_group: Development/Libraries
rpm_buildhost: adde625f0fe8440281b9b85c962d8445
rpm_sourcerpm: rh-python36-alembic-1.0.10-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387045-rh-python36-alembic/rh-python36-alembic-1.0.10-1.noarch.rpm
checksum_type: sha256
description:
  Alembic is a database migrations tool written by the author
  of `SQLAlchemy <http://www.sqlalchemy.org>`_.  A migrations tool
  offers the following functionality:

  * Can emit ALTER statements to a database in order to change
    the structure of tables and other constructs
  * Provides a system whereby "migration scripts" may be constructed;
    each script indicates a particular series of steps that can "upgrade" a
    target database to a new version, and optionally a series of steps that can
    "downgrade" similarly, doing the same steps in reverse.
  * Allows the scripts to execute in some sequential manner.

  The goals of Alembic are:

  * Very open ended and transparent configuration and operation.   A new
    Alembic environment is generated from a set of templates which is selected
    among a set of options when setup first occurs. The templates then deposit a
    series of scripts that define fully how database connectivity is established
    and how migration scripts are invoked; the migration scripts themselves are
    generated from a template within that series of scripts. The scripts can
    then be further customized to define exactly how databases will be
    interacted with and what structure new migration files should take.
  * Full support for transactional DDL.   The default scripts ensure that all
    migrations occur within a transaction - for those databases which support
    this (Postgresql, Microsoft SQL Server), migrations can be tested with no
    need to manually undo changes upon failure.
  * Minimalist script construction.  Basic operations like renaming
    tables/columns, adding/removing columns, changing column attributes can be
    performed through one line commands like alter_column(), rename_table(),
    add_constraint(). There is no need to recreate full SQLAlchemy Table
    structures for simple operations like these - the functions themselves
    generate minimalist schema structures behind the scenes to achieve the given
    DDL sequence.
  * "auto generation" of migrations. While real world migrations are far more
    complex than what can be automatically determined, Alembic can still
    eliminate the initial grunt work in generating new migration directives
    from an altered schema.  The ``--autogenerate`` feature will inspect the
    current status of a database using SQLAlchemy's schema inspection
    capabilities, compare it to the current state of the database model as
    specified in Python, and generate a series of "candidate" migrations,
    rendering them into a new migration script as Python directives. The
    developer then edits the new file, adding additional directives and data
    migrations as needed, to produce a finished migration. Table and column
    level changes can be detected, with constraints and indexes to follow as
    well.
  * Full support for migrations generated as SQL scripts.   Those of us who
    work in corporate environments know that direct access to DDL commands on a
    production database is a rare privilege, and DBAs want textual SQL scripts.
    Alembic's usage model and commands are oriented towards being able to run a
    series of migrations into a textual output file as easily as it runs them
    directly to a database. Care must be taken in this mode to not invoke other
    operations that rely upon in-memory SELECTs of rows - Alembic tries to
    provide helper constructs like bulk_insert() to help with data-oriented
    operations that are compatible with script-based DDL.
  * Non-linear, dependency-graph versioning.   Scripts are given UUID
    identifiers similarly to a DVCS, and the linkage of one script to the next
    is achieved via human-editable markers within the scripts themselves.
    The structure of a set of migration files is considered as a
    directed-acyclic graph, meaning any migration file can be dependent
    on any other arbitrary set of migration files, or none at
    all.  Through this open-ended system, migration files can be organized
    into branches, multiple roots, and mergepoints, without restriction.
    Commands are provided to produce new branches, roots, and merges of
    branches automatically.
  * Provide a library of ALTER constructs that can be used by any SQLAlchemy
    application. The DDL constructs build upon SQLAlchemy's own DDLElement base
    and can be used standalone by any application or script.
  * At long last, bring SQLite and its inablity to ALTER things into the fold,
    but in such a way that SQLite's very special workflow needs are accommodated
    in an explicit way that makes the most of a bad situation, through the
    concept of a "batch" migration, where multiple changes to a table can
    be batched together to form a series of instructions for a single, subsequent
    "move-and-copy" workflow.   You can even use "move-and-copy" workflow for
    other databases, if you want to recreate a table in the background
    on a busy system.

  Documentation and status of Alembic is at https://alembic.sqlalchemy.org/


pkgId: 64be328586ad88cf128f7e5e5747b3fa187229114c5880d49c9f7d2d182131b4
name: rh-python36-amqp
arch: noarch
version: 2.5.2
epoch: 0
release: 1
summary: Low-level AMQP client for Python (fork of amqplib).
url: http://github.com/celery/py-amqp
rpm_license: BSD
rpm_vendor: Ask Solem <pyamqp@celeryproject.org>
rpm_group: Development/Libraries
rpm_buildhost: 0dec49a993d846ca9e2426481c5d7a7f
rpm_sourcerpm: rh-python36-amqp-2.5.2-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387142-rh-python36-amqp/rh-python36-amqp-2.5.2-1.noarch.rpm
checksum_type: sha256
description:
  =====================================================================
   Python AMQP 0.9.1 client library
  =====================================================================

  |build-status| |coverage| |license| |wheel| |pyversion| |pyimp|

  :Version: 2.3.2
  :Web: https://amqp.readthedocs.io/
  :Download: https://pypi.org/project/amqp/
  :Source: http://github.com/celery/py-amqp/
  :Keywords: amqp, rabbitmq

  About
  =====

  This is a fork of amqplib_ which was originally written by Barry Pederson.
  It is maintained by the Celery_ project, and used by `kombu`_ as a pure python
  alternative when `librabbitmq`_ is not available.

  This library should be API compatible with `librabbitmq`_.

  .. _amqplib: https://pypi.org/project/amqplib/
  .. _Celery: http://celeryproject.org/
  .. _kombu: https://kombu.readthedocs.io/
  .. _librabbitmq: https://pypi.org/project/librabbitmq/

  Differences from `amqplib`_
  ===========================

  - Supports draining events from multiple channels (``Connection.drain_events``)
  - Support for timeouts
  - Channels are restored after channel error, instead of having to close the
    connection.
  - Support for heartbeats

      - ``Connection.heartbeat_tick(rate=2)`` must called at regular intervals
        (half of the heartbeat value if rate is 2).
      - Or some other scheme by using ``Connection.send_heartbeat``.
  - Supports RabbitMQ extensions:
      - Consumer Cancel Notifications
          - by default a cancel results in ``ChannelError`` being raised
          - but not if a ``on_cancel`` callback is passed to ``basic_consume``.
      - Publisher confirms
          - ``Channel.confirm_select()`` enables publisher confirms.
          - ``Channel.events['basic_ack'].append(my_callback)`` adds a callback
            to be called when a message is confirmed. This callback is then
            called with the signature ``(delivery_tag, multiple)``.
      - Exchange-to-exchange bindings: ``exchange_bind`` / ``exchange_unbind``.
          - ``Channel.confirm_select()`` enables publisher confirms.
          - ``Channel.events['basic_ack'].append(my_callback)`` adds a callback
            to be called when a message is confirmed. This callback is then
            called with the signature ``(delivery_tag, multiple)``.
      - Authentication Failure Notifications
          Instead of just closing the connection abruptly on invalid
          credentials, py-amqp will raise an ``AccessRefused`` error
          when connected to rabbitmq-server 3.2.0 or greater.
  - Support for ``basic_return``
  - Uses AMQP 0-9-1 instead of 0-8.
      - ``Channel.access_request`` and ``ticket`` arguments to methods
        **removed**.
      - Supports the ``arguments`` argument to ``basic_consume``.
      - ``internal`` argument to ``exchange_declare`` removed.
      - ``auto_delete`` argument to ``exchange_declare`` deprecated
      - ``insist`` argument to ``Connection`` removed.
      - ``Channel.alerts`` has been removed.
      - Support for ``Channel.basic_recover_async``.
      - ``Channel.basic_recover`` deprecated.
  - Exceptions renamed to have idiomatic names:
      - ``AMQPException`` -> ``AMQPError``
      - ``AMQPConnectionException`` -> ConnectionError``
      - ``AMQPChannelException`` -> ChannelError``
      - ``Connection.known_hosts`` removed.
      - ``Connection`` no longer supports redirects.
      - ``exchange`` argument to ``queue_bind`` can now be empty
        to use the "default exchange".
  - Adds ``Connection.is_alive`` that tries to detect
    whether the connection can still be used.
  - Adds ``Connection.connection_errors`` and ``.channel_errors``,
    a list of recoverable errors.
  - Exposes the underlying socket as ``Connection.sock``.
  - Adds ``Channel.no_ack_consumers`` to keep track of consumer tags
    that set the no_ack flag.
  - Slightly better at error recovery

  Further
  =======

  - Differences between AMQP 0.8 and 0.9.1

      http://www.rabbitmq.com/amqp-0-8-to-0-9-1.html

  - AMQP 0.9.1 Quick Reference

      http://www.rabbitmq.com/amqp-0-9-1-quickref.html

  - RabbitMQ Extensions

      http://www.rabbitmq.com/extensions.html

  - For more information about AMQP, visit

      http://www.amqp.org

  - For other Python client libraries see:

      http://www.rabbitmq.com/devtools.html#python-dev

  .. |build-status| image:: https://secure.travis-ci.org/celery/py-amqp.png?branch=master
      :alt: Build status
      :target: https://travis-ci.org/celery/py-amqp

  .. |coverage| image:: https://codecov.io/github/celery/py-amqp/coverage.svg?branch=master
      :target: https://codecov.io/github/celery/py-amqp?branch=master

  .. |license| image:: https://img.shields.io/pypi/l/amqp.svg
      :alt: BSD License
      :target: https://opensource.org/licenses/BSD-3-Clause

  .. |wheel| image:: https://img.shields.io/pypi/wheel/amqp.svg
      :alt: Python AMQP can be installed via wheel
      :target: https://pypi.org/project/amqp/

  .. |pyversion| image:: https://img.shields.io/pypi/pyversions/amqp.svg
      :alt: Supported Python versions.
      :target: https://pypi.org/project/amqp/

  .. |pyimp| image:: https://img.shields.io/pypi/implementation/amqp.svg
      :alt: Support Python implementations.
      :target: https://pypi.org/project/amqp/


pkgId: 4bf709670681975e0d274cdbf933d3d29f22487c698976d0b9e1b2f9f72f206e
name: rh-python36-ansible
arch: noarch
version: 2.9.6
epoch: 0
release: 1
summary: Radically simple IT automation
url: https://ansible.com/
rpm_license: GPLv3+
rpm_vendor: Ansible, Inc. <info@ansible.com>
rpm_group: Development/Libraries
rpm_buildhost: 0281eb20df004c69bfb35b5cb6ddbbe7
rpm_sourcerpm: rh-python36-ansible-2.9.6-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387266-rh-python36-ansible/rh-python36-ansible-2.9.6-1.noarch.rpm
checksum_type: sha256
description:
  |PyPI version| |Docs badge| |Chat badge| |Build Status|

  *******
  Ansible
  *******

  Ansible is a radically simple IT automation system. It handles
  configuration-management, application deployment, cloud provisioning,
  ad-hoc task-execution, and multinode orchestration -- including
  trivializing things like zero-downtime rolling updates with load
  balancers.

  Read the documentation and more at https://ansible.com/

  You can find installation instructions
  `here <https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html>`_ for a
  variety of platforms.

  Most users should probably install a released version of Ansible from ``pip``, a package manager or
  our `release repository <https://releases.ansible.com/ansible/>`_. `Officially supported
  <https://www.ansible.com/ansible-engine>`_ builds of Ansible are also available. Some power users
  run directly from the development branch - while significant efforts are made to ensure that
  ``devel`` is reasonably stable, you're more likely to encounter breaking changes when running
  Ansible this way.

  Design Principles
  =================

  *  Have a dead simple setup process and a minimal learning curve.
  *  Manage machines very quickly and in parallel.
  *  Avoid custom-agents and additional open ports, be agentless by
     leveraging the existing SSH daemon.
  *  Describe infrastructure in a language that is both machine and human
     friendly.
  *  Focus on security and easy auditability/review/rewriting of content.
  *  Manage new remote machines instantly, without bootstrapping any
     software.
  *  Allow module development in any dynamic language, not just Python.
  *  Be usable as non-root.
  *  Be the easiest IT automation system to use, ever.

  Get Involved
  ============

  *  Read `Community
     Information <https://docs.ansible.com/ansible/latest/community>`_ for all
     kinds of ways to contribute to and interact with the project,
     including mailing list information and how to submit bug reports and
     code to Ansible.
  *  All code submissions are done through pull requests to the ``devel`` branch.
  *  Feel free to talk to us before making larger changes
     to avoid duplicate efforts. This not only helps everyone
     know what's going on, it also helps save time and effort if we decide
     some changes are needed.
  *  Users list:
     `ansible-project <https://groups.google.com/group/ansible-project>`_
  *  Development list:
     `ansible-devel <https://groups.google.com/group/ansible-devel>`_
  *  Announcement list:
     `ansible-announce <https://groups.google.com/group/ansible-announce>`_
     -- read only
  *  irc.freenode.net: #ansible
  *  For the full list of Email Lists, IRC channels see the
     `Communication page <https://docs.ansible.com/ansible/latest/community/communication.html>`_

  Branch Info
  ===========

  *  Releases are named after Led Zeppelin songs. (Releases prior to 2.0
     were named after Van Halen songs.)
  *  The ``devel`` branch corresponds to the release actively under
     development.
  *  The ``stable-2.x`` branches exist for current releases.
  *  Various release-X.Y branches exist for previous releases.
  *  For information about the active branches see the
     `Ansible release and maintenance <https://docs.ansible.com/ansible/latest/reference_appendices/release_and_maintenance.html>`_ page.
  *  We'd love to have your contributions, read the `Community
     Guide <https://docs.ansible.com/ansible/latest/community>`_ for notes on
     how to get started.

  Roadmap
  =======

  Based on team and community feedback, an initial roadmap will be published for a major or minor version (ex: 2.0, 2.1).
  Subminor versions will generally not have roadmaps published.

  The `Ansible Roadmap page <https://docs.ansible.com/ansible/devel/roadmap/>`_ details what is planned and how to influence the roadmap.

  Authors
  =======

  Ansible was created by `Michael DeHaan <https://github.com/mpdehaan>`_
  (michael.dehaan/gmail/com) and has contributions from over 3700 users
  (and growing). Thanks everyone!

  `Ansible <https://www.ansible.com>`_ is sponsored by `Red Hat, Inc.
  <https://www.redhat.com>`_

  License
  =======

  GNU General Public License v3.0

  See `COPYING <COPYING>`_ to see the full text.

  .. |PyPI version| image:: https://img.shields.io/pypi/v/ansible.svg
     :target: https://pypi.org/project/ansible
  .. |Docs badge| image:: https://img.shields.io/badge/docs-latest-brightgreen.svg
     :target: https://docs.ansible.com/ansible/latest/
  .. |Build Status| image:: https://api.shippable.com/projects/573f79d02a8192902e20e34b/badge?branch=devel
     :target: https://app.shippable.com/projects/573f79d02a8192902e20e34b
  .. |Chat badge| image:: https://img.shields.io/badge/chat-IRC-brightgreen.svg
     :target: https://docs.ansible.com/ansible/latest/community/communication.html


pkgId: 0dfb2453530a87116140dbceec8f1b001957453a83634db62f73695c81bf82d4
name: rh-python36-ansible-runner
arch: noarch
version: 1.4.4
epoch: 0
release: 1
summary: UNKNOWN
url: https://github.com/ansible/ansible-runner
rpm_license: Apache
rpm_vendor: Red Hat Ansible <UNKNOWN>
rpm_group: Development/Libraries
rpm_buildhost: ae0fe20756144a8bbd63a1c4c425a1cc
rpm_sourcerpm: rh-python36-ansible-runner-1.4.4-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387274-rh-python36-ansible-runner/rh-python36-ansible-runner-1.4.4-1.noarch.rpm
checksum_type: sha256
description:
  Ansible Runner
  ==============

  Ansible Runner is a tool and python library that helps when interfacing with Ansible directly or as part of another system whether that be through a container image interface, as a standalone tool, or as a Python module that can be imported. The goal is to provide a stable and consistent interface abstraction to Ansible.

  For the latest documentation see: https://ansible-runner.readthedocs.io/en/latest/


pkgId: 3d5afb20e515f370b2f10b9d032226137633c69507c9800f2040a6ed9c3efd52
name: rh-python36-ansible-tower-cli
arch: noarch
version: 3.3.9
epoch: 0
release: 1
summary: A CLI tool for Ansible Tower and AWX.
url: https://github.com/ansible/tower-cli
rpm_license: Apache 2.0
rpm_vendor: Red Hat, Inc. <info@ansible.com>
rpm_group: Development/Libraries
rpm_buildhost: 99c89923355643ff86ab23aa1eec40d4
rpm_sourcerpm: rh-python36-ansible-tower-cli-3.3.9-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387022-rh-python36-ansible-tower-cli/rh-python36-ansible-tower-cli-3.3.9-1.noarch.rpm
checksum_type: sha256
description:
  |Build Status| |Coverage Status| |Version| |Downloads| |License|
  |Supported Python Versions|

  Welcome to tower-cli
  ====================

  **tower-cli** is a command line tool for Ansible Tower. It allows Tower
  commands to be easily run from the Unix command line. It can also be
  used as a client library for other python apps, or as a reference for
  others developing API interactions with Tower's REST API.

  For more information, please refer to our official docs hosted at http://tower-cli.readthedocs.io.

   .. |Build Status| image:: https://img.shields.io/travis/com/ansible/tower-cli.svg
      :target: https://travis-ci.com/ansible/tower-cli
   .. |Coverage Status| image:: https://img.shields.io/coveralls/ansible/tower-cli.svg
      :target: https://coveralls.io/r/ansible/tower-cli
   .. |Version| image:: https://img.shields.io/pypi/v/ansible-tower-cli.svg
      :target: https://pypi.python.org/pypi/ansible-tower-cli/
   .. |Downloads| image:: https://img.shields.io/pypi/dm/ansible-tower-cli.svg
      :target: https://pypi.python.org/pypi/ansible-tower-cli/
   .. |License| image:: https://img.shields.io/pypi/l/ansible-tower-cli.svg
      :target: https://pypi.python.org/pypi/ansible-tower-cli/
   .. |Supported Python Versions| image:: https://img.shields.io/pypi/pyversions/ansible-tower-cli.svg
      :target: https://pypi.python.org/pypi/ansible-tower-cli/


  Release History
  ===============

  3.3.3 (2019-03-22)
  -----------

  - Fix bug where workflow schema would hang if there were too many nodes
  - Add organization job_template_role to role management

  3.3.2 (2019-01-28)
  -----------

  - Fix bug where verify_ssl config parameter was not respected
  - Fix bug where --all-pages was ignored listing team roles

  3.3.1 (2019-01-24)
  -----------

  - Fixed associating labels to workflows
  - Associating labels to job template now takes option as --job-template
  - Allow adding workflows inside of workflows
  - Allow exporting schedules of workflows
  - Send command now uses default terminal background color
  - Fix some unicode errors in send/receive commands
  - Hide display of page number for human-formatted single page results
  - Allow setting the custom virtual environment on projects and organizations

  3.3.0 (2018-04-25)
  ------------------

  - Added send and receive commands to export and import resources
  - Added support for import and export role memberships as well
  - Added login command for token-based auth (AWX feature)
  - Added options for workflow nodes and schedules (AWX feature)
  - Added support for server-side copying (AWX feature)
  - Added resource for activity stream
  - Added abstract resource for job events
  - Bug fixes for label creation, workflow monitor, global config, role list

  3.2.1 (2017-12-19)
  ------------------

  - Added support for using settings from environment vars in normal CLI use
  - Made many-to-many relations easier to manage with a new field type
  - Installed new CLI entry point, awx-cli
  - Allowed setup and testing to proceed without root privileges
  - Added project and inventory update resources to enable more functionality
  - Fixed bug when copying resources that use the variables field type
  - Fixed bug that caused debug messages to hang with long line lengths
  - Fixed bug with side-by-side install of v1 and v2
  - Fixed bug where --all-pages was ignored for roles
  - Allowed use of --format=id with multiple results
  - Added cleaner handling of Unicode

  3.2.0 (2017-10-04)
  ------------------

  *General:*

  - Officially support using tower_cli as a python library.
  - Major documentation updates. From 3.2.0 docs are hosted on http://tower-cli.readthedocs.io.
  - Added project_update and inventory_update resources to allow canceling and deleting.

  *Updates from Tower 3.2:*

  - Migrated to API V2. All API calls will start with `/api/v2` instead of `/api/v1`.
  - Made inventory_source an external resource and remove the old relationship to its associated group. Remove launching inventory updates from group resource.
  - Added credential_type resource and significantly modified credential resource to reveal user-defined credentials feature of Tower 3.2.
  - Added job template extra credential (dis)association to reveal extra_credential field of 3.2 job templates.
  - Removed all source-specific inventory source fields and replaced them with a `credential` field.
  - Updated inventory resource fields to reveal smart inventory and insights integration features of Tower 3.2.
  - Added `list_fact` and `insights` commands to host resource to reveal smart inventory and insights integration features of Tower 3.2.
  - Added `instance` and `instance_group` resources to reveal instance/instance group feature of Tower 3.2.
  - Enabled (dis)associating instance groups to(from) organization, job_template and inventory resources to reveal instance/instance group feature of Tower 3.2.
  - Added support for Tower 3.2 SCM inventory sources.
  - Updated job_template resource fields to reveal changes in Tower 3.2, including `--diff` mode feature.
  - Updated job resource launch command to reveal changes in Tower 3.2, including `--diff` mode feature.
  - Updated ad_hoc resource fields to reveal changes in Tower 3.2, including `--diff` mode feature. Specifically, changed name of `--become` of `launch` command into `--become-enabled`.

  *Deprecated features:*

  - Removed permission resource.
  - Disabled launching a job using the jobs endpoint.
  - Removed scan jobs in favor of new job fact cache.
  - Removed Rackspace options.
  - Remove outdated association function for project's organization.

  *Reflected from 3.1.8:*

  - Include method of installing with alias tower-cli-v2
  - Fix bug of incomplete role membership lookup, preventing granting of roles.
  - Combine click parameters from multiple base classes in metaclass.
  - Fix unicode bug in human display format.
  - Add new page_size parameter to list view.
  - Add scm_update_cache_timeout field to project resource.
  - Begin process to deprecate python 2.6.

  3.1.7 (2017-08-07)
  ------------------

  - Follow up 3.1.6 by duplicating exceptions.py to support `import tower_cli.utils.exceptions` syntax.

  3.1.6 (2017-07-18)
  ------------------

  - Fix a usage compatibility issue for Ansible Tower modules.

  3.1.5 (2017-07-12)
  ------------------

  - Major code base file structure refactor. Now all click-related logics are moved to `tower_cli/cli/` directory,
    and `exceptions.py` as well as `compat.py` are moved out of utils directory into base directory.
  - Categorize help text options for resource action commands (like `update`) to increase readability.
  - Behavior change of workflow schema command. Now schema will both create new nodes and delete existing nodes when
    needed to make the resulting workflow topology exactly the same as described in schema file.
  - Add command `job_template callback` to enable conducting provisioning callback via Tower CLI.
  - Add new format option to just echo id.
  - Expand some resource fields, including hipchat rooms for notification template and allow_simultaneous for job
    templates.
  - Lookup related inventory sources with "starts with" logic if its name is not fully qualified.
  - Fixed a python 3.5 compatibility issue that causes job monitor traceback.
  - Minor typo and help text updates.

  3.1.4 (2017-06-07)
  ------------------

  - Support resource copy subcommand.
  - Support auth-token-based authentication for Tower CLI requests.
  - Support managing workflow roles, labels and notifications via Tower CLI.
  - Several fixes on RPM spec file.
  - Name change from 'foreman' to 'satellite6' in credential kind choices.
  - Fixed a bug where creating job templates with --extra-vars did not work after
    3.1.0 upgrade.
  - Fixed traceback when launching job with --use-job-endpoint.
  - Enhanced json library usage to prevent traceback when using earlier python 2.6
    versions.
  - Prevent throwing unnecessary warning when reading from global configuration file.

  3.1.3 (2017-03-22)
  ------------------

  - Fixed a bug where extra_vars were dropped in some commands.

  3.1.2 (2017-03-21)
  ------------------

  - Fixed a bug where global flags are not added to some commands.

  3.1.1 (2017-03-13)
  ------------------

  - Fixed a bug which blocks named resources from using runtime configure settings.
  - Fixed a bug in 3.1.0 which sometimes causes traceback when `pk` value is given.

  3.1.0 (2017-03-09)
  ------------------

  - Improved job monitoring functionality to enable standard out streaming, which
    displays real-time job output on command line.
  - Added workflow, workflow_job and node endpoints to manipulate workflow graph
    and manage workflow job resources. Reflecting workflows feature of Tower 3.1.
  - Added settings command to manage Tower settings via Tower CLI. Reflecting
    Configure Tower in Tower (CTiT) feature of Tower 3.1.
  - Included timeout option to certain unified job template resources. Reflecting
    job timeout feature of Tower 3.1.
  - Added unicode support to extra_vars and variable types.
  - Several minor bug fixes to improve user experience.

  3.0.3 (2017-02-07)
  ------------------

  - Expose custom inventory script resource to the user
  - Include tests and docs in the release tarball
  - Added job template skip_tags prompting support
  - Added job template callback support

  3.0.2 (2016-12-08)
  ------------------

  - Enable configuring tower-cli via environment variables

  3.0.1 (2016-09-22)
  ------------------

  - Added custom SSL certificate support

  3.0.0 (2016-08-05)
  ------------------

  - Added text indicator for resource change
  - Allow hosts, inventory, and groups to use variables from the command line
    and denote a file by starting with "@"
  - Added resource role for tower3.0 and permission for previous tower versions
  - Added notification templates
  - Added labels
  - Added description display option
  - Added deprecation warnings
  - Help text upgrades
  - Give indication of "changed" apart from color
  - New credential fields to support openstack-v2, networking and azure
  - New options for inventory source/group. Add implicit resource inventory
    script.
  - credential updates (no longer require user/team)
  - Added support for system auditors
  - projects (do not post to organizations/N/projects)
  - prompt-for JT fields + job launch options (allow blank inventory too)
  - Update the POST protocol for associate and disassociate actions
  - New job launch option for backwards compatibility
  - New tower-cli option to display tower-cli version
  - Enhanced debug log format (support multi-line debug log)

  2.3.2 (2016-07-21)
  ------------------

  - Add RPM specfile and Makefile
  - Tower compatibility fixes
  - Allow scan JTs as an option for "job_type"
  - Add ability to create group as subgroup of another group
  - Add YAML output format against JSON and humanized output formats
  - Add SSL corner case error handling and suggestion
  - Allow resource disassociation with "null"

  2.3.1 (2015-12-10)
  ------------------

  - Fixed bug affecting force-on-exists and fail_on_found options
  - Changed extra_vars behavior to be more compliant by re-parsing vars,
    even when only one source exists
  - Fixed group modify bug, avoid sending unwanted fields in modify requests

  2.3.0 (2015-10-20)
  ------------------

  -  Fixed an issue where the settings file could be world readable
  -  Added the ability to associate a project with an organization
  -  Added setting "verify\_ssl" to disallow insecure connections
  -  Added support for additional cloud credentials
  -  Exposed additional options for a cloud inventory source
  -  Combined " launch-time extra\_vars" with " job\_template extra\_vars"
     for older Tower versions
  -  Changed the extra\_vars parameters to align with Ansible parameter
     handling
  -  Added the ability to run ad hoc commands
  -  Included more detail when displaying job information
  -  Added an example bash script to demonstrate tower-cli usage

  2.1.1 (2015-01-27)
  ------------------

  -  Added tests for Python versions 2.6 through 3.4
  -  Added shields for github README
  -  Added job\_tags on job launches
  -  Added option for project local path

  2.1.0 (2015-01-21)
  ------------------

  -  Added the ability to customize the set of fields used as options for
     a resource
  -  Expanded monitoring capability to include projects and inventory
     sources
  -  Added support for new job\_template job launch endpoint

  2.0.2 (2014-10-02)
  ------------------

  -  Added ability to set local scope for config file
  -  Expanded credential resource to allow options for cloud credentials

  2.0.1 (2014-07-18)
  ------------------

  -  Updated README and error text

  2.0.0 (2014-07-15)
  ------------------

  -  Pluggable resource architecture built around click


pkgId: 33ade0f413d7d443d24341fce0c5ad3fc9a52d3b1c28982679988ed6b5bb5a6f
name: rh-python36-apache-libcloud
arch: noarch
version: 2.5.0
epoch: 0
release: 1
description: UNKNOWN
url: http://libcloud.apache.org/
rpm_license: Apache License (2.0)
rpm_vendor: Apache Software Foundation <dev@libcloud.apache.org>
rpm_group: Development/Libraries
rpm_buildhost: baa3a6d982f44e7496ab15879ea97dd7
rpm_sourcerpm: rh-python36-apache-libcloud-2.5.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387181-rh-python36-apache-libcloud/rh-python36-apache-libcloud-2.5.0-1.noarch.rpm
checksum_type: sha256
summary:
  A standard Python library that abstracts away differences among multiple cloud provider APIs. For more information and documentation, please see http://libcloud.apache.org


pkgId: 00e645121eb5a649eb25df158d6dd6c1141953424b636478af4ed29580e084ca
name: rh-python36-applicationinsights
arch: noarch
version: 0.11.9
epoch: 0
release: 1
summary: This project extends the Application Insights API surface to support Python.
url: https://github.com/Microsoft/AppInsights-Python
rpm_license: MIT
rpm_vendor: Microsoft <aiengdisc@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 48d1f4327e5e4b2396ebcbbae4e94283
rpm_sourcerpm: rh-python36-applicationinsights-0.11.9-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387220-rh-python36-applicationinsights/rh-python36-applicationinsights-0.11.9-1.noarch.rpm
checksum_type: sha256
description:
  Application Insights for Python
  ===============================

  This project extends the Application Insights API surface to support Python. `Application Insights <http://azure.microsoft.com/en-us/services/application-insights/>`_ is a service that allows developers to keep their application available, performing and succeeding. This Python module will allow you to send telemetry of various kinds (event, trace, exception, etc.) to the Application Insights service where they can be visualized in the Azure Portal.

  Requirements
  ------------

  Python 2.7 and Python 3.4 are currently supported by this module.

  For opening the project in Microsoft Visual Studio you will need `Python Tools for Visual Studio <http://pytools.codeplex.com/>`_.

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

  To install the latest release you can use `pip <http://www.pip-installer.org/>`_.

  ::

      $ pip install applicationinsights

  Usage
  -----

  Once installed, you can send telemetry to Application Insights. Here are a few samples.

      **Note**: before you can send data to you will need an instrumentation key. Please see the `Getting an Application Insights Instrumentation Key <https://github.com/Microsoft/AppInsights-Home/wiki#getting-an-application-insights-instrumentation-key>`_ section for more information.

  **Sending a simple event telemetry item**

  .. code:: python

      from applicationinsights import TelemetryClient
      tc = TelemetryClient('<YOUR INSTRUMENTATION KEY GOES HERE>')
      tc.track_event("Test event")
      tc.flush()

  **Sending an event telemetry item with custom properties and measurements**

  .. code:: python

      from applicationinsights import TelemetryClient
      tc = TelemetryClient('<YOUR INSTRUMENTATION KEY GOES HERE>')
      tc.track_event('Test event', { 'foo': 'bar' }, { 'baz': 42 })
      tc.flush()

  **Sending a trace telemetry item with custom properties**

  .. code:: python

      from applicationinsights import TelemetryClient
      tc = TelemetryClient('<YOUR INSTRUMENTATION KEY GOES HERE>')
      tc.track_trace('Test trace', { 'foo': 'bar' })
      tc.flush()

  **Sending a metric telemetry item**

  .. code:: python

      from applicationinsights import TelemetryClient
      tc = TelemetryClient('<YOUR INSTRUMENTATION KEY GOES HERE>')
      tc.track_metric('My Metric', 42)
      tc.flush()

  **Sending an exception telemetry item with custom properties and measurements**

  .. code:: python

      import sys
      from applicationinsights import TelemetryClient
      tc = TelemetryClient('<YOUR INSTRUMENTATION KEY GOES HERE>')
      try:
          raise Exception('blah')
      except:
          tc.track_exception()

      try:
          raise Exception("blah")
      except:
          tc.track_exception(*sys.exc_info(), properties={ 'foo': 'bar' }, measurements={ 'x': 42 })
      tc.flush()

  **Configuring context for a telemetry client instance**

  .. code:: python

      from applicationinsights import TelemetryClient
      tc = TelemetryClient('<YOUR INSTRUMENTATION KEY GOES HERE>')
      tc.context.application.id = 'My application'
      tc.context.application.ver = '1.2.3'
      tc.context.device.id = 'My current device'
      tc.context.device.oem_name = 'Asus'
      tc.context.device.model = 'X31A'
      tc.context.device.type = "Other"
      tc.context.user.id = 'santa@northpole.net'
      tc.track_trace('My trace with context')
      tc.flush()

  **Configuring channel related properties**

  .. code:: python

      from applicationinsights import TelemetryClient
      tc = TelemetryClient('<YOUR INSTRUMENTATION KEY GOES HERE>')
      
      tc.channel.sender.send_interval_in_milliseconds = 30 * 1000
      
      tc.channel.sender.max_queue_item_count = 10

  **Basic logging configuration (first option)**

  .. code:: python

      import logging
      from applicationinsights.logging import enable

      
      enable('<YOUR INSTRUMENTATION KEY GOES HERE>')

      
      logging.info('This is a message')

      
      

  **Basic logging configuration (second option)**

  .. code:: python

      import logging
      from applicationinsights.logging import LoggingHandler

      
      handler = LoggingHandler('<YOUR INSTRUMENTATION KEY GOES HERE>')
      logging.basicConfig(handlers=[ handler ], format='s: s', level=logging.DEBUG)

      
      logging.debug('This is a message')

      try:
          raise Exception('Some exception')
      except:
          
          logging.exception('Code went boom!')

      
      

  **Advanced logging configuration**

  .. code:: python

      import logging
      from applicationinsights.logging import LoggingHandler

      
      handler = LoggingHandler('<YOUR INSTRUMENTATION KEY GOES HERE>')
      handler.setLevel(logging.DEBUG)
      handler.setFormatter(logging.Formatter('s: s'))
      my_logger = logging.getLogger('simple_logger')
      my_logger.setLevel(logging.DEBUG)
      my_logger.addHandler(handler)

      
      my_logger.debug('This is a message')

      
      

  **Logging unhandled exceptions**

  .. code:: python

      from applicationinsights.exceptions import enable

      
      enable('<YOUR INSTRUMENTATION KEY GOES HERE>')

      
      raise Exception('Boom!')

  **Logging requests**

  .. code:: python

      from flask import Flask
      from applicationinsights.requests import WSGIApplication

      
      app = Flask(__name__)
      app.wsgi_app = WSGIApplication('<YOUR INSTRUMENTATION KEY GOES HERE>', app.wsgi_app)

      
      @app.route('/')
      def hello_world():
          return 'Hello World!'

      
      if __name__ == '__main__':
          app.run()


pkgId: 4489c777af1a515a84ee180a76dc84c645c5451881590b303e66da5de4808d5d
name: rh-python36-ara
arch: noarch
version: 1.3.2
epoch: 0
release: 1
summary: ARA Records Ansible
url: https://github.com/openstack/ara
rpm_license: UNKNOWN
rpm_vendor: OpenStack Community <openstack-discuss@lists.openstack.org>
rpm_group: Development/Libraries
rpm_buildhost: e8951b4de953402891ca510c8976c13d
rpm_sourcerpm: rh-python36-ara-1.3.2-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387024-rh-python36-ara/rh-python36-ara-1.3.2-1.noarch.rpm
checksum_type: sha256
description:
  ARA Records Ansible
  ===================
  .. image:: doc/source/_static/ara-with-icon.png

  ARA Records Ansible playbook runs and makes the recorded data available and
  intuitive for users and systems.

  ARA doesn't run your playbooks for you: it integrates with Ansible as a
  callback plugin wherever it is.

  Whether you are running Ansible from your personal laptop or a server, all
  you need to do is to `install ARA`_, `configure Ansible to use ARA`_ and
  you're good to go.

  .. image:: doc/source/_static/reports.png

  .. _install ARA: https://ara.readthedocs.io/en/latest/installation.html
  .. _configure Ansible to use ARA: https://ara.readthedocs.io/en/latest/configuration.html

  Quickstart
  ==========

  ::

      
      pip install ara

      
      
      source <(python -m ara.setup.env)

      
      

      
      ara-manage runserver
      

  Refer to the documentation_ for more information.

  .. _documentation: https://ara.readthedocs.io/en/latest/

  ARA components
  ==============

  ARA has four main components:

  1. An `Ansible callback plugin`_ to record playbook runs into a local or remote database
  2. The ara_record_ and ara_read_ pair of Ansible modules to record and read persistent data with ARA
  3. A `CLI client`_ to query the database
  4. A `dynamic, database-driven web interface`_ that can also be `generated and served from static files`_

  .. _ARA: https://github.com/openstack/ara
  .. _Ansible: https://www.ansible.com/
  .. _Ansible callback plugin: https://ara.readthedocs.io/en/latest/configuration.html#ansible
  .. _ara_record: https://ara.readthedocs.io/en/latest/usage.html#using-the-ara-record-module
  .. _ara_read: https://ara.readthedocs.io/en/latest/usage.html#using-the-ara-read-module
  .. _CLI client: https://ara.readthedocs.io/en/latest/usage.html#querying-the-database-with-the-cli
  .. _dynamic, database-driven web interface: https://ara.readthedocs.io/en/latest/faq.html#what-does-the-web-interface-look-like
  .. _generated and served from static files: https://ara.readthedocs.io/en/latest/usage.html#generating-a-static-html-version-of-the-web-application

  What does the web interface look like ?
  ---------------------------------------

  A video preview and explanation of the web interface is available on
  YouTube_, featuring playbook runs from the OpenStack-Ansible_ project.

  Otherwise, screenshots highlighting some of ARA's features are available in
  `the frequently asked questions`_

  .. _YouTube: https://www.youtube.com/watch?v=k3i8VPCanGo
  .. _OpenStack-Ansible: https://github.com/openstack/openstack-ansible
  .. _the frequently asked questions: https://ara.readthedocs.io/en/latest/faq.html#interface-preview

  Community and getting help
  ==========================

  You can chat with the ARA community on Slack and IRC.
  The two are transparently bridged with teamchat_ which broadcasts messages from
  one platform to the other.

  In addition, you can also find ARA on Twitter: `@ARecordsAnsible <https://twitter.com/ARecordsAnsible>`_

  **IRC**

  - Server: `irc.freenode.net`_
  - Channel: #ara

  **Slack**

  - https://arecordsansible.slack.com
  - Join with the `Slack invitation <https://join.slack.com/t/arecordsansible/shared_invite/enQtMjMxNzI4ODAxMDQxLWU4MmZhZTI4ZjRjOTUwZTM2MzM3MzcwNDU1YzFmNzRlMzI0NTUzNDY1MWJlNThhM2I4ZTViZjUwZTRkNTBiM2I>`_

  .. _teamchat: https://github.com/dmsimard/teamchat
  .. _irc.freenode.net: https://webchat.freenode.net/

  Contributing, testing, issues and bugs
  ======================================

  Contributions to ARA are definitely welcome and much appreciated !

  ARA does not use GitHub for issues or pull requests.

  ARA uses the OpenStack infrastructure for code hosting and review as well as
  project and bug/issue tracking.

  The `contributor documentation`_ will get you started quickly if you need help
  contributing !

  * Submitted code reviews are available on **Gerrit**:
    https://review.openstack.org/#/q/project:openstack/ara
  * Bugs, issues and feature tracking are available on **StoryBoard**:
    https://storyboard.openstack.org/#!/project/843

  Each commit to ARA is reviewed and also rigorously tested to prevent
  regressions. Here's our current testing coverage:

  +-----------------+--------+--------+----------+--------+--------+
  | -               | Fedora | CentOS | OpenSUSE | Debian | Ubuntu |
  +=================+========+========+==========+========+========+
  | Ansible 2.5.14  |        |  py27  |          |        |        |
  +-----------------+--------+--------+----------+--------+--------+
  | Ansible 2.6.12  |        |        |          |  py27  |        |
  +-----------------+--------+--------+----------+--------+--------+
  | Ansible 2.7.6   |  py37  |        |   py27   |        |  py36  |
  +-----------------+--------+--------+----------+--------+--------+
  | Ansible "devel" |  py37  |        |          |        |  py36  |
  +-----------------+--------+--------+----------+--------+--------+

  You might also be interested in reading the project manifesto_ in order to have
  a good understanding of the project's core values and philosophy.

  .. _contributor documentation: https://ara.readthedocs.io/en/latest/contributing.html
  .. _manifesto: https://ara.readthedocs.io/en/latest/manifesto.html

  Documentation
  =============

  `Frequently asked questions`_ and documentation on how to install_, configure_,
  use_ to ARA is available on `readthedocs.io`_.

  .. _Frequently asked questions: https://ara.readthedocs.io/en/latest/faq.html
  .. _install: https://ara.readthedocs.io/en/latest/installation.html
  .. _configure: https://ara.readthedocs.io/en/latest/configuration.html
  .. _use: https://ara.readthedocs.io/en/latest/usage.html

  .. _readthedocs.io: https://ara.readthedocs.io/en/latest/

  Contributors
  ============

  See contributors on GitHub_.

  .. _GitHub: https://github.com/openstack/ara/graphs/contributors

  Copyright
  =========

  ::

      Copyright (c) 2018 Red Hat, Inc.

      ARA is free software: you can redistribute it and/or modify
      it under the terms of the GNU General Public License as published by
      the Free Software Foundation, either version 3 of the License, or
      (at your option) any later version.

      ARA is distributed in the hope that it will be useful,
      but WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      GNU General Public License for more details.

      You should have received a copy of the GNU General Public License
      along with ARA.  If not, see <http://www.gnu.org/licenses/>.


pkgId: 16a4eea5589456d2e8fdbe9afa2ee1fa20b33dc93bc38ff5b7bc7f5cdb54f979
name: rh-python36-argcomplete
arch: noarch
version: 1.10.3
epoch: 0
release: 1
summary: Bash tab completion for argparse
url: https://github.com/kislyuk/argcomplete
rpm_license: Apache Software License
rpm_vendor: Andrey Kislyuk <kislyuk@gmail.com>
rpm_group: Development/Libraries
rpm_buildhost: 17787fd7a18d48bf84dbd70654a56529
rpm_sourcerpm: rh-python36-argcomplete-1.10.3-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387223-rh-python36-argcomplete/rh-python36-argcomplete-1.10.3-1.noarch.rpm
checksum_type: sha256
description:
  argcomplete - Bash tab completion for argparse
  ==============================================
  *Tab complete all the things!*

  Argcomplete provides easy, extensible command line tab completion of arguments for your Python script.

  It makes two assumptions:

  * You're using bash as your shell (limited support for zsh and tcsh is available)
  * You're using `argparse <http://docs.python.org/2.7/library/argparse.html>`_ to manage your command line arguments/options

  Argcomplete is particularly useful if your program has lots of options or subparsers, and if your program can
  dynamically suggest completions for your argument/option values (for example, if the user is browsing resources over
  the network).

  Installation
  ------------
  ::

      pip install argcomplete
      activate-global-python-argcomplete

  See `Activating global completion`_ below for details about the second step (or if it reports an error).

  Refresh your bash environment (start a new shell or ``source /etc/profile``).

  Synopsis
  --------
  Python code (e.g. ``my-awesome-script``):

  .. code-block:: python

      
      
      import argcomplete, argparse
      parser = argparse.ArgumentParser()
      ...
      argcomplete.autocomplete(parser)
      args = parser.parse_args()
      ...

  Shellcode (only necessary if global completion is not activated - see `Global completion`_ below), to be put in e.g. ``.bashrc``::

      eval "$(register-python-argcomplete my-awesome-script)"

  argcomplete.autocomplete(*parser*)
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  This method is the entry point to the module. It must be called **after** ArgumentParser construction is complete, but
  **before** the ``ArgumentParser.parse_args()`` method is called. The method looks for an environment variable that the
  completion hook shellcode sets, and if it's there, collects completions, prints them to the output stream (fd 8 by
  default), and exits. Otherwise, it returns to the caller immediately.

  .. admonition:: Side effects

   Argcomplete gets completions by running your program. It intercepts the execution flow at the moment
   ``argcomplete.autocomplete()`` is called. After sending completions, it exits using ``exit_method`` (``os._exit``
   by default). This means if your program has any side effects that happen before ``argcomplete`` is called, those
   side effects will happen every time the user presses ``<TAB>`` (although anything your program prints to stdout or
   stderr will be suppressed). For this reason it's best to construct the argument parser and call
   ``argcomplete.autocomplete()`` as early as possible in your execution flow.

  .. admonition:: Performance

   If the program takes a long time to get to the point where ``argcomplete.autocomplete()`` is called, the tab completion
   process will feel sluggish, and the user may lose confidence in it. So it's also important to minimize the startup time
   of the program up to that point (for example, by deferring initialization or importing of large modules until after
   parsing options).

  Specifying completers
  ---------------------
  You can specify custom completion functions for your options and arguments. Two styles are supported: callable and
  readline-style. Callable completers are simpler. They are called with the following keyword arguments:

  * ``prefix``: The prefix text of the last word before the cursor on the command line.
    For dynamic completers, this can be used to reduce the work required to generate possible completions.
  * ``action``: The ``argparse.Action`` instance that this completer was called for.
  * ``parser``: The ``argparse.ArgumentParser`` instance that the action was taken by.
  * ``parsed_args``: The result of argument parsing so far (the ``argparse.Namespace`` args object normally returned by
    ``ArgumentParser.parse_args()``).

  Completers should return their completions as a list of strings. An example completer for names of environment
  variables might look like this:

  .. code-block:: python

      def EnvironCompleter(**kwargs):
          return os.environ

  To specify a completer for an argument or option, set the ``completer`` attribute of its associated action. An easy
  way to do this at definition time is:

  .. code-block:: python

      from argcomplete.completers import EnvironCompleter

      parser = argparse.ArgumentParser()
      parser.add_argument("--env-var1").completer = EnvironCompleter
      parser.add_argument("--env-var2").completer = EnvironCompleter
      argcomplete.autocomplete(parser)

  If you specify the ``choices`` keyword for an argparse option or argument (and don't specify a completer), it will be
  used for completions.

  A completer that is initialized with a set of all possible choices of values for its action might look like this:

  .. code-block:: python

      class ChoicesCompleter(object):
          def __init__(self, choices):
              self.choices = choices

          def __call__(self, **kwargs):
              return self.choices

  The following two ways to specify a static set of choices are equivalent for completion purposes:

  .. code-block:: python

      from argcomplete.completers import ChoicesCompleter

      parser.add_argument("--protocol", choices=('http', 'https', 'ssh', 'rsync', 'wss'))
      parser.add_argument("--proto").completer=ChoicesCompleter(('http', 'https', 'ssh', 'rsync', 'wss'))

  Note that if you use the ``choices=<completions>`` option, argparse will show
  all these choices in the ``--help`` output by default. To prevent this, set
  ``metavar`` (like ``parser.add_argument("--protocol", metavar="PROTOCOL",
  choices=('http', 'https', 'ssh', 'rsync', 'wss'))``).

  The following `script <https://raw.github.com/kislyuk/argcomplete/master/docs/examples/describe_github_user.py>`_ uses
  ``parsed_args`` and `Requests <http://python-requests.org/>`_ to query GitHub for publicly known members of an
  organization and complete their names, then prints the member description:

  .. code-block:: python

      
      
      import argcomplete, argparse, requests, pprint

      def github_org_members(prefix, parsed_args, **kwargs):
          resource = "https://api.github.com/orgs/{org}/members".format(org=parsed_args.organization)
          return (member['login'] for member in requests.get(resource).json() if member['login'].startswith(prefix))

      parser = argparse.ArgumentParser()
      parser.add_argument("--organization", help="GitHub organization")
      parser.add_argument("--member", help="GitHub member").completer = github_org_members

      argcomplete.autocomplete(parser)
      args = parser.parse_args()

      pprint.pprint(requests.get("https://api.github.com/users/{m}".format(m=args.member)).json())

  `Try it <https://raw.github.com/kislyuk/argcomplete/master/docs/examples/describe_github_user.py>`_ like this::

      ./describe_github_user.py --organization heroku --member <TAB>

  If you have a useful completer to add to the `completer library
  <https://github.com/kislyuk/argcomplete/blob/master/argcomplete/completers.py>`_, send a pull request!

  Readline-style completers
  ~~~~~~~~~~~~~~~~~~~~~~~~~
  The readline_ module defines a completer protocol in rlcompleter_. Readline-style completers are also supported by
  argcomplete, so you can use the same completer object both in an interactive readline-powered shell and on the bash
  command line. For example, you can use the readline-style completer provided by IPython_ to get introspective
  completions like you would get in the IPython shell:

  .. _readline: http://docs.python.org/2/library/readline.html
  .. _rlcompleter: http://docs.python.org/2/library/rlcompleter.html#completer-objects
  .. _IPython: http://ipython.org/

  .. code-block:: python

      import IPython
      parser.add_argument("--python-name").completer = IPython.core.completer.Completer()

  You can also use `argcomplete.CompletionFinder.rl_complete <https://argcomplete.readthedocs.org/en/latest/#argcomplete.CompletionFinder.rl_complete>`_
  to plug your entire argparse parser as a readline completer.

  Printing warnings in completers
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Normal stdout/stderr output is suspended when argcomplete runs. Sometimes, though, when the user presses ``<TAB>``, it's
  appropriate to print information about why completions generation failed. To do this, use ``warn``:

  .. code-block:: python

      from argcomplete import warn

      def AwesomeWebServiceCompleter(prefix, **kwargs):
          if login_failed:
              warn("Please log in to Awesome Web Service to use autocompletion")
          return completions

  Using a custom completion validator
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  By default, argcomplete validates your completions by checking if they start with the prefix given to the completer. You
  can override this validation check by supplying the ``validator`` keyword to ``argcomplete.autocomplete()``:

  .. code-block:: python

      def my_validator(current_input, keyword_to_check_against):
          
          return True

      argcomplete.autocomplete(parser, validator=my_validator)

  Global completion
  -----------------
  In global completion mode, you don't have to register each argcomplete-capable executable separately. Instead, bash
  will look for the string **PYTHON_ARGCOMPLETE_OK** in the first 1024 bytes of any executable that it's running
  completion for, and if it's found, follow the rest of the argcomplete protocol as described above.

  Additionally, completion is activated for scripts run as ``python <script>`` and ``python -m <module>``.
  This also works for alternate Python versions (e.g. ``python3`` and ``pypy``), as long as that version of Python has
  argcomplete installed.

  .. admonition:: Bash version compatibility

   Global completion requires bash support for ``complete -D``, which was introduced in bash 4.2. On OS X or older Linux
   systems, you will need to update bash to use this feature. Check the version of the running copy of bash with
   ``echo $BASH_VERSION``. On OS X, install bash via `Homebrew <http://brew.sh/>`_ (``brew install bash``), add
   ``/usr/local/bin/bash`` to ``/etc/shells``, and run ``chsh`` to change your shell.

   Global completion is not currently compatible with zsh.

  .. note:: If you use setuptools/distribute ``scripts`` or ``entry_points`` directives to package your module,
   argcomplete will follow the wrapper scripts to their destination and look for ``PYTHON_ARGCOMPLETE_OK`` in the
   destination code.

  If you choose not to use global completion, or ship a bash completion module that depends on argcomplete, you must
  register your script explicitly using ``eval "$(register-python-argcomplete my-awesome-script)"``. Standard bash
  completion registration roules apply: namely, the script name is passed directly to ``complete``, meaning it is only tab
  completed when invoked exactly as it was registered. In the above example, ``my-awesome-script`` must be on the path,
  and the user must be attempting to complete it by that name. The above line alone would **not** allow you to complete
  ``./my-awesome-script``, or ``/path/to/my-awesome-script``.


  Activating global completion
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  The script ``activate-global-python-argcomplete`` will try to install the file
  ``bash_completion.d/python-argcomplete.sh`` (`see on GitHub`_) into an appropriate location on your system
  (``/etc/bash_completion.d/`` or ``~/.bash_completion.d/``). If it
  fails, but you know the correct location of your bash completion scripts directory, you can specify it with ``--dest``::

      activate-global-python-argcomplete --dest=/path/to/bash_completion.d

  Otherwise, you can redirect its shellcode output into a file::

      activate-global-python-argcomplete --dest=- > file

  The file's contents should then be sourced in e.g. ``~/.bashrc``.

  .. _`see on GitHub`: https://github.com/kislyuk/argcomplete/blob/master/argcomplete/bash_completion.d/python-argcomplete.sh

  Tcsh Support
  ------------
  To activate completions for tcsh use::

      eval `register-python-argcomplete --shell tcsh my-awesome-script`

  The ``python-argcomplete-tcsh`` script provides completions for tcsh.
  The following is an example of the tcsh completion syntax for
  ``my-awesome-script`` emitted by ``register-python-argcomplete``::

      complete my-awesome-script 'p@*@`python-argcomplete-tcsh my-awesome-script`@'

  Python Support
  --------------
  Argcomplete requires Python 2.7 or 3.3+.

  Common Problems
  ---------------
  If global completion is not completing your script, bash may have registered a
  default completion function::

      $ complete | grep my-awesome-script
      complete -F _minimal my-awesome-script

  You can fix this by restarting your shell, or by running
  ``complete -r my-awesome-script``.

  Debugging
  ---------
  Set the ``_ARC_DEBUG`` variable in your shell to enable verbose debug output every time argcomplete runs. This will
  disrupt the command line composition state of your terminal, but make it possible to see the internal state of the
  completer if it encounters problems.

  Acknowledgments
  ---------------
  Inspired and informed by the optcomplete_ module by Martin Blais.

  .. _optcomplete: http://pypi.python.org/pypi/optcomplete

  Links
  -----
  * `Project home page (GitHub) <https://github.com/kislyuk/argcomplete>`_
  * `Documentation (Read the Docs) <https://argcomplete.readthedocs.io/en/latest/>`_
  * `Package distribution (PyPI) <https://pypi.python.org/pypi/argcomplete>`_
  * `Change log <https://github.com/kislyuk/argcomplete/blob/master/Changes.rst>`_

  Bugs
  ~~~~
  Please report bugs, issues, feature requests, etc. on `GitHub <https://github.com/kislyuk/argcomplete/issues>`_.

  License
  -------
  Licensed under the terms of the `Apache License, Version 2.0 <http://www.apache.org/licenses/LICENSE-2.0>`_.

  .. image:: https://travis-ci.org/kislyuk/argcomplete.png
          :target: https://travis-ci.org/kislyuk/argcomplete
  .. image:: https://codecov.io/github/kislyuk/argcomplete/coverage.svg?branch=master
          :target: https://codecov.io/github/kislyuk/argcomplete?branch=master
  .. image:: https://img.shields.io/pypi/v/argcomplete.svg
          :target: https://pypi.python.org/pypi/argcomplete
  .. image:: https://img.shields.io/pypi/l/argcomplete.svg
          :target: https://pypi.python.org/pypi/argcomplete
  .. image:: https://readthedocs.org/projects/argcomplete/badge/?version=latest
          :target: https://argcomplete.readthedocs.org/


pkgId: 828b525b4938b196bacc7d70463c891d0367e0f4e8c38330c54f7407aa6a6b92
name: rh-python36-asgi_amqp
arch: noarch
version: 1.1.4
epoch: 0
release: 1
summary: AMQP-backed ASGI channel layer implementation
url: http://github.com/ansible/asgi_amqp/
rpm_license: BSD
rpm_vendor: Wayne Witzel III <wayne@riotousliving.com>
rpm_group: Development/Libraries
rpm_buildhost: 0fe9557b2c2f4ba39b0764e68a81a98e
rpm_sourcerpm: rh-python36-asgi_amqp-1.1.4-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387145-rh-python36-asgi_amqp/rh-python36-asgi_amqp-1.1.4-1.noarch.rpm
checksum_type: sha256
description:
  asgi_amqp
  ==========

  An ASGI channel layer that uses AMQP as its backing store with group support.

  Settings
  --------

  The `asgi_amqp` channel layer looks for settings in `ASGI_AMQP` and
  has the following configuration options. URL and connection settings
  are configured through `CHANNEL_LAYER` same as any channel layer.

  **MODEL**
  Set a custom `ChannelGroup` model to use. See more about this in the ChannelGroup
  Model section of this README.

  Usage::

      ASGI_AMQP = {'MODEL': 'awx.main.models.channels.ChannelGroup'}

  **INIT_FUNC**
  A function that you want run when the channel layer is first instantiated.

  Usage::

      ASGI_AMQP = {'INIT_FUNC': 'awx.prepare_env'}


  ChannelGroup Model
  ------------------

  This channel layer requires a database model called `ChannelGroup`. You
  can use the model and migation provided by adding `asgi_amqp` to your
  installed apps or you can point the `ASGI_AMQP.MODEL` setting to a
  model you have already defined.

  Installed Apps::

      INSTALLED_APPS = [
          ...
          'asgi_amqp',
          ...
      ]

  Settings::

      ASGI_AMQP = {
          'MODEL': 'awx.main.models.channels.ChannelGroup',
      }


pkgId: 401aa417f533eaf7c184e5662ebcf96dc923844201c922f2723e36f20bfa89e2
name: rh-python36-asn1crypto
arch: noarch
version: 1.2.0
epoch: 0
release: 1
description: Docs for this project are maintained at https://github.com/wbond/asn1crypto#readme.
url: https://github.com/wbond/asn1crypto
rpm_license: MIT
rpm_vendor: wbond <will@wbond.net>
rpm_group: Development/Libraries
rpm_buildhost: d6101abcc808485a8b8032aad56db91b
rpm_sourcerpm: rh-python36-asn1crypto-1.2.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387075-rh-python36-asn1crypto/rh-python36-asn1crypto-1.2.0-1.noarch.rpm
checksum_type: sha256
summary:
  Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, PKCS#5, X.509 and TSP


pkgId: 14eeb2013d8a79264a6adf71df386e82974ee594928bcd72fd057b99ab09d945
name: rh-python36-async-timeout
arch: noarch
version: 3.0.1
epoch: 0
release: 1
summary: Timeout context manager for asyncio programs
url: https://github.com/aio-libs/async_timeout/
rpm_license: Apache 2
rpm_vendor: Andrew Svetlov <andrew.svetlov@gmail.com>
rpm_group: Development/Libraries
rpm_buildhost: 0450a73fcfed4c28ba0d14193687d544
rpm_sourcerpm: rh-python36-async-timeout-3.0.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387016-rh-python36-async-timeout/rh-python36-async-timeout-3.0.1-1.noarch.rpm
checksum_type: sha256
description:
  async-timeout
  =============
  .. image:: https://travis-ci.org/aio-libs/async-timeout.svg?branch=master
      :target: https://travis-ci.org/aio-libs/async-timeout
  .. image:: https://codecov.io/gh/aio-libs/async-timeout/branch/master/graph/badge.svg
      :target: https://codecov.io/gh/aio-libs/async-timeout
  .. image:: https://img.shields.io/pypi/v/async-timeout.svg
      :target: https://pypi.python.org/pypi/async-timeout
  .. image:: https://badges.gitter.im/Join%20Chat.svg
      :target: https://gitter.im/aio-libs/Lobby
      :alt: Chat on Gitter

  asyncio-compatible timeout context manager.


  Usage example
  -------------


  The context manager is useful in cases when you want to apply timeout
  logic around block of code or in cases when ``asyncio.wait_for()`` is
  not suitable. Also it's much faster than ``asyncio.wait_for()``
  because ``timeout`` doesn't create a new task.

  The ``timeout(timeout, *, loop=None)`` call returns a context manager
  that cancels a block on *timeout* expiring::

     async with timeout(1.5):
         await inner()

  1. If ``inner()`` is executed faster than in ``1.5`` seconds nothing
     happens.
  2. Otherwise ``inner()`` is cancelled internally by sending
     ``asyncio.CancelledError`` into but ``asyncio.TimeoutError`` is
     raised outside of context manager scope.

  *timeout* parameter could be ``None`` for skipping timeout functionality.


  Context manager has ``.expired`` property for check if timeout happens
  exactly in context manager::

     async with timeout(1.5) as cm:
         await inner()
     print(cm.expired)

  The property is ``True`` if ``inner()`` execution is cancelled by
  timeout context manager.

  If ``inner()`` call explicitly raises ``TimeoutError`` ``cm.expired``
  is ``False``.

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

  ::

     $ pip install async-timeout

  The library is Python 3 only!



  Authors and License
  -------------------

  The module is written by Andrew Svetlov.

  It's *Apache 2* licensed and freely available.


  CHANGES
  =======

  3.0.1 (2018-10-09)
  ------------------

  - More aggressive typing (#48)

  3.0.0 (2018-05-05)
  ------------------

  - Drop Python 3.4, the minimal supported version is Python 3.5.3

  - Provide type annotations

  2.0.1 (2018-03-13)
  ------------------

  * Fix ``PendingDeprecationWarning`` on Python 3.7 (#33)


  2.0.0 (2017-10-09)
  ------------------

  * Changed `timeout <= 0` behaviour

    * Backward incompatibility change, prior this version `0` was
      shortcut for `None`
    * when timeout <= 0 `TimeoutError` raised faster

  1.4.0 (2017-09-09)
  ------------------

  * Implement `remaining` property (#20)

    * If timeout is not started yet or started unconstrained:
      `remaining` is `None`
    * If timeout is expired: `remaining` is `0.0`
    * All others: roughly amount of time before `TimeoutError` is triggered

  1.3.0 (2017-08-23)
  ------------------

  * Don't suppress nested exception on timeout. Exception context points
    on cancelled line with suspended `await` (#13)

  * Introduce `.timeout` property (#16)

  * Add methods for using as async context manager (#9)

  1.2.1 (2017-05-02)
  ------------------

  * Support unpublished event loop's "current_task" api.


  1.2.0 (2017-03-11)
  ------------------

  * Extra check on context manager exit

  * 0 is no-op timeout


  1.1.0 (2016-10-20)
  ------------------

  * Rename to `async-timeout`

  1.0.0 (2016-09-09)
  ------------------

  * The first release.


pkgId: 1d00f149dac698f5025d8d4a066876e666aec384c5bd2bb388aef31fff482330
name: rh-python36-azure-common
arch: noarch
version: 1.1.25
epoch: 0
release: 1
summary: Microsoft Azure Client Library for Python (Common)
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: e71cb3c522734cfb94cd71bfaa664bff
rpm_sourcerpm: rh-python36-azure-common-1.1.25-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387208-rh-python36-azure-common/rh-python36-azure-common-1.1.25-1.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure common code.

  This package provides shared code by the Azure packages.

  If you are looking to install the Azure client libraries, see the
  `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  .. :changelog:

  Release History
  ===============

  1.1.11 (2018-05-08)
  +++++++++++++++++++

  **Features**

  - Add support for "resource" in "get_azure_cli_credentials"

  1.1.10 (2018-04-30)
  +++++++++++++++++++

  **Bugfixes**

  - Fix MultiApiClientMixin.__init__ to be a real mixin

  1.1.9 (2018-04-03)
  ++++++++++++++++++

  **Features**

  - Add "azure.profiles" namespace #2247

  **Bugfixes**

  - get_client_from_cli_profile now supports Datalake #2318

  1.1.8 (2017-07-28)
  ++++++++++++++++++

  **Bugfix**

  - Fix get_client_from_auth_file and get_client_from_json_dict on Python 2.7

  Thank you to @jayden-at-arista for the contribution.

  1.1.7 (2017-07-19)
  ++++++++++++++++++

  - Adds azure.common.client_factory.get_client_from_auth_file
  - Adds azure.common.client_factory.get_client_from_json_dict

  1.1.6 (2017-05-16)
  ++++++++++++++++++

  - Adds azure.common.client_factory.get_client_from_cli_profile

  1.1.5 (2017-04-11)
  ++++++++++++++++++

  - "extra_requires" autorest is deprecated and should not be used anymore
  - This wheel package is now built with the azure wheel extension

  1.1.4 (2016-05-25)
  ++++++++++++++++++

  - Support for msrest/msrestazure 0.4.x series
  - Drop support for msrest/msrestazure 0.3.x series

  1.1.3 (2016-04-26)
  ++++++++++++++++++

  - Support for msrest/msrestazure 0.3.x series
  - Drop support for msrest/msrestazure 0.2.x series

  1.1.2 (2016-03-28)
  ++++++++++++++++++

  - Support for msrest/msrestazure 0.2.x series
  - Drop support for msrest/msrestazure 0.1.x series

  1.1.1 (2016-03-07)
  ++++++++++++++++++

  - Move msrestazure depency as "extra_requires"

  1.1.0 (2016-03-04)
  ++++++++++++++++++

  - Support for msrest/msrestazure 0.1.x series
  - Adds alias from msrestazure.azure_active_directory.* to azure.common.credentials

  1.0.0 (2015-08-31)
  ++++++++++++++++++

  Initial release, extracted from azure==0.11.1


pkgId: 5ddb8a204e789e8d17b2a4b1545d0095de5c7a6238e4d979f5924bd14adea3f1
name: rh-python36-azure-mgmt-authorization
arch: noarch
version: 0.51.1
epoch: 0
release: 1
summary: Microsoft Azure Authorization Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: bcb8f747a09c404c8eb702495a740300
rpm_sourcerpm: rh-python36-azure-mgmt-authorization-0.51.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Authorization Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Authorization Management
  <https://docs.microsoft.com/python/api/overview/azure/authorization>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.51.1 (2018-11-27)
  +++++++++++++++++++

  **Bugfixes**

  - Missing principal_type in role assignment class  #3802

  0.51.0 (2018-11-12)
  +++++++++++++++++++

  **Features**

  - Model RoleAssignmentCreateParameters has a new parameter principal_type

  **Breaking changes**

  - Parameter role_definition_id of model RoleAssignmentCreateParameters is now required
  - Parameter principal_id of model RoleAssignmentCreateParameters is now required

  Role Assignments API version is now 2018-09-01-preview

  0.50.0 (2018-05-29)
  +++++++++++++++++++

  **Features**

  - Support Azure Stack (multi API versionning)
  - Client class can be used as a context manager to keep the underlying HTTP session open for performance

  **Bugfixes**

  - Compatibility of the sdist with wheel 0.31.0

  0.40.0 (2018-03-13)
  +++++++++++++++++++

  **Breaking changes**

  - Several properties have been flattened and "properties" attribute is not needed anymore
    (e.g. properties.email_address => email_address)
  - Some method signature change (e.g. create_by_id)

  **Features**

  - Adding attributes data_actions / not_data_actions / is_data_actions

  API version is now 2018-01-01-preview

  0.30.0 (2017-04-28)
  +++++++++++++++++++

  * Initial Release
  * This wheel package is built with the azure wheel extension

location_href:
  01387066-rh-python36-azure-mgmt-authorization/rh-python36-azure-mgmt-authorization-0.51.1-1.noarch.rpm


pkgId: 30c16d6fa10355e15f6507c52c4a6b91eaea75b2d51241b3899b00a4fdf774ba
name: rh-python36-azure-mgmt-automation
arch: noarch
version: 0.1.1
epoch: 0
release: 1
summary: Microsoft Azure Automation Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 37a4b45acea54879b1645906feb3de1e
rpm_sourcerpm: rh-python36-azure-mgmt-automation-0.1.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387289-rh-python36-azure-mgmt-automation/rh-python36-azure-mgmt-automation-0.1.1-1.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Automation Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Usage
  =====

  For code examples, see `Automation
  <https://docs.microsoft.com/python/api/overview/azure/>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. image::  https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-python%2Fazure-mgmt-automation%2FREADME.png


  .. :changelog:

  Release History
  ===============

  0.1.1 (2019-05-13)
  ++++++++++++++++++

  **Bugfixes**

  - Remove incorrect "count_type1" parameter from client signature #4965

  0.1.0 (2019-04-16)
  ++++++++++++++++++

  * Initial Release


pkgId: 03fcaf311f3b6db64a48eab5d4360f7d6a7443ff700d26f1226452ad3409b4c2
name: rh-python36-azure-mgmt-batch
arch: noarch
version: 5.0.1
epoch: 0
release: 2
summary: Microsoft Azure Batch Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <ptvshelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: e04e33fb223943c9bd1107c8260b5e5f
rpm_sourcerpm: rh-python36-azure-mgmt-batch-5.0.1-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387211-rh-python36-azure-mgmt-batch/rh-python36-azure-mgmt-batch-5.0.1-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Batch Management Client Library.

  This package has been tested with Python 2.7, 3.3, 3.4 and 3.5.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `the Batch samples repo
  <https://github.com/Azure/azure-batch-samples/tree/master/Python>`__
  on GitHub.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  4.1.0 (2017-07-24)
  ++++++++++++++++++

  - New operation to check the availability and validity of a Batch account name.

  4.0.0 (2017-05-10)
  ++++++++++++++++++

  - New operation to list the operations available for the Microsoft.Batch provider, includes new `Operation` and `OperationDisplay` models.
  - Renamed `AddApplicationParameters` to `ApplicationCreateParameters`.
  - Renamed `UpdateApplicationParameters` to `ApplicationUpdateParameters`.
  - Removed `core_quota` attribute from `BatchAccount` object, now replaced by separate `dedicated_core_quota` and `low_priority_core_quota`.
  - `BatchAccountKeys` object now has additional `account_name` attribute.

  3.0.1 (2017-04-19)
  ++++++++++++++++++

  - This wheel package is now built with the azure wheel extension

  3.0.0 (2017-03-07)
  ++++++++++++++++++

  - Updated `BatchAccount` model - support for pool allocation in the user's subscription.
  - Updated `BatchAccount` model - support for referencing an Azure Key Vault for accounts created with a pool allocation mode of UserSubscription.
  - Updated `BatchAccount` model - properties are now read only.
  - Updated `ApplicationPackage` model - properties are now read only.
  - Updated `BatchAccountKeys` model - properties are now read only.
  - Updated `BatchLocationQuota` model - properties are now read only.

  2.0.0 (2016-10-04)
  ++++++++++++++++++

  - Renamed `AccountResource` to `BatchAccount`.
  - Renamed `AccountOperations` to `BatchAccountOperations`. The `IBatchManagementClient.Account` property was also renamed to `IBatchManagementClient.BatchAccount`.
  - Split `Application` and `ApplicationPackage` operations up into two separate operation groups.
  - Updated `Application` and `ApplicationPackage` methods to use the standard `Create`, `Delete`, `Update` syntax. For example creating an `Application` is done via `ApplicationOperations.Create`.
  - Renamed `SubscriptionOperations` to `LocationOperations` and changed `SubscriptionOperations.GetSubscriptionQuotas` to be `LocationOperations.GetQuotas`.
  - This version targets REST API version 2015-12-01.

  1.0.0 (2016-08-09)
  ++++++++++++++++++

  - Initial Release


pkgId: dabc6a0688af03bea034bab659d088879587d235482725d531d6fadc2d9437a3
name: rh-python36-azure-mgmt-cdn
arch: noarch
version: 3.0.0
epoch: 0
release: 2
summary: Microsoft Azure CDN Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 2f45cf4e2c03414abc031ea8f0ab6c15
rpm_sourcerpm: rh-python36-azure-mgmt-cdn-3.0.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387071-rh-python36-azure-mgmt-cdn/rh-python36-azure-mgmt-cdn-3.0.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure CDN Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `CDN Management
  <https://docs.microsoft.com/python/api/overview/azure/cdn>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  3.0.0 (2018-05-25)
  ++++++++++++++++++

  **Features**

  - Add client method check_name_availability_with_subscription
  - Model EndpointUpdateParameters has a new parameter delivery_policy
  - Model Endpoint has a new parameter delivery_policy
  - Client class can be used as a context manager to keep the underlying HTTP session open for performance

  **General Breaking changes**

  This version uses a next-generation code generator that *might* introduce breaking changes.

  - Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments.
    To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments.
  - Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered.
    While this is not a breaking change, the distinctions are important, and are documented here:
    https://docs.python.org/3/library/enum.html#others
    At a glance:

    - "is" should not be used at all.
    - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered.

  - New Long Running Operation:

    - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same.
    - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used.
    - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`,
      without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`.
    - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`,
      the response of the initial call will be returned without polling.
    - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`.
    - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away.

  **Bugfixes**

  - Compatibility of the sdist with wheel 0.31.0


  2.0.0 (2017-10-26)
  ++++++++++++++++++

  **Features**

  - Add probe operations and in some models
  - Add list_supported_optimization_types

  **Breaking changes**

  - move resource_usage into its own operation group
  - move operations list into its own operation group

  Api version changed from 2016-10-02 to 2017-04-02

  1.0.0 (2017-06-30)
  ++++++++++++++++++

  **Features**

  - Add disable_custom_https and enable_custom_https

  **Breaking changes**

  - Rename check_resource_usage to list_resource_usage
  - list EdgeNode now returns an iterator of EdgeNode,
    not a EdgenodeResult instance with an attribute "value" being a list of EdgeNode

  0.30.3 (2017-05-15)
  +++++++++++++++++++

  * This wheel package is now built with the azure wheel extension

  0.30.2 (2016-12-22)
  +++++++++++++++++++

  * Fix EdgeNode attributes content

  0.30.1 (2016-12-15)
  +++++++++++++++++++

  * Fix list EdgeNodes method return type

  0.30.0 (2016-12-14)
  +++++++++++++++++++

  * Initial preview release (API Version 2016-10-02)
  * Major breaking changes from 0.30.0rc6

  0.30.0rc6 (2016-09-02)
  ++++++++++++++++++++++

  * Initial alpha release (API Version 2016-04-02)


pkgId: ad06dd328670ad6b99e3968918711d437ba4750d258dd7a41350b924025bd0a7
name: rh-python36-azure-mgmt-compute
arch: noarch
version: 4.4.0
epoch: 0
release: 2
summary: Microsoft Azure Compute Resource Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <ptvshelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 9e0d8e8f3c6d412d8d989b7e7e41fa86
rpm_sourcerpm: rh-python36-azure-mgmt-compute-4.4.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387194-rh-python36-azure-mgmt-compute/rh-python36-azure-mgmt-compute-4.4.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Compute Resource Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4 and 3.5.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Compute and Network Resource Management
  <https://azure-sdk-for-python.readthedocs.org/en/latest/resourcemanagementcomputenetwork.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  2.1.0 (2017-07-19)
  ++++++++++++++++++

  **Features in 2017-03-30**

  - Expose 'enableAcceleratedNetworking' for virtual machine and virtual machine SS. Windows GA, Linux in preview.
  - Expose 'forceUpdateTag' to ensure extension gets reinstalled even there are no configuration change.

  2.0.0 (2017-06-29)
  ++++++++++++++++++

  **Features**

  Compute default Api Version is now 2017-03-30.

  New operation groups:

  - resources_skus
  - virtual_machine_scale_set_extensions
  - virtual_machine_run_commands

  New methods in VM:

  - perform_maintenance
  - run_command

  Several improvements and modifications in Managed Disks.

  **Breaking changes**

  - ContainerService: fixed typo in class name (ContainerServiceOchestratorTypes is now ContainerServiceOrchestratorTypes)

  - Compute: breaking changes in Managed Disk API:

    - Managed field removed from Create AV Set API
    - Account Type replaced with SKU in PUT and GET Managed Disk Create API
    - OwnerId replaced by ManagedBy in GET Managed Disk API

  Note that you can get the behavior of v1.0.0 by forcing the Api Version to "2016-04-30-preview" to update your package but not the code:

      ComputeManagementClient(credentials, subscription_id, api_version="2016-04-30-preview")

  1.0.0 (2017-05-15)
  ++++++++++++++++++

  - Tag 1.0.0rc2 as stable (same content)

  1.0.0rc2 (2017-05-12)
  +++++++++++++++++++++

  **Features**

  - Add Compute ApiVersion 2016-03-30 (AzureStack default)

  1.0.0rc1 (2017-04-11)
  +++++++++++++++++++++

  **Breaking Changes**

  - Container service is now in it's own client ContainerServiceClient

  **Features**

  To help customers with sovereign clouds (not general Azure),
  this version has official multi ApiVersion support for the following resource type:

  - Compute: 2015-06-15 and 2016-04-30-preview

  The following resource types support one ApiVersion:

  - ContainerService: 2017-01-31

  0.33.0 (2017-02-03)
  +++++++++++++++++++

  **Features**

  This release adds Managed Disk to compute. This changes the default disk creation behavior
  to use the new Managed Disk feature instead of Storage.

  0.32.1 (2016-11-14)
  +++++++++++++++++++

  * Add "Kubernetes" on Containers
  * Improve technical documentation

  0.32.0 (2016-11-02)
  +++++++++++++++++++

  **Breaking change**

  New APIVersion for "container" 2016-09-30.

  * several parameters (e.g. "username") now dynamically check before REST calls validity
    against a regexp. Exception will be TypeError and not CloudError anymore.

  0.31.0 (2016-11-01)
  +++++++++++++++++++

  **Breaking change**

  We renamed some "container" methods to follow Azure SDK conventions

  * "container" attribute on the client is now "containers"
  * "list" changed behavior, now listing containers in subscription and lost its parameter
  * "list_by_resource_group" new method with the old "list" behavior

  0.30.0 (2016-10-17)
  +++++++++++++++++++

  * Initial preview release. Based on API version 2016-03-30.


  0.20.0 (2015-08-31)
  +++++++++++++++++++

  * Initial preview release. Based on API version 2015-05-01-preview.


pkgId: 67f06c6e3b6e1e8070864337151539cb38e5e066340f90e15bb5d04f7fc3a3fd
name: rh-python36-azure-mgmt-containerinstance
arch: noarch
version: 1.4.0
epoch: 0
release: 2
summary: Microsoft Azure Container Instance Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: a395d552b6644318b2eb4138a017cfa7
rpm_sourcerpm: rh-python36-azure-mgmt-containerinstance-1.4.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Container Instance Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Container Instance
  <https://docs.microsoft.com/python/api/overview/azure/containerinstance>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.4.0 (2018-03-19)
  ++++++++++++++++++

  **Breaking changes**

  - container_groups.create_or_update is now a Long Running operation

  **Features**

  - New start_container operation group

  0.3.1 (2018-02-05)
  ++++++++++++++++++

  * Fix dnsnamelabel to dns_name_label

  0.3.0 (2018-02-01)
  ++++++++++++++++++

  * Add dnsnamelabel
  * Add fqdn
  * Add container_group_usage operation groups
  * Add git_repo and secret to volumes
  * Add container_groups.update

  API version is now 2018-02-01-preview

  0.2.0 (2017-10-20)
  ++++++++++++++++++

  * Added on-failure/never container group retry policy
  * Added container volumes mount support
  * Added operations API
  * Added container group instance view
  * Renamed event class

  0.1.0 (2017-07-27)
  ++++++++++++++++++

  * Initial preview release

location_href:
  01387252-rh-python36-azure-mgmt-containerinstance/rh-python36-azure-mgmt-containerinstance-1.4.0-2.noarch.rpm


pkgId: 563c340e633fd6a64fc2410544a180d40a79c307d2805164a8bf0a62ba2337ea
name: rh-python36-azure-mgmt-containerinstance
arch: src
version: 1.4.0
epoch: 0
release: 2
summary: Microsoft Azure Container Instance Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: a20a00aeb32d451fb2cc31c4fe28418b
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Container Instance Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Container Instance
  <https://docs.microsoft.com/python/api/overview/azure/containerinstance>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.4.0 (2018-03-19)
  ++++++++++++++++++

  **Breaking changes**

  - container_groups.create_or_update is now a Long Running operation

  **Features**

  - New start_container operation group

  0.3.1 (2018-02-05)
  ++++++++++++++++++

  * Fix dnsnamelabel to dns_name_label

  0.3.0 (2018-02-01)
  ++++++++++++++++++

  * Add dnsnamelabel
  * Add fqdn
  * Add container_group_usage operation groups
  * Add git_repo and secret to volumes
  * Add container_groups.update

  API version is now 2018-02-01-preview

  0.2.0 (2017-10-20)
  ++++++++++++++++++

  * Added on-failure/never container group retry policy
  * Added container volumes mount support
  * Added operations API
  * Added container group instance view
  * Renamed event class

  0.1.0 (2017-07-27)
  ++++++++++++++++++

  * Initial preview release

location_href:
  01387252-rh-python36-azure-mgmt-containerinstance/rh-python36-azure-mgmt-containerinstance-1.4.0-2.src.rpm


pkgId: ea7a10036a7d9047e5f508924cc01f8054461cdb7e4b8acefcc33d93cbf8a130
name: rh-python36-azure-mgmt-containerservice
arch: noarch
version: 4.4.0
epoch: 0
release: 2
summary: Microsoft Azure Container Service Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 3ac2043e60724a2e9713a7989f0e2599
rpm_sourcerpm: rh-python36-azure-mgmt-containerservice-4.4.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Container Service Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Container Service
  <https://azure-sdk-for-python.readthedocs.org/en/latest/sample_azure-mgmt-containerservice.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  3.0.1 (2018-01-25)
  ++++++++++++++++++

  **Bugfixes**

  * Fix incorrect mapping in OrchestratorVersionProfileListResult

  3.0.0 (2017-12-13)
  ++++++++++++++++++

  * Flattened ManagedCluster so there is no separate properties object
  * Added get_access_profiles operation to managed clusters

  2.0.0 (2017-10-XX)
  ++++++++++++++++++

  **Features**

  * Managed clusters

  **Breaking changes**

  * VM is now require for master profile (recommended default: standard_d2_v2)

  1.0.0 (2017-08-08)
  ++++++++++++++++++

  * Initial Release extracted from azure-mgmt-compute 2.1.0

location_href:
  01387260-rh-python36-azure-mgmt-containerservice/rh-python36-azure-mgmt-containerservice-4.4.0-2.noarch.rpm


pkgId: e8d65b148c8b7421201618f0fd1c3e478c49f44548e5929d15a8add4ae8e5beb
name: rh-python36-azure-mgmt-containerservice
arch: src
version: 4.4.0
epoch: 0
release: 2
summary: Microsoft Azure Container Service Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: d39e66cea14143dfab21d0528c5aa55f
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Container Service Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Container Service
  <https://azure-sdk-for-python.readthedocs.org/en/latest/sample_azure-mgmt-containerservice.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  3.0.1 (2018-01-25)
  ++++++++++++++++++

  **Bugfixes**

  * Fix incorrect mapping in OrchestratorVersionProfileListResult

  3.0.0 (2017-12-13)
  ++++++++++++++++++

  * Flattened ManagedCluster so there is no separate properties object
  * Added get_access_profiles operation to managed clusters

  2.0.0 (2017-10-XX)
  ++++++++++++++++++

  **Features**

  * Managed clusters

  **Breaking changes**

  * VM is now require for master profile (recommended default: standard_d2_v2)

  1.0.0 (2017-08-08)
  ++++++++++++++++++

  * Initial Release extracted from azure-mgmt-compute 2.1.0

location_href:
  01387260-rh-python36-azure-mgmt-containerservice/rh-python36-azure-mgmt-containerservice-4.4.0-2.src.rpm


pkgId: d2d4218165776ef6d7c41efda9f6417b4dc2e8c8fc41f1faa373165430d15719
name: rh-python36-azure-mgmt-cosmosdb
arch: noarch
version: 0.5.2
epoch: 0
release: 1
summary: Microsoft Azure Cosmos DB Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 2a16294e7fe546119bb780784a00029e
rpm_sourcerpm: rh-python36-azure-mgmt-cosmosdb-0.5.2-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387067-rh-python36-azure-mgmt-cosmosdb/rh-python36-azure-mgmt-cosmosdb-0.5.2-1.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Cosmos DB Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Cosmos DB Management
  <https://docs.microsoft.com/python/api/overview/azure/cosmosdb>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.5.2 (2018-11-05)
  ++++++++++++++++++

  **Features**

  - Add ignore_missing_vnet_service_endpoint support

  0.5.1 (2018-10-16)
  ++++++++++++++++++

  **Bugfix**

  - Fix sdist broken in 0.5.0. No code change.

  0.5.0 (2018-10-08)
  ++++++++++++++++++

  **Features**

  - Add enable_multiple_write_locations support

  **Note**

  - `database_accounts.list_read_only_keys` is now doing a POST call, and not GET anymore. This should not impact anything.
    Old behavior be can found with the `database_accounts.get_read_only_keys` **deprecated** method.
  - azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package)

  0.4.1 (2018-05-15)
  ++++++++++++++++++

  **Features**

  - Add database_accounts.offline_region
  - Add database_accounts.online_region
  - Client class can be used as a context manager to keep the underlying HTTP session open for performance

  0.4.0 (2018-04-17)
  ++++++++++++++++++

  **General Breaking changes**

  This version uses a next-generation code generator that *might* introduce breaking changes.

  - Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments.
    To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments.
  - Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered.
    While this is not a breaking change, the distinctions are important, and are documented here:
    https://docs.python.org/3/library/enum.html#others
    At a glance:

    - "is" should not be used at all.
    - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered.

  - New Long Running Operation:

    - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same.
    - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used.
    - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`,
      without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`.
    - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`,
      the response of the initial call will be returned without polling.
    - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`.
    - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away.

  **Bugfixes**

  - Compatibility of the sdist with wheel 0.31.0

  **Features**

  - Add VNet related properties to CosmosDB


  0.3.1 (2018-02-01)
  ++++++++++++++++++

  **Bugfixes**

  - Fix capabilities model definition

  0.3.0 (2018-01-30)
  ++++++++++++++++++

  **Features**

  - Add capability
  - Add metrics operation groups

  0.2.1 (2017-10-18)
  ++++++++++++++++++

  **Bugfixes**

  * Fix max_interval_in_seconds interval values from 1/100 to 5/86400
  * Tags is now optional

  **Features**

  * Add operation list

  0.2.0 (2017-06-26)
  ++++++++++++++++++

  * Creation on this package based on azure-mgmt-documentdb 0.1.3 content


pkgId: bca03959f70315c9851490c0ed1fd1db78a2447aadd08729ebb50c9e48931613
name: rh-python36-azure-mgmt-devtestlabs
arch: noarch
version: 3.0.0
epoch: 0
release: 1
summary: Microsoft Azure DevTestLabs Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: f78cc6a3f3a84878919227d664f7e648
rpm_sourcerpm: rh-python36-azure-mgmt-devtestlabs-3.0.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387068-rh-python36-azure-mgmt-devtestlabs/rh-python36-azure-mgmt-devtestlabs-3.0.0-1.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure DevTestLabs Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Usage
  =====

  For code examples, see `DevTestLabs Management
  <https://docs.microsoft.com/python/api/overview/azure/devtest-labs>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  3.0.0 (2019-02-07)
  ++++++++++++++++++

  **Features**

  - Model NotificationChannel has a new parameter email_recipient
  - Model NotificationChannel has a new parameter notification_locale
  - Model ArtifactInstallProperties has a new parameter artifact_title
  - Model GalleryImage has a new parameter plan_id
  - Model GalleryImage has a new parameter is_plan_authorized
  - Model EvaluatePoliciesProperties has a new parameter user_object_id
  - Model ArtifactInstallPropertiesFragment has a new parameter artifact_title
  - Model Lab has a new parameter announcement
  - Model Lab has a new parameter support
  - Model Lab has a new parameter load_balancer_id
  - Model Lab has a new parameter mandatory_artifacts_resource_ids_linux
  - Model Lab has a new parameter extended_properties
  - Model Lab has a new parameter mandatory_artifacts_resource_ids_windows
  - Model Lab has a new parameter vm_creation_resource_group
  - Model Lab has a new parameter environment_permission
  - Model Lab has a new parameter network_security_group_id
  - Model Lab has a new parameter public_ip_id
  - Model NotificationSettingsFragment has a new parameter email_recipient
  - Model NotificationSettingsFragment has a new parameter notification_locale
  - Model LabVirtualMachineCreationParameter has a new parameter schedule_parameters
  - Model LabVirtualMachineCreationParameter has a new parameter compute_id
  - Model LabVirtualMachineCreationParameter has a new parameter data_disk_parameters
  - Model LabVirtualMachineCreationParameter has a new parameter last_known_power_state
  - Model LabVirtualMachineCreationParameter has a new parameter plan_id
  - Model ShutdownNotificationContent has a new parameter vm_url
  - Model ShutdownNotificationContent has a new parameter minutes_until_shutdown
  - Model NotificationSettings has a new parameter email_recipient
  - Model NotificationSettings has a new parameter notification_locale
  - Model LabVirtualMachine has a new parameter plan_id
  - Model LabVirtualMachine has a new parameter schedule_parameters
  - Model LabVirtualMachine has a new parameter last_known_power_state
  - Model LabVirtualMachine has a new parameter data_disk_parameters
  - Model ArmTemplate has a new parameter enabled
  - Model CustomImage has a new parameter custom_image_plan
  - Model CustomImage has a new parameter data_disk_storage_info
  - Model CustomImage has a new parameter is_plan_authorized
  - Model CustomImage has a new parameter managed_snapshot_id
  - Model LabVirtualMachineFragment has a new parameter schedule_parameters
  - Model LabVirtualMachineFragment has a new parameter compute_id
  - Model LabVirtualMachineFragment has a new parameter data_disk_parameters
  - Model LabVirtualMachineFragment has a new parameter last_known_power_state
  - Model LabVirtualMachineFragment has a new parameter plan_id
  - Added operation DisksOperations.update
  - Added operation CustomImagesOperations.update
  - Added operation LabsOperations.import_virtual_machine
  - Added operation SecretsOperations.update
  - Added operation EnvironmentsOperations.update
  - Added operation FormulasOperations.update
  - Added operation VirtualMachinesOperations.transfer_disks
  - Added operation VirtualMachinesOperations.un_claim
  - Added operation VirtualMachinesOperations.resize
  - Added operation VirtualMachinesOperations.restart
  - Added operation VirtualMachinesOperations.get_rdp_file_contents
  - Added operation VirtualMachinesOperations.redeploy
  - Added operation group ServiceFabricsOperations
  - Added operation group ServiceFabricSchedulesOperations

  **Breaking changes**

  - Model VirtualNetworkFragment no longer has parameter type
  - Model VirtualNetworkFragment no longer has parameter id
  - Model VirtualNetworkFragment no longer has parameter location
  - Model VirtualNetworkFragment no longer has parameter name
  - Model VirtualNetworkFragment no longer has parameter external_subnets
  - Model VirtualNetworkFragment no longer has parameter provisioning_state
  - Model VirtualNetworkFragment no longer has parameter unique_identifier
  - Model PolicyFragment no longer has parameter type
  - Model PolicyFragment no longer has parameter id
  - Model PolicyFragment no longer has parameter location
  - Model PolicyFragment no longer has parameter name
  - Model PolicyFragment no longer has parameter unique_identifier
  - Model PolicyFragment no longer has parameter provisioning_state
  - Model ArtifactSourceFragment no longer has parameter type
  - Model ArtifactSourceFragment no longer has parameter id
  - Model ArtifactSourceFragment no longer has parameter location
  - Model ArtifactSourceFragment no longer has parameter name
  - Model ArtifactSourceFragment no longer has parameter unique_identifier
  - Model ArtifactSourceFragment no longer has parameter provisioning_state
  - Model LabVirtualMachineCreationParameter no longer has parameter applicable_schedule
  - Model LabVirtualMachineCreationParameter no longer has parameter compute_vm
  - Model LabVirtualMachineCreationParameter no longer has parameter unique_identifier
  - Model LabVirtualMachineCreationParameter no longer has parameter provisioning_state
  - Model ApplicableScheduleFragment no longer has parameter location
  - Model ApplicableScheduleFragment no longer has parameter type
  - Model ApplicableScheduleFragment no longer has parameter id
  - Model ApplicableScheduleFragment no longer has parameter name
  - Model ScheduleFragment no longer has parameter type
  - Model ScheduleFragment no longer has parameter id
  - Model ScheduleFragment no longer has parameter location
  - Model ScheduleFragment no longer has parameter name
  - Model ScheduleFragment no longer has parameter unique_identifier
  - Model ScheduleFragment no longer has parameter provisioning_state
  - Model LabVirtualMachineFragment no longer has parameter type
  - Model LabVirtualMachineFragment no longer has parameter id
  - Model LabVirtualMachineFragment no longer has parameter compute_vm
  - Model LabVirtualMachineFragment no longer has parameter location
  - Model LabVirtualMachineFragment no longer has parameter name
  - Model LabVirtualMachineFragment no longer has parameter unique_identifier
  - Model LabVirtualMachineFragment no longer has parameter provisioning_state
  - Model LabVirtualMachineFragment no longer has parameter applicable_schedule
  - Model LabFragment has a new signature
  - Model UserFragment has a new signature
  - Model NotificationChannelFragment has a new signature

  2.2.0 (2018-02-15)
  ++++++++++++++++++

  * Add "providers" operation group

  2.1.0 (2017-10-25)
  ++++++++++++++++++

  * Add "operations" operation group

  2.0.0 (2017-04-27)
  ++++++++++++++++++

  * Major refactoring to follow name conventions + new features.
  * This wheel package is now built with the azure wheel extension

  1.0.0 (2016-09-13)
  ++++++++++++++++++

  * Initial Release


pkgId: 49c73a9fbeb5c72d88ace8a32978c9f2a6c3419567bfaab70f382b73287877f8
name: rh-python36-azure-mgmt-dns
arch: noarch
version: 2.1.0
epoch: 0
release: 2
summary: Microsoft Azure DNS Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 3f21a203fb954cc18a214dda7e3f35a0
rpm_sourcerpm: rh-python36-azure-mgmt-dns-2.1.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387261-rh-python36-azure-mgmt-dns/rh-python36-azure-mgmt-dns-2.1.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure DNS Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `DNS Management
  <https://azure-sdk-for-python.readthedocs.org/en/latest/sample_azure-mgmt-dns.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  1.2.0 (2017-10-26)
  ++++++++++++++++++

  - add record_type CAA
  - remove pointless return type of delete

  Api version moves from 2016-04-01 to 2017-09-01

  1.1.0 (2017-10-10)
  ++++++++++++++++++

  - Add "recordsetnamesuffix" filter parameter to list operations

  1.0.1 (2017-04-20)
  ++++++++++++++++++

  This wheel package is now built with the azure wheel extension

  1.0.0 (2016-12-12)
  ++++++++++++++++++

  * Initial release


pkgId: 71d2fd77dd1496c189ae611317397a77e6f6136befc4432b77333591ed7c6809
name: rh-python36-azure-mgmt-hdinsight
arch: noarch
version: 0.1.0
epoch: 0
release: 2
summary: Microsoft Azure HDInsight Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: b1319fc38e2141a5ab87c6e323a3bd07
rpm_sourcerpm: rh-python36-azure-mgmt-hdinsight-0.1.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387072-rh-python36-azure-mgmt-hdinsight/rh-python36-azure-mgmt-hdinsight-0.1.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure HDInsight Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `HDInsight Management
  <https://docs.microsoft.com/python/api/overview/azure/>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.1.0 (2018-08-08)
  ++++++++++++++++++

  * Initial Release


pkgId: ca55c89196f64b2971dbab1093f47f83b8e9b3d1aa78813dad9ffa1d8bffc6aa
name: rh-python36-azure-mgmt-iothub
arch: noarch
version: 0.7.0
epoch: 0
release: 1
summary: Microsoft Azure IoTHub Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: ae81d01942b241e98ebebc62c7d3d5ee
rpm_sourcerpm: rh-python36-azure-mgmt-iothub-0.7.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387290-rh-python36-azure-mgmt-iothub/rh-python36-azure-mgmt-iothub-0.7.0-1.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure IoTHub Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `IoTHub Management
  <https://docs.microsoft.com/python/api/overview/azure/iot>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.7.0 (2018-12-14)
  ++++++++++++++++++

  **Features**

  - Model OperationDisplay has a new parameter description
  - Model TestRouteInput has a new parameter twin
  - Model IotHubProperties has a new parameter device_streams
  - Model TestAllRoutesInput has a new parameter twin

  **Breaking changes**

  - Operation IotHubResourceOperations.test_route has a new signature
  - Operation IotHubResourceOperations.test_all_routes has a new signature

  0.6.0 (2018-08-27)
  ++++++++++++++++++

  **Features**

  - Model CertificatePropertiesWithNonce has a new parameter certificate
  - Model CertificateProperties has a new parameter certificate
  - Added operation IotHubResourceOperations.test_all_routes
  - Added operation IotHubResourceOperations.test_route
  - Added operation IotHubResourceOperations.get_endpoint_health
  - Added operation group ResourceProviderCommonOperations
  - Client class can be used as a context manager to keep the underlying HTTP session open for performance

  0.5.0 (2018-04-17)
  ++++++++++++++++++

  **General Breaking changes**

  This version uses a next-generation code generator that *might* introduce breaking changes.

  - Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments.
    To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments.
  - Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered.
    While this is not a breaking change, the distinctions are important, and are documented here:
    https://docs.python.org/3/library/enum.html#others
    At a glance:

    - "is" should not be used at all.
    - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered.

  - New Long Running Operation:

    - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same.
    - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used.
    - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`,
      without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`.
    - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`,
      the response of the initial call will be returned without polling.
    - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`.
    - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away.

  **Bugfixes**

  - Compatibility of the sdist with wheel 0.31.0

  **Features**

  - Add new ApiVersion 2018-04-01


  0.4.0 (2017-10-11)
  ++++++++++++++++++

  **Features**

  - New API version 2017-07-01. This is a backward compatible.
  - Add "if_match" parameter when applicable
  - Add certificates operation group
  - Add list available operations method
  - Add "storage_containers" attribute to RoutingEndpoints

  0.3.0 (2017-06-13)
  ++++++++++++++++++

  **Features**

  - New API version 2017-01-19. This is a backward compatible.
  - Adding "routing" information

  0.2.2 (2017-04-20)
  ++++++++++++++++++

  **Bugfixes**

  - Fix possible deserialization error, but updating from dict<str, enumtype> to dict<str, str> when applicable

  **Notes**

  - This wheel package is now built with the azure wheel extension

  0.2.1 (2016-12-16)
  ++++++++++++++++++

  **Bugfixes**

  * Fix #920 - Invalid return type for `list_event_hub_consumer_groups`

  0.2.0 (2016-12-12)
  ++++++++++++++++++

  **Bugfixes**

  * Better parameters checking (change exception from CloudError to TypeError)
  * Date parsing fix (incorrect None date)
  * CreateOrUpdate random exception fix

  0.1.0 (2016-08-12)
  ++++++++++++++++++

  * Initial Release


pkgId: 3217297ada979c2b187148068406238d09ae014fca4e218c4efdd60cfbe65df9
name: rh-python36-azure-mgmt-keyvault
arch: noarch
version: 1.1.0
epoch: 0
release: 2
summary: Microsoft Azure KeyVault Apps Resource Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <ptvshelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 2d0b49aeb4f7473ca68c7914d0131b51
rpm_sourcerpm: rh-python36-azure-mgmt-keyvault-1.1.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387262-rh-python36-azure-mgmt-keyvault/rh-python36-azure-mgmt-keyvault-1.1.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure KeyVault Resource Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4 and 3.5.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `KeyVault Resource Management
  <https://azure-sdk-for-python.readthedocs.org/en/latest/sample_azure-mgmt-keyvault.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.40.0 (2017-06-06)
  +++++++++++++++++++

  - upgrading to API version 2016-10-01
  - adding keyvault management plane updates to enable the soft delete feature for a new or existing keyvault

  **Notes**

  - this contains a backwards breaking change removing the All value from KeyPermissions, SecretPermissions and CertificatePermissions

  0.31.0 (2017-04-19)
  +++++++++++++++++++

  **Bugfixes**

  - Fix possible deserialization error, but updating from list<enumtype> to list<str> when applicable

  **Notes**

  - This wheel package is now built with the azure wheel extension

  0.30.1 (2016-12-15)
  +++++++++++++++++++

  * Fix list Vault by subscription method return type

  0.30.0 (2016-10-04)
  +++++++++++++++++++

  * Initial preview release (API Version 2016-10-02)


pkgId: 233ff241a9128f8a3c828f71a143899a4cab76d51f0a9917bcbc43a48203a582
name: rh-python36-azure-mgmt-loganalytics
arch: noarch
version: 0.2.0
epoch: 0
release: 2
summary: Microsoft Azure Log Analytics Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 44fe5feeedad421989206ce26873fe24
rpm_sourcerpm: rh-python36-azure-mgmt-loganalytics-0.2.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387073-rh-python36-azure-mgmt-loganalytics/rh-python36-azure-mgmt-loganalytics-0.2.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Log Analytics Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Log Analytics Management
  <https://docs.microsoft.com/python/api/overview/azure/>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.2.0 (2018-05-29)
  ++++++++++++++++++

  **Features**

  - Model IntelligencePack has a new parameter display_name
  - Model SavedSearch has a new parameter name
  - Model SavedSearch has a new parameter type
  - Added operation WorkspacesOperations.purge
  - Added operation WorkspacesOperations.update
  - Added operation group Operations
  - Client class can be used as a context manager to keep the underlying HTTP session open for performance

  **Breaking changes**

  - Model SavedSearch no longer has parameter etag (replaced by e_tag)
  - Model SearchMetadata no longer has parameter etag (replaced by e_tag)

  **General Breaking changes**

  This version uses a next-generation code generator that *might* introduce breaking changes.

  - Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments.
    To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments.
  - Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered.
    While this is not a breaking change, the distinctions are important, and are documented here:
    https://docs.python.org/3/library/enum.html#others
    At a glance:

    - "is" should not be used at all.
    - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered.

  - New Long Running Operation:

    - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same.
    - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used.
    - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`,
      without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`.
    - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`,
      the response of the initial call will be returned without polling.
    - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`.
    - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away.

  **Bugfixes**

  - Compatibility of the sdist with wheel 0.31.0

  0.1.0 (2017-11-01)
  ++++++++++++++++++

  * Initial Release

  Thank you to jmalobicky for his help testing the package.


pkgId: 9cc0da16446f9b9b0ba5c6842474f3221f367c2954db36c0a64a2794c5b0be55
name: rh-python36-azure-mgmt-network
arch: noarch
version: 2.3.0
epoch: 0
release: 2
summary: Microsoft Azure Network Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 44a6f2fb41f6422da5630efb1838c15a
rpm_sourcerpm: rh-python36-azure-mgmt-network-2.3.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387258-rh-python36-azure-mgmt-network/rh-python36-azure-mgmt-network-2.3.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Network Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Compute and Network Resource Management
  <https://azure-sdk-for-python.readthedocs.org/en/latest/resourcemanagementcomputenetwork.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  1.7.1 (2017-12-20)
  ++++++++++++++++++

  **Bugfixes**

  Fix `SecurityRule` constructor parameters order to respect the one used until 1.5.0.
  This indeed introduces a breaking change for users of 1.6.0 and 1.7.0, but this constructor signature change was
  not expected, and following semantic versionning all 1.x versions should follow the same signature.

  This fixes third party library, like Ansible, that expects (for excellent reasons) this SDK to follow strictly semantic versionning
  with regards to breaking changes and have their dependency system asking for `>=1.0;<2.0`

  1.7.0 (2017-12-14)
  ++++++++++++++++++

  **Features**

  - Add iptag. IpTag is way to restrict the range of IPaddresses to be allocated.
  - Default API version is now 2017-11-01

  **Bug fixes**

  - Added valid ASN range in ExpressRouteCircuitPeering (#1672)

  1.6.0 (2017-11-28)
  ++++++++++++++++++

  **Bug fixes**

  - Accept space in location for "usage" (i.e. "west us").
  - sourceAddressPrefix, sourceAddressPrefixes and sourceApplicationSecurityGroups
    are mutually exclusive and one only is needed, meaning none of them is required
    by itself. Thus, sourceAddressPrefix is not required anymore.
  - destinationAddressPrefix, destinationAddressPrefixes and destinationApplicationSecurityGroups
    are mutually exclusive and one only is needed, meaning none of them is required
    by itself. Thus, destinationAddressPrefix is not required anymore.
  - Client now accept unicode string as a valid subscription_id parameter
  - Restore missing azure.mgmt.network.__version__

  **Features**

  - Client now accept a "profile" parameter to define API version per operation group.
  - Add update_tags to most of the resources
  - Add operations group to list all available rest API operations
  - NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations
  - NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration

  1.5.0 (2017-09-26)
  ++++++++++++++++++

  **Features**

  - Availability Zones
  - Add network_watchers.get_azure_reachability_report
  - Add network_watchers.list_available_providers
  - Add virtual_network_gateways.supported_vpn_devices
  - Add virtual_network_gateways.vpn_device_configuration_script

  1.5.0rc1 (2017-09-18)
  +++++++++++++++++++++

  **Features**

  - Add ApiVersion 2017-09-01 (new default)
  - Add application_security_groups (ASG) operations group
  - Add ASG to network_interface operations
  - Add ASG to IP operations
  - Add source/destination ASGs to network security rules
  - Add DDOS protection and VM protection to vnet operations

  **Bug fix**

  - check_dns_name_availability now correctly defines "domain_name_label" as required and not optional

  1.4.0 (2017-08-23)
  ++++++++++++++++++

  **Features**

  - Add ApiVersion 2017-08-01 (new default)
  - Added in both 2017-08-01 and 2017-06-01:

    - virtual_network_gateways.list_connections method
    - default_security_rules operations group
    - inbound_nat_rules operations group
    - load_balancer_backend_address_pools operations group
    - load_balancer_frontend_ip_configurations operations group
    - load_balancer_load_balancing_rules operations group
    - load_balancer_network_interfaces operations group
    - load_balancer_probes operations group
    - network_interface_ip_configurations operations group
    - network_interface_load_balancers operations group
    - EffectiveNetworkSecurityGroup.tag_map attribute
    - EffectiveNetworkSecurityRule.source_port_ranges attribute
    - EffectiveNetworkSecurityRule.destination_port_ranges attribute
    - EffectiveNetworkSecurityRule.source_address_prefixes attribute
    - EffectiveNetworkSecurityRule.destination_address_prefixes attribute
    - SecurityRule.source_port_ranges attribute
    - SecurityRule.destination_port_ranges attribute
    - SecurityRule.source_address_prefixes attribute
    - SecurityRule.destination_address_prefixes attribute

  - Added in 2017-08-01 only

    - PublicIPAddress.sku
    - LoadBalancer.sku

  **Changes on preview**

    - "available_private_access_services" is renamed "available_endpoint_services"
    - "radius_secret" parsing fix (was unable to work in 1.3.0)


  1.3.0 (2017-07-10)
  ++++++++++++++++++

  **Preview features**

  - Adding "available_private_access_services" operation group (preview)
  - Adding "radius_secret" in Virtual Network Gateway (preview)

  **Bug Fixes**

  - VMSS Network ApiVersion fix in 2017-06-01 (point to 2017-03-30)

  1.2.0 (2017-07-03)
  ++++++++++++++++++

  **Features**

  Adding the following features to both 2017-03-01 and 2017-06-01:

  - express route ipv6
  - VMSS Network (get, list, etc.)
  - VMSS Public IP (get, list, etc.)

  1.1.0 (2017-06-27)
  ++++++++++++++++++

  **Features**

  - Add list_usage in virtual networks (2017-03-01)

  - Add ApiVersion 2017-06-01 (new default)

  This new ApiVersion is for new Application Gateway features:

    - ApplicationGateway Ssl Policy custom cipher suites support [new properties added to Sslpolicy Property of ApplciationGatewayPropertiesFormat]
    - Get AvailableSslOptions api [new resource ApplicationGatewayAvailableSslOptions and child resource ApplicationGatewayPredefinedPolicy]
    - Redirection support [new child resource ApplicationGatewayRedirectConfiguration for Application Gateway,
      new properties in UrlPathMap, PathRules and RequestRoutingRule]
    - Azure Websites feature support [new properties in ApplicationGatewayBackendHttpSettingsPropertiesFormat,
      ApplicationGatewayProbePropertiesFormat, schema for property ApplicationGatewayProbeHealthResponseMatch]

  1.0.0 (2017-05-15)
  ++++++++++++++++++

  - Tag 1.0.0rc3 as stable (same content)

  1.0.0rc3 (2017-05-03)
  +++++++++++++++++++++

  **Features**

  - Added check connectivity api to network watcher

  1.0.0rc2 (2017-04-18)
  +++++++++++++++++++++

  **Features**

  - Add ApiVersion 2016-12-01 and 2017-03-01
  - 2017-03-01 is now default ApiVersion

  **Bugfixes**

  - Restore access to NetworkWatcher and PacketCapture from 2016-09-01

  1.0.0rc1 (2017-04-11)
  +++++++++++++++++++++

  **Features**

  To help customers with sovereign clouds (not general Azure),
  this version has official multi ApiVersion support for 2015-06-15 and 2016-09-01

  0.30.1 (2017-03-27)
  +++++++++++++++++++

  * Add NetworkWatcher
  * Add PacketCapture
  * Add new methods to Virtualk Network Gateway

    * get_bgp_peer_status
    * get_learned_routes
    * get_advertised_routes

  0.30.0 (2016-11-01)
  +++++++++++++++++++

  * Initial preview release. Based on API version 2016-09-01.


  0.20.0 (2015-08-31)
  +++++++++++++++++++

  * Initial preview release. Based on API version 2015-05-01-preview.


pkgId: 0745ff23613b14a0da8635cfe4b1c3dc65e8969add9d97a1fdadac636d2b4ff9
name: rh-python36-azure-mgmt-rdbms
arch: noarch
version: 1.4.1
epoch: 0
release: 2
summary: Microsoft Azure RDBMS Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 949e7b134516454da2127b63155f6623
rpm_sourcerpm: rh-python36-azure-mgmt-rdbms-1.4.1-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387263-rh-python36-azure-mgmt-rdbms/rh-python36-azure-mgmt-rdbms-1.4.1-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure RDBMS Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `PostgreSQL
  <https://docs.microsoft.com/python/api/overview/azure/postgresql>`__
  on docs.microsoft.com.

  For code examples, see `MySQL
  <https://docs.microsoft.com/python/api/overview/azure/mysql>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  1.2.0 (2018-05-30)
  ++++++++++++++++++

  **Features**

  - Added operation group VirtualNetworkRulesOperations
  - Added operation group ServerSecurityAlertPoliciesOperations (PostgreSQL only)
  - Client class can be used as a context manager to keep the underlying HTTP session open for performance

  1.1.1 (2018-04-17)
  ++++++++++++++++++

  **Bugfixes**

  - Fix some invalid models in Python 3
  - Compatibility of the sdist with wheel 0.31.0

  1.1.0 (2018-03-29)
  ++++++++++++++++++

  **Features**

  - Add  Geo-Restore ability for MySQL and PostgreSQL

  1.0.0 (2018-03-19)
  ++++++++++++++++++

  **General Breaking changes**

  This version uses a next-generation code generator that *might* introduce breaking changes.

  - Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments.
    To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments.
  - Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered.
    While this is not a breaking change, the distinctions are important, and are documented here:
    https://docs.python.org/3/library/enum.html#others
    At a glance:

    - "is" should not be used at all.
    - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered.

  - New Long Running Operation:

    - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same.
    - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used.
    - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`,
      without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`.
    - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`,
      the response of the initial call will be returned without polling.
    - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`.
    - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away.

  **RDBMS breaking changes**

  - Some properties moved from object "PerformanceTierProperties" to "PerformanceTierServiceLevelObjectives "(One level down).

  Api Version is now 2017-12-01

  0.3.1 (2018-02-28)
  ++++++++++++++++++

  * Remove GeoRestore option that is not available yet.

  0.3.0 (2018-02-26)
  ++++++++++++++++++

  * New pricing model release

  0.2.0rc1 (2017-10-16)
  +++++++++++++++++++++

  * VNET Rules API spec for Postgres and MySQL

  0.1.0 (2017-05-08)
  ++++++++++++++++++

  * Initial Release


pkgId: 7f54324abf1a403ca84752f97672f6e1ca36c54793be42330b80417e84c7b110
name: rh-python36-azure-mgmt-redis
arch: noarch
version: 5.0.0
epoch: 0
release: 2
summary: Microsoft Azure Redis Cache Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: edee1353975a409d91965260a3fb81be
rpm_sourcerpm: rh-python36-azure-mgmt-redis-5.0.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387069-rh-python36-azure-mgmt-redis/rh-python36-azure-mgmt-redis-5.0.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Redis Cache Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Redis Cache Management
  <https://docs.microsoft.com/python/api/overview/azure/redis>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  5.0.0 (2018-02-08)
  ++++++++++++++++++

  **Disclaimer**

  Several model (like RedisCreateParameters) have positional arguments shuffled, due to constraints
  in our code generator. This is not breaking if you use keyword arguments. If you are using
  positional arguments, we strongly suggest to use keyword only arguments for Model creation, since
  next version 6.0.0 will use keyword only arguments for models.

  **Breaking changes**

  - RedisCreateParameters parameters orders shuffled (see disclaimer)
  - RedisUpdateParameters parameters orders shuffled (see disclaimer)
  - Merging redis_firewall_rule operations group into firewall_rules
  - Rename firewall_rules.list to firewall_rules.list_by_redis_resource

  **Features**

  - All operation groups have now a "models" attribute
  - Add linked_server operations group

  New ApiVersion 2017-10-01

  4.1.1 (2017-10-25)
  ++++++++++++++++++

  **Bugfixes**

  - Fix "tags" attribute in redis update

  4.1.0 (2017-04-18)
  ++++++++++++++++++

  **Features**

  - Add firewall rules operations

  **Notes**

  - This wheel package is now built with the azure wheel extension

  4.0.0 (2017-01-13)
  ++++++++++++++++++

  **Bugfixes**

  * Fix error if patching when not exist

  **Breaking change**

  * `redis.update` is no longer an async operation

  3.0.0 (2016-11-14)
  ++++++++++++++++++

  **New features**

  * Add "Everyday" and "Weekend" to schedule enums
  * Improve technical documention

  **Breaking change**

  * Simplify `patch_schedules.create_or_update` parameters

  2.0.0 (2016-10-20)
  ++++++++++++++++++

  * Major bug fixes and refactoring.

  1.0.0 (2016-08-09)
  ++++++++++++++++++

  * Initial Release (API Version 2016-04-01)


pkgId: 69689b65104bff3ddef769d36543028c3fc76f42cac93406ba4600933b711c3f
name: rh-python36-azure-mgmt-resource
arch: noarch
version: 2.1.0
epoch: 0
release: 2
summary: Microsoft Azure Resource Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 648d0abe4b894349aeef881b952cad9b
rpm_sourcerpm: rh-python36-azure-mgmt-resource-2.1.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387257-rh-python36-azure-mgmt-resource/rh-python36-azure-mgmt-resource-2.1.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Resource Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Resource Management
  <https://azure-sdk-for-python.readthedocs.org/en/latest/resourcemanagement.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  1.2.2 (2017-10-17)
  ++++++++++++++++++

  **Bug fixes**

  - Unicode strings are valid "subscription_id" in Python 2.7
  - Added some deprecation warnings

  1.2.1 (2017-10-06)
  ++++++++++++++++++

  **Bugfixes**

  - "Get" on unkwon policy resources should raise and not return None

  1.2.0 (2017-10-05)
  ++++++++++++++++++

  **Features**

  - Add validate_move_resources
  - Add mode and metadata to PolicyDefinition
  - Add policy_definitions.get_built_in
  - Add policy_definitions.list_built_in
  - Add policy_definitions.create_or_update_at_management_group
  - Add policy_definitions.delete_at_management_group
  - Add policy_definitions.get_at_management_group
  - Add policy_definitions.list_by_management_group

  - Add preview version of Policy 2017-06-01-preview:

    - Add policy_set_definitions operations group
    - Add policy set definitions to policy_assignments operations group
    - Add skus to policy assignment

  **Bug fixes**

  - Do not fail on 204 when deleting a policy assignment (2016-12-01)

  **Breaking changes to preview clients**

  * Major renaming into ManagedApplication client, and GA ApiVersion 2017-09-01

  **Disclaimer**

  - We removed the "filter" parameter of policy_definitions.list method.
    However, we don't upgrade the  major version of the package, since this parameter has no meaning
    for the RestAPI and there is no way any Python users would have been able to use it anyway.

  1.1.0 (2017-05-15)
  ++++++++++++++++++

  - Tag 1.1.0rc2 as stable (same content)

  1.1.0rc2 (2017-05-12)
  +++++++++++++++++++++

  - Add Policy ApiVersion 2015-10-01-preview (AzureStack default)

  1.1.0rc1 (2017-05-08)
  +++++++++++++++++++++

  - New default ApiVersion is now 2017-05-10. Breaking changes described in 1.0.0rc3 are now applied by default.

  1.0.0rc3 (2017-05-04)
  +++++++++++++++++++++

  **Bug fixes**

  - Subscriptions: Removed deprecated tenant ID
  - Managed Applications: All list methods return an iterator

  **New Resources ApiVersion 2017-05-10**

  - Deploy resources to multiple resource groups from one template
  - Some breaking changes are introduced compared to previous versions:

     - deployments.list has been renamed deployments.list_by_resource_group
     - resource_groups.list_resources has been moved to resources.list_by_resource_group
     - resource_groups.patch has been renamed to resource_groups.update and now takes an instance of ResourceGroupPatchable (and not ResourceGroup).

  The default is still 2016-09-01 in this package, waiting for the ApiVersion to be widely available.

  1.0.0rc2 (2017-05-02)
  +++++++++++++++++++++

  - Add Managed Applications client (preview)

  1.0.0rc1 (2017-04-11)
  +++++++++++++++++++++

  **Bug fixes**

  - tag_count is now correctly an int and not a string
  - deployment_properties is now required for all deployments operations as expected

  **Breaking Changes**

  - Locks moves to a new ApiVersion and brings several consistent naming refactoring and new methods

  **Features**

  To help customers with sovereign clouds (not general Azure),
  this version has official multi ApiVersion support for the following resource type:

  - Locks: 2015-01-01 and 2016-09-01
  - Policy: 2016-04-01 and 2016-12-01
  - Resources: 2016-02-01 and 2016-09-01

  The following resource types support one ApiVersion:

  - Features: 2015-12-01
  - Links: 2016-09-01
  - Subscriptions: 2016-06-01

  0.31.0 (2016-11-10)
  +++++++++++++++++++

  **Breaking change**

  - Resource.Links 'create_or_update' method has simpler parameters

  0.30.2 (2016-10-20)
  +++++++++++++++++++

  **Features**

  - Add Resource.Links client


  0.30.1 (2016-10-17)
  +++++++++++++++++++

  **Bugfixes**

  - Location is now correctly declared optional and not required.

  0.30.0 (2016-10-04)
  +++++++++++++++++++

  * Preview release. Based on API version 2016-09-01.

  0.20.0 (2015-08-31)
  +++++++++++++++++++

  * Initial preview release. Based on API version 2014-04-01-preview


pkgId: 4fea776b6fc74626ea525b0f57540c52d2764aeb0e9e7d5c76ae4eaed73f1be4
name: rh-python36-azure-mgmt-servicebus
arch: noarch
version: 0.5.3
epoch: 0
release: 1
summary: Microsoft Azure Service Bus Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 4d77bc5d2590401599991cede7d2621a
rpm_sourcerpm: rh-python36-azure-mgmt-servicebus-0.5.3-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387070-rh-python36-azure-mgmt-servicebus/rh-python36-azure-mgmt-servicebus-0.5.3-1.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Service Bus Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.4, 3.5, 3.6 and 3.7.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Service Bus Management
  <https://docs.microsoft.com/python/api/overview/azure/servicebus>`__
  on docs.microsoft.com.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.5.3 (2018-10-29)
  ++++++++++++++++++

  **Bugfix**

  - Fix sdist broken in 0.5.2. No code change.

  0.5.2 (2018-09-28)
  ++++++++++++++++++

  **Features**

  - Model MigrationConfigProperties has a new parameter migration_state

  **Note**

  - azure-mgmt-nspkg is not installed anymore on Python 3 (PEP420-based namespace package)

  0.5.1 (2018-07-09)
  ++++++++++++++++++

  **Features**

  - Add pending_replication_operations_count

  **Bugfixes**

  - Fix some Py3 import models

  0.5.0 (2018-04-26)
  ++++++++++++++++++

  **General Breaking changes**

  This version uses a next-generation code generator that *might* introduce breaking changes.

  - Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments.
    To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments.
  - Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered.
    While this is not a breaking change, the distinctions are important, and are documented here:
    https://docs.python.org/3/library/enum.html#others
    At a glance:

    - "is" should not be used at all.
    - "format" will return the string value, where "%s" string formatting will return `NameOfEnum.stringvalue`. Format syntax should be prefered.

  - New Long Running Operation:

    - Return type changes from `msrestazure.azure_operation.AzureOperationPoller` to `msrest.polling.LROPoller`. External API is the same.
    - Return type is now **always** a `msrest.polling.LROPoller`, regardless of the optional parameters used.
    - The behavior has changed when using `raw=True`. Instead of returning the initial call result as `ClientRawResponse`,
      without polling, now this returns an LROPoller. After polling, the final resource will be returned as a `ClientRawResponse`.
    - New `polling` parameter. The default behavior is `Polling=True` which will poll using ARM algorithm. When `Polling=False`,
      the response of the initial call will be returned without polling.
    - `polling` parameter accepts instances of subclasses of `msrest.polling.PollingMethod`.
    - `add_done_callback` will no longer raise if called after polling is finished, but will instead execute the callback right away.

  **SDK Features**

  - Client class can be used as a context manager to keep the underlying HTTP session open for performance

  **ServiceBus features**

  - Add dead_lettering_on_filter_evaluation_exceptions
  - Add enable_batched_operations property to ServiceBus Queue
  - Add migration_config operations
  - Add skip and top to list commands
  - Add 'properties' to CorrelationFilter
  - Remove 'enableSubscriptionPartitioning' deprecated property

  0.4.0 (2017-12-12)
  ++++++++++++++++++

  **Features**

  - Add alternate_name to some models (GEO DR pairing)
  - Add disaster_recovery_configs.check_name_availability_method
  - Add disaster_recovery_configs.list_authorization_rules
  - Add disaster_recovery_configs.get_authorization_rule
  - Add disaster_recovery_configs.list_keys

  0.3.1 (2017-12-08)
  ++++++++++++++++++

  **Bugfixes**

  - Add missing forward_to, forward_dead_lettered_messages_to
  - "rights" is now required, as expected, for operations called create_or_update_authorization_rule

  0.3.0 (2017-10-26)
  ++++++++++++++++++

  **Features**

  - Add disaster_recovery_configs operation group
  - Add regions operation group
  - Add premium_messgings_regions operation group
  - Add event_hubs operation group
  - Add Geo DR

  0.2.0 (2017-06-26)
  ++++++++++++++++++

  * New API Version 2017-04-01
  * Expect breaking changes, as a unstable client

  This wheel package is built with the azure wheel extension

  0.1.0 (2016-10-27)
  ++++++++++++++++++

  * Initial Release


pkgId: 14c3c73926bd3db30472797672ec864539dcd15626e11185be167b5913646665
name: rh-python36-azure-mgmt-sql
arch: noarch
version: 0.10.0
epoch: 0
release: 2
summary: Microsoft Azure SQL Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <ptvshelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 4adfe26f7f3b4432b1900ee1bc681ff2
rpm_sourcerpm: rh-python36-azure-mgmt-sql-0.10.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387255-rh-python36-azure-mgmt-sql/rh-python36-azure-mgmt-sql-0.10.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure SQL Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4 and 3.5.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `SQL Management
  <https://azure-sdk-for-python.readthedocs.org/en/latest/sample_azure-mgmt-sql.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.7.1 (2017-06-30)
  ++++++++++++++++++

  - Added support for server connection policies
  - Fixed error in databases_operations.create_or_update_threat_detection_policy

  0.7.0 (2017-06-28)
  ++++++++++++++++++

  **features**

  - Backup/Restore related: RecoverableDatabase, RestorableDroppedDatabase, BackupLongTermRetentionVault, BackupLongTermRetentionPolicy, and GeoBackupPolicy
  - Data Masking rules and policies
  - Server communication links

  **Breaking changes**

  - Renamed enum RestorePointTypes to RestorePointType
  - Renamed VnetFirewallRule and related operations to VirtualNetworkRule

  0.6.0 (2017-06-13)
  ++++++++++++++++++

  - Updated Servers api version from 2014-04-01 to 2015-05-01-preview, which is SDK compatible and includes support for server managed identity
  - Added support for server keys and encryption protectors
  - Added support for check server name availability
  - Added support for virtual network firewall rules
  - Updated server azure ad admin from swagger
  - Minor nonfunctional updates to database blob auditing
  - Breaking changes DatabaseMetrics and ServerMetrics renamed to DatabaseUsage and ServerUsage. These were misleadingly named because metrics is a different API.
  - Added database metrics and elastic pool metrics

  0.5.3 (2017-06-01)
  ++++++++++++++++++

  - Update minimal dependency to msrestazure 0.4.8

  0.5.2 (2017-05-31)
  ++++++++++++++++++

  **Features**

  - Added support for server active directory administrator, failover groups, and virtual network rules
  - Minor changes to database auditing support

  0.5.1 (2017-04-28)
  ++++++++++++++++++

  **Bugfixes**

  - Fix return exception in import/export

  0.5.0 (2017-04-19)
  ++++++++++++++++++

  **Breaking changes**

  - `SqlManagementClient.list_operations` is now `SqlManagementClient.operations.list`

  **New features**

  - Added elastic pool capabilities to capabilities API.

  **Notes**

  * This wheel package is now built with the azure wheel extension

  0.4.0 (2017-03-22)
  ++++++++++++++++++

  Capabilities and security policy features.

  Also renamed several types and operations for improved clarify and
  consistency.

  Additions:

  * BlobAuditingPolicy APIs (e.g. databases.create_or_update_blob_auditing_policy)
  * ThreatDetectionPolicy APIs (e.g. databases.create_or_update_threat_detection_policy)
  * databases.list_by_server now supports $expand parameter
  * Capabilities APIs (e.g. capabilities.list_by_location)

  Classes and enums renamed:

  * ServerFirewallRule -> FirewallRule
  * DatabaseEditions -> DatabaseEdition
  * ElasticPoolEditions -> ElasticPoolEdition
  * ImportRequestParameters -> ImportRequest
  * ExportRequestParameters -> ExportRequest
  * ImportExportOperationResponse -> ImportExportResponse
  * OperationMode -> ImportOperationMode
  * TransparentDataEncryptionStates -> TransparentDataEncryptionStatus

  Classes removed:

  * Unused types: UpgradeHint, Schema, Table, Column

  Operations renamed:

  * servers.get_by_resource_group -> servers.get
  * servers.create_or_update_firewall_rule -> firewall_rules.create_or_update, and similar for get, list, and delete
  * databases.import -> databases.create_import_operation
  * servers.import -> databases.import
  * databases.pause_data_warehouse -> databases.pause
  * databases.resume_data_warehouse -> databases.resume
  * recommended_elastic_pools.list -> recommended_elastic_pools.list_by_server

  Operations removed:

  * Removed ImportExport operation results APIs since these are handled automatically by Azure async pattern.

  0.3.3 (2017-03-14)
  ++++++++++++++++++

  * Add database blob auditing and threat detection operations

  0.3.2 (2017-03-08)
  ++++++++++++++++++

  * Add import/export operations
  * Expanded documentation of create modes

  0.3.1 (2017-03-01)
  ++++++++++++++++++

  * Added ‘filter’ param to list databases

  0.3.0 (2017-02-27)
  ++++++++++++++++++

  **Breaking changes**

  * Enums:

    * createMode renamed to CreateMode
    * Added ReadScale, SampleName, ServerState

  * Added missing Database properties (failover_group_id, restore_point_in_time, read_scale, sample_name)
  * Added missing ElasticPoolActivity properties (requested_*)
  * Added missing ReplicationLink properties (is_termination_allowed, replication_mode)
  * Added missing Server properties (external_administrator_*, state)
  * Added operations APIs
  * Removed unused Database.upgrade_hint property
  * Removed unused RecommendedDatabaseProperties class
  * Renamed incorrect RecommendedElasticPool.databases_property to databases
  * Made firewall rule start/end ip address required
  * Added missing kind property to many resources
  * Many doc clarifications

  0.2.0 (2016-12-12)
  ++++++++++++++++++

  **Breaking changes**

  * Parameters re-ordering (list_database_activity)
  * Flatten create_or_update_firewall_rule from "parameters" to "start_ip_address" and "end_ip_address"

  0.1.0 (2016-11-02)
  ++++++++++++++++++

  * Initial Release


pkgId: e1d2cee5e215e73fd21f9534bdb7e0bdfebb7d2b6418c73817e9f4e61f6bcd36
name: rh-python36-azure-mgmt-storage
arch: noarch
version: 3.1.0
epoch: 0
release: 2
summary: Microsoft Azure Storage Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <azpysdkhelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 9e6e2abc5fa94720b887a4b52604810a
rpm_sourcerpm: rh-python36-azure-mgmt-storage-3.1.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387214-rh-python36-azure-mgmt-storage/rh-python36-azure-mgmt-storage-3.1.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Storage Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4, 3.5 and 3.6.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Storage Resource Management
  <https://azure-sdk-for-python.readthedocs.org/en/latest/resourcemanagementstorage.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  1.5.0 (2017-12-12)
  ++++++++++++++++++

  **Features**

  - Add StorageV2 as valid kind
  - Add official support for API version 2017-10-01

  1.4.0 (2017-09-26)
  ++++++++++++++++++

  **Bug fixes**

  - Add skus operations group to the generic client

  **Features**

  - Add official support for API version 2016-01-01

  1.3.0 (2017-09-08)
  ++++++++++++++++++

  **Features**

  - Adds list_skus operation (2017-06-01)

  **Breaking changes**

  - Rename the preview attribute "network_acls" to "network_rule_set"

  1.2.1 (2017-08-14)
  ++++++++++++++++++

  **Bugfixes**

  - Remove "tests" packaged by mistake (#1365)

  1.2.0 (2017-07-19)
  ++++++++++++++++++

  **Features**

  - Api version 2017-06-01 is now the default
  - This API version adds Network ACLs objects (2017-06-01 as preview)

  1.1.0 (2017-06-28)
  ++++++++++++++++++

  - Added support for https traffic only (2016-12-01)

  1.0.0 (2017-05-15)
  ++++++++++++++++++

  - Tag 1.0.0rc1 as stable (same content)

  1.0.0rc1 (2017-04-11)
  +++++++++++++++++++++

  **Features**

  To help customers with sovereign clouds (not general Azure),
  this version has official multi ApiVersion support for 2015-06-15 and 2016-12-01

  0.31.0 (2017-01-19)
  +++++++++++++++++++

  * New `list_account_sas` operation
  * New `list_service_sas` operation
  * Name syntax are now checked before RestAPI call, not the server (exception changed)

  Based on API version 2016-12-01.

  0.30.0 (2016-11-14)
  +++++++++++++++++++

  * Initial release. Based on API version 2016-01-01
    Note that this is the same content as 0.30.0rc6, committed as 0.30.0.

  0.20.0 (2015-08-31)
  +++++++++++++++++++

  * Initial preview release. Based on API version 2015-05-01-preview.


pkgId: 4916917c8ca9eab7a11744dce006ecb95568f7e2280fb1cea9f41ee0d1cc23c7
name: rh-python36-azure-mgmt-web
arch: noarch
version: 0.41.0
epoch: 0
release: 2
summary: Microsoft Azure Web Apps Resource Management Client Library for Python
url: https://github.com/Azure/azure-sdk-for-python
rpm_license: MIT License
rpm_vendor: Microsoft Corporation <ptvshelp@microsoft.com>
rpm_group: Development/Libraries
rpm_buildhost: 6bea5d4235b3489ca67fb15fae1c2a68
rpm_sourcerpm: rh-python36-azure-mgmt-web-0.41.0-2.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387256-rh-python36-azure-mgmt-web/rh-python36-azure-mgmt-web-0.41.0-2.noarch.rpm
checksum_type: sha256
description:
  Microsoft Azure SDK for Python
  ==============================

  This is the Microsoft Azure Web Apps Resource Management Client Library.

  Azure Resource Manager (ARM) is the next generation of management APIs that
  replace the old Azure Service Management (ASM).

  This package has been tested with Python 2.7, 3.3, 3.4 and 3.5.

  For the older Azure Service Management (ASM) libraries, see
  `azure-servicemanagement-legacy <https://pypi.python.org/pypi/azure-servicemanagement-legacy>`__ library.

  For a more complete set of Azure libraries, see the `azure <https://pypi.python.org/pypi/azure>`__ bundle package.


  Compatibility
  =============

  **IMPORTANT**: If you have an earlier version of the azure package
  (version < 1.0), you should uninstall it before installing this package.

  You can check the version using pip:

  .. code:: shell

      pip freeze

  If you see azure==0.11.0 (or any version below 1.0), uninstall it first:

  .. code:: shell

      pip uninstall azure


  Usage
  =====

  For code examples, see `Web Apps Resource Management
  <https://azure-sdk-for-python.readthedocs.org/en/latest/resourcemanagementapps.html>`__
  on readthedocs.org.


  Provide Feedback
  ================

  If you encounter any bugs or have suggestions, please file an issue in the
  `Issues <https://github.com/Azure/azure-sdk-for-python/issues>`__
  section of the project.


  .. :changelog:

  Release History
  ===============

  0.32.0 (2017-04-26)
  +++++++++++++++++++

  * Support list web runtime stacks
  * Expose non resource based model type for SiteConfig, SiteAuthSettings, etc, to be used as property
  * Support list linux web available regions

  0.31.1 (2017-04-20)
  +++++++++++++++++++

  This wheel package is now built with the azure wheel extension

  0.31.0 (2017-02-13)
  +++++++++++++++++++

  * Major refactoring and breaking changes
  * New API Version

  0.30.0 (2016-10-17)
  +++++++++++++++++++

  * Initial release


pkgId: e9fed5b4d022efe5bf9850936ac9588d96755028ae32015925629df73d80cc44
name: rh-python36-baron
arch: noarch
version: 0.6.6
epoch: 0
release: 1
summary: Full Syntax Tree for python to make writing refactoring code a realist task
url: https://github.com/PyCQA/baron
rpm_license: lgplv3+
rpm_vendor: Laurent Peuch <cortex@worlddomination.be>
rpm_group: Development/Libraries
rpm_buildhost: 20747f1b750d42c0a56e6e41a3a2b221
rpm_sourcerpm: rh-python36-baron-0.6.6-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387076-rh-python36-baron/rh-python36-baron-0.6.6-1.noarch.rpm
checksum_type: sha256
description:
  Introduction
  ============

  Baron is a Full Syntax Tree (FST) library for Python. By opposition to an [AST](https://en.wikipedia.org/wiki/Abstract_syntax_tree) which
  drops some syntax information in the process of its creation (like empty lines,
  comments, formatting), a FST keeps everything and guarantees the operation
  <code>fst\_to\_code(code\_to\_fst(source\_code)) == source\_code</code>.

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

      pip install baron

  Basic Usage
  ===========

  ```python
  from baron import parse, dumps

  fst = parse(source_code_string)
  source_code_string == dumps(fst)
  ```

  Except if you want to do low level things, **use
  [RedBaron](https://github.com/PyCQA/redbaron) instead of using Baron
  directly**. Think of Baron as the "bytecode of python source code" and RedBaron
  as some sort of usable layer on top of it.

  If you don't know what Baron is or don't understand yet why it might be
  useful for you, read the [« Why is this important? » section](#why-is-this-important).

  Documentation
  =============

  Baron documentation is available on [Read The Docs](http://baron.readthedocs.io/en/latest/).

  Why is this important?
  ======================

  The usage of a FST might not be obvious at first sight so let's consider a
  series of problems to illustrate it. Let's say that you want to write a program that will:

  * rename a variable in a source file... without clashing with things that are not a variable (example: stuff inside a string)
  * inline a function/method
  * extract a function/method from a series of line of code
  * split a class into several classes
  * split a file into several modules
  * convert your whole code base from one ORM to another
  * do custom refactoring operation not implemented by IDE/rope
  * implement the class browser of smalltalk for python (the whole one where you can edit the code of the methods, not just showing code)

  It is very likely that you will end up with the awkward feeling of writing
  clumpsy weak code that is very likely to break because you didn't thought about
  all the annoying special cases and the formatting keeps bothering you. You may
  end up playing with [ast.py](http://docs.python.org/2/library/ast.html) until
  you realize that it removes too much information to be suitable for those
  situations. You will probably ditch this task as simple too complicated and
  really not worth the effort. You are missing a good abstraction that will take
  care of all of the code structure and formatting for you so you can concentrate
  on your task.

  The FST tries to be this abstraction. With it you can now work on a tree which
  represents your code with its formatting. Moreover, since it is the exact
  representation of your code, modifying it and converting it back to a string
  will give you back your code only modified where you have modified the tree.

  Said in another way, what I'm trying to achieve with Baron is a paradigm change in
  which writing code that will modify code is now a realist task that is worth
  the price (I'm not saying a simple task, but a realistic one: it's still a
  complex task).

  Other
  -----

  Having a FST (or at least a good abstraction build on it) also makes it easier
  to do code generation and code analysis while those two operations are already
  quite feasible (using [ast.py](http://docs.python.org/2/library/ast.html)
  and a templating engine for example).

  Some technical details
  ======================

  Baron produces a FST in the form of JSON (and by JSON I mean Python lists
  and dicts that can be dumped into JSON) for maximum interoperability.

  Baron FST is quite similar to Python AST with some modifications to be more
  intuitive to humans, since Python AST has been made for CPython interpreter.

  Since playing directly with JSON is a bit raw I'm going to build an abstraction
  on top of it that will looks like BeautifulSoup/jQuery.

  State of the project
  ====================

  Currently, Baron has been tested on the top 100 projects and the FST converts
  back exactly into the original source code. So, it can be considered quite
  stable, but it is far away from having been battle tested.

  Since the project is very young and no one is already using it except my
  project, I'm open to changes of the FST nodes but I will quickly become
  conservative once it gets some adoption and will probably accept to
  modify it only once or twice in the future with clear indications on how to
  migrate.

  **Baron is targeting python 2.[67]**. It has not been tested on python3 but
  should be working for most parts (except the new grammar like <code>yield from</code>,
  obviously). Baron **runs** under python 2 and python 3.

  Tests
  =====
  Run either `py.test tests/` or `nosetests` in the baron directory.

  Community
  =========

  You can reach us on [irc.freenode.net#baron](https://webchat.freenode.net/?channels=%23baron) or [irc.freenode.net##python-code-quality](https://webchat.freenode.net/?channels=%23%23python-code-quality).

  Code of Conduct
  ===============

  As a member of [PyCQA](https://github.com/PyCQA), Baron follows its [Code of Conduct](http://meta.pycqa.org/en/latest/code-of-conduct.html).

  Misc
  ====
  [Old blog post announcing the project.](http://worlddomination.be/blog/2013/the-baron-project-part-1-what-and-why.html) Not that much up to date.


  Changelog
  =========

  0.6.6 (2017-06-12)
  ------------------

  - fix situation where a deindented comment between a if and elif/else broken
    parsing, see https://github.com/PyCQA/baron/issues/87
  - around 35-40% to 75% parsing speed improvment on big files by duncf
    https://github.com/PyCQA/baron/pull/99

  0.6.5 (2017-01-26)
  ------------------

  - fix previous regression fix was broken

  0.6.4 (2017-01-14)
  ------------------

  - fix regression in case a comment follow the ":" of a if/def/other

  0.6.3 (2017-01-02)
  ------------------

  - group formatting at start of file or preceded by space with comment

  0.6.2 (2016-03-18)
  ------------------

  - fix race condition when generating parser cache file
  - make all user-facing errors inherit from the same BaronError class
  - fix: dotted_name and float_exponant_complex were missing from
    nodes_rendering_order

  0.6.1 (2015-01-31)
  ------------------

  - fix: the string was having a greedy behavior on grouping the string tokens
    surrounding it (for string chains), this ends up creating an inconsistancy in
    the way string was grouped in general
  - fix: better number parsing handling, everything isn't fixed yet
  - make all (expected) errors inherit from the same BaronError class
  - fix: parsing fails correctly if a quoted string is not closed

  0.6 (2014-12-11)
  ----------------

  - FST structure modification: def_argument_tuple is no more and all arguments
    now have a coherent structure:
    * def_argument node name attribute has been renamed to target, like in assign
    * target attribute now points to a dict, not to a string
    * old name -> string are now target -> name_node
    * def_argument_tuple is now a def_argument where target points to a tuple
    * this specific tuple will only has name and comma and tuple members (no more
      def_argument for name)
  - new node: long, before int and long where merged but that was causing problems

  0.5 (2014-11-10)
  ----------------

  - rename "funcdef" node to "def" node to be way more intuitive.

  0.4 (2014-09-29)
  ----------------

  - new rendering type in the nodes_rendering_order dictionary: string. This
    remove an ambiguity where a key could be pointing to a dict or a string, thus
    forcing third party tools to do guessing.

  0.3.1 (2014-09-04)
  ------------------

  - setup.py wasn't working if wheel wasn't used because the CHANGELOG file
    wasn't included in the MANIFEST.in

  0.3 (2014-08-21)
  ----------------

  - path becomes a simple list and is easier to deal with
  - bounding box allows you to know the left most and right most position
    of a node see https://baron.readthedocs.io/en/latest/#bounding-box
  - redbaron is classified as supporting python3
    https://github.com/Psycojoker/baron/pull/51
  - ensure than when a key is a string, it's empty value is an empty string and
    not None to avoid breaking libs that use introspection to guess the type of
    the key
  - key renaming in the FST: "delimiteur" -> "delimiter"
  - name_as_name and dotted_as_name node don't have the "as" key anymore as it
    was useless (it can be deduce from the state of the "target" key)
  - dotted_name node doesn't exist anymore, its existance was unjustified. In
    import, from_import and decorator node, it has been replaced from a key to a
    dict (with only a list inside of it) to a simple list.
  - dumps now accept a strict boolean argument to check the validity of the FST
    on dumping, but this isn't that much a public feature and should probably be
    changed of API in the futur
  - name_as_name and dotted_as_name empty value for target is now an empty string
    and not None since this is a string type key
  - boundingbox now includes the newlines at the end of a node
  - all raised exceptions inherit from a common base exception to ease try/catch
    constructions
  - Position's left and right functions become properties and thus
    attributes
  - Position objects can be compared to other Position objects or any
    iterables
  - make_position and make_bounding_box functions are deleted in favor of
    always using the corresponding class' constructor

  0.2 (2014-06-11)
  ----------------

  - Baron now provides documentation on https://baron.readthedocs.io
  - feature: baron now run in python3 (*but* doesn't implement the full python3
    grammar yet) by Pierre Penninckx https://github.com/ibizaman
  - feature: drop the usage of ast.py to find print_function, this allow any
    version of python to parse any other version of python also by Pierre
    Penninckx
  - fix: rare bug where a comment end up being confused as an indentation level
  - 2 new helpers: show_file and show_node, see https://baron.readthedocs.io/en/latest/#show-file
    and https://baron.readthedocs.io/en/latest/#show-node
  - new dictionary that provides the informations on how to render a FST node:
    nodes_rendering_order see https://baron.readthedocs.io/en/latest/#rendering-the-fst
  - new utilities to find a node, see https://baron.readthedocs.io/en/latest/#locate-a-node
  - new generic class that provide templates to work on the FST see
    https://baron.readthedocs.io/en/latest/#rendering-the-fst

  0.1.3 (2014-04-13)
  ------------------

  - set sugar syntaxic notation wasn't handled by the dumper (apparently no one
    use this on pypi top 100)

  0.1.2 (2014-04-08)
  ------------------

  - baron.dumps now accept a single FST node, it was only working with a list of
    FST nodes
  - don't add a endl node at the end if not present in the input string
  - de-uniformise call_arguments and function_arguments node, this is just
    creating more problems that anything else
  - fix https://github.com/Psycojoker/redbaron/issues/4
  - fix the fact that baron can't parse "{1,}" (but "{1}" is working)

  0.1.1 (2014-03-23)
  ------------------

  - It appears that I don't know how to write MANIFEST.in correctly


  0.1 (2014-03-22)
  ----------------

  - Init


pkgId: da0d85c0beb30f63e66b182b824e401a39cee1b8850543178a8b2d60ace4f3d9
name: rh-python36-bcrypt
arch: src
version: 3.1.7
epoch: 0
release: 1
summary: Modern password hashing for your software and your servers
url: https://github.com/pyca/bcrypt/
rpm_license: Apache License, Version 2.0
rpm_vendor: The Python Cryptographic Authority developers <cryptography-dev@python.org>
rpm_group: Development/Libraries
rpm_buildhost: ae4f132d70f34be9a95b7e1e6b89df00
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387222-rh-python36-bcrypt/rh-python36-bcrypt-3.1.7-1.src.rpm
checksum_type: sha256
description:
  bcrypt
  ======

  .. image:: https://img.shields.io/pypi/v/bcrypt.svg
      :target: https://pypi.python.org/pypi/bcrypt/
      :alt: Latest Version

  .. image:: https://travis-ci.org/pyca/bcrypt.svg?branch=master
      :target: https://travis-ci.org/pyca/bcrypt

  Modern password hashing for your software and your servers


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

  To install bcrypt, simply:

  .. code:: bash

      $ pip install bcrypt

  Note that bcrypt should build very easily on Linux provided you have a C compiler, headers for Python (if you're not using pypy), and headers for the libffi libraries available on your system.

  For Debian and Ubuntu, the following command will ensure that the required dependencies are installed:

  .. code:: bash

      $ sudo apt-get install build-essential libffi-dev python-dev

  For Fedora and RHEL-derivatives, the following command will ensure that the required dependencies are installed:

  .. code:: bash

      $ sudo yum install gcc libffi-devel python-devel

  Changelog
  =========

  3.1.4
  -----

  * Fixed compilation with mingw and on illumos.

  3.1.3
  -----
  * Fixed a compilation issue on Solaris.
  * Added a warning when using too few rounds with ``kdf``.

  3.1.2
  -----
  * Fixed a compile issue affecting big endian platforms.
  * Fixed invalid escape sequence warnings on Python 3.6.
  * Fixed building in non-UTF8 environments on Python 2.

  3.1.1
  -----
  * Resolved a ``UserWarning`` when used with ``cffi`` 1.8.3.

  3.1.0
  -----
  * Added support for ``checkpw``, a convenience method for verifying a password.
  * Ensure that you get a ``$2y$`` hash when you input a ``$2y$`` salt.
  * Fixed a regression where ``$2a`` hashes were vulnerable to a wraparound bug.
  * Fixed compilation under Alpine Linux.

  3.0.0
  -----
  * Switched the C backend to code obtained from the OpenBSD project rather than
    openwall.
  * Added support for ``bcrypt_pbkdf`` via the ``kdf`` function.

  2.0.0
  -----
  * Added support for an adjustible prefix when calling ``gensalt``.
  * Switched to CFFI 1.0+

  Usage
  -----

  Password Hashing
  ~~~~~~~~~~~~~~~~

  Hashing and then later checking that a password matches the previous hashed
  password is very simple:

  .. code:: pycon

      >>> import bcrypt
      >>> password = b"super secret password"
      >>> # Hash a password for the first time, with a randomly-generated salt
      >>> hashed = bcrypt.hashpw(password, bcrypt.gensalt())
      >>> # Check that an unhashed password matches one that has previously been
      >>> # hashed
      >>> if bcrypt.checkpw(password, hashed):
      ...     print("It Matches!")
      ... else:
      ...     print("It Does not Match :(")

  KDF
  ~~~

  As of 3.0.0 ``bcrypt`` now offers a ``kdf`` function which does ``bcrypt_pbkdf``.
  This KDF is used in OpenSSH's newer encrypted private key format.

  .. code:: pycon

      >>> import bcrypt
      >>> key = bcrypt.kdf(
      ...     password=b'password',
      ...     salt=b'salt',
      ...     desired_key_bytes=32,
      ...     rounds=100)


  Adjustable Work Factor
  ~~~~~~~~~~~~~~~~~~~~~~
  One of bcrypt's features is an adjustable logarithmic work factor. To adjust
  the work factor merely pass the desired number of rounds to
  ``bcrypt.gensalt(rounds=12)`` which defaults to 12):

  .. code:: pycon

      >>> import bcrypt
      >>> password = b"super secret password"
      >>> # Hash a password for the first time, with a certain number of rounds
      >>> hashed = bcrypt.hashpw(password, bcrypt.gensalt(14))
      >>> # Check that a unhashed password matches one that has previously been
      >>> #   hashed
      >>> if bcrypt.checkpw(password, hashed):
      ...     print("It Matches!")
      ... else:
      ...     print("It Does not Match :(")


  Adjustable Prefix
  ~~~~~~~~~~~~~~~~~

  Another one of bcrypt's features is an adjustable prefix to let you define what
  libraries you'll remain compatible with. To adjust this, pass either ``2a`` or
  ``2b`` (the default) to ``bcrypt.gensalt(prefix=b"2b")`` as a bytes object.

  As of 3.0.0 the ``$2y$`` prefix is still supported in ``hashpw`` but deprecated.

  Maximum Password Length
  ~~~~~~~~~~~~~~~~~~~~~~~

  The bcrypt algorithm only handles passwords up to 72 characters, any characters
  beyond that are ignored. To work around this, a common approach is to hash a
  password with a cryptographic hash (such as ``sha256``) and then base64
  encode it to prevent NULL byte problems before hashing the result with
  ``bcrypt``:

  .. code:: pycon

      >>> password = b"an incredibly long password" * 10
      >>> hashed = bcrypt.hashpw(
      ...     base64.b64encode(hashlib.sha256(password).digest()),
      ...     bcrypt.gensalt()
      ... )

  Compatibility
  -------------

  This library should be compatible with py-bcrypt and it will run on Python
  2.6+, 3.3+, and PyPy 2.6+.

  C Code
  ------

  This library uses code from OpenBSD.

  Security
  --------

  ``bcrypt`` follows the `same security policy as cryptography`_, if you
  identify a vulnerability, we ask you to contact us privately.

  .. _`same security policy as cryptography`: https://cryptography.io/en/latest/security/


pkgId: 20450615b5d85c6b4c14efe98908dbe7469acfeb4ac65aabc3d2ea8e59478c73
name: rh-python36-bcrypt-debuginfo
arch: x86_64
version: 3.1.7
epoch: 0
release: 1
summary: Debug information for package rh-python36-bcrypt
url: https://github.com/pyca/bcrypt/
rpm_license: Apache License, Version 2.0
rpm_vendor: The Python Cryptographic Authority developers <cryptography-dev@python.org>
rpm_group: Development/Debug
rpm_buildhost: 0a42c36aae92411eb464b48d606c32f1
rpm_sourcerpm: rh-python36-bcrypt-3.1.7-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387222-rh-python36-bcrypt/rh-python36-bcrypt-debuginfo-3.1.7-1.x86_64.rpm
checksum_type: sha256
description:
  This package provides debug information for package rh-python36-bcrypt.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: 3d037ca39cad9d911da208e70ce9b18ab9d9509d7752418d6d7feb6ed0f6cb68
name: rh-python36-billiard
arch: noarch
version: 3.6.1.0
epoch: 0
release: 1
summary: Python multiprocessing fork with improvements and bugfixes
url: http://github.com/celery/billiard
rpm_license: BSD
rpm_vendor: Ask Solem <ask@celeryproject.org>
rpm_group: Development/Libraries
rpm_buildhost: 41fea15cac0c43a58666c17f64cbf494
rpm_sourcerpm: rh-python36-billiard-3.6.1.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387120-rh-python36-billiard/rh-python36-billiard-3.6.1.0-1.noarch.rpm
checksum_type: sha256
description:
  ========
  billiard
  ========
  :version: 3.5.0.4

  |build-status-lin| |build-status-win| |license| |wheel| |pyversion| |pyimp|

  .. |build-status-lin| image:: https://secure.travis-ci.org/celery/billiard.png?branch=master
      :alt: Build status on Linux
      :target: https://travis-ci.org/celery/billiard

  .. |build-status-win| image:: https://ci.appveyor.com/api/projects/status/github/celery/billiard?png=true&branch=master
      :alt: Build status on Windows
      :target: https://ci.appveyor.com/project/ask/billiard

  .. |license| image:: https://img.shields.io/pypi/l/billiard.svg
      :alt: BSD License
      :target: https://opensource.org/licenses/BSD-3-Clause

  .. |wheel| image:: https://img.shields.io/pypi/wheel/billiard.svg
      :alt: Billiard can be installed via wheel
      :target: https://pypi.org/project/billiard/

  .. |pyversion| image:: https://img.shields.io/pypi/pyversions/billiard.svg
      :alt: Supported Python versions.
      :target: https://pypi.org/project/billiard/

  .. |pyimp| image:: https://img.shields.io/pypi/implementation/billiard.svg
      :alt: Support Python implementations.
      :target: https://pypi.org/project/billiard/

  About
  -----

  `billiard` is a fork of the Python 2.7 `multiprocessing <http://docs.python.org/library/multiprocessing.html>`_
  package. The multiprocessing package itself is a renamed and updated version of
  R Oudkerk's `pyprocessing <https://pypi.org/project/processing/>`_ package.
  This standalone variant draws its fixes/improvements from python-trunk and provides
  additional bug fixes and improvements.

  - This package would not be possible if not for the contributions of not only
    the current maintainers but all of the contributors to the original pyprocessing
    package listed `here <http://pyprocessing.berlios.de/doc/THANKS.html>`_

  - Also it is a fork of the multiprocessing backport package by Christian Heims.

  - It includes the no-execv patch contributed by R. Oudkerk.

  - And the Pool improvements previously located in `Celery`_.

  - Billiard is used in and is a dependency for `Celery`_ and is maintained by the
    Celery team.

  .. _`Celery`: http://celeryproject.org

  Bug reporting
  -------------

  Please report bugs related to multiprocessing at the
  `Python bug tracker <http://bugs.python.org/>`_. Issues related to billiard
  should be reported at http://github.com/celery/billiard/issues.


pkgId: 5f19f991bea3e12d85a8057b525521b9141bd7d572f1bc56aacd77c4fbc0a8e4
name: rh-python36-boto
arch: noarch
version: 2.47.0
epoch: 0
release: 1
summary: Amazon Web Services Library
url: https://github.com/boto/boto/
rpm_license: MIT
rpm_vendor: Mitch Garnaat <mitch@garnaat.com>
rpm_group: Development/Libraries
rpm_buildhost: afe34c201785432ea7d9f2746c079f60
rpm_sourcerpm: rh-python36-boto-2.47.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387077-rh-python36-boto/rh-python36-boto-2.47.0-1.noarch.rpm
checksum_type: sha256
description:
  boto

  boto 2.47.0

  Released: 24-May-2017

  .. image:: https://travis-ci.org/boto/boto.svg?branch=develop
          :target: https://travis-ci.org/boto/boto

  .. image:: https://pypip.in/d/boto/badge.svg
          :target: https://pypi.python.org/pypi/boto/

  ******
  Boto 3
  ******

  `Boto3 <https://github.com/boto/boto3>`__, the next version of Boto, is now
  stable and recommended for general use.  It can be used side-by-side with Boto
  in the same project, so it is easy to start using Boto3 in your existing
  projects as well as new projects. Going forward, API updates and all new
  feature work will be focused on Boto3.

  To assist users who still depend on Boto and cannot immediately switch over, we
  will be triaging and addressing critical issues and PRs in Boto in the short
  term. As more users make the switch to Boto3, we expect to reduce our
  maintenance involvement over time. If we decide on a cutoff date or any
  significant changes to our maintenance plan, we will make pre-announcements
  well ahead of schedule to allow ample time for our users to adapt/migrate.


  ************
  Introduction
  ************

  Boto is a Python package that provides interfaces to Amazon Web Services.
  Currently, all features work with Python 2.6 and 2.7. Work is under way to
  support Python 3.3+ in the same codebase. Modules are being ported one at
  a time with the help of the open source community, so please check below
  for compatibility with Python 3.3+.

  To port a module to Python 3.3+, please view our `Contributing Guidelines`_
  and the `Porting Guide`_. If you would like, you can open an issue to let
  others know about your work in progress. Tests **must** pass on Python
  2.6, 2.7, 3.3, and 3.4 for pull requests to be accepted.


  ********
  Services
  ********

  At the moment, boto supports:

  * Compute

    * Amazon Elastic Compute Cloud (EC2) (Python 3)
    * Amazon Elastic Map Reduce (EMR) (Python 3)
    * AutoScaling (Python 3)
    * Amazon Kinesis (Python 3)
    * AWS Lambda (Python 3)
    * Amazon EC2 Container Service (Python 3)

  * Content Delivery

    * Amazon CloudFront (Python 3)

  * Database

    * Amazon Relational Data Service (RDS)
    * Amazon DynamoDB (Python 3)
    * Amazon SimpleDB (Python 3)
    * Amazon ElastiCache (Python 3)
    * Amazon Redshift (Python 3)

  * Deployment and Management

    * AWS Elastic Beanstalk (Python 3)
    * AWS CloudFormation (Python 3)
    * AWS Data Pipeline (Python 3)
    * AWS Opsworks (Python 3)
    * AWS CloudTrail (Python 3)
    * AWS CodeDeploy (Python 3)

  * Administration & Security

    * AWS Identity and Access Management (IAM) (Python 3)
    * AWS Key Management Service (KMS) (Python 3)
    * AWS Config (Python 3)
    * AWS CloudHSM (Python 3)

  * Application Services

    * Amazon CloudSearch (Python 3)
    * Amazon CloudSearch Domain (Python 3)
    * Amazon Elastic Transcoder (Python 3)
    * Amazon Simple Workflow Service (SWF) (Python 3)
    * Amazon Simple Queue Service (SQS) (Python 3)
    * Amazon Simple Notification Server (SNS) (Python 3)
    * Amazon Simple Email Service (SES) (Python 3)
    * Amazon Cognito Identity (Python 3)
    * Amazon Cognito Sync (Python 3)
    * Amazon Machine Learning (Python 3)

  * Monitoring

    * Amazon CloudWatch (EC2 Only) (Python 3)
    * Amazon CloudWatch Logs (Python 3)

  * Networking

    * Amazon Route53 (Python 3)
    * Amazon Route 53 Domains (Python 3)
    * Amazon Virtual Private Cloud (VPC) (Python 3)
    * Elastic Load Balancing (ELB) (Python 3)
    * AWS Direct Connect (Python 3)

  * Payments and Billing

    * Amazon Flexible Payment Service (FPS)

  * Storage

    * Amazon Simple Storage Service (S3) (Python 3)
    * Amazon Glacier (Python 3)
    * Amazon Elastic Block Store (EBS)
    * Google Cloud Storage

  * Workforce

    * Amazon Mechanical Turk

  * Other

    * Marketplace Web Services (Python 3)
    * AWS Support (Python 3)

  The goal of boto is to support the full breadth and depth of Amazon
  Web Services.  In addition, boto provides support for other public
  services such as Google Storage in addition to private cloud systems
  like Eucalyptus, OpenStack and Open Nebula.

  Boto is developed mainly using Python 2.6.6 and Python 2.7.3 on Mac OSX
  and Ubuntu Maverick.  It is known to work on other Linux distributions
  and on Windows.  Most of Boto requires no additional libraries or packages
  other than those that are distributed with Python.  Efforts are made
  to keep boto compatible with Python 2.5.x but no guarantees are made.

  ************
  Installation
  ************

  Install via `pip`_:

  ::

      $ pip install boto

  Install from source:

  ::

      $ git clone git://github.com/boto/boto.git
      $ cd boto
      $ python setup.py install

  **********
  ChangeLogs
  **********

  To see what has changed over time in boto, you can check out the
  release notes at `http://docs.pythonboto.org/en/latest/#release-notes`

  ***************************
  Finding Out More About Boto
  ***************************

  The main source code repository for boto can be found on `github.com`_.
  The boto project uses the `gitflow`_ model for branching.

  `Online documentation`_ is also available. The online documentation includes
  full API documentation as well as Getting Started Guides for many of the boto
  modules.

  Boto releases can be found on the `Python Cheese Shop`_.

  Join our IRC channel `#boto` on FreeNode.
  Webchat IRC channel: http://webchat.freenode.net/?channels=boto

  Join the `boto-users Google Group`_.

  *************************
  Getting Started with Boto
  *************************

  Your credentials can be passed into the methods that create
  connections.  Alternatively, boto will check for the existence of the
  following environment variables to ascertain your credentials:

  **AWS_ACCESS_KEY_ID** - Your AWS Access Key ID

  **AWS_SECRET_ACCESS_KEY** - Your AWS Secret Access Key

  Credentials and other boto-related settings can also be stored in a
  boto config file.  See `this`_ for details.

  .. _Contributing Guidelines: https://github.com/boto/boto/blob/develop/CONTRIBUTING
  .. _Porting Guide: http://boto.readthedocs.org/en/latest/porting_guide.html
  .. _pip: http://www.pip-installer.org/
  .. _release notes: https://github.com/boto/boto/wiki
  .. _github.com: http://github.com/boto/boto
  .. _Online documentation: http://docs.pythonboto.org
  .. _Python Cheese Shop: http://pypi.python.org/pypi/boto
  .. _this: http://docs.pythonboto.org/en/latest/boto_config_tut.html
  .. _gitflow: http://nvie.com/posts/a-successful-git-branching-model/
  .. _neo: https://github.com/boto/boto/tree/neo
  .. _boto-users Google Group: https://groups.google.com/forum/?fromgroups#!forum/boto-users


pkgId: 2b78a8e32f9e04ba32dc39f1dcc47c0f99e03e286041e00f0334369e318d9602
name: rh-python36-boto3
arch: noarch
version: 1.9.223
epoch: 0
release: 1
summary: The AWS SDK for Python
url: https://github.com/boto/boto3
rpm_license: Apache License 2.0
rpm_vendor: Amazon Web Services <UNKNOWN>
rpm_group: Development/Libraries
rpm_buildhost: 676f108de21049c98a084b2ae3bc6d03
rpm_sourcerpm: rh-python36-boto3-1.9.223-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387200-rh-python36-boto3/rh-python36-boto3-1.9.223-1.noarch.rpm
checksum_type: sha256
description:
  ===============================
  Boto 3 - The AWS SDK for Python
  ===============================

  |Build Status| |Docs| |Version| |Gitter|

  Boto3 is the Amazon Web Services (AWS) Software Development Kit (SDK) for
  Python, which allows Python developers to write software that makes use
  of services like Amazon S3 and Amazon EC2. You can find the latest, most
  up to date, documentation at `Read the Docs`_, including a list of
  services that are supported. To see only those features which have been
  released, check out the `stable docs`_.


  .. _boto: https://docs.pythonboto.org/
  .. _`stable docs`: https://boto3.readthedocs.io/en/stable/
  .. _`Read the Docs`: https://boto3.readthedocs.io/en/latest/
  .. |Build Status| image:: http://img.shields.io/travis/boto/boto3/develop.svg?style=flat
      :target: https://travis-ci.org/boto/boto3
      :alt: Build Status
  .. |Gitter| image:: https://badges.gitter.im/boto/boto3.svg
     :target: https://gitter.im/boto/boto3
     :alt: Gitter
  .. |Docs| image:: https://readthedocs.org/projects/boto3/badge/?version=latest&style=flat
      :target: https://boto3.readthedocs.io/en/latest/
      :alt: Read the docs
  .. |Downloads| image:: http://img.shields.io/pypi/dm/boto3.svg?style=flat
      :target: https://pypi.python.org/pypi/boto3/
      :alt: Downloads
  .. |Version| image:: http://img.shields.io/pypi/v/boto3.svg?style=flat
      :target: https://pypi.python.org/pypi/boto3/
      :alt: Version
  .. |License| image:: http://img.shields.io/pypi/l/boto3.svg?style=flat
      :target: https://github.com/boto/boto3/blob/develop/LICENSE
      :alt: License

  Quick Start
  -----------
  First, install the library and set a default region:

  .. code-block:: sh

      $ pip install boto3

  Next, set up credentials (in e.g. ``~/.aws/credentials``):

  .. code-block:: ini

      [default]
      aws_access_key_id = YOUR_KEY
      aws_secret_access_key = YOUR_SECRET

  Then, set up a default region (in e.g. ``~/.aws/config``):

  .. code-block:: ini

      [default]
      region=us-east-1

  Then, from a Python interpreter:

  .. code-block:: python

      >>> import boto3
      >>> s3 = boto3.resource('s3')
      >>> for bucket in s3.buckets.all():
              print(bucket.name)

  Development
  -----------

  Getting Started
  ~~~~~~~~~~~~~~~
  Assuming that you have Python and ``virtualenv`` installed, set up your
  environment and install the required dependencies like this instead of
  the ``pip install boto3`` defined above:

  .. code-block:: sh

      $ git clone https://github.com/boto/boto3.git
      $ cd boto3
      $ virtualenv venv
      ...
      $ . venv/bin/activate
      $ pip install -r requirements.txt
      $ pip install -e .

  Running Tests
  ~~~~~~~~~~~~~
  You can run tests in all supported Python versions using ``tox``. By default,
  it will run all of the unit and functional tests, but you can also specify your own
  ``nosetests`` options. Note that this requires that you have all supported
  versions of Python installed, otherwise you must pass ``-e`` or run the
  ``nosetests`` command directly:

  .. code-block:: sh

      $ tox
      $ tox -- unit/test_session.py
      $ tox -e py26,py33 -- integration/

  You can also run individual tests with your default Python version:

  .. code-block:: sh

      $ nosetests tests/unit

  Generating Documentation
  ~~~~~~~~~~~~~~~~~~~~~~~~
  Sphinx is used for documentation. You can generate HTML locally with the
  following:

  .. code-block:: sh

      $ pip install -r requirements-docs.txt
      $ cd docs
      $ make html


  Getting Help
  ------------

  We use GitHub issues for tracking bugs and feature requests and have limited
  bandwidth to address them. Please use these community resources for getting
  help:

  * Ask a question on `Stack Overflow <https://stackoverflow.com/>`__ and tag it with `boto3 <https://stackoverflow.com/questions/tagged/boto3>`__
  * Come join the AWS Python community chat on `gitter <https://gitter.im/boto/boto3>`__
  * Open a support ticket with `AWS Support <https://console.aws.amazon.com/support/home#/>`__
  * If it turns out that you may have found a bug, please `open an issue <https://github.com/boto/boto3/issues/new>`__


pkgId: ddaa28daf121bb0482c76f4778dacaaa24b22ef8789dd314479ae80bb8c112d5
name: rh-python36-botocore
arch: noarch
version: 1.12.253
epoch: 0
release: 1
summary: Low-level, data-driven core of boto 3.
url: https://github.com/boto/botocore
rpm_license: Apache License 2.0
rpm_vendor: Amazon Web Services <UNKNOWN>
rpm_group: Development/Libraries
rpm_buildhost: aa79f324f1004887b14b5cdcdc4c6f5a
rpm_sourcerpm: rh-python36-botocore-1.12.253-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387184-rh-python36-botocore/rh-python36-botocore-1.12.253-1.noarch.rpm
checksum_type: sha256
description:
  botocore
  ========

  .. image:: https://secure.travis-ci.org/boto/botocore.png?branch=develop
     :target: http://travis-ci.org/boto/botocore

  .. image:: https://codecov.io/github/boto/botocore/coverage.svg?branch=develop
      :target: https://codecov.io/github/boto/botocore?branch=develop


  A low-level interface to a growing number of Amazon Web Services. The
  botocore package is the foundation for the
  `AWS CLI <https://github.com/aws/aws-cli>`__ as well as
  `boto3 <https://github.com/boto/boto3>`__.


  Documentation
  -------------
  Documentation for ``botocore`` can be found on `Read the Docs <https://botocore.readthedocs.io/en/latest/>`__.


  Getting Help
  ------------

  We use GitHub issues for tracking bugs and feature requests and have limited
  bandwidth to address them. Please use these community resources for getting
  help. Please note many of the same resources available for ``boto3`` are
  applicable for ``botocore``:

  * Ask a question on `Stack Overflow <https://stackoverflow.com/>`__ and tag it with `boto3 <https://stackoverflow.com/questions/tagged/boto3>`__
  * Come join the AWS Python community chat on `gitter <https://gitter.im/boto/boto3>`__
  * Open a support ticket with `AWS Support <https://console.aws.amazon.com/support/home#/>`__
  * If it turns out that you may have found a bug, please `open an issue <https://github.com/boto/botocore/issues/new>`__


pkgId: 4dfc4f896fa370e4a9ea0c12bd7ee5b13257a06f06f5a7d2e3bb0752201eb9b4
name: rh-python36-cachetools
arch: noarch
version: 4.0.0
epoch: 0
release: 1
summary: Extensible memoizing collections and decorators
url: https://github.com/tkem/cachetools
rpm_license: MIT
rpm_vendor: Thomas Kemmer <tkemmer@computer.org>
rpm_group: Development/Libraries
rpm_buildhost: eb8175c72e21402da49eea2cc7f3f6e2
rpm_sourcerpm: rh-python36-cachetools-4.0.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387279-rh-python36-cachetools/rh-python36-cachetools-4.0.0-1.noarch.rpm
checksum_type: sha256
description:
  cachetools
  ========================================================================

  This module provides various memoizing collections and decorators,
  including variants of the Python 3 Standard Library `@lru_cache`_
  function decorator.

  .. code-block:: python

     from cachetools import cached, LRUCache, TTLCache

     
     @cached(cache={})
     def fib(n):
         return n if n < 2 else fib(n - 1) + fib(n - 2)

     
     @cached(cache=LRUCache(maxsize=32))
     def get_pep(num):
         url = 'http://www.python.org/dev/peps/pep-%04d/' % num
         with urllib.request.urlopen(url) as s:
             return s.read()

     
     @cached(cache=TTLCache(maxsize=1024, ttl=600))
     def get_weather(place):
         return owm.weather_at_place(place).get_weather()

  For the purpose of this module, a *cache* is a mutable_ mapping_ of a
  fixed maximum size.  When the cache is full, i.e. by adding another
  item the cache would exceed its maximum size, the cache must choose
  which item(s) to discard based on a suitable `cache algorithm`_.  In
  general, a cache's size is the total size of its items, and an item's
  size is a property or function of its value, e.g. the result of
  ``sys.getsizeof(value)``.  For the trivial but common case that each
  item counts as ``1``, a cache's size is equal to the number of its
  items, or ``len(cache)``.

  Multiple cache classes based on different caching algorithms are
  implemented, and decorators for easily memoizing function and method
  calls are provided, too.

  For more information, please refer to the online documentation_.


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

  Install cachetools using pip::

      pip install cachetools


  Project Resources
  ------------------------------------------------------------------------

  .. image:: http://img.shields.io/pypi/v/cachetools.svg?style=flat
     :target: https://pypi.python.org/pypi/cachetools/
     :alt: Latest PyPI version

  .. image:: http://img.shields.io/travis/tkem/cachetools/master.svg?style=flat
     :target: https://travis-ci.org/tkem/cachetools/
     :alt: Travis CI build status

  .. image:: http://img.shields.io/coveralls/tkem/cachetools/master.svg?style=flat
     :target: https://coveralls.io/r/tkem/cachetools
     :alt: Test coverage

  .. image:: https://readthedocs.org/projects/cachetools/badge/?version=latest&style=flat
     :target: http://cachetools.readthedocs.io/en/latest/
     :alt: Documentation Status

  - `Issue Tracker`_
  - `Source Code`_
  - `Change Log`_


  License
  ------------------------------------------------------------------------

  Copyright (c) 2014-2018 Thomas Kemmer.

  Licensed under the `MIT License`_.


  .. _@lru_cache: http://docs.python.org/3/library/functools.html#functools.lru_cache
  .. _mutable: http://docs.python.org/dev/glossary.html#term-mutable
  .. _mapping: http://docs.python.org/dev/glossary.html#term-mapping
  .. _cache algorithm: http://en.wikipedia.org/wiki/Cache_algorithms

  .. _Documentation: http://cachetools.readthedocs.io/en/latest/
  .. _Issue Tracker: https://github.com/tkem/cachetools/issues/
  .. _Source Code: https://github.com/tkem/cachetools/
  .. _Change Log: https://github.com/tkem/cachetools/blob/master/CHANGES.rst
  .. _MIT License: http://raw.github.com/tkem/cachetools/master/LICENSE


pkgId: 8bf3b69907979f197f05a4abbec2758ca5c56db6c08891da9dfddd90b11b7c4d
name: rh-python36-celery
arch: noarch
version: 4.3.0
epoch: 0
release: 1
summary: Distributed Task Queue.
url: http://celeryproject.org
rpm_license: BSD
rpm_vendor: Ask Solem <ask@celeryproject.org>
rpm_group: Development/Libraries
rpm_buildhost: 2bc46466bcf74067bfa025c8a5289b24
rpm_sourcerpm: rh-python36-celery-4.3.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387121-rh-python36-celery/rh-python36-celery-4.3.0-1.noarch.rpm
checksum_type: sha256
description:
  .. image:: http://docs.celeryproject.org/en/latest/_images/celery-banner-small.png

  |build-status| |coverage| |license| |wheel| |pyversion| |pyimp| |ocbackerbadge| |ocsponsorbadge|

  :Version: 4.2.1 (latentcall)
  :Web: http://celeryproject.org/
  :Download: https://pypi.org/project/celery/
  :Source: https://github.com/celery/celery/
  :Keywords: task, queue, job, async, rabbitmq, amqp, redis,
    python, distributed, actors

  --

  What's a Task Queue?
  ====================

  Task queues are used as a mechanism to distribute work across threads or
  machines.

  A task queue's input is a unit of work, called a task, dedicated worker
  processes then constantly monitor the queue for new work to perform.

  Celery communicates via messages, usually using a broker
  to mediate between clients and workers. To initiate a task a client puts a
  message on the queue, the broker then delivers the message to a worker.

  A Celery system can consist of multiple workers and brokers, giving way
  to high availability and horizontal scaling.

  Celery is written in Python, but the protocol can be implemented in any
  language. In addition to Python there's node-celery_ for Node.js,
  and a `PHP client`_.

  Language interoperability can also be achieved by using webhooks
  in such a way that the client enqueues an URL to be requested by a worker.

  .. _node-celery: https://github.com/mher/node-celery
  .. _`PHP client`: https://github.com/gjedeer/celery-php

  What do I need?
  ===============

  Celery version 4.2 runs on,

  - Python (2.7, 3.4, 3.5, 3.6)
  - PyPy (5.8)


  This is the last version to support Python 2.7,
  and from the next version (Celery 5.x) Python 3.5 or newer is required.

  If you're running an older version of Python, you need to be running
  an older version of Celery:

  - Python 2.6: Celery series 3.1 or earlier.
  - Python 2.5: Celery series 3.0 or earlier.
  - Python 2.4 was Celery series 2.2 or earlier.

  Celery is a project with minimal funding,
  so we don't support Microsoft Windows.
  Please don't open any issues related to that platform.

  *Celery* is usually used with a message broker to send and receive messages.
  The RabbitMQ, Redis transports are feature complete,
  but there's also experimental support for a myriad of other solutions, including
  using SQLite for local development.

  *Celery* can run on a single machine, on multiple machines, or even
  across datacenters.

  Get Started
  ===========

  If this is the first time you're trying to use Celery, or you're
  new to Celery 4.2 coming from previous versions then you should read our
  getting started tutorials:

  - `First steps with Celery`_

      Tutorial teaching you the bare minimum needed to get started with Celery.

  - `Next steps`_

      A more complete overview, showing more features.

  .. _`First steps with Celery`:
      http://docs.celeryproject.org/en/latest/getting-started/first-steps-with-celery.html

  .. _`Next steps`:
      http://docs.celeryproject.org/en/latest/getting-started/next-steps.html

  Celery is...
  =============

  - **Simple**

      Celery is easy to use and maintain, and does *not need configuration files*.

      It has an active, friendly community you can talk to for support,
      like at our `mailing-list`_, or the IRC channel.

      Here's one of the simplest applications you can make::

          from celery import Celery

          app = Celery('hello', broker='amqp://guest@localhost//')

          @app.task
          def hello():
              return 'hello world'

  - **Highly Available**

      Workers and clients will automatically retry in the event
      of connection loss or failure, and some brokers support
      HA in way of *Primary/Primary* or *Primary/Replica* replication.

  - **Fast**

      A single Celery process can process millions of tasks a minute,
      with sub-millisecond round-trip latency (using RabbitMQ,
      py-librabbitmq, and optimized settings).

  - **Flexible**

      Almost every part of *Celery* can be extended or used on its own,
      Custom pool implementations, serializers, compression schemes, logging,
      schedulers, consumers, producers, broker transports, and much more.

  It supports...
  ================

      - **Message Transports**

          - RabbitMQ_, Redis_, Amazon SQS

      - **Concurrency**

          - Prefork, Eventlet_, gevent_, single threaded (``solo``)

      - **Result Stores**

          - AMQP, Redis
          - memcached
          - SQLAlchemy, Django ORM
          - Apache Cassandra, IronCache, Elasticsearch

      - **Serialization**

          - *pickle*, *json*, *yaml*, *msgpack*.
          - *zlib*, *bzip2* compression.
          - Cryptographic message signing.

  .. _`Eventlet`: http://eventlet.net/
  .. _`gevent`: http://gevent.org/

  .. _RabbitMQ: https://rabbitmq.com
  .. _Redis: https://redis.io
  .. _SQLAlchemy: http://sqlalchemy.org

  Framework Integration
  =====================

  Celery is easy to integrate with web frameworks, some of which even have
  integration packages:

      +--------------------+------------------------+
      | `Django`_          | not needed             |
      +--------------------+------------------------+
      | `Pyramid`_         | `pyramid_celery`_      |
      +--------------------+------------------------+
      | `Pylons`_          | `celery-pylons`_       |
      +--------------------+------------------------+
      | `Flask`_           | not needed             |
      +--------------------+------------------------+
      | `web2py`_          | `web2py-celery`_       |
      +--------------------+------------------------+
      | `Tornado`_         | `tornado-celery`_      |
      +--------------------+------------------------+

  The integration packages aren't strictly necessary, but they can make
  development easier, and sometimes they add important hooks like closing
  database connections at ``fork``.

  .. _`Django`: https://djangoproject.com/
  .. _`Pylons`: http://pylonsproject.org/
  .. _`Flask`: http://flask.pocoo.org/
  .. _`web2py`: http://web2py.com/
  .. _`Bottle`: https://bottlepy.org/
  .. _`Pyramid`: http://docs.pylonsproject.org/en/latest/docs/pyramid.html
  .. _`pyramid_celery`: https://pypi.org/project/pyramid_celery/
  .. _`celery-pylons`: https://pypi.org/project/celery-pylons/
  .. _`web2py-celery`: https://code.google.com/p/web2py-celery/
  .. _`Tornado`: http://www.tornadoweb.org/
  .. _`tornado-celery`: https://github.com/mher/tornado-celery/

  .. _celery-documentation:

  Documentation
  =============

  The `latest documentation`_ is hosted at Read The Docs, containing user guides,
  tutorials, and an API reference.

  .. _`latest documentation`: http://docs.celeryproject.org/en/latest/

  .. _celery-installation:

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

  You can install Celery either via the Python Package Index (PyPI)
  or from source.

  To install using ``pip``:

  ::


      $ pip install -U Celery

  .. _bundles:

  Bundles
  -------

  Celery also defines a group of bundles that can be used
  to install Celery and the dependencies for a given feature.

  You can specify these in your requirements or on the ``pip``
  command-line by using brackets. Multiple bundles can be specified by
  separating them by commas.

  ::


      $ pip install "celery[librabbitmq]"

      $ pip install "celery[librabbitmq,redis,auth,msgpack]"

  The following bundles are available:

  Serializers
  ~~~~~~~~~~~

  :``celery[auth]``:
      for using the ``auth`` security serializer.

  :``celery[msgpack]``:
      for using the msgpack serializer.

  :``celery[yaml]``:
      for using the yaml serializer.

  Concurrency
  ~~~~~~~~~~~

  :``celery[eventlet]``:
      for using the ``eventlet`` pool.

  :``celery[gevent]``:
      for using the ``gevent`` pool.

  Transports and Backends
  ~~~~~~~~~~~~~~~~~~~~~~~

  :``celery[librabbitmq]``:
      for using the librabbitmq C library.

  :``celery[redis]``:
      for using Redis as a message transport or as a result backend.

  :``celery[sqs]``:
      for using Amazon SQS as a message transport.

  :``celery[tblib``]:
      for using the ``task_remote_tracebacks`` feature.

  :``celery[memcache]``:
      for using Memcached as a result backend (using ``pylibmc``)

  :``celery[pymemcache]``:
      for using Memcached as a result backend (pure-Python implementation).

  :``celery[cassandra]``:
      for using Apache Cassandra as a result backend with DataStax driver.

  :``celery[couchbase]``:
      for using Couchbase as a result backend.

  :``celery[elasticsearch]``:
      for using Elasticsearch as a result backend.

  :``celery[riak]``:
      for using Riak as a result backend.

  :``celery[zookeeper]``:
      for using Zookeeper as a message transport.

  :``celery[sqlalchemy]``:
      for using SQLAlchemy as a result backend (*supported*).

  :``celery[pyro]``:
      for using the Pyro4 message transport (*experimental*).

  :``celery[slmq]``:
      for using the SoftLayer Message Queue transport (*experimental*).

  :``celery[consul]``:
      for using the Consul.io Key/Value store as a message transport or result backend (*experimental*).

  :``celery[django]``:
      specifies the lowest version possible for Django support.

      You should probably not use this in your requirements, it's here
      for informational purposes only.


  .. _celery-installing-from-source:

  Downloading and installing from source
  --------------------------------------

  Download the latest version of Celery from PyPI:

  https://pypi.org/project/celery/

  You can install it by doing the following,:

  ::


      $ tar xvfz celery-0.0.0.tar.gz
      $ cd celery-0.0.0
      $ python setup.py build
      

  The last command must be executed as a privileged user if
  you aren't currently using a virtualenv.

  .. _celery-installing-from-git:

  Using the development version
  -----------------------------

  With pip
  ~~~~~~~~

  The Celery development version also requires the development
  versions of ``kombu``, ``amqp``, ``billiard``, and ``vine``.

  You can install the latest snapshot of these using the following
  pip commands:

  ::


      $ pip install https://github.com/celery/celery/zipball/master#egg=celery
      $ pip install https://github.com/celery/billiard/zipball/master#egg=billiard
      $ pip install https://github.com/celery/py-amqp/zipball/master#egg=amqp
      $ pip install https://github.com/celery/kombu/zipball/master#egg=kombu
      $ pip install https://github.com/celery/vine/zipball/master#egg=vine

  With git
  ~~~~~~~~

  Please see the Contributing section.

  .. _getting-help:

  Getting Help
  ============

  .. _mailing-list:

  Mailing list
  ------------

  For discussions about the usage, development, and future of Celery,
  please join the `celery-users`_ mailing list.

  .. _`celery-users`: https://groups.google.com/group/celery-users/

  .. _irc-channel:

  IRC
  ---

  Come chat with us on IRC. The **#celery** channel is located at the `Freenode`_
  network.

  .. _`Freenode`: https://freenode.net

  .. _bug-tracker:

  Bug tracker
  ===========

  If you have any suggestions, bug reports, or annoyances please report them
  to our issue tracker at https://github.com/celery/celery/issues/

  .. _wiki:

  Wiki
  ====

  https://wiki.github.com/celery/celery/

  Credits
  =======

  .. _contributing-short:

  Contributors
  ------------

  This project exists thanks to all the people who contribute. Development of
  `celery` happens at GitHub: https://github.com/celery/celery

  You're highly encouraged to participate in the development
  of `celery`. If you don't like GitHub (for some reason) you're welcome
  to send regular patches.

  Be sure to also read the `Contributing to Celery`_ section in the
  documentation.

  .. _`Contributing to Celery`:
      http://docs.celeryproject.org/en/master/contributing.html

  |oc-contributors|

  .. |oc-contributors| image:: https://opencollective.com/celery/contributors.svg?width=890&button=false
      :target: https://github.com/celery/celery/graphs/contributors

  Backers
  -------

  Thank you to all our backers! 🙏 [`Become a backer`_]

  .. _`Become a backer`: https://opencollective.com/celery#backer

  |oc-backers|

  .. |oc-backers| image:: https://opencollective.com/celery/backers.svg?width=890
      :target: https://opencollective.com/celery#backers

  Sponsors
  --------

  Support this project by becoming a sponsor. Your logo will show up here with a
  link to your website. [`Become a sponsor`_]

  .. _`Become a sponsor`: https://opencollective.com/celery#sponsor

  |oc-sponsors|

  .. |oc-sponsors| image:: https://opencollective.com/celery/sponsor/0/avatar.svg
      :target: https://opencollective.com/celery/sponsor/0/website

  .. _license:

  License
  =======

  This software is licensed under the `New BSD License`. See the ``LICENSE``
  file in the top distribution directory for the full license text.

  .. # vim: syntax=rst expandtab tabstop=4 shiftwidth=4 shiftround

  .. |build-status| image:: https://secure.travis-ci.org/celery/celery.png?branch=master
      :alt: Build status
      :target: https://travis-ci.org/celery/celery

  .. |coverage| image:: https://codecov.io/github/celery/celery/coverage.svg?branch=master
      :target: https://codecov.io/github/celery/celery?branch=master

  .. |license| image:: https://img.shields.io/pypi/l/celery.svg
      :alt: BSD License
      :target: https://opensource.org/licenses/BSD-3-Clause

  .. |wheel| image:: https://img.shields.io/pypi/wheel/celery.svg
      :alt: Celery can be installed via wheel
      :target: https://pypi.org/project/celery/

  .. |pyversion| image:: https://img.shields.io/pypi/pyversions/celery.svg
      :alt: Supported Python versions.
      :target: https://pypi.org/project/celery/

  .. |pyimp| image:: https://img.shields.io/pypi/implementation/celery.svg
      :alt: Support Python implementations.
      :target: https://pypi.org/project/celery/

  .. |ocbackerbadge| image:: https://opencollective.com/celery/backers/badge.svg
      :alt: Backers on Open Collective
      :target: #backers

  .. |ocsponsorbadge| image:: https://opencollective.com/celery/sponsors/badge.svg
      :alt: Sponsors on Open Collective
      :target: #sponsors


pkgId: 744d42cac37c3e4dcbf56d9cfbde9eae77a15da04de14b595b3ccd9b0baa5cf5
name: rh-python36-certifi
arch: noarch
version: 2019.11.28
epoch: 0
release: 1
summary: Python package for providing Mozilla's CA Bundle.
url: http://certifi.io/
rpm_license: MPL-2.0
rpm_vendor: Kenneth Reitz <me@kennethreitz.com>
rpm_group: Development/Libraries
rpm_buildhost: 04371696129240d9bba31dfc4d6d5331
rpm_sourcerpm: rh-python36-certifi-2019.11.28-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387176-rh-python36-certifi/rh-python36-certifi-2019.11.28-1.noarch.rpm
checksum_type: sha256
description:
  Certifi: Python SSL Certificates
  ================================

  `Certifi`_ is a carefully curated collection of Root Certificates for
  validating the trustworthiness of SSL certificates while verifying the identity
  of TLS hosts. It has been extracted from the `Requests`_ project.

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

  ``certifi`` is available on PyPI. Simply install it with ``pip``::

      $ pip install certifi

  Usage
  -----

  To reference the installed certificate authority (CA) bundle, you can use the
  built-in function::

      >>> import certifi

      >>> certifi.where()
      '/usr/local/lib/python2.7/site-packages/certifi/cacert.pem'

  Enjoy!

  1024-bit Root Certificates
  ~~~~~~~~~~~~~~~~~~~~~~~~~~

  Browsers and certificate authorities have concluded that 1024-bit keys are
  unacceptably weak for certificates, particularly root certificates. For this
  reason, Mozilla has removed any weak (i.e. 1024-bit key) certificate from its
  bundle, replacing it with an equivalent strong (i.e. 2048-bit or greater key)
  certificate from the same CA. Because Mozilla removed these certificates from
  its bundle, ``certifi`` removed them as well.

  In previous versions, ``certifi`` provided the ``certifi.old_where()`` function
  to intentionally re-add the 1024-bit roots back into your bundle. This was not
  recommended in production and therefore was removed. To assist in migrating old
  code, the function ``certifi.old_where()`` continues to exist as an alias of
  ``certifi.where()``. Please update your code to use ``certifi.where()``
  instead. ``certifi.old_where()`` will be removed in 2018.

  .. _`Certifi`: http://certifi.io/en/latest/
  .. _`Requests`: http://docs.python-requests.org/en/latest/


pkgId: f58a16f2ad210a478e71dda79edd3e5392ae054de935a59c795ac895e75449cd
name: rh-python36-cffi
arch: src
version: 1.14.0
epoch: 0
release: 1
summary: Foreign Function Interface for Python calling C code.
url: http://cffi.readthedocs.org
rpm_license: MIT
rpm_vendor: Armin Rigo, Maciej Fijalkowski <python-cffi@googlegroups.com>
rpm_group: Development/Libraries
rpm_buildhost: 50d2031543b744979ba08c496d19e2bc
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387079-rh-python36-cffi/rh-python36-cffi-1.14.0-1.src.rpm
checksum_type: sha256
description:
  CFFI
  ====

  Foreign Function Interface for Python calling C code.
  Please see the `Documentation <http://cffi.readthedocs.org/>`_.

  Contact
  -------

  `Mailing list <https://groups.google.com/forum/#!forum/python-cffi>`_


pkgId: cea448026afa2f84c43bed79003dd635e9854acb422f0ca96ae6b3792486de2c
name: rh-python36-cffi-debuginfo
arch: x86_64
version: 1.14.0
epoch: 0
release: 1
summary: Debug information for package rh-python36-cffi
url: http://cffi.readthedocs.org
rpm_license: MIT
rpm_vendor: Armin Rigo, Maciej Fijalkowski <python-cffi@googlegroups.com>
rpm_group: Development/Debug
rpm_buildhost: 706141494aa04bb7b2a0e96279d9b6b4
rpm_sourcerpm: rh-python36-cffi-1.14.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387079-rh-python36-cffi/rh-python36-cffi-debuginfo-1.14.0-1.x86_64.rpm
checksum_type: sha256
description:
  This package provides debug information for package rh-python36-cffi.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: 117954f1aabebe27ed852e8eb2781b023c40b647eb4612e33be153bf9a09d67b
name: rh-python36-channels_redis
arch: noarch
version: 2.4.2
epoch: 0
release: 1
summary: Redis-backed ASGI channel layer implementation
url: http://github.com/django/channels_redis/
rpm_license: BSD
rpm_vendor: Django Software Foundation <foundation@djangoproject.com>
rpm_group: Development/Libraries
rpm_buildhost: 3a34a7dea26f4edfb093a961f0cb8435
rpm_sourcerpm: rh-python36-channels_redis-2.4.2-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387015-rh-python36-channels_redis/rh-python36-channels_redis-2.4.2-1.noarch.rpm
checksum_type: sha256
description:
  channels_redis
  ==============

  .. image:: https://api.travis-ci.org/django/channels_redis.svg
      :target: https://travis-ci.org/django/channels_redis

  .. image:: https://img.shields.io/pypi/v/channels_redis.svg
      :target: https://pypi.python.org/pypi/channels_redis

  A Django Channels channel layer that uses Redis as its backing store, and supports
  both a single-server and sharded configurations, as well as group support. Requires
  Python 3.6 or higher to function correctly (3.5 will look like it works, but have
  random errors).

  **Note:** Prior versions of this package were called ``asgi_redis`` and are
  still available under PyPI as that name if you need them for Channels 1.x projects.
  This package is for Channels 2 projects only.


  Usage
  -----

  Set up the channel layer in your Django settings file like so::

      CHANNEL_LAYERS = {
          "default": {
              "BACKEND": "channels_redis.core.RedisChannelLayer",
              "CONFIG": {
                  "hosts": [("localhost", 6379)],
              },
          },
      }

  Possible options for ``CONFIG`` are listed below.

  ``hosts``
  ~~~~~~~~~

  The server(s) to connect to, as either URIs, ``(host, port)`` tuples, or dicts conforming to `create_connection <https://aioredis.readthedocs.io/en/v1.1.0/api_reference.html#aioredis.create_connection>`_.
  Defaults to ``['localhost', 6379]``. Pass multiple hosts to enable sharding,
  but note that changing the host list will lose some sharded data.

  If your server is listening on a UNIX domain socket, you can also use that to connect: ``["unix:///path/to/redis.sock"]``.
  This should be slightly faster than a loopback TCP connection.

  ``prefix``
  ~~~~~~~~~~

  Prefix to add to all Redis keys. Defaults to ``asgi:``. If you're running
  two or more entirely separate channel layers through the same Redis instance,
  make sure they have different prefixes. All servers talking to the same layer
  should have the same prefix, though.

  ``expiry``
  ~~~~~~~~~~

  Message expiry in seconds. Defaults to ``60``. You generally shouldn't need
  to change this, but you may want to turn it down if you have peaky traffic you
  wish to drop, or up if you have peaky traffic you want to backlog until you
  get to it.

  ``group_expiry``
  ~~~~~~~~~~~~~~~~

  Group expiry in seconds. Defaults to ``86400``. Channels will be removed
  from the group after this amount of time; it's recommended you reduce it
  for a healthier system that encourages disconnections. This value should
  not be lower than the relevant timeouts in the interface server (e.g.
  the ``--websocket_timeout`` to `daphne
  <https://github.com/django/daphne>`_).

  ``capacity``
  ~~~~~~~~~~~~

  Default channel capacity. Defaults to ``100``. Once a channel is at capacity,
  it will refuse more messages. How this affects different parts of the system
  varies; a HTTP server will refuse connections, for example, while Django
  sending a response will just wait until there's space.

  ``channel_capacity``
  ~~~~~~~~~~~~~~~~~~~~

  Per-channel capacity configuration. This lets you tweak the channel capacity
  based on the channel name, and supports both globbing and regular expressions.

  It should be a dict mapping channel name pattern to desired capacity; if the
  dict key is a string, it's intepreted as a glob, while if it's a compiled
  ``re`` object, it's treated as a regular expression.

  This example sets ``http.request`` to 200, all ``http.response!`` channels
  to 10, and all ``websocket.send!`` channels to 20:

  .. code-block:: python

      CHANNEL_LAYERS = {
          "default": {
              "BACKEND": "channels_redis.core.RedisChannelLayer",
              "CONFIG": {
                  "hosts": [("localhost", 6379)],
                  "channel_capacity": {
                      "http.request": 200,
                      "http.response!*": 10,
                      re.compile(r"^websocket.send\!.+"): 20,
                  },
              },
          },
      }

  If you want to enforce a matching order, use an ``OrderedDict`` as the
  argument; channels will then be matched in the order the dict provides them.

  ``symmetric_encryption_keys``
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Pass this to enable the optional symmetric encryption mode of the backend. To
  use it, make sure you have the ``cryptography`` package installed, or specify
  the ``cryptography`` extra when you install ``channels_redis``::

      pip install channels_redis[cryptography]

  ``symmetric_encryption_keys`` should be a list of strings, with each string
  being an encryption key. The first key is always used for encryption; all are
  considered for decryption, so you can rotate keys without downtime - just add
  a new key at the start and move the old one down, then remove the old one
  after the message expiry time has passed.

  Data is encrypted both on the wire and at rest in Redis, though we advise
  you also route your Redis connections over TLS for higher security; the Redis
  protocol is still unencrypted, and the channel and group key names could
  potentially contain metadata patterns of use to attackers.

  Keys **should have at least 32 bytes of entropy** - they are passed through
  the SHA256 hash function before being used as an encryption key. Any string
  will work, but the shorter the string, the easier the encryption is to break.

  If you're using Django, you may also wish to set this to your site's
  ``SECRET_KEY`` setting via the ``CHANNEL_LAYERS`` setting:

  .. code-block:: python

      CHANNEL_LAYERS = {
          "default": {
              "BACKEND": "channels_redis.core.RedisChannelLayer",
              "CONFIG": {
                  "hosts": ["redis://:password@127.0.0.1:6379/0"],
                  "symmetric_encryption_keys": [SECRET_KEY],
              },
          },
      }


  Dependencies
  ------------

  Redis >= 2.6 is required for `channels_redis`. It supports Python 3.5.2 and up
  (3.5.0 or 3.5.1 will not work due to our dependency, ``aioredis``).

  Contributing
  ------------

  Please refer to the
  `main Channels contributing docs <https://github.com/django/channels/blob/master/CONTRIBUTING.rst>`_.
  That also contains advice on how to set up the development environment and run the tests.

  Maintenance and Security
  ------------------------

  To report security issues, please contact security@djangoproject.com. For GPG
  signatures and more security process information, see
  https://docs.djangoproject.com/en/dev/internals/security/.

  To report bugs or request new features, please open a new GitHub issue.

  This repository is part of the Channels project. For the shepherd and maintenance team, please see the
  `main Channels readme <https://github.com/django/channels/blob/master/README.rst>`_.


pkgId: f72abb9471db09f738c3dd29c6a889556db257a41b3bbda9320c9b01360fc208
name: rh-python36-cliff
arch: noarch
version: 2.14.1
epoch: 0
release: 1
summary: Command Line Interface Formulation Framework
url: https://docs.openstack.org/cliff/latest/
rpm_license: UNKNOWN
rpm_vendor: OpenStack <openstack-dev@lists.openstack.org>
rpm_group: Development/Libraries
rpm_buildhost: afa21b5dff5645c5994f3931d6d42964
rpm_sourcerpm: rh-python36-cliff-2.14.1-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387038-rh-python36-cliff/rh-python36-cliff-2.14.1-1.noarch.rpm
checksum_type: sha256
description:
  ========================
  Team and repository tags
  ========================

  .. image:: https://governance.openstack.org/tc/badges/cliff.svg
      :target: https://governance.openstack.org/tc/reference/tags/index.html

  .. Change things from this point on

  =======================================================
   cliff -- Command Line Interface Formulation Framework
  =======================================================

  cliff is a framework for building command line programs. It uses
  `setuptools entry points`_ to provide subcommands, output formatters, and
  other extensions.

  .. _setuptools entry points: http://setuptools.readthedocs.io/en/latest/pkg_resources.html#convenience-api

  * Free software: Apache license
  * Documentation: https://docs.openstack.org/cliff/latest/
  * Source: https://git.openstack.org/cgit/openstack/cliff
  * Bugs: https://bugs.launchpad.net/python-cliff


pkgId: 7a40c5a344e74afc35bfbe7bf4e7ccba542b3d913c35429d3c74059829cc8415
name: rh-python36-cmd2
arch: noarch
version: 0.9.12
epoch: 0
release: 1
summary: cmd2 - quickly build feature-rich and user-friendly interactive command line applications in Python
url: https://github.com/python-cmd2/cmd2
rpm_license: MIT
rpm_vendor: Catherine Devlin <catherine.devlin@gmail.com>
rpm_group: Development/Libraries
rpm_buildhost: 10cb353d416040eca55300a6337d483a
rpm_sourcerpm: rh-python36-cmd2-0.9.12-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387048-rh-python36-cmd2/rh-python36-cmd2-0.9.12-1.noarch.rpm
checksum_type: sha256
description:
  cmd2: a tool for building interactive command line apps
  =======================================================
  [![Latest Version](https://img.shields.io/pypi/v/cmd2.svg?style=flat-square&label=latest%20stable%20version)](https://pypi.python.org/pypi/cmd2/)
  [![Build status](https://img.shields.io/travis/python-cmd2/cmd2.svg?style=flat-square&label=unix%20build)](https://travis-ci.org/python-cmd2/cmd2)
  [![Appveyor build status](https://img.shields.io/appveyor/ci/FedericoCeratto/cmd2.svg?style=flat-square&label=windows%20build)](https://ci.appveyor.com/project/FedericoCeratto/cmd2)
  [![Azure Build status](https://python-cmd2.visualstudio.com/cmd2/_apis/build/status/python-cmd2.cmd2?branch=master)](https://python-cmd2.visualstudio.com/cmd2/_build/latest?definitionId=1&branch=master)
  [![codecov](https://codecov.io/gh/python-cmd2/cmd2/branch/master/graph/badge.svg)](https://codecov.io/gh/python-cmd2/cmd2)
  [![Documentation Status](https://readthedocs.org/projects/cmd2/badge/?version=latest)](http://cmd2.readthedocs.io/en/latest/?badge=latest)

  cmd2 is a tool for building interactive command line applications in Python. Its goal is to make it
  quick and easy for developers to build feature-rich and user-friendly interactive command line
  applications.  It provides a simple API which is an extension of Python's built-in
  [cmd](https://docs.python.org/3/library/cmd.html) module.  cmd2 provides a wealth of features on top
  of cmd to make your life easier and eliminates much of the boilerplate code which would be necessary
  when using cmd.

  Click on image below to watch a short video demonstrating the capabilities of cmd2:
  [![Screenshot](cmd2.png)](https://youtu.be/DDU_JH6cFsA)

  Main Features
  -------------
  - Searchable command history (`history` command and `<Ctrl>+r`) - optionally persistent
  - Text file scripting of your application with `load` (`@`) and `_relative_load` (`@@`)
  - Python scripting of your application with ``pyscript``
  - Run shell commands with ``!``
  - Pipe command output to shell commands with `|`
  - Redirect command output to file with `>`, `>>`
  - Bare `>`, `>>` with no filename send output to paste buffer (clipboard)
  - `py` enters interactive Python console (opt-in `ipy` for IPython console)
  - Option to display long output using a pager with ``cmd2.Cmd.ppaged()``
  - Multi-line commands
  - Special-character command shortcuts (beyond cmd's `?` and `!`)
  - Command aliasing similar to bash `alias` command
  - Macros, which are similar to aliases, but they can contain argument placeholders
  - Ability to load commands at startup from an initialization script
  - Settable environment parameters
  - Parsing commands with arguments using `argparse`, including support for sub-commands
  - Unicode character support
  - Good tab-completion of commands, sub-commands, file system paths, and shell commands
  - Automatic tab-completion of `argparse` flags when using one of the `cmd2` `argparse` decorators
  - Support for Python 3.4+ on Windows, macOS, and Linux
  - Trivial to provide built-in help for all commands
  - Built-in regression testing framework for your applications (transcript-based testing)
  - Transcripts for use with built-in regression can be automatically generated from `history -t`
  - Alerts that seamlessly print while user enters text at prompt

  Python 2.7 support is EOL
  -------------------------
  The last version of cmd2 to support Python 2.7 is [0.8.9](https://pypi.org/project/cmd2/0.8.9/), released on August 21, 2018.

  Supporting Python 2 was an increasing burden on our limited resources.  Switching to support only Python 3 is allowing
  us to clean up the codebase, remove some cruft, and focus on developing new features.

  Installation
  ------------
  On all operating systems, the latest stable version of `cmd2` can be installed using pip:

  ```bash
  pip install -U cmd2
  ```

  cmd2 works with Python 3.4+ on Windows, macOS, and Linux. It is pure Python code with few 3rd-party dependencies.

  For information on other installation options, see
  [Installation Instructions](https://cmd2.readthedocs.io/en/latest/install.html) in the cmd2
  documentation.


  Documentation
  -------------
  The latest documentation for cmd2 can be read online here: https://cmd2.readthedocs.io/en/latest/

  It is available in HTML, PDF, and ePub formats.


  Feature Overview
  ----------------
  Instructions for implementing each feature follow.

  - Extension of the `cmd` module.  So capabilities provided by `cmd` still exist
      - Your applicaiton inherits from `cmd2.Cmd`, let's say you call this class `MyApp`
      ```Python
      import cmd2
      class MyApp(cmd2.Cmd):
        pass
      ```
      - Define a command named **foo** by creating a method named **do_foo**
      ```Python
      class MyApp(cmd2.Cmd):
          def do_foo(self, args):
              """This docstring is the built-in help for the foo command."""
              print('foo bar baz')
      ```
      - By default the docstring for your **do_foo** method is the help for the **foo** command
          - NOTE: This doesn't apply if you use one of the `argparse` decorators mentioned below
      - Can provide more custom help by creating a **help_foo** method (except when using `argparse` decorators)
      - Can provide custom tab-completion for the **foo** command by creating a **complete_foo** method
      - Easy to upgrade an existing `cmd` app to `cmd2`
      - Run your `cmd2` app using the built-in REPL by executing the **cmdloop** method

  - Searchable command history
      - Readline history using `<Ctrl>+r`, arrow keys, and other [Readline Shortcut keys](http://readline.kablamo.org/emacs.html)
          - Readline history can be persistent between application runs via optional argument to `cmd2.Cmd` initializer
      - `cmd2` `history` command provides flexible and powerful search
          - By design, this history does NOT persist between application runs
          - If you wish to exclude some of your custom commands from the history, append their names to the list at `Cmd.exclude_from_history`.
          - Do `help history` in any `cmd2` application for more information

  - Simple scripting using ASCII text files with one command + arguments per line
      - See the [Script files](https://cmd2.readthedocs.io/en/latest/freefeatures.html#script-files) section of the `cmd2` docs for more info
      - See [script.txt](https://github.com/python-cmd2/cmd2/blob/master/examples/scripts/script.txt) for a trivial example script that can be
      used in any `cmd2` application with the `load` command (or `@` shortcut)

  - Powerful and flexible built-in Python scripting of your application using the `pyscript` command
      - Run arbitrary Python scripts within your `cmd2` application with the ability to also call custom `cmd2` commands
      - No separate API for your end users to learn
          - Syntax for calling `cmd2` commands in a `pyscript` is essentially identical to what they would enter on the command line
      - See the [Python](https://cmd2.readthedocs.io/en/latest/freefeatures.html#python) section of the `cmd2` docs for more info
      - Also see the [python_scripting.py](https://github.com/python-cmd2/cmd2/blob/master/examples/python_scripting.py)
      example in conjunction with the [conditional.py](https://github.com/python-cmd2/cmd2/blob/master/examples/scripts/conditional.py) script

  - Parsing commands with `argparse`
      - Two decorators provide built-in capability for using `argparse.ArgumentParser` to parse command arguments
          - `cmd2.with_argparser` - all arguments are parsed by the `ArgumentParser`
          - `cmd2.with_argparser_and_unknown_args` - any arguments not parsed by the `ArgumentParser` get passed as a list

      ```Python
      import argparse
      from cmd2 import with_argparser

      argparser = argparse.ArgumentParser()
      argparser.add_argument('-p', '--piglatin', action='store_true', help='atinLay')
      argparser.add_argument('-s', '--shout', action='store_true', help='N00B EMULATION MODE')
      argparser.add_argument('words', nargs='+', help='words to say')

      @with_argparser(argparser)
      def do_speak(self, args):
          """Repeats what you tell me to."""
          words = []
          for word in args.words:
              if args.piglatin:
                  word = '%s%say' % (word[1:], word[0])
              if args.shout:
                  word = word.upper()
              words.append(word)
          self.stdout.write('{}\n'.format(' '.join(words)))
      ```

      See https://cmd2.readthedocs.io/en/latest/argument_processing.html for more details

      NOTE: `cmd2` also provides the `ACArgumentParser` customization of `argparse.ArgumentParser` for prettier formatting
      of help and RangeAction type

  - `cmd2` applications function like a full-featured shell in many ways (and are cross-platform)
      - Run arbitrary shell commands by preceding them with `!` or `shell`
      - Redirect the output of any command to a file with `>` for overwrite or `>>` for append
          - If no file name provided after the `>`/`>>`, then output goes to the clipboard/pastebuffer
      - Pipe the output of any command to an arbitrary shell command with `|`
      - Create your own custom command aliases using the `alias` command
      - Create your own custom macros using the `macro` command (similar to aliases, but allow arguments)
      - Settable environment parameters that users can change during execution supported via `set` command
      - Option to display long output using a pager with ``cmd2.Cmd.ppaged()``
      - Optionally specify a startup script that end users can use to customize their environment

  - Top-notch tab-completion capabilities which are easy to use but very powerful
      - For a command **foo** implement a **complete_foo** method to provide custom tab completion for that command
          - But the helper methods within `cmd2` discussed below mean you would rarely have to implement this from scratch
      - Commands which use one of the `argparse` decorators have automatic tab-completion of `argparse` flags
          - And also provide help hints for values associated with these flags
          - Experiment with the [argprint.py](https://github.com/python-cmd2/cmd2/blob/master/examples/arg_print.py) example
          using the **oprint** and **pprint** commands to get a feel for how this works
      - `path_complete` helper method provides flexible tab-completion of file system paths
          - See the [paged_output.py](https://github.com/python-cmd2/cmd2/blob/master/examples/paged_output.py) example for a simple use case
          - See the [python_scripting.py](https://github.com/python-cmd2/cmd2/blob/master/examples/python_scripting.py) example for a more full-featured use case
      - `flag_based_complete` helper method for tab completion based on a particular flag preceding the token being completed
          - See the [tab_completion.py](https://github.com/python-cmd2/cmd2/blob/master/examples/tab_completion.py) example for a demonstration of how to use this feature
      - `index_based_complete` helper method for tab completion based on a fixed position in the input string
          - See the [tab_completion.py](https://github.com/python-cmd2/cmd2/blob/master/examples/tab_completion.py) example for a demonstration of how to use this feature
      - `basic_complete` helper method for tab completion against a list
      - `delimiter_complete` helper method for tab completion against a list but each match is split on a delimiter
          - See the [tab_autocompletion.py](https://github.com/python-cmd2/cmd2/blob/master/examples/tab_autocompletion.py) example for a demonstration of how to use this feature
      - `cmd2` in combination with `argparse` also provide several advanced capabilities for automatic tab-completion
              - See the [tab_autocompletion.py](https://github.com/python-cmd2/cmd2/blob/master/examples/tab_autocompletion.py) and
              [tab_autocomp_dynamic.py](https://github.com/python-cmd2/cmd2/blob/master/examples/tab_autocomp_dynamic.py) examples for more info

  - Multi-line commands

      Any command accepts multi-line input when its name is listed the `multiline_commands` optional argument to
      `cmd2.Cmd.__init`. The program will keep expecting input until a line ends with any of the characters listed in the
      `terminators` optional argument to `cmd2.Cmd.__init__()`  .  The default terminators are `;` and `/n` (empty newline).

  - Special-character shortcut commands (beyond cmd's "@" and "!")

      To create a single-character shortcut for a command, update `Cmd.shortcuts`.

  - Asynchronous alerts based on events happening in background threads
      - `cmd2` provides the following helper methods for providing information to users asynchronously even though the `cmd2`
      REPL is a line-oriented command interpreter:
          - `async_alert` - display an important message to the user while they are at the prompt in between commands
              - To the user it appears as if an alert message is printed above the prompt
          - `async_update_prompt` - update the prompt while the user is still typing at it
              - This is good for alerting the user to system changes dynamically in between commands
          - `set_window_title` - set the terminal window title
              - This changes the window title of the terminal that the user is running the `cmd2` app within


  Tutorials
  ---------

  A few tutorials on using cmd2 exist:

  * Florida PyCon 2017 talk: [slides](https://docs.google.com/presentation/d/1LRmpfBt3V-pYQfgQHdczf16F3hcXmhK83tl77R6IJtE), [video](https://www.youtube.com/watch?v=6m0RdpITaeY)
  * PyCon 2010 talk by Catherine Devlin, the original author: [video](http://pyvideo.org/pycon-us-2010/pycon-2010--easy-command-line-applications-with-c.html)
  * A nice brief step-by-step tutorial: [blog](https://kushaldas.in/posts/developing-command-line-interpreters-using-python-cmd2.html)


  Example Application
  -------------------

  Example cmd2 application (**examples/example.py**):

  ```python


  """
  A sample application for cmd2.
  """
  import argparse
  import random
  import cmd2

  class CmdLineApp(cmd2.Cmd):
      """ Example cmd2 application. """

      
      
      MUMBLES = ['like', '...', 'um', 'er', 'hmmm', 'ahh']
      MUMBLE_FIRST = ['so', 'like', 'well']
      MUMBLE_LAST = ['right?']

      def __init__(self):
          self.maxrepeats = 3
          shortcuts = dict(self.DEFAULT_SHORTCUTS)
          shortcuts.update({'&': 'speak'})

          
          super().__init__(use_ipython=False, multiline_commands=['orate'], shortcuts=shortcuts)

          
          self.settable['maxrepeats'] = 'max repetitions for speak command'

      speak_parser = argparse.ArgumentParser()
      speak_parser.add_argument('-p', '--piglatin', action='store_true', help='atinLay')
      speak_parser.add_argument('-s', '--shout', action='store_true', help='N00B EMULATION MODE')
      speak_parser.add_argument('-r', '--repeat', type=int, help='output [n] times')
      speak_parser.add_argument('words', nargs='+', help='words to say')

      @cmd2.with_argparser(speak_parser)
      def do_speak(self, args):
          """Repeats what you tell me to."""
          words = []
          for word in args.words:
              if args.piglatin:
                  word = '%s%say' % (word[1:], word[0])
              if args.shout:
                  word = word.upper()
              words.append(word)
          repetitions = args.repeat or 1
          for i in range(min(repetitions, self.maxrepeats)):
              
              self.poutput(' '.join(words))

      do_say = do_speak  # now "say" is a synonym for "speak"
      do_orate = do_speak  # another synonym, but this one takes multi-line input

      mumble_parser = argparse.ArgumentParser()
      mumble_parser.add_argument('-r', '--repeat', type=int, help='how many times to repeat')
      mumble_parser.add_argument('words', nargs='+', help='words to say')

      @cmd2.with_argparser(mumble_parser)
      def do_mumble(self, args):
          """Mumbles what you tell me to."""
          repetitions = args.repeat or 1
          for i in range(min(repetitions, self.maxrepeats)):
              output = []
              if (random.random() < .33):
                  output.append(random.choice(self.MUMBLE_FIRST))
              for word in args.words:
                  if (random.random() < .40):
                      output.append(random.choice(self.MUMBLES))
                  output.append(word)
              if (random.random() < .25):
                  output.append(random.choice(self.MUMBLE_LAST))
              self.poutput(' '.join(output))

  if __name__ == '__main__':
      c = CmdLineApp()
      c.cmdloop()
  ```

  The following is a sample session running example.py.
  Thanks to Cmd2's built-in transcript testing capability, it also serves as a test
  suite for example.py when saved as *transcript_regex.txt*.
  Running

  ```bash
  python example.py -t transcript_regex.txt
  ```
  will run all the commands in the transcript against `example.py`, verifying that the output produced
  matches the transcript.

  example/transcript_regex.txt:

  ```text




  (Cmd) set
  colors: /(True|False)/
  continuation_prompt: >/ /
  debug: False
  echo: False
  editor: /.*?/
  feedback_to_output: False
  locals_in_py: True
  maxrepeats: 3
  prompt: (Cmd)/ /
  quiet: False
  timing: False
  ```

  Note how a regular expression `/(True|False)/` is used for output of the **show color** command since
  colored text is currently not available for cmd2 on Windows.  Regular expressions can be used anywhere within a
  transcript file simply by enclosing them within forward slashes, `/`.


  Found a bug?
  ------------

  If you think you've found a bug, please first read through the open [Issues](https://github.com/python-cmd2/cmd2/issues). If you're confident it's a new bug, go ahead and create a new GitHub issue. Be sure to include as much information as possible so we can reproduce the bug.  At a minimum, please state the following:

  * ``cmd2`` version
  * Python version
  * OS name and version
  * What you did to cause the bug to occur
  * Include any traceback or error message associated with the bug


  Open source projects using cmd2
  -------------------------------

  Here are a few examples of open-source projects which use `cmd2`:

  * [cliff](https://github.com/openstack/cliff)
      * OpenStack Command Line Interface Formulation Framework
  * [tomcatmanager](https://github.com/tomcatmanager/tomcatmanager)
      * A command line tool and python library for managing a tomcat server
  * [clanvas](https://github.com/marklalor/clanvas)
      * Command-line client for Canvas by Instructure
  * [mptcpanalyzer](https://github.com/teto/mptcpanalyzer)
      * Tool to help analyze mptcp pcaps


pkgId: 3724ec56e364824a9f1ef5f0fc996f4cbfff1330a32391a4304c27e5cf172821
name: rh-python36-colorama
arch: noarch
version: 0.4.3
epoch: 0
release: 1
summary: Cross-platform colored terminal text.
url: https://github.com/tartley/colorama
rpm_license: BSD
rpm_vendor: Arnon Yaari <tartley@tartley.com>
rpm_group: Development/Libraries
rpm_buildhost: f5d86545847e488b9713f54998a72232
rpm_sourcerpm: rh-python36-colorama-0.4.3-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387240-rh-python36-colorama/rh-python36-colorama-0.4.3-1.noarch.rpm
checksum_type: sha256
description:
  .. image:: https://img.shields.io/pypi/v/colorama.svg
      :target: https://pypi.python.org/pypi/colorama/
      :alt: Latest Version

  .. image:: https://travis-ci.org/tartley/colorama.svg?branch=master
      :target: https://travis-ci.org/tartley/colorama
      :alt: Build Status

  Download and docs:
      http://pypi.python.org/pypi/colorama
  Source code & Development:
      https://github.com/tartley/colorama

  Description
  ===========

  Makes ANSI escape character sequences (for producing colored terminal text and
  cursor positioning) work under MS Windows.

  ANSI escape character sequences have long been used to produce colored terminal
  text and cursor positioning on Unix and Macs. Colorama makes this work on
  Windows, too, by wrapping ``stdout``, stripping ANSI sequences it finds (which
  would appear as gobbledygook in the output), and converting them into the
  appropriate win32 calls to modify the state of the terminal. On other platforms,
  Colorama does nothing.

  Colorama also provides some shortcuts to help generate ANSI sequences
  but works fine in conjunction with any other ANSI sequence generation library,
  such as the venerable Termcolor (http://pypi.python.org/pypi/termcolor)
  or the fabulous Blessings (https://pypi.python.org/pypi/blessings).

  This has the upshot of providing a simple cross-platform API for printing
  colored terminal text from Python, and has the happy side-effect that existing
  applications or libraries which use ANSI sequences to produce colored output on
  Linux or Macs can now also work on Windows, simply by calling
  ``colorama.init()``.

  An alternative approach is to install ``ansi.sys`` on Windows machines, which
  provides the same behaviour for all applications running in terminals. Colorama
  is intended for situations where that isn't easy (e.g., maybe your app doesn't
  have an installer.)

  Demo scripts in the source code repository print some colored text using
  ANSI sequences. Compare their output under Gnome-terminal's built in ANSI
  handling, versus on Windows Command-Prompt using Colorama:

  .. image:: https://github.com/tartley/colorama/raw/master/screenshots/ubuntu-demo.png
      :width: 661
      :height: 357
      :alt: ANSI sequences on Ubuntu under gnome-terminal.

  .. image:: https://github.com/tartley/colorama/raw/master/screenshots/windows-demo.png
      :width: 668
      :height: 325
      :alt: Same ANSI sequences on Windows, using Colorama.

  These screengrabs show that, on Windows, Colorama does not support ANSI 'dim
  text'; it looks the same as 'normal text'.


  License
  =======

  Copyright Jonathan Hartley 2013. BSD 3-Clause license; see LICENSE file.


  Dependencies
  ============

  None, other than Python. Tested on Python 2.5.5, 2.6.5, 2.7, 3.1.2, 3.2, 3.3,
  3.4 and 3.5.

  Usage
  =====

  Initialisation
  --------------

  Applications should initialise Colorama using:

  .. code-block:: python

      from colorama import init
      init()

  On Windows, calling ``init()`` will filter ANSI escape sequences out of any
  text sent to ``stdout`` or ``stderr``, and replace them with equivalent Win32
  calls.

  On other platforms, calling ``init()`` has no effect (unless you request other
  optional functionality; see "Init Keyword Args", below). By design, this permits
  applications to call ``init()`` unconditionally on all platforms, after which
  ANSI output should just work.

  To stop using colorama before your program exits, simply call ``deinit()``.
  This will restore ``stdout`` and ``stderr`` to their original values, so that
  Colorama is disabled. To resume using Colorama again, call ``reinit()``; it is
  cheaper to calling ``init()`` again (but does the same thing).


  Colored Output
  --------------

  Cross-platform printing of colored text can then be done using Colorama's
  constant shorthand for ANSI escape sequences:

  .. code-block:: python

      from colorama import Fore, Back, Style
      print(Fore.RED + 'some red text')
      print(Back.GREEN + 'and with a green background')
      print(Style.DIM + 'and in dim text')
      print(Style.RESET_ALL)
      print('back to normal now')

  ...or simply by manually printing ANSI sequences from your own code:

  .. code-block:: python

      print('\033[31m' + 'some red text')
      print('\033[30m') # and reset to default color

  ...or, Colorama can be used happily in conjunction with existing ANSI libraries
  such as Termcolor:

  .. code-block:: python

      from colorama import init
      from termcolor import colored

      
      init()

      
      print(colored('Hello, World!', 'green', 'on_red'))

  Available formatting constants are::

      Fore: BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, RESET.
      Back: BLACK, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN, WHITE, RESET.
      Style: DIM, NORMAL, BRIGHT, RESET_ALL

  ``Style.RESET_ALL`` resets foreground, background, and brightness. Colorama will
  perform this reset automatically on program exit.


  Cursor Positioning
  ------------------

  ANSI codes to reposition the cursor are supported. See ``demos/demo06.py`` for
  an example of how to generate them.


  Init Keyword Args
  -----------------

  ``init()`` accepts some ``**kwargs`` to override default behaviour.

  init(autoreset=False):
      If you find yourself repeatedly sending reset sequences to turn off color
      changes at the end of every print, then ``init(autoreset=True)`` will
      automate that:

      .. code-block:: python

          from colorama import init
          init(autoreset=True)
          print(Fore.RED + 'some red text')
          print('automatically back to default color again')

  init(strip=None):
      Pass ``True`` or ``False`` to override whether ansi codes should be
      stripped from the output. The default behaviour is to strip if on Windows
      or if output is redirected (not a tty).

  init(convert=None):
      Pass ``True`` or ``False`` to override whether to convert ANSI codes in the
      output into win32 calls. The default behaviour is to convert if on Windows
      and output is to a tty (terminal).

  init(wrap=True):
      On Windows, colorama works by replacing ``sys.stdout`` and ``sys.stderr``
      with proxy objects, which override the ``.write()`` method to do their work.
      If this wrapping causes you problems, then this can be disabled by passing
      ``init(wrap=False)``. The default behaviour is to wrap if ``autoreset`` or
      ``strip`` or ``convert`` are True.

      When wrapping is disabled, colored printing on non-Windows platforms will
      continue to work as normal. To do cross-platform colored output, you can
      use Colorama's ``AnsiToWin32`` proxy directly:

      .. code-block:: python

          import sys
          from colorama import init, AnsiToWin32
          init(wrap=False)
          stream = AnsiToWin32(sys.stderr).stream

          
          print >>stream, Fore.BLUE + 'blue text on stderr'

          
          print(Fore.BLUE + 'blue text on stderr', file=stream)


  Status & Known Problems
  =======================

  I've personally only tested it on Windows XP (CMD, Console2), Ubuntu
  (gnome-terminal, xterm), and OS X.

  Some presumably valid ANSI sequences aren't recognised (see details below),
  but to my knowledge nobody has yet complained about this. Puzzling.

  See outstanding issues and wishlist:
  https://github.com/tartley/colorama/issues

  If anything doesn't work for you, or doesn't do what you expected or hoped for,
  I'd love to hear about it on that issues list, would be delighted by patches,
  and would be happy to grant commit access to anyone who submits a working patch
  or two.


  Recognised ANSI Sequences
  =========================

  ANSI sequences generally take the form:

      ESC [ <param> ; <param> ... <command>

  Where ``<param>`` is an integer, and ``<command>`` is a single letter. Zero or
  more params are passed to a ``<command>``. If no params are passed, it is
  generally synonymous with passing a single zero. No spaces exist in the
  sequence; they have been inserted here simply to read more easily.

  The only ANSI sequences that colorama converts into win32 calls are::

      ESC [ 0 m       # reset all (colors and brightness)
      ESC [ 1 m       # bright
      ESC [ 2 m       # dim (looks same as normal brightness)
      ESC [ 22 m      # normal brightness

      
      ESC [ 30 m      # black
      ESC [ 31 m      # red
      ESC [ 32 m      # green
      ESC [ 33 m      # yellow
      ESC [ 34 m      # blue
      ESC [ 35 m      # magenta
      ESC [ 36 m      # cyan
      ESC [ 37 m      # white
      ESC [ 39 m      # reset

      
      ESC [ 40 m      # black
      ESC [ 41 m      # red
      ESC [ 42 m      # green
      ESC [ 43 m      # yellow
      ESC [ 44 m      # blue
      ESC [ 45 m      # magenta
      ESC [ 46 m      # cyan
      ESC [ 47 m      # white
      ESC [ 49 m      # reset

      
      ESC [ y;x H     # position cursor at x across, y down
      ESC [ y;x f     # position cursor at x across, y down
      ESC [ n A       # move cursor n lines up
      ESC [ n B       # move cursor n lines down
      ESC [ n C       # move cursor n characters forward
      ESC [ n D       # move cursor n characters backward

      
      ESC [ mode J    # clear the screen

      
      ESC [ mode K    # clear the line

  Multiple numeric params to the ``'m'`` command can be combined into a single
  sequence::

      ESC [ 36 ; 45 ; 1 m     # bright cyan text on magenta background

  All other ANSI sequences of the form ``ESC [ <param> ; <param> ... <command>``
  are silently stripped from the output on Windows.

  Any other form of ANSI sequence, such as single-character codes or alternative
  initial characters, are not recognised or stripped. It would be cool to add
  them though. Let me know if it would be useful for you, via the Issues on
  GitHub.


  Development
  ===========

  Help and fixes welcome!

  Running tests requires:

  - Michael Foord's ``mock`` module to be installed.
  - Tests are written using 2010-era updates to ``unittest``, and require
    Python 2.7 or greater, OR to have Michael Foord's ``unittest2`` module
    installed.

  To run tests::

     python -m unittest discover -p *_test.py

  This, like a few other handy commands, is captured in a ``Makefile``.

  If you use nose to run the tests, you must pass the ``-s`` flag; otherwise,
  ``nosetests`` applies its own proxy to ``stdout``, which confuses the unit
  tests.


  Thanks
  ======
  * Marc Schlaich (schlamar) for a ``setup.py`` fix for Python2.5.
  * Marc Abramowitz, reported & fixed a crash on exit with closed ``stdout``,
    providing a solution to issue #7's setuptools/distutils debate,
    and other fixes.
  * User 'eryksun', for guidance on correctly instantiating ``ctypes.windll``.
  * Matthew McCormick for politely pointing out a longstanding crash on non-Win.
  * Ben Hoyt, for a magnificent fix under 64-bit Windows.
  * Jesse at Empty Square for submitting a fix for examples in the README.
  * User 'jamessp', an observant documentation fix for cursor positioning.
  * User 'vaal1239', Dave Mckee & Lackner Kristof for a tiny but much-needed Win7
    fix.
  * Julien Stuyck, for wisely suggesting Python3 compatible updates to README.
  * Daniel Griffith for multiple fabulous patches.
  * Oscar Lesta for a valuable fix to stop ANSI chars being sent to non-tty
    output.
  * Roger Binns, for many suggestions, valuable feedback, & bug reports.
  * Tim Golden for thought and much appreciated feedback on the initial idea.
  * User 'Zearin' for updates to the README file.
  * John Szakmeister for adding support for light colors
  * Charles Merriam for adding documentation to demos
  * Jurko for a fix on 64-bit Windows CPython2.5 w/o ctypes
  * Florian Bruhin for a fix when stdout or stderr are None
  * Thomas Weininger for fixing ValueError on Windows
  * Remi Rampin for better Github integration and fixes to the README file
  * Simeon Visser for closing a file handle using 'with' and updating classifiers
    to include Python 3.3 and 3.4
  * Andy Neff for fixing RESET of LIGHT_EX colors.
  * Jonathan Hartley for the initial idea and implementation.


pkgId: 070e7198f4862d8d5d163170b54b7c49c0b5ed06f1fc010bbe280fa327fde40b
name: rh-python36-cryptography
arch: src
version: 2.8
epoch: 0
release: 1
summary: cryptography is a package which provides cryptographic recipes and primitives to Python developers.
url: https://github.com/pyca/cryptography
rpm_license: BSD or Apache License, Version 2.0
rpm_vendor: The cryptography developers <cryptography-dev@python.org>
rpm_group: Development/Libraries
rpm_buildhost: 6373b5d2d9544a0fabba9536a42b181e
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387100-rh-python36-cryptography/rh-python36-cryptography-2.8-1.src.rpm
checksum_type: sha256
description:
  pyca/cryptography
  =================

  .. image:: https://img.shields.io/pypi/v/cryptography.svg
      :target: https://pypi.python.org/pypi/cryptography/
      :alt: Latest Version

  .. image:: https://readthedocs.org/projects/cryptography/badge/?version=latest
      :target: https://cryptography.io
      :alt: Latest Docs

  .. image:: https://travis-ci.org/pyca/cryptography.svg?branch=master
      :target: https://travis-ci.org/pyca/cryptography

  .. image:: https://codecov.io/github/pyca/cryptography/coverage.svg?branch=master
      :target: https://codecov.io/github/pyca/cryptography?branch=master


  ``cryptography`` is a package which provides cryptographic recipes and
  primitives to Python developers.  Our goal is for it to be your "cryptographic
  standard library". It supports Python 2.6-2.7, Python 3.4+, and PyPy 5.3+.

  ``cryptography`` includes both high level recipes and low level interfaces to
  common cryptographic algorithms such as symmetric ciphers, message digests, and
  key derivation functions. For example, to encrypt something with
  ``cryptography``'s high level symmetric encryption recipe:

  .. code-block:: pycon

      >>> from cryptography.fernet import Fernet
      >>> # Put this somewhere safe!
      >>> key = Fernet.generate_key()
      >>> f = Fernet(key)
      >>> token = f.encrypt(b"A really secret message. Not for prying eyes.")
      >>> token
      '...'
      >>> f.decrypt(token)
      'A really secret message. Not for prying eyes.'

  You can find more information in the `documentation`_.

  You can install ``cryptography`` with:

  .. code-block:: console

      $ pip install cryptography

  For full details see `the installation documentation`_.

  Discussion
  ~~~~~~~~~~

  If you run into bugs, you can file them in our `issue tracker`_.

  We maintain a `cryptography-dev`_ mailing list for development discussion.

  You can also join ``#cryptography-dev`` on Freenode to ask questions or get
  involved.


  .. _`documentation`: https://cryptography.io/
  .. _`the installation documentation`: https://cryptography.io/en/latest/installation/
  .. _`issue tracker`: https://github.com/pyca/cryptography/issues
  .. _`cryptography-dev`: https://mail.python.org/mailman/listinfo/cryptography-dev


pkgId: 1ebcb8955279f961f8539a94eaee2bf930526fa6a9a8a1bd8f1e2efb84bd5425
name: rh-python36-cryptography-debuginfo
arch: x86_64
version: 2.8
epoch: 0
release: 1
summary: Debug information for package rh-python36-cryptography
url: https://github.com/pyca/cryptography
rpm_license: BSD or Apache License, Version 2.0
rpm_vendor: The cryptography developers <cryptography-dev@python.org>
rpm_group: Development/Debug
rpm_buildhost: 826a4de3fc5b45809ad6a88989c19c33
rpm_sourcerpm: rh-python36-cryptography-2.8-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387100-rh-python36-cryptography/rh-python36-cryptography-debuginfo-2.8-1.x86_64.rpm
checksum_type: sha256
description:
  This package provides debug information for package rh-python36-cryptography.
  Debug information is useful when developing applications that use this
  package or when debugging this package.


pkgId: bd115f36e2cfc6c3e76a0269536d662a189151970ccad92fd36329970c3c6719
name: rh-python36-debtcollector
arch: noarch
version: 1.21.0
epoch: 0
release: 1
url: https://docs.openstack.org/debtcollector/latest
rpm_license: UNKNOWN
rpm_vendor: OpenStack <openstack-discuss@lists.openstack.org>
rpm_group: Development/Libraries
rpm_buildhost: f5f8b719b5084298bb4aa36ab9030d32
rpm_sourcerpm: rh-python36-debtcollector-1.21.0-1.src.rpm
rpm_packager: Martin Juhl <m@rtinjuhl.dk>
location_href: 01387056-rh-python36-debtcollector/rh-python36-debtcollector-1.21.0-1.noarch.rpm
checksum_type: sha256
summary:
  A collection of Python deprecation patterns and strategies that help you collect your technical debt in a non-destructive manner.

description:
  ========================
  Team and repository tags
  ========================

  .. image:: https://governance.openstack.org/tc/badges/debtcollector.svg
      :target: https://governance.openstack.org/tc/reference/tags/index.html

  .. Change things from this point on

  Debtcollector
  =============

  .. image:: https://img.shields.io/pypi/v/debtcollector.svg
      :target: https://pypi.org/project/debtcollector/
      :alt: Latest Version

  A collection of Python deprecation patterns and strategies that help you
  collect your technical debt in a non-destructive manner. The goal of this
  library is to provide well documented developer facing deprecation
  patterns that start of with a basic set and can expand into a larger
  set of patterns as time goes on. The desired output of these patterns
  is to apply the warnings module to emit DeprecationWarning or PendingDeprecationWarning
  or similar derivative to developers using libraries (or potentially
  applications) about future deprecations.


  * Free software: Apache license
  * Documentation: https://docs.openstack.org/debtcollector/latest
  * Source: https://git.openstack.org/cgit/openstack/debtcollector
  * Bugs: https://bugs.launchpad.net/debtcollector
  * Release Notes: https://docs.openstack.org/releasenotes/debtcollector


