We'd like to announce the release candidate for
HTSQL 2.1, a high-level query language and web
service gateway for relational databases. HTSQL
is specifically designed for analytical inquiries
and targeted to data analysts and web developers.
HTSQL is implemented as a WSGI component, works
with PostgreSQL, MySQL, SQLite and could be used
to embed ad-hoc reporting features into your
Since 2.0 release, announced in February, we added many
new language features which increase the "query power"
of the language. HTSQL is now able to express quite
sophisticated business inquiries.
The 2.2 release of HTSQL later this year will be
focused on "usability". It'll include improved
configuration, a query editor and formatting options.
Also for this release we've cleaned up the homepage
attractive dashboards and interactive reports. This
toolkit is MIT licensed and implemented as a JQuery
plugin. For more detail, please visit http://htraf.org.
Let's us know if you have any questions!
Clark C. Evans & Kirill Simonov
HTSQL -- A Query Language for the Accidental Programmer
HTSQL ("Hyper Text Structured Query Language") is a high-level query
language for relational databases. The target audience for HTSQL is
the accidental programmer -- one who is not a SQL expert, yet needs a
usable, comprehensive query tool for data access and reporting.
HTSQL is also a web service which takes a request via HTTP, translates
it into a SQL query, executes the query against a relational database,
and returns the results in a format requested by the user agent (JSON,
CSV, HTML, etc.).
Use of HTSQL with open source databases (PostgreSQL, MySQL, SQLite) is
royalty free under BSD-style conditions. Use of HTSQL with proprietary
database systems (Oracle, Microsoft SQL) requires a commercial license.
See ``LICENSE`` for details.
For installation instructions, see ``INSTALL``. For list of new
features in this release, see ``NEWS``. HTSQL documentation is in the
The HTSQL homepage
Get taste of HTSQL
The HTSQL tutorial
HTSQL source code
IRC chat in #htsql on freenode
The mailing list for users of HTSQL
HTSQL is copyright by Prometheus Research, LLC. HTSQL is written by
Clark C. Evans <cce(a)clarkevans.com> and Kirill Simonov
Generous support for HTSQL was provided by the Simons Foundation.
This material is also based upon work supported by the National
Science Foundation under Grant #0944460.
The information on ADB / SL4A is quiet overwhelming.
Despite that, especially for people, not familiar with Linux, it's not an easy task to get their
first program running.
This library allows you to easy upload and run Python files on a Android device, without pressing
any button on the Android device.
After installing SL4A and Py4A on the Android device, and ADB on the hostmachine, it's just a matter
of connecting the USB cable between Android device and host-PC, and run the program.
One of the simplest program that will run out of the box (without touching any button on the Android
from adb_sl4a_support import ADB_Connection
ADB = ADB_Connection ()
# Create a simple program
Simple_Program = """
droid = android.Android (( '%s', %s ))
droid.makeToast ( "Wasn't that easy?")
""" % ( ADB.SL4A_Servers [-1], ADB.SL4A_Servers [-1] )
# execute the program (this will run the program from the host PC !!)
exec ( Simple_Program )
you can find the library here:
Announcing Numexpr 2.0
Numexpr is a fast numerical expression evaluator for NumPy. With it,
expressions that operate on arrays (like "3*a+4*b") are accelerated
and use less memory than doing the same calculation in Python.
It wears multi-threaded capabilities, as well as support for Intel's
VML library, which allows for squeezing the last drop of performance
out of your multi-core processors.
This version comes with support for the new iterator in NumPy
(introduced in NumPy 1.6), allowing for improved performance in
practically all the scenarios (the exception being very small arrays),
and most specially for operations implying broadcasting,
fortran-ordered or non-native byte orderings.
The carefully crafted mix of the new NumPy iterator and direct access
to data buffers turned out to be so powerful and flexible, that the
internal virtual machine has been completely revamped around this
The drawback is that you will need NumPy >= 1.6 to run numexpr 2.0.
However, NumPy 1.6 has been released more than 6 months ago now, so we
think this is a good time for taking advantage of it. Many thanks to
Mark Wiebe for such an important contribution!
For some benchmarks on the new virtual machine, see:
Also, Gaëtan de Menten contributed important bug fixes, code cleanup
as well as speed enhancements. Francesc Alted contributed some fixes,
and added compatibility code with existing applications (PyTables)
In case you want to know more in detail what has changed in this
or have a look at RELEASE_NOTES.txt in the tarball.
Where I can find Numexpr?
The project is hosted at Google code in:
You can get the packages from PyPI as well:
Share your experience
Let us know of any bugs, suggestions, gripes, kudos, etc. you may
Find a new release of python-ldap:
python-ldap provides an object-oriented API to access LDAP directory
servers from Python programs. It mainly wraps the OpenLDAP 2.x libs for
that purpose. Additionally it contains modules for other LDAP-related
stuff (e.g. processing LDIF, LDAPURLs and LDAPv3 schema).
Project's web site:
Released 2.4.5 2011-11-25
Changes since 2.4.4:
* defines for SASL and SSL in setup.cfg to be more friendly to
Python setup tools (easy_install)
* Fixed typo in ldap.functions._ldap_function_call() which
always released ldap._ldap_module_lock instead of local lock
Fixed decoding the password policy response control
* Demo script for ldap.controls.ppolicy
I'm pleased to announce a new release of Mailinglogger.
Mailinglogger provides two handlers for the standard python
logging framework that enable log entries to be emailed either as the
entries are logged or as a summary at the end of the running process.
The handlers have the following features:
- customisable and dynamic subject lines for emails sent
- emails sent with a configurable headers for easy filtering
- flood protection to ensure the number of emails sent is not excessive
- support for SMTP servers that require authentication
- fully documented and tested
The only change for this release is to allow summaries sent by
SummarisingLogger to contain messages logged at a lower level than those
which triggered the summary to be emailed.
Full docs can be found here:
For more information, please see:
Simplistix - Content Management, Zope & Python Consulting
I'm pleased to announce the immediate availability of six 1.1.0. six
is a small compatibility library for writing code that works on Python
2 and 3 without modification.
six 1.1 features several incremental improvements over 1.0. The
complete list of changes is:
- Add the int2byte function for converting an int of value less than
256 to a bytes object.
- Add compatibility mappings for iterators over the keys, values, and
items of a dictionary.
- Fix six.MAXSIZE on platforms where sizeof(long) != sizeof(Py_ssize_t).
- Issue #3: Add six.moves mappings for filter, map, and zip.
You can download six on PyPi:
The documentation is at:
Please report bugs at:
JSONBOT is a chatbot that can take commands and react to events on the network it is connected to (IRC, XMPP, WEB
mostely). Push functionality is also provided (think RSS feeds to your IRC channel or XMPP conference). It is possible to program your own plugins to create custom
see http://jsonbot.org and http://jsonbot.googlecode.com
make backup first
I added the jsb-backup program, please run this before starting the 0.80 bot. It will make a backup of your datadir into ~/jsb-backups
* GAE is no longer part of the standard distribution, as that is aimed at shell users as of 0.80 - use the mercurial repo if you want to use the GAE part of the bot
* web console is now supported on shell - use the jsb-tornado program to launch a tornado web server bot on port 10102
* jsb-xmpp now supports OpenFire - use --openfire option to enable this
* todo now uses per user databases instead of per channel - use the -c option to the todo command to show the channel todo
* learn items are not global per default - use !learn-toglobal to copy local learn data to the global learndb
* relay plugins has been rewritten to use bot.cfg.name as well - means that relays need to be created again
* jsb-udpstripped program has been added that can be used to send udp data to the bot without the need of making config files (copy and edit it)
* add fulljids = 1 to your xmpp bot config (most of the times in ~/.jsb/config/fleet/default-sxmpp/config) to enable full JID discovery in xmpp conference rooms
* lots of new plugins .. see !list ;]
* lots of bug fixes - thnx everybody for reporting them
* still lots of things to fix at
03:35 < jsonbot> tracker is http://code.google.com/p/jsonbot/issues/list
If you find any problems or have feature request please post that on the tracker url above.
Or try @botfather on #dunkbots on irc.freenode.net ;]
PyUseCase has been renamed to StoryText and a new release is out.
The 3.6 release introduces support for Java Swing (via Jython),
alongside the previous support for
PyGTK, Tkinter, SWT and Eclipse RCP (also via Jython) and the
prototype for wxPython.
There's also some serious enhancements and bugfixes been done on the
SWT /Eclipse RCP side, and some
minor enhancements and bugfixes for PyGTK.
A bit more detail:
StoryText is an unconventional GUI testing tool for PyGTK, Tkinter,
wxPython, Swing and SWT along with a Python framework for testing GUIs
Instead of recording GUI mechanics directly, it asks the user for
descriptive names and hence builds up a "domain language" along with a
"UI map file" that translates this language into actions on the
current GUI widgets. The point is to reduce coupling, allow very
expressive tests, and ensure that GUI changes mean changing the UI map
file but not all the tests.
Instead of an "assertion" mechanism, it auto-generates a log of the
GUI appearance and changes to it. The point is then to use that as a
baseline for text-based testing, using TextTest.
It also includes support for instrumenting code so that "waits" can be
recorded, making it far easier for a tester to record correctly
synchronized tests without having to explicitly plan for this.
Mailing list: https://lists.sourceforge.net/lists/listinfo/texttest-users