semvec/pypi-packages huggingface dataset:
cloudily 0.1.4
Command line tool to visualize your EC2 infrastructure
License: MIT

Cloudily - automatically visualize your EC2 infrastructure
==========================================================

.. image:: http://loads.pickle.me.uk/static/images/cloudily.png

Getting Started
---------------

You'll need `graphviz <http://www.graphviz.org/>`_ installed, and optionally
`imagemagick <http://www.imagemagick.org/>`_ to use the ``--preview`` functionality.

On Ubuntu::

    $ sudo apt-get install graphviz imagemagick

Install cloudily from `PyPI <http://pypi.python.org/pypi/graphops>`_ like so::

    $ sudo pip install cloudily

Run cloudily::

    $ cloudily --ec2 instances,elb --conns --preview

Open montage.png in your favourite image viewer::

    $ qiv montage.png

The ``--preview`` makes a montage of the various graphviz layouts available.
Depending on your network usually 'dot' produces the cleaner layouts, but others
may work better / look cooler.

Visualizing EC2 hosts
---------------------
Use the ``--ec2`` option to visualize your EC2 instances and ELBs. Run::

    $ cloudily --ec2 instances,elb --conns --png myarch.png

You need to set your Amazon credentials as environment variables: AWS_ACCESS_KEY_ID
and AWS_SECRET_ACCESS_KEY or configure them in ~/.boto. For more information see:
http://code.google.com/p/boto/wiki/BotoConfig

``--ec2groups`` may be used to filter by security group. This accepts a comma-
separated list of multiple groups. eg. ``--ec2groups group1,group2``

Discovery
---------
There are various ways Cloudily can discover the connections between your
hosts.

``--arp``: Looks at the IP addresses in the arp cache. This has limited use inside
EC2, since hosts are usually on different subnets, but maybe useful for other
setups.

``--conns``: Looks at the currently open UDP and TCP connections for each host. If
the system is active or there is connection pooling (eg. most database
libraries) you should see everything, otherwise there's a chance you'll
not see connections through inactivity.

``--logins``: Includes logins by username in the diagram so you can see who logs
in to which hosts.

Other options
-------------
With ``--conns`` you can also limit to a selection of ports using ``--connsports
80,3306``. This is handy if you're only interested in specific services.

Changelog
---------
0.1.4

- Robustify code to missing values. Fixes #3

- Add --ec2groups option. Fixes #1

- Fix for internal ELBs. Fixes #2

0.1.3

- .ssh/config optional

0.1.2

- Fix defaults

0.1.1

- First release
tgext.browserlimit 0.1.2
High Level Browser Detection Middleware for Turbogears 2, limits access to website only for modern browsers
License: MIT
Keywords: turbogears2.extension

About BrowserLimit
-------------------------

Browserlimit is a TurboGears2 extension meant to quickly limit access to a website
only to modern browsers. BrowserLimit requires TurboGears2.1.4 or newer.

Installing
-------------------------------

tgext.browerlimit can be installed both from pypi or from bitbucket::

    easy_install tgext.browserlimit

should just work for most of the users

Enabling BrowserLimit
----------------------------------

Using BrowserLimit is quite simple, you can just plug it using
`tgext.pluggable <http://bitbucket.org/_amol_/tgext.pluggable>`_.

If you want to avoid using **tgext.pluggable** for any reason it is still
possible to use tgext.browserlimit by manually setting it up.
At the end of your application *config/app_cfg.py* import **tgext.browserlimit**::

    import tgext.browserlimit
    tgext.browserlimit.plugme(base_config, {})


Choosing Browser Limits
--------------------------------

By default tgext.browserlimit will limit site access to browsers which have a fairly
compatible HTML4 support, those include IE8, Chrome4, Firefox3.6, Safari3.2

This can be changed by specifying the *base_config.browserlimit* option inside
your *config/app_cfg.py* before loading browserlimit. Valid values are:

    - MODERN -> Most modern browsers with top edge features
    - HTML5 -> Minimal HTML5 support like video and canvas
    - BASIC -> Good HTML4 support (the default)
    - MINIMAL -> Cover as much as possible (minimum IE version 7)

New limits can be enabled using the *base_config.browserlimits* option.
This must be a dictionary where the KEY is the limit name and the value is a class
that implements *__init__(self, user_agent)* and *is_met(self, environ) -> bool* methods.
alternatives 0.1.0
Alternatives api is just a syntax sugar for selecting alternative variants from some set of values
License: MIT

***********************
Alternatives api
***********************

Alternatives basics
---------------------

