semvec/pypi-packages huggingface dataset:
PostCoder 0.1.1
A simple API in python to work with       postcoder, a popular web service for addresses &       postcodes in the UK
License: MIT
Keywords: postcoder UK postcodes

This module can be used with postcoder webservice to
get addresses from postcoder against post codes and 
vice versa. It implements the complete SOAP methods
implemented by postcoder.

It implements the following SOAP methods:
* getThrfareAddresses
* getPremiseList
* getMatchAddress
* getGrids
* getPostzon
and a helper function to calculate distance
between two postcodes
clipy 0.4
Library for creating command line interfaces
License: MIT
Keywords: python cli framework cmd command line interface

Clipy - command line interfaces micro-framework
===============================================

Clipy is simple easy to use micro-framework for creating command line
interfaces. You can find documentation at `http://packages.python.org/clipy
<http://packages.python.org/clipy>`_.

Bug reports
-----------

Clipy uses launchpad for tracking bug reports, if you are want to report one,
please follow the url:

    `https://bugs.launchpad.net/clipy <https://bugs.launchpad.net/clipy>`_


Development
-----------

All source code for clipy is on launchpad, versioned with bzr DVCS:
    
    `http://launchpad.net/clipy <http://launchpad.net/clipy>`_

If you want to branch, simply type in terminal:

    $ bzr branch lp:clipy

Change history
==============

0.1
---

Initial release with the following features:

- Defining single commands with Command class.

- Defining composite commands (commands that consists of subcommans, like svn)
  with CompositeCommand class.


0.2
---

New features:

- Added abstract command loaded for composite commands.

- Command loader implementation, which loads commands via setuptools entry
  point groups.


0.3
---

New features:

- Added Command.chanllenge method for asking user for variable.

- Added Command.ask method for asking user for confirmation.

- Support for defining commands with argument parsers based on argparse.


0.4
---

New features:

- Default help command for composite commands.

- Better usage handling within subcommands.

- Commands are stateless now -- options, args and context passed in run method
  directly.

- Composite command behaviour can be parametrized in cases there is no
  subcommand or unknown one is provided (CompositeCommand.no_command,
  CompositeCommand.unknown_command methods).
pastegevent 0.1
Run WSGI applications with PasteDeploy and gevent.
License: MIT
Keywords: paste wsgi gevent

PasteGevent
===========

With pastegevent package you can run your WSGI applications on top of gevent's
high performace HTTP server.

Configuration
-------------

Just use *egg:pastegevent#gevent* as use directive value of your server
configuration section:

::

    [server:main]
    use = egg:pastegevent#gevent

If you need to pastegevent to monkey patch stdlib modules for you, use
*egg:pastegevent#gevent_patched*. This will monkey patch all, except DNS
subsystem:

::

    [server:main]
    use = egg:pastegevent#gevent_patched

But no DNS patching is performed due to inability to reinitialize libevent's DNS
subsystem after forking.

Using of asynchronous DNS resolving with evdns
----------------------------------------------

If your application relies heavy on asyncronous DNS resolving, you probably
still need to patch stdlib to use evdns to resolve domain names. Fortunately
there are few steps to workaround issue with evdns initialization.

First thing to do is to be sure not not make any network interactions before
server startup, so libevent (and its DNS subsystem in particular) will be not
be initialized before daemonization. That means no network code in WSGI
application factory.

Then you should configure server to use non-patched version of gevent server
factory:

::

    [server:main]
    use = egg:pastegevent#gevent

and patch DNS yourself in application factory:

::

    def app(global_config, **settings):
        from gevent.monkey import patch_all
        patch_all()
        return wsgi_app
  
Now your application can take the advantages of asyncronous DNS resolving.
repoze.what.plugins.couchdbkit 0.2
repoze.what plugin for couchdbkit
License: MIT
Keywords: wsgi auth repoze what couchdb

Full documentation can be found `here <http://www.gawel.org/docs/repoze.what.plugins.couchdbkit/index.html>`_

Report bugs on the `bitbucket tracker <http://bitbucket.org/gawel/repoze.what.plugins.couchdbkit/issues/>`_
Trawl 0.2.1
Python port of Ruby Rake
License: MIT

Trawl - Another tool in the shed
================================

This is as straight of a clone of Rake that I could come up with.

Briefly:
::

    # Trawlfile
    @task
    def bar():
        print "BAR!"

Does as you might expect:
::

    $ trawl -T
    bar
    $ trawl bar
    ** Execute bar
    BAR

And with dependencies:
::

    # Trawlfile
    @task
    def bar():
        print "BAR!"

    @task([bar])
    def foo():
        print "FOO!"

Also does what you'd expect:
::

    $ trawl -T
    bar
    foo
    $ trawl bar
    ** Execute bar
    BAR!
    $ trawl foo
    ** Execute bar
    BAR!
    ** Execute foo
    FOO!

Which is awesome sauce, but what about files?
::

    # Trawlfile
    @build("myfile.txt", recreate=False)
    def run(task):
        with open(task.name) as out:
            out.write("MUNCTIONAL!")

    @build("yup.cfg", ["myfile.txt"])
    def more(task):
        with open(task.name) as out:
            with open(task.source) as src:
                out.write(src.read() + "!!!1!")

Will cause "myfile.txt" to be created but not overwritten if it exists.
"yup.cfg" will then only be rebuilt when "myfile.txt" changes as determined by
the file's mtime:
::

    $ trawl yup.cfg
    ** Execute myfile.txt
    ** Execute yup.cfg
    $ trawl yup.cfg
    $

The last major bit is in defining rules:
::

    @rule('.o', '.c'):
    def compile(task):
        subprocess.check_call(["gcc", "-o", task.name, "-c", task.source])
        
    objects = FileList("*.c").sub(".c$", ".o")
    @build("appname", objects)
    def link(task):
        subprocess.check_call(["gcc", "-o", task.name] + task.sources)

    # Add a helpful handle for running
    task("run", ["appname"])

TODO
++++

Some things that need to be done yet:

* Task descriptions
* Argument support
* Test and add methods to FileList
* Add a function to import tasks programatically