semvec/pypi-packages huggingface dataset:
TGInterface 0.2.5a2
Provides clients access to models and methods defined on a TurboGears server.
License: MIT

With TurboGears Interface, the developer can write client code as if he 
    were writing it on the server with direct access to server-side models 
    and methods.
    
    It uses the most-excellent TGWebServices package to do the heavy lifting.
    Unfortunately, the latest egg doesn't seem to work so you'll need to 
    install TGWebServices with mercurial
    (``hg clone https://code.google.com/p/tgws.tgws-2/``) in the TurboGears 
    virtualenv (ie. server-side).
    
    Thanks to all who contributed to TGWebServices and TurboGears (and all
    packages contained therein).
    
    Thanks also to Frank v. Delft for his brain farts and SGC (http://www.thesgc.org/)
    for their support.

    
    Features
    --------
    Server-side:
    
     * Works seamlessly with TurboGears
     * Gives access to models and methods that you decorate
     * API automatically created and offered for download
     * If you expose a model and don't create a controller, one is created for you
     * Methods defined in Controllers automatically import and export complex types defined in the API
     * (Optional) Methods can change 'self' to be the the 'self' object that initiated the call client-side


    Client-side:
    
     * Automatically provides access to methods and models defined in the API
     * Code looks identical to server-side code (using SQLAlchemy's ORM)
     * Automatically guesses database relationships to keep client-data up-to-date
     * All calls are made asynchronously and the module is multithread-safe
     * Allows the developer to easily define callback functions for data being updated or server-side methods finishing

    To-do
    -----
    Server-side:
    
     * Implement autherisation in ``ServerSide.ExposeTable`` (should be easy enough to integrate TurboGear's autherisation system)

    Client-side:
    
     * Make it easy to gracefully tell the user of network outage / server error (at the moment, the developer can make error handlers for specific things going wrong, but there's probably a better way to let him know of general faults affecting many systems.)
django-package-skeleton 0.1-2-gf7bf
Skeleton package of Django App Package
License: MIT
Keywords: django signals object field relation generic

Django Application Package Skeleton

The following features exists

-   Testing demo django test project with ``setup.py``

-   Add Django apps required to execute test dynamically

-   Automatically update the version number with git

How to use
====================

1.  Falk this project in your github

2.  Rename ``package`` directory as your app name and fix ``setup.py`` as you want

3.  Add your app in ``INSTALL_APPS`` in ``tests/settings.py``


Testing demo django test project with ``setup.py``
====================================================================================================
There is a simple blog django project in ``tests`` directory so just modify the project as you want
and add::

    $ python setup.py test

will run the project tests


Add Django apps required to execute test dynamically
======================================================================================================
If your Django app required apps just for testing then you can use ``app_testcase.AppTestCase`` to add
any django app dynamically in test

If you create some django field app and you want to test the field with simple ``Book`` model then you
can

1.  Create an simple app called ``yourfieldname/tests/apps/books``

2.  Create simple book models in ``yourfieldname/tests/apps/books/models.py``

3.  Use ``yourfieldname.tests.app_testcase.AppTestCase`` insted of ``django.test.TestCase`` and add ``yourfieldname.tests.apps.books`
    in ``install_apps`` field of test case::

        from app_testcase import AppTestCase
        
        class YourFieldTestCase(AppTestCase):
            install_apps = [
                'yourfieldname.tests.apps.books',
            ]
            # write your tests


Automatically update the version number with git
================================================================================================
The original idea came from http://dcreager.net/2010/02/10/setuptools-git-version-numbers/

What you need to do is

1.  Add annotated or signed tag with the following command::

        $ git tag -a 0.1

2.  Then your ``git describe`` shows the tag name and ``python setup.py sdist``
    create the tag named version package

3.  If you change anything and commit, your ``git describe`` may change and that
    is used as new version number and it become miner version up

4.  Add new annotated or signed tag when you release stable version.
pylogd 0.2
logd python library
License: MIT
Keywords: logd python udp logging server client

pylogd
------

pylogd is a python interface to `logd`_.  It pushes log messages or statistics
to logd over a UDP socket.

usage
-----

pylogd ships various utilities to deal with `logd`_, python `logging`_ handlers,
and a ``Stats`` object which makes it trivial to record statistics.

logging
~~~~~~~

To log to logd using the python logging module, create a new handler with your
logd server's host and port and then set it up as your default logging handler::

    from pylogd.handlers import PylogdHandler
    handler = PylogdHandler('mylogpath.log', '127.0.0.1', 8126)
    logger = logging.getLogger()
    logger.setHandler(handler)

Now, subsequent calls to ``logger.(error|warn|etc)`` will log to your logd
server.  If you do this on the root logger (``getLogger('base')``), it will
apply to all subsequently created loggers.

To delete a log, use ``pylogd.delete_log`` with the host and port of logd::

    from pylogd import delete_log
    delete_log('mylogpath.log', host='127.0.0.1', 8126)

stats
~~~~~

To use stats, create a stats handle::

    from pylogd.stats import Logd
    stats = Logd('127.0.0.1', 8126)

You can also supply an optional prefix which will be prepended to all of your
stats, so that multiple applications can use the same logd/graphite server
without having to repeate their per-app key for every stats call.

Once you have a Logd object, you can increment & decrment counters (with an 
optional sample rate)::

    stats.increment('my.counter')
    stats.change_by('my.counter', 10)
    stats.decrement('my.counter', 0.05) # only update 5% of the time

You can also set the value of a meter::

    stats.set('my.meter', 30)
    stats.set('my.meter', 30, 0.25) # only set 25% of the time

There's a basic time interface as well as a convenient timer interface::

    stats.time('my.timer', 11.43) # time manually

    # automatically start & stop a timer
    stats.timer.start('my.timer')
    do_some_timed_operation()
    stats.timer.stop('my.timer')

    # time this function with a 10% sample rate
    @stats.timed('my.long_operation', 0.1)
    def long_operation():
        pass

    # accumulate time done doing various similar tasks
    stats.timer.start_accumulator('timers.mysql')
    do_some_mysql_stuff()
    stats.timer.stop_accumulator('timers.mysql')
    non_mysql_things()
    stats.timer.start_accumulator('timers.mysql')
    do_some_more_mysql_stuff()
    stats.timer.stop_accumulator('timers.mysql')

    # send this timing information to logd
    stats.timer.flush_accumulator('timers.mysql')


twisted support
---------------

For twisted users, use ``pylogd.twisted`` (included) instead of ``pylogd``, and 
note that log messages and stats will not go to logd until the reactor has been
started.

.. _logd: https://github.com/hiidef/logd
.. _logging: http://docs.python.org/library/logging.html