Alternatives api is just a syntax sugar for selecting alternative variants from some set of values.
The main thing is alternative class that implements late call on callbacks.
This allow to apply boolean logic on callbacks without being executed::

    a1 = Alternative(lambda: a)
    b1 = Alternative(lambda: b)

    a_b = a1 | b1
    assert isinstance(a_b, Alternative)
    assert bool(a_b) is (a or b)

Also you can note, in the example above, that alternative can provide python truth when it's needed by
calling callbacks and evaluating boolean expressions.

Alternatives usage
---------------------

How it may be used::

    package(one_of({
        os_centos() or os_windows(): 'php',
        os_ubuntu(): 'php5'
    }))


Here one of values will be selected: php or php5.

Alternative is object, that's why we can use it as dictionary key.

In the example above you can see one_of() method:

.. automodule:: pywizard.api
   :members: one_of
   :imported-members:

Another style of evaluating alternatives is all_of:

.. automodule:: pywizard.api
   :members: all_of
   :imported-members:

And nobody restrict you from creating your own alternatives selection style.
Use source of one_of, all_of as reference.

Checks declaration
-----------------------------

*Check* is just a python function that return boolen with added annotation on it::

    @alternative
    def os_linux():
        """
        os_linux()
        Checks if it is linux-like os.
        """
        info = os_info()
        return 'linux' in info['platform']

.. note::
    As function is annotated there is some extra work needed to provide correct documentation for this function.
    @alternative handles copying __doc__ transparently for your function. But, you should take care
    of specifying correct method signature in first line of docstring.
stringscore 0.1.0
An algorithm provides scores between 0.0 (no match) to 1.0 (perfect match) for a comparison of two strings.
License: MIT
Keywords: stringscore

===============================
String Score
===============================

.. image:: https://badge.fury.io/py/stringscore.png
    :alt: PyPI version
    :target: http://badge.fury.io/py/stringscore

.. image:: https://travis-ci.org/bcse/stringscore.png?branch=master
    :alt: Build Status
    :target: https://travis-ci.org/bcse/stringscore

.. image:: https://coveralls.io/repos/bcse/stringscore/badge.png
    :alt: Coverage Status
    :target: https://coveralls.io/r/bcse/stringscore

.. image:: https://pypip.in/d/stringscore/badge.png
    :alt: Downloads
    :target: https://crate.io/packages/stringscore?version=latest


An algorithm provides scores between 0.0 (no match) to 1.0 (perfect match) for a comparison of two strings.

The algorithm is designed for auto-completion. For string similarity, please check `Levenshtein distance`_ (`Wagner–Fischer algorithm`_).

.. _Levenshtein distance: https://en.wikipedia.org/wiki/Levenshtein_distance
.. _Wagner–Fischer algorithm: https://en.wikipedia.org/wiki/Wagner%E2%80%93Fischer_algorithm

Usage
-----

Include the library:

::

    from stringscore import liquidmetal


Score any string against an abbreviation:

::

    >>> liquidmetal.score('FooBar', 'foo')
    0.95
    >>> liquidmetal.score('FooBar', 'fb')
    0.916666666667
    >>> liquidmetal.score('Foo Bar', 'fb')
    0.928571428571
    >>> liquidmetal.score('Foo Bar', 'baz')
    0.0
    >>> liquidmetal.score('Foo Bar', '')
    0.8


Similar Works
-------------

* Quicksilver's scoreForAbbreviation_ algorithm by Alcor (Blacktree, Inc)
* LiquidMetal_ by Ryan McGeary
* string_score_ by Joshaven Potter
* `jQuery.fuzzyMatch`_ by Rapportive_

.. _scoreForAbbreviation: https://github.com/quicksilver/Quicksilver/blob/master/Quicksilver/Code-QuickStepFoundation/NSString_BLTRExtensions.m#L53
.. _LiquidMetal: https://github.com/rmm5t/liquidmetal
.. _string_score: https://github.com/joshaven/string_score
.. _jQuery.fuzzyMatch: https://github.com/rapportive-oss/jquery-fuzzymatch
.. _Rapportive: http://rapportive.com/

License
-------

String Score is released under the `MIT License`_.

.. _MIT License: http://opensource.org/licenses/MIT

Credits
-------

| Copyright © 2003 Blacktree, Inc (Original author of Quicksilver_)
| Copyright © 2009 Ryan McGeary (Author of LiquidMetal_)
| Copyright © 2013 Grey Lee

.. _Quicksilver: https://github.com/quicksilver/Quicksilver


.. image:: https://d2weczhvl823v0.cloudfront.net/bcse/stringscore/trend.png
    :alt: Bitdeli badge
    :target: https://bitdeli.com/free

History
-------

0.1.0 (2013-02-25)
++++++++++++++++++

* First release.