[ANN] argparse 0.5 - Command-line parsing library
Announcing argparse 0.5 --- argparse home: http://argparse.python-hosting.com/ argparse single module download: http://argparse.python-hosting.com/file/trunk/argparse.py?format=raw argparse bundled downloads at PyPI: http://www.python.org/pypi/argparse/ About this release == This release adds support for required options, better support for opening files (deprecating the 'outfile' type), better control over help formatting and better support for negative number arguments. New in this release === * Required options may now be created by specifying required=True in calls to add_argument. http://argparse.python-hosting.com/wiki/ArgumentParser/add_argument/required * The 'outfile' type has been deprecated. Use the new FileType factory which can be used to specify both file mode and buffer size, and knows how to convert '-' into sys.stdin or sys.stout as appropriate. The 'outfile' type will be removed in a future release. http://argparse.python-hosting.com/wiki/FileType * The ArgumentParser constructor now accepts a ``formatter_class`` keyword argument which can be set to argparse.RawDescriptionHelpFormatter to keep argparse from line-wrapping your description. * The algorithm in parse_args() has been enhanced to understand that negative numbers are usually positional arguments, not misspelled optional arguments. About argparse == The argparse module is an optparse-inspired command line parser that improves on optparse by: * handling both optional and positional arguments * supporting parsers that dispatch to sub-parsers * producing more informative usage messages * supporting actions that consume any number of command-line args * allowing types and actions to be specified with simple callables instead of hacking class attributes like STORE_ACTIONS or CHECK_METHODS as well as including a number of other more minor improvements on the optparse API. To whet your appetite, here's a simple program that sums its command-line arguments and writes them to a file:: parser = argparse.ArgumentParser() parser.add_argument('integers', nargs='+', type=int) parser.add_argument('--log', default=sys.stdout, type=argparse.FileType('w')) args = parser.parse_args() args.log.write('%s\n' % sum(args.integers)) args.log.close() -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
Ann: apsw 3.3.10-r1 (Another Python SQLite Wrapper)
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 APSW 3.3.10-r1 is now available. Home page: http://www.rogerbinns.com/apsw.html APSW provides an SQLite 3 wrapper that provides the thinnest layer over SQLite 3 possible. Everything you can do from the C API to SQLite 3, you can do from Python. Although APSW looks vaguely similar to the DBAPI, it is not compliant with that API and instead works the way SQLite 3 does. This release must be used with SQLite 3.3.10 or above Notable changes since the last release: * Even more test cases (you can't have too many!) * Augmented stack traces giving more details when errors or exceptions occur http://www.rogerbinns.com/apsw.html#augmentedstacktraces * String/Unicode values work correctly if they have embedded NULL characters (ie not truncated at the NULL). * You can load SQLite shared library extensions. * You can write virtual tables in Python http://www.sqlite.org/cvstrac/wiki?p=VirtualTables http://www.rogerbinns.com/apsw.html#VirtualTables * You must call close() on connections. You can also call close on cursors, but it usually isn't necessary. * All strings are returned as unicode * Uses the sqlite3_prepare_v2 api which means SQLITE_SCHEMA no longer occurs except when there is a permanent error * Added a statement cache Differences between APSW and PySqlite: http://www.rogerbinns.com/apsw.html#pysqlitediffs Roger -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFFrXpCmOOfHg372QQRAmtsAJkBm7K1BFtojpe4AJRfIB94tniY6gCfRIrB 3q2yq/nkmJNcDCb8wcCPpSg= =Su+i -END PGP SIGNATURE- -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: shove 0.1, the next-generation shelve
shove is a object storage frontend inspired by the standard library's shelve module. It features a dictionary-style API, automatic object storage (with pickle) with in-storage compression (with zlib), and multiple storage and caching backends. The currently supported storage backends are: * Amazon S3 Web Service * Berkeley Source Database * Filesystem-based * Firebird * FTP * DBM * Durus * Memory * Microsoft SQL Server * MySQL * Oracle * PostgreSQL * SQLite * Subversion * Zope Object Database (ZODB) Currently supported caching backends are: * Filesystem-based * Firebird * memcached * Memory (thread-safe or non-thread-sa * Microsoft SQL Server * MySQL * Oracle * PostgreSQL * SQLite The simplest use case for shove is: from shove import Shove store = Shove() creating an in-memory store and cache. To use a different storage or caching backend, a backend-specific URI or an existing store or cache instance must be passed to the Shove class using the format: STORENAME = Shove(STORE, CACHE) Each backend-specific URI format is documented in its module source code. The URI format follows the URI format used by SQLAlchemy: http://www.sqlalchemy.org/docs/dbengine.myt#dbengine_establishing shove is available for download from its CheeseShop page: http://cheeseshop.python.org/pypi/shove or it can be installed by using setuptools: easy_install shove shove has been tested and confirmed to work on Python 2.4 and Python 2.5. shove has an extension, multishove, with the same features but with added support for storing objects to multiple storage backends simultaneously. shove itself can only store objects to one backend at a time. To use multiple backends with multishove, multiple backend-specific URIs or store instances must be passed to the MultiShove class following the format: from multishove import MultiShove STORENAME = MultiShove(STORE1, STORE2 ..., cache=CACHE) multishove is available for download from its CheeseShop page: http://cheeseshop.python.org/pypi/multishove or it can be installed by using setuptools: easy_install multishove multishove has been tested and confirmed to work on Python 2.4 and Python 2.5. -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: OSCON 2007: Call for Proposals
OSCON 2007 http://conferences.oreillynet.com/os2007/ Save the date for the 9th annual O'Reilly Open Source Convention, happening July 23-27, 2007 at the Oregon Convention Center in beautiful Portland, Oregon. Call For Participation -- Submit a proposal-fill out the form at: http://conferences.oreillynet.com/cs/os2007/create/e_sess Important Dates: * The submission deadline for all proposals is February 5, 2007. * Speakers will be notified by February 26, 2007. * Final session details and speaker bios due May 20, 2007. * Tutorial materials are due June 15, 2007. * Conference: July 23-27, 2007 Proposals - We want to hear about your winning techniques, favorite life-savers, and the system you've made that everyone will be using next year. We'll have tracks for sessions and tutorials on Linux, PHP, Perl, Python, Ruby, Java, Databases, Desktop Applications, Web Applications (client-side and server-side), Windows, Administration, Security, and Emerging Topics. We are considering proposals for 45 minute sessions and 3 hour tutorials. We rarely accept 90 minute proposals, as most general sessions are 45 minutes in length. Your proposals are examined by a committee which draws from them and which also solicits proposals to build the program. Proposals are due by midnight (PST), Feb. 5, 2007. The OSCON Speaker Manager, Vee McMillen, emails notification of the status of your talk (accepted or otherwise) by February 26, 2007. Unless the content of your talk is particularly timely (e.g., features of a product that will be launched at OSCON), you are required to send us your slides several weeks before the conference begins. Submit proposals via the form below. http://conferences.oreillynet.com/cs/os2007/create/e_sess Don't wait until the last moment to submit your proposal for the Python track at OSCON 2007. The proposal deadline is less than three weeks away and we have a limited number of tutorial and session slots available for Python talks. -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
PyWeek #4 in April!
PyWeek #4 (a cold cup 'o tea) is has been scheduled the first week of April: Start: 00:00UTC Sunday 1st April Finish: 00:00UTC Sunday 8th April REGISTRATION IS NOT YET OPEN Registration will open at the start of March. Visit the PyWeek website for more information: http://pyweek.org/ THE PYWEEK CHALLENGE: - Invites all Python programmers to write a game in one week from scratch either as an individual or in a team, - Is intended to be challenging and fun, - Will hopefully increase the public body of python game tools, code and expertise, - Will let a lot of people actually finish a game, and - May inspire new projects (with ready made teams!) Entries must be developed during the challenge, and must incorporate some theme decided at the start of the challenge. The rules for the challenge are at: http://media.pyweek.org/static/rules.html Richard -- Visit the PyWeek website: http://pyweek.org/ -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html
ANN: amplee 0.4.0
Hi all, I finally released a new version of amplee. I've moved from 0.3.x to 0.4.x as there are a couple of modification to the API that were worse the bump. I think this version is much more stable and bug free. Mind you it's a long way before I can claim is entirely unit tested. But it gets there. The main modifications since 0.3.6 are: * Added a loader feature. I realized that setting up the store was a recurrent task and I wondered how to help in this task. I came up with the loader feature. Basically you describe your APP store within a config file (pure INI) and calls the loader method. This will construct entirely your store and returns it to you. This is quite handy and makes the creation of a store much easier. * Handler API introduced. Amplee does the best it can to provide you with an API an tools to handle the dirty work of APP and let you enhance it by a callback system. In previous version those callbacks were attached to the collection which forced to some not very friendly hacks. Now it's a matter of creating a class that implements a set of methods which will then be called by amplee at the right moment. This class is what I call a handler and associated with a media-type that the collection accepts. * The loading and reloading of members is more flexible. In the past you could solely reload all members of a store or none. Now you have more granularity upon what should be loaded into a collection's cache. * Many notable bugs have been fixed in the handling of Atom within the members and they should be much more reliable now. * You can now find a small blog example that shows you how to use amplee. If you think of upgrading you should note that because of the modification on the callback API you may have some work to do. But this should not be too difficult. == Download == * easy_install -U amplee * Tarballs http://www.defuze.org/oss/amplee/ * svn co https://svn.defuze.org/oss/amplee/ == Documentation == http://trac.defuze.org/wiki/amplee http://www.defuze.org/oss/amplee/doc/html/ == Examples == You can get some source code examples at http://defuze.org/oss/amplee/amplee-example-0.4.0.tgz == TODO == * Add more tests * Improve documentation * Test with IronPython * Enhance WSGI support Have fun, -- Sylvain Hellegouarch http://www.defuze.org Reply -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html