Hi,
I've just released PyAlsaAudio 0.4 on http://sourceforge.net/projects/pyalsaaudio/
The list of changes is:
- Support for Python 3.0
- API changes: mixers() and Mixer() now take a card index instead of a
card name as optional parameter.
- Documentation converted to reStructuredText; use Sphinx instead of
LaTeX.
- added cards()
- added PCM.close()
- added Mixer.close()
- added mixer.getenum()
- Lars
P.S. Porting to Python 3.0 turned out easier than expected
Project website: http://code.google.com/p/urllib3/
Also available on pypi: http://pypi.python.org/pypi/urllib3
(Licensed under MIT)
Highlights
==========
* Re-use the same socket connection for multiple requests
(``HTTPConnectionPool``)
* File posting (``encode_multipart_formdata``)
* Built-in redirection and retries (optional)
* Thread-safe
What's wrong with urllib and urllib2?
=====================================
There are two critical features missing from the Python standard
library:
Connection re-using/pooling and file posting. It's not terribly hard
to
implement these yourself, but it's much easier to use a module that
already
did the work for you.
The Python standard libraries ``urllib`` and ``urllib2`` have little
to do
with each other. They were designed to be independent and standalone,
each
solving a different scope of problems, and ``urllib3`` follows in a
similar
vein.
Why do I want to reuse connections?
===================================
Performance. When you normally do a urllib call, a separate socket
connection is created with each request. By reusing existing sockets
(supported since HTTP 1.1), the requests will take up less resources
on the
server's end, and also provide a faster response time at the client's
end.
With some simple benchmarks (see `test/benchmark.py
<http://code.google.com/p/urllib3/source/browse/trunk/test/
benchmark.py>`_
), downloading 15 URLs from google.com is about twice as fast when
using
HTTPConnectionPool (which uses 1 connection) than using plain urllib
(which
uses 15 connections).
This library is perfect for:
* Talking to an API
* Crawling a website
* Any situation where being able to post files, handle redirection,
and
retrying is useful. It's relatively lightweight, so it can be used
for
anything!
Examples
========
Go to the `Examples wiki <http://code.google.com/p/urllib3/wiki/
Examples>`_
for more nice syntax-highlighted examples.
But, long story short::
from urllib3 import HTTPConnectionPool
API_URL = 'http://ajax.googleapis.com/ajax/services/search/web'
http_pool = HTTPConnectionPool.from_url(API_URL)
fields = {'v': '1.0', 'q': 'urllib3'}
r = http_pool.get_url(API_URL, fields)
print r.status, r.data
Enjoy! Feedback is very welcome, please send it to shazow at gmail.
- Andrey
P.S.
I apologize in advance for the potentially controversial name, but
after much consideration it turned out to be the most descriptive one
I could think of.
Note: the Python embedding interface is now more robust and works under
windows.
Veusz 1.2.1
-----------
Velvet Ember Under Sky Zenith
-----------------------------
http://home.gna.org/veusz/
Veusz is Copyright (C) 2003-2008 Jeremy Sanders <jeremy(a)jeremysanders.net>
Licenced under the GPL (version 2 or greater).
Veusz is a scientific plotting package. It is written in Python, using
PyQt4 for display and user-interfaces, and numpy for handling the
numeric data. Veusz is designed to produce publication-ready
Postscript/PDF output. The user interface aims to be simple,
consistent and powerful.
Veusz provides a GUI, command line, embedding and scripting interface
(based on Python) to its plotting facilities. It also allows for
manipulation and editing of datasets.
Change in 1.2.1:
* Fix crash when adding a key without any key text defined.
Changes in 1.2:
* Boxes, ellipses, lines, arrows and image files can now be added to
the plot or page and interactively adjusted.
* Page sizes, graphs, grids and axes can be interactively adjusted.
* Plot keys can have multiple columns.
* Error bars can have cross-ends.
* Several user interface usability enhancements.
* Embedding interface has been rewritten to be more robust. It now
uses multiple processes and sockets.
* Embedding now works fully on Windows.
* Embedding interface has been expanded:
- Zoom width, height and page options for zooming graph to window
- Dynamically change update interval
- Move between pages of documents
- Open up more than one view onto a document
* PDF export fixed for recent versions of Qt
* Quite a lot of minor bug fixes
Features of package:
* X-Y plots (with errorbars)
* Line and function plots
* Contour plots
* Images (with colour mappings and colorbars)
* Stepped plots (for histograms)
* Fitting functions to data
* Stacked plots and arrays of plots
* Plot keys
* Plot labels
* Shapes and arrows on plots
* LaTeX-like formatting for text
* EPS/PDF/PNG/SVG export
* Scripting interface
* Dataset creation/manipulation
* Embed Veusz within other programs
* Text, CSV and FITS importing
Requirements:
Python (2.3 or greater required)
http://www.python.org/
Qt >= 4.3 (free edition)
http://www.trolltech.com/products/qt/
PyQt >= 4.3 (SIP is required to be installed first)
http://www.riverbankcomputing.co.uk/pyqt/http://www.riverbankcomputing.co.uk/sip/
numpy >= 1.0
http://numpy.scipy.org/
Optional:
Microsoft Core Fonts (recommended for nice output)
http://corefonts.sourceforge.net/
PyFITS >= 1.1 (optional for FITS import)
http://www.stsci.edu/resources/software_hardware/pyfits
For documentation on using Veusz, see the "Documents" directory. The
manual is in pdf, html and text format (generated from docbook).
Issues:
* Can be very slow to plot large datasets if antialiasing is enabled.
Right click on graph and disable antialias to speed up output.
If you enjoy using Veusz, I would love to hear from you. Please join
the mailing lists at
https://gna.org/mail/?group=veusz
to discuss new features or if you'd like to contribute code. The
latest code can always be found in the SVN repository.
Jeremy Sanders
Hello!
I'd like to introduce Ruis, a new kind of library for developing
distributed systems in Python.
Unlike the usual distributed middleware, Ruis does not force the use
of any single distributed architecture (such as client-server) nor any
single distributed programming paradigm (such as RPC). Instead, you
can also do peer-to-peer distribution, distributed computing, thin
clients, for instance, and use reflective programming and
aspect-oriented technologies in distributed setting.
The Ruis package also includes webformp, a proof-of-concept web
application platform as a Ruis module. It has been used in the
"cross-site chat" example application: less than 100 lines of code of
Python in a single file implements a chat that can be distributed on
several http servers.
If interested, please check out
http://www.cs.tut.fi/~ask/ruis/
Yours,
Antti
The historic Webware for Python version 1.0 has finally been released.
It runs with all Python versions from 2.0 to 2.6.
A lot of bugs have been fixed, and a few small improvements and changes
have been made since the last release. See the release notes for WebKit,
MiddleKit, TaskKit, CGIWrapper and DBUtils for details.
Webware for Python is a suite of Python packages and tools for
developing object-oriented, web-based applications. The suite uses well
known design patterns and includes a fast Application Server, Servlets,
Python Server Pages (PSP), Object-Relational Mapping, Task Scheduling,
Session Management, and many other features. Webware is very modular and
easily extended.
Webware for Python is well proven and platform-independent. It is
compatible with multiple web servers, database servers and operating
systems.
DBUtils is a suite of tools providing solid, persistent and pooled
connections to a database that can be used in all kinds of
multi-threaded environments like Webware for Python or other web
application servers. The suite supports DB-API 2 compliant database
interfaces and the classic PyGreSQL interface.
Check out the Webware for Python home page at http://www.w4py.org
Il Fri, 28 Nov 2008 19:47:01 -0800 (PST), joemacbusiness(a)gmail.com ha
scritto:
> I dont understand why the following code never finds "tree".
New line marker to be stripped?
> if item == var:
if item.strip() == var:
D.
Hi,
The 3rd meeting of the Iowa Python Users Group (Pyowa) is getting
together next Monday, December 1st, 7-9 p.m. Be sure to mark your
calendars! We currently have one presentation scheduled and a workshop
where we hope to have teams work on easy to intermediate problems in an
effort to learn and improve one's Python programming skills. There will
probably be time for Lightning Talks
(http://en.wikipedia.org/wiki/Lightning_Talk) as well if you're
interested in sharing something.
We are meeting at the following location:
Marshall County Sheriff's Office
2369 Jessup Ave
Marshalltown, IA 50158
This group is open to new and experienced programmers. Come and network
with local IT personnel. If you know you can make it, could you please
let me know? It's nice to have a general idea of how many will be there
(there is plenty of room though). We hope to see you there!
Mike Driscoll
Pyowa Organizer
http://www.pyowa.org
Hi All,
I dont understand why the following code never finds "tree".
I could not find the answer in the Python tutorials.
Here is the code, test43.in, and runtime:
#!/usr/bin/python
fname = open("test43.in")
var = 'tree'
for item in fname:
print "item: ", item,
if item == var:
print "found tree: ", item,
[jmccaughan@dhcppc2 work]$
[jmccaughan@dhcppc2 work]$
[jmccaughan@dhcppc2 work]$ cat test43.in
car
tree
house
pool
dog
cat
wax
candy bar
[jmccaughan@dhcppc2 work]$ python test43.py
item: car
item: tree
item: house
item: pool
item: dog
item: cat
item: wax
item: candy bar
Thanks, joemacbusiness(a)gmail.com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
It's been ages since we did a formal python-mode.el release, so I took
the opportunity to embrace my tryptophan induced hallucinations and
release a new version. Skip was suggesting we try to include better
triple quoted string support, but my motto for today is JFDI. So here
it is for better or worse, and I hope we'll be making further
improvements over time.
I have no idea what's new since whatever version you have. RTSL and
enjoy.
Download from: https://launchpad.net/python-mode/+download
Bugs and patches: https://launchpad.net/python-mode
Cheers,
- -Barry
P.S. Please note that while we still have lots of artifacts sitting on
the SourceForge project, and there's no way to disable them, we've
requested an import of those issues into Launchpad. For all new
patches and bugs, you must submit them to Launchpad or we'll probably
ignore them.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Darwin)
iQCVAwUBSTAiMXEjvBPtnXfVAQJl7gQAj4uiD9xQrn530f/riOG9bRBKZt4mhre4
5wcWsYX3JWeI/gWF3lk6ckjfHTYriJNN/rFtzRL3/YPGs5ftRD2kw1matDPF8uhs
Vv+pNwNatnoiVl3RzBx4uGNsaEe04LVNf8DocwheYdVCo321VSllcsC02cqXzMSZ
hNpE63kAZJs=
=hyn9
-----END PGP SIGNATURE-----
Hi all
I'm delighted to announce the release of Ironclad v0.7, which is now
available from http://code.google.com/p/ironclad/downloads/list . This
release is a major step forward:
* Runs transparently on vanilla IronPython 2.0RC2, without creating
extra PythonEngines or breaking .NET namespace imports
* Many numpy 1.2 tests (from the core, fft, lib, linalg and random
subpackages) now reliably pass (run "ipy numpytests.py" from the build
directory)
* Significant performance improvements (by several orders of magnitude
in some places :D)
So... if you want to use numpy (or other C extension modules) with
IronPython on Win32, please download it and try it out; I'm very keen
to hear your experiences, and to know which neglected features will be
most useful to you.
Cheers
William