PyScilab. Scilab into Python.
Release 0.0.1: Acid apple.
This is an inmature release oriented to programmers who could help to
the development of the package.
The code is functional but there are some topics missing.
The source code is aviable at:
If you don't know what is python nor scilab
http://www.scilab.org, the best free matrix computation package aviable.
http://www.python.org, the best free general use scripting language aviable.
PyScilab. Rodrigo Benenson. 2003. under GPL.
Release 0.0.1: THIS AN HACKER RELEASE, NOT RECOMENDED FOR END USERS
The main objective are:
- allow to python devellopers to use a true matrix processing system.
- allow the scilab users to use they function in other contexts.
- to have a true pythonic interface.
The expected methods are:
- init and destroy scilab sessions
- create matrix, vectors, lists, (sciobjects in general)
- automaticaly detect the aviable functions
- offer a pythonic interface to call all of this functions
- allow operators between sci objects
- allow plotting
The aviables methods are:
- init an scilab session
- create matrix, vectors, numbers
- allow pythonic scilab code calls
- allow pythonic scilab data retreival
Example session (real example, with release 0.1):
scilab = ScilabSession(SCI= os.getcwd() + '/scilab-2.7/', STAR =
os.getcwd() + '/scilab.star', )
print 'setting a, and b'
a = [[1,2],[3,4]]
b = [[5,6],[7,8]]
scilab['a'] = a
scilab['b'] = b
print 'a:', scilab.get('a')
print 'b:', scilab.get('b')
print 'calling "c= a + b"'
scilab.call('c= a + b')
print 'Obtaining the result'
print 'c : ', scilab['c']
print 'calling "c= a * b"'
scilab.call('c= a * b', a= [5,3], b= 2)
print 'c : ', scilab['c']
print 'calling "e= svd(a), a = [1,2;3,4]"'
scilab.call('e= svd(a)', a= a)
print 'Obtaining the result'
print 'e:', scilab['e']
[rodrigob@localhost pyscilab]$ python2.2 ./pyscilab.py
Copyright (C) 1989-2003 INRIA/ENPC
Starting with exec("/home/rodrigob/projets/pyscilab/scilab.star",-1);quit;
loading initial environment
setting a, and b
a: [[ 1. 2.]
[ 3. 4.]]
b: [[ 5. 6.]
[ 7. 8.]]
calling "c= a + b"
Obtaining the result
c : [[ 6. 8.]
[ 10. 12.]]
calling "c= a * b"
c : [[ 10.]
calling "e= svd(a), a = [1,2;3,4]"
Obtaining the result
e: [[ 5.4649857 ]
- Any window invoking function should crash the python (please fix it!)
- The instalation is tricky and will probably fail
- If the objects are not matrix, vectors or numbers, everything crash
This realease is an acid green apple. Please, help us, report a
succesfull compilation, report an unsuccesfull compilation,
hack the setup.py to be more flexible, hack the code to allow plotting,
report a successfull usage or just say hello.
Please fell free to mail any feedback at
rodrigob at elo dot utfsm dot cl
The development is made using Leo, the outline editor.
Look at the pyscilab.leo file for more info.
The Sydney Python Interest Group is on this Monday.
Alan Green will talk about "Python Web Services using the Zolera SOAP
Infrastructure". He will begin with a quick introduction to Web
Services. and then move onto implementing both "quick and dirty" and
"proper" web services.
Date: Monday May 19th
Location: University of Technology, Sydney (UTS) Broadway campus,
building 10, room 2.440 (computer lab, on the entrance level).
Sydney Python Interest Group meetins are announced on:
* comp.lang.python.announce and python-announce-list(a)python.org
* the Australasian Python users list
* The Sydney Linux User's Group announce list
The Sydney Python Interest Group is, while not restricted to Python on
Linux, a Special Interest Group of the Sydney Linux Users Group (SLUG),
and would like to thank SLUG for its support.
See the PIG webpage: http://pig.slug.org.au/ for previous talks.
I'm pleased to announce that a mailing list for PythonCAD is now active.
Visit the following page for information about subscribing to the list:
My thanks to Barry Warsaw for setting up the list on the Python home.
To announce that there must be no criticism of the President, or that we
are to stand by the President, right or wrong, is not only unpatriotic
and servile, but is morally treasonable to the American public.
-- Theodore Roosevelt, Kansas City Star, 1918
mxODBC Zope Database Adapter
Available for Zope 2.3 - 2.6 on
Windows, Linux and Solaris
The eGenix mxODBC Zope Database Adapter (Zope DA) allows you to easily
connect your Zope installation to just about any database backend on
the market today, giving you the reliability of the commercially
supported eGenix.com product mxODBC and the flexibility of the ODBC
standard as middle-tier architecture.
Unlike Zope's ZODBC Zope DA, the mxODBC Zope DA works on Windows
XP/NT/2000/98/95, Linux and Solaris using the same interface on all
The mxODBC Zope DA implements thread-safe connection pooling and
multiple physical connects per logical Zope connection. You can safely
run Z SQL Methods in parallel, achieving a much better performance
than ZODBC Zope DA or similar Zope database adapters under heavy load.
This makes it ideal for deployment in Zope Clusters and Zope hosting
environments where stability and high performance are a top priority.
* Zope Level 3 Database Adapter: the mxODBC Zope DA is fully
multi-threaded and can handle multiple connections to multiple
* Fully compatible to Z SQL Methods.
* Drop-in compatible to the ZODBC DA: the mxODBC Zope DA provides the
same interfaces as Zope's ZODBC DA to allow a smooth upgrade path
from this simplistic adapater to the high performance mxODBC Zope
* Fully compatible to the Znolk SQL Wizard Product and other similar
products relying on the common database schema access methods
.tables() and .columns().
* Connection Pooling: physical database connections are pooled and
kept open, to reduce the connection overhead to a minimum. This is
especially important for high latency database connections and ones
like Oracle which take a considerable amount of time to setup
* Parallel Execution of Queries on a single logical connection: the
mxODBC Zope DA can manage any number of physical connections on a
single logical connection. This enables running truly parallel Z SQL
Method queries -- a feature not available in other Zope DAs.
* Robust Mode of Operation: connections which have timed out or go
away due to network problems are automatically reconnected.
* Cross-platform Connection Objects: The Zope DA will automatically
choose the right platform specific ODBC manager for you.
* Per Connection Adjustable ODBC Interface: mxODBC comes with many
different subpackages to choose from on Unix. The Zope DA allows you
to select these subpackages on a per-connection basis.
* Per Connection Error Handling: you can tell each connection whether
it should report ODBC warnings or not; furthermore all warnings and
errors are made available as list .messages on the DatabaseConnection
* Transaction safe automatic reconnect: when the DA finds that a
connection has timed out, it automatically tries a reconnect
and replays the transaction on the connection (unlike other DAs
which break the transaction scheme by doing a reconnect without
* Built-in Schema Cache: this results in improved performance under
* Database Schema Access: all ODBC catalog methods are made available
for much better database schema inquiry. The catalog methods allow
building generic database interrogation or manipulation tools and
facilitates writing database independent Zope products.
* Lazy Connect: the mxODBC Zope DA only connects to the database
backends when a connection is actually requested. This results in a
better use of resources compared to other Zope DAs.
Version 1.0.6 includes the following changes and enhancements:
* The lazy connect feature was turned into a per-connection option.
This gives you more control over which connections are maintained
in connect-on-demand state and which are always connected.
* A new option was introduced to let the mxODBC Zope DA return
the natively used mxDateTime values instead of converting them
to Zope's DateTime instances. This is a faster if you're dealing
with a lot of date/time values and also provides more flexibility
in data access. See the mxDateTime documentation for full details
on what this package can offer.
* A bug in the version 1.0.5 lazy connect feature was fixed.
In short: mxODBC Zope DA is continuing to become the number one
solution for integrating relational databases with Zope applications.
If you have already bought mxODBC Zope DA licenses, you can use these
license for the updated version as well. There is no need to buy new
licenses. The same is true for evaluation license users.
For more information on the mxODBC Zope DA, licensing and download
instructions, please visit our web-site:
You can buy mxODBC Zope DA licenses online from the eGenix.com shop at:
Professional Python Software directly from the Source (#1, May 14 2003)
>>> Python/Zope Products & Consulting ... http://www.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/
EuroPython 2003, Charleroi, Belgium: 41 days left
Announcing Matplotlib 0.2
matplotlib is a pure python plotting library designed to bring
publication quality plotting to python with a syntax familiar to
matlab users. Although the goal of publication quality is not yet
attained, the library does produce high quality 2D plots. All of the
plotting commands can be accessed either via a functional interface
familiar to matlab users or an object oriented interface familiar to
matplotlib requires python2.2, Numeric-22+ and pygtk-1.99.16, and
should run anywhere those packages are available. It has been
tested under linux and win32.
The following matlab compatible plotting commands are provided:
axes, axis, bar, close, errorbar, figure, gca, gcf, get, hist,
plot, scatter, set, subplot, text, title, xlabel, ylabel
What's new in 0.2
Font handling - Major improvements in font and text
handling. matplotlib 0.1 drew all text in the same,
non-configurable font. In 0.2, font name, size, weight, and
angle, color, rotation, and more are easily configurable. See
the text tutorial on the website
Multiple figures -- Multiple figures supported with the figure
command. See the Working with multiple figures and axes in the
Interactive shell -- Interactive use from the python shell if you
have pygtk compiled with threads. See Using matplotlib
Saving figures- Ability to save figures in arbitrary resolution PNG
or TIFF with a bug fix that caused saved figures to be corrupted
by anything blocking the figure window. A GUI widget has been
added to the figure toolbar to save figures and a new comand
savefig has been added.
Navigation - A new and hopefully improved navigation toolbar has
been added that doesn't require a wheel mouse, but still works
with one. See the Navigation tutorial.
More examples and screenshots - New examples and screenshot
illustrating the new text functionality, the new plot types, and
new commands. See the examples subdirectory in the src
Patches - A Patch class added for drawing patches (rectangles,
polygons, circles). This supports three new plotting commands
scatter, hist and bar, with more to come.
New commands - New plotting commands bar, close, errorbar, figure,
hist, text, scatter, savefig, ylabel.
Matplotlib on sourceforge - matplotlib homepage moved to sourceforge
with a (hopefully) more useful homepage.
Documentation - Much better documentation and a tutorial.
Refactoring - Substantial rewrite of class library. All text now
handled by the AxisText class in text.py. Axis handling refactored
into a dedicated class Axis defined in figure.py.
SkunkWeb 3.4b3 has been released.
What It Is
SkunkWeb is a configurable, extensible, scalable and robust
high-performance multi-process Python web application server with a
powerful templating system that encourages component based design. It
is known to work on Linux, FreeBSD, Solaris, HPUX 11, MacOS X, and
SkunkWeb includes services to provide, among other things, url
rewriting, database connection caching, product distribution, remote
component calls, usertracking, authorization, and persistent cgi. It
can be used with its builtin standalone web server, with apache using
the mod_skunkweb module, or with apache or another web server using a
scgi, fastcgi, or cgi connector.
SkunkWeb was created by Drew Csillag, and is maintained by him and
me (Jacob Smullyan).
What Is New
This release features many performance and feature enhancements,
* Configuration variable lookups are now *much* faster.
* swpython (a Python interpreter which loads the SkunkWeb environment)
can now be used in shebangs for shell scripts.
* now works on HPUX 11.
* many enhancements to the standalone web server (httpd service),
including support for byte-range requests, Etag headers and gzip
* works with Python 2.3.
Latest release: http://prdownloads.sourceforge.net/skunkweb/skunkweb-3.4b3.tar.gz
Home page: http://skunkweb.sourceforge.net/
Sourceforge project page: http://sourceforge.net/projects/skunkweb/
Online documentation: http://skunkweb.sourceforge.net/docs.html
Mailing list: http://sourceforge.net/mail/?group_id=32756
Two recent articles about SkunkWeb (by JS): http://opensourcedigest.com/
BayPIGgies: Silicon Valley - San Francisco Bay Area Python Users's Group
When: May 14 @ 7:30pm
Where: Carnegie Institute of Washington at Stanford University, Palo Alto, CA
Agenda: Compedium of talks from PyCon 2003
Speaker: Wesley Chun
We will give a high-level overview of some of the talks which were
given at the PyCon 2003 Python Community Conference which happened
at the end of March in Washington, DC.
For more information and directions, see:
leo.py 3.11.1 is now available at: http://sourceforge.net/projects/leo/
This version fixes two bugs found in the recent 3.11 version:
- Leo had startup problems on some Linux systems.
- Creating clones by control dragging did not always work.
This bug has existed in Leo for a long time.
What is Leo?
- A programmer's editor, an outlining editor and a flexible browser.
- A literate programming tool, compatible with noweb and CWEB.
- A data organizer and project manager. Leo provides multiple views
of projects within a single outline.
- Fully scriptable using Python. Leo saves its files in XML format.
- Portable. leo.py is 100% pure Python.
- Open Software, distributed under the Python License.
leo.py requires Python 2.1 or above and tcl/tk 8.3 or above.
leo.py works on Linux, Windows and MacOs X Jaguar.
Edward K. Ream
Edward K. Ream email: edreamleo(a)charter.net
Leo: Literate Editor with Outlines