Development
Interview with Frank Wierzbicki from the Jython project
Jython is a version of the Python language that is written in Java while standard Python (CPython) is written in C. From the project's V2.2 web site: "Jython is an implementation of the high-level, dynamic, object-oriented language Python written in 100% Pure Java, and seamlessly integrated with the Java platform. It thus allows you to run Python on any Java platform."
We conducted an email interview with Jython developer Frank Wierzbicki.
Greetings, Could you tell us about yourself and your role with the Jython project?
How many team members are on the project, and what are their functions?
What was the motivation behind the creation of Jython?
Do any companies provide financial backing for Jython?
What kinds of of applications would be better to write in Jython instead of C Python?
Applications that want to access multiple cores using threads should also consider Jython. Our multi-threading story is potentially better than CPython's due to our lack of a GIL (Global Interpreter Lock). Our dictionary implementation is based on the ConcurrentHashMap from the wonderful java.util.concurrent APIs, which means that our dictionary should scale very well in the face of multiple threads. To make good use of multiple cores from CPython, you'd need to use multiple processes or drop to C code for your threading.
How does the memory usage and speed of Jython compare with C Python?
Speed-wise, we perform between the same and about two times slower compared to CPython for most tasks. There are a few areas where we find that we are faster than CPython, see here for one.
As an aside, the 2.5.0 cycle focused almost exclusively on CPython compatibility. We have done very little performance work to date. Performance will be a big focus for 2.5.1 and 2.6.
Is Jython more popular with users of Linux, other types of Unix or Windows?
Could you tell us about the enhancements that have been added to the recently released Jython 2.5.0?
What are the plans for upcoming releases of Jython?
I also plan to take advantage of the really cool work being done for JDK 7 in the Da Vinci Machine project which aims to improve the support that the JVM has for dynamic languages. Using this work (much of which has already made it's way into OpenJDK) Jython will perform better with much simpler internal code.
Is there anything else you would like to share with our readers about Jython?
System Applications
Database Software
dbf converter 0.02 released
Version 0.02 of dbf converter has been announced. "dbfconverter.py is platform independent python script. It converts database with dbf files or single dbf file into sql code, wich you can load into any sql database."
PostgreSQL Weekly News
The June 21, 2009 edition of the PostgreSQL Weekly News is online with the latest PostgreSQL DBMS articles and resources.
Embedded Systems
BusyBox 1.14.2 released
Version 1.14.2 of BusyBox, a collection of command line utilities for embedded systems, has been announced. "Bug fix release. Contains fixes in ash ('.' builtin), ftpd, httpd, modprobe (better exit code compatibility), readlink (more options supported), telnetd (now closes file descriptors in childred, it was forgetting to do so)."
Interoperability
Four new versions of Samba available
Versions 3.3.6 (security fix), 3.2.13 (security fix), 3.0.35 (security fix) and 3.4.0rc1 (release candidate) of Samba have been announced.
Networking Tools
libnfnetlink 1.0.0 released
Version 1.0.0 of libnfnetlink has been announced, it includes new features and bug fixes. "libnfnetlink is the low-level library for netfilter related kernel/userspace communication. It provides a generic messaging infrastructure for in-kernel netfilter subsystems (such as nfnetlink_log, nfnetlink_queue, nfnetlink_conntrack) and their respective users and/or management tools in userspace."
Robotics
Ada and LEGO MINDSTORMS NXT
The Ada language is being used for an educational robotic software control system. ""GNAT for LEGO MINDSTORMS NXT is a GPL port for the GNAT compilation system to the LEGO NXT robotic platform, designed to offer an educational platform for teaching and learning embedded systems development."
Telecom
Announcing ConnMan.net
Intel and Nokia have jointly launched the ConnMan project, an open source project to accelerate and expand development of Internet connection management for Linux Devices. "Connman.net is now the place to bring developers together who are interested in furthering the development of Internet connection management within Linux. Review the source code for more information. ConnMan is licensed under GPLv2, and provides a daemon for managing Internet connections within Linux devices."
Web Site Development
Karrigell 3.0 released
Version 3.0 of Karrigell, a Python web framework, has been announced. "Karrigell has been around since 2002 and after numerous versions, until 2.4.0 last year, it needed a complete rewriting. Some modules had been written long ago, using out-of-date patterns ; the global architecture needed cleaning up, to replace an accumulation of modules added one release after the other ; most important, the previous versions were unable to run reliably in a multithreaded environment, which was a serious limitation for professional web developement".
nginx 0.6.38 announced
Version 0.6.38 of the nginx web server has been announced. The CHANGES document says: "Feature: the "keepalive_requests" directive."
Desktop Applications
Desktop Environments
GNOME 2.27.3 released
Version 2.27.3 of GNOME has been announced. "This is the third development release towards the wonderful 2.28 release! Various bug fixes and nice improvements in several modules. Fun, fun, fun!"
GNOME Software Announcements
The following new GNOME software has been announced this week:- Clutter 0.9.4 and 1.0.0rc1 (new features, bug fixes and code cleanup)
- Clutter-GTK 0.9.2 (new features and bug fixes)
- Glade 3.6.6 (bug fixes)
- Gnome Subtitles 0.9 (new features, bug fixes and translation work)
- gwget 1.0.2 (bug fixes and code cleanup)
- JSON-GLib 0.7.2 (new features, bug fixes and code cleanup)
- PyGTK 2.15.2 (new features, bug fixes and documentation work)
- rep-gtk 0.18.6 (bug fixes)
- Yelp 2.27.1 (documentation work)
KDE Software Announcements
The following new KDE software has been announced this week:- ATI Overclocking Utility X32 1.0.0 (new features)
- ATI Overclocking Utility X64 1.0.0 (new features)
- Choqok 0.6.1 (bug fix)
- Cirkuit 0.1 (initial release)
- Cirkuit 0.1.1 (new feature and bug fix)
- GimpBrushThumbs 1.0 (unspecified)
- Kalternatives 0.12 (new features and KDE4 port)
- KMidimon 0.7.0 (new features, documentation and translation work)
- KpGen 1.2 Beta 2 (new features)
- mediainfo-qt 0.1 (initial release)
- mtvcgui 0.3 (new features and bug fixes)
- PokerTH 0.7.1-beta (new features, bug fixes and code cleanup)
- QtiPlot 0.9.7.8 (new features, bug fixes and translation work)
- Simutrans Starter 2 1.99.3 (new features, bug fixes and translation work)
- SixA 0.3 (unspecified)
- Soprano 2.2.4 (bug fixes)
- Soprano 2.2.69 RC1 (new features)
Blog series on XInput 2
Peter Hutterer has published a three part blog series (part 1, part 2 and part 3) on X11's XInput 2. "XI2 is now merged into master. Over the next couple of days, I will post various recipes on how to deal with the new functionality. The examples here are merely snippets, full example programs to summarize each part are available here." (Thanks to Paul Wise).
Xorg Software Announcements
The following new Xorg software has been announced this week:- inputproto 1.5.1 (bug fix)
- inputproto 1.9.99.12 (new features and bug fixes)
- util-macros 1.2.2 (bug fixes)
- xfs 1.1.0 (new features, bug fixes and code cleanup)
- xinput 1.4.99.1 (new features, bug fixes and code cleanup)
Desktop Publishing
rst2pdf 0.11 is out
Version 0.11 of rst2pdf has been announced. "Rst2pdf is a tool to generate PDF files directly from restructured text sources via reportlab. This version includes many bugfixes and some new features compared to the previous 0.10.1 version, including but not limited to embedding PDF images, much improved image sizing, nicer list layouts, better styling, page backgrounds, and more than 15 bugs fixed."
Educational Software
Sugar on a Stick Strawberry released
Sugar Labs has announced the release of the Sugar on a Stick Strawberry learning platform. "The Sugar on a Stick Strawberry release is based Fedora 11 and includes the latest updates as of June 22. It also features the last Sugar desktop environment, namely version 0.84, and additional activities to enrich the user experience."
Games
Freecell Solver 2.32.0 released
Version 2.32.0 of Freecell Solver has been announced, it includes several new capabilities and bug fixes. "Freecell Solver is an open-source (MIT/X11 Licensed) ANSI C-based library and some standalone command-line tools for solving Freecell and similar Solitaire variants such as Baker's Game, Seahaven Towers and Eight Off as well as Simple Simon."
Interoperability
Wine 1.1.24 announced
Version 1.1.24 of Wine has been announced. Changes include: "Support for freedesktop file associations. Support for exception handling on 64-bit. Improved ARB shaders. Fixes for the FBO mode. Many listview improvements. Various bug fixes."
Mail Clients
Thunderbird 2.0.0.22 available for download
Version 2.0.0.22 of Thunderbird has been announced. "We strongly recommend that all Thunderbird users upgrade to this latest release. If you already have Thunderbird 2.0.0.x, you will receive an automated update notification within 24 to 48 hours. This update can also be applied manually by selecting "Check for Updates?" from the Help menu."
Music Applications
ride tab editor 2.0 released
Version 2.0 of ride tab editor has been announced. "ride tab editor is a freeware multiplatform tab editor for bass, guitar and drums. included is a csound tool released under a dual license (free for non-profit the qt license in other words). to convert the drum tabs into csound scores".
ride tab editor 2.02 released
Version 2.02 of ride tab editor has been announced, it includes some GUI improvements. "ride tab editor is a tab editor created in 2004 that originally allowed guitar, bass and drums. ride tab editor 2 is started to address problems people had of finding tab editors for other instruments by allowing them to create custom format definitions. It is also very useful to create text based piano rolls for text based music programming languages such as csound. two examples are provided."
Office Applications
Leo 4.6 beta 2 released
Version 4.6 beta 2 of Leo has been announced. "Leo is a text editor, data organizer, project manager and much more."
Web Browsers
The initial publication of about:mozilla
The about:mozilla blog site has been announced. "Im in the process of re-re-evaluating the purpose and utility of this blog, so there may be new activity here soon (once I sort out what I want to do with it). In the meantime, Ive figured out how to autogenerate a list of all the about:mozilla archives! You can find every issue weve ever published on the Newsletter archives page. Enjoy!" (Thanks to Joe Drew).
Miscellaneous
SeaMonkey 1.1.17 released
Version 1.1.17 of SeaMonkey has been announced. "Today, the SeaMonkey project released a new version of its all-in-one Internet suite. SeaMonkey 1.1.17 closes several security vulnerabilities and fixes a few smaller problems found in previous versions. With that, SeaMonkey stays at the same level of security as its sibling Firefox 2, which is issuing updates for the same problems this week as well."
Languages and Tools
Caml
Caml Weekly News
The June 23, 2009 edition of the Caml Weekly News is out with new articles about the Caml language.
PHP
PHP 5.3.0RC4 released
Release candidate 4 of PHP 5.3.0 has been announced. "The PHP development team is proud to announce the fourth release candidate of PHP 5.3.0 (PHP 5.3.0RC4). This RC focuses on bug fixes and stability improvements, and we hope only minimal changes are required for the next candidate or final stable releases. PHP 5.3.0 is a newly developed version of PHP featuring long-awaited features like namespaces, late static binding, closures and much more."
Python
Python-URL! - weekly Python news and links
The June 20, 2009 edition of the Python-URL! is online with a new collection of Python article links.CodeInvestigator 0.13.0 released
Version 0.13.0 of CodeInvestigator, a tracing tool for Python, has been announced. "Bug fix: Changes to imported files were not taken into account. This version only works with Python 2.6. Some modules disappear in Python 3.0 and this version has these modules replaced."
cx_Logging 2.0 announced
Version 2.0 of cx_Logging has been announced, it includes numerous improvements. "cx_Logging is a Python extension module which operates in a fashion similar to the logging module that ships with Python 2.3 and higher. It also has a C interface which allows applications to perform logging independently of or in tandem with Python."
ErrorHandler 1.0.0 released
Version 1.0.0 of ErrorHandler has been announced. "I'm pleased to finally get around to announcing the release of ErrorHandler. This is a handler for the python standard logging framework that can be used to tell whether messages have been logged at or above a certain level. This can be useful when wanting to ensure that no errors have been logged before committing data back to a database."
HDF5 for Python 1.2 announced
Version 1.2 of HDF5 for Python, a general-purpose Python interface to the Hierarchical Data Format library, has been announced. "I'm pleased to announce the availability of HDF5 for Python 1.2 final! This release represents a significant update to the h5py feature set."
MailingLogger 3.3.0 released
Version 3.3.0 of MailingLogger has been announced. "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."
Numexpr 1.3.1 released
Version 1.3.1 of Numexpr has been announced. "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. This is a maintenance release. On it, support for the `unit32` type has been added (it is internally upcasted to `int64`), as well as a new `abs()` function (thanks to Pauli Virtanen for the patch)."
TestFixtures 1.6.0 released
Version 1.6.0 of TestFixtures has been announced. "I'm pleased to announce the first advertised release of TestFixtures. This is a collection of helpers and mock objects that are useful when writing unit tests or doc tests."
Tcl/Tk
Tcl-URL! - weekly Tcl news and links
The June 20, 2009 edition of the Tcl-URL! is online with new Tcl/Tk articles and resources.Tcl-URL! - weekly Tcl news and links
The June 24, 2009 edition of the Tcl-URL! is online with new Tcl/Tk articles and resources.
Debuggers
PuDB 0.92.1 - a console-based visual debugger
Version 0.92.1 of PuDB has been announced. "PuDB is a full-screen, console-based visual debugger for Python. Its goal is to provide all the niceties of modern GUI-based debuggers in a more lightweight and keyboard-friendly package. PuDB allows you to debug code right where you write and test it--in a terminal. If you've worked with the excellent (but nowadays ancient) DOS-based Turbo Pascal or C tools, PuDB's UI might look familiar."
Version Control
bzr 1.16 released
Version 1.16 of the bzr adaptive version control system has been announced. "This version of Bazaar contains the beta release of the new ``2a`` repository format, suitable for testing by fearless, advanced users. This format or an updated version of it will become the default format in Bazaar 2.0. Please read the NEWS entry before even thinking about upgrading to the new format. Also included are speedups for many operations on huge projects, a bug fix for pushing stacked new stacked branches to smart servers and the usual bevy of bug fixes and improvements."
GIT 1.6.3.3 released
Version 1.6.3.3 of the GIT distributed version control system has been announced, it includes numerous bug fixes.
Miscellaneous
libfiu: fault injection in userspace
Version 0.1.1 of libfiu, a C library for fault injection, has been announced. "It comes with some tools that can be used to simulate failures in the POSIX functions without having to modify the application's source code. The main application (or at least the one I had in mind when writing it) is to simplify automated testing of software behaviour at failure scenarios, for software which is supposed to be fault-resistant or at least gracefully cope with failures."
Page editor: Forrest Cook
Next page:
Linux in the news>>
