November 30, 2004
This article was contributed by Mark Stosberg
The field of alternatives to CVS has exploded.
Alternatives have been
documented
and
compared, but the trends deserve further analysis.
It's truly a critical moment, as the winds of change are shifting over the
landscape of source control. Major projects, such as
PostgreSQL,
KDE,
and
emacs are discussing the dumping of
CVS for an alternative. Smaller Projects, such as
wxRuby and
Rhythmbox
have already switched.
A Source Control Management (SCM) system is important because
this software choice impacts a whole group of developers, and
changing systems can be very disruptive to a project.
The larger the project, the greater the inertia, and higher the cost
to switch.
Here's my analysis of trends that will emerge:
What won't happen: No "CVS replacement" will emerge, at least not
with the dominance that CVS has had. Instead, what we will see will follow
the patterns of the expanding offerings of scripting languages.
Although Perl has long dominated this category, other languages have
dared to challenge the heavyweight, and they have prospered.
Python, PHP, and ruby are all doing well, with growing communities
building up around them.
Don't expect to see one clear SCM leader, with the rest hopelessly
out of sight in terms of popularity and usability. Many sufficiently
capable alternatives are emerging. The diverse environment we will see
will play a part in determining which projects stand out.
Those projects that grasp the importance of playing well with
other SCMs will see increased popularity.
The young
svk project seems to understand
this issue. They integrate with
VCP,
a framework designed for interchanging formats of various SCMs.
Svk is being designed so that at maturity, you will be able to use
it as a client for several other SCMs.
Consider the following situation for a typical open-source programmer:
The programmer would like to contribute to one project that uses CVS,
another which uses Subversion, and a third which uses Arch.
Rather than learning all three, she can use svk, reduce her
overhead time, and improve her overall efficiency.
Currently, svk can mirror a CVS archive, but not perform a
"commit through" on your changes.
As people contribute to this 'glue' project, it will be easier for
participating SCMs to update their own offerings to allow
better interoperability.
One important trend is the removal the "single central server"
limitation of CVS. New distributed systems allow developers to share changes in a peer-to-peer mode without going through a central server.
This feature will gain prominence for two reasons. Most importantly,
the centralized model is a subset of what a distributed system can do.
So users don't have to pick an "either or" solution.
Also, a distributed design maps extremely well onto the organic
global network of open source software development.
Developers who do not have "commit access" benefit from
distributed systems because
they are given a much expanded toolkit,
giving them access to the same command set
that the core developers have. With better tools for more developers,
more time can be spent writing code instead of managing it.
Distributed SCMs should be equally beneficial to corporations,
with their increasingly distributed structures. More activity can
happen locally to the developers, making a fast link to a distant
central server less critical for developer productivity.
I have followed two distributed SCMs in particular,
Arch
and Darcs.
Arch currently has a larger user base, and arch repositories exist
for popular projects such as the Emacs and Vim editors.
Arch is also noticeably
more complex to set up and use.
Darcs, which
just turned 1.0, shines because of its ease of use, clear documentation, and powerful underlying unique "theory of patches".
Svk is
working on
emulating the Darcs interface, while Arch would like to support
the Darcs patch handling features.
It's not all roses for Darcs, though. While it receives praise for use
on small projects, it is known to
hang for hours on large trees like the
Linux kernel as well as
when large scale conflicts occur.
Colin Walters, an Arch hacker, shares my vision of a
distributed future.
He
concluded recently:
"The contender for the future of free software revision control
is still very much up in the air..
This much is clear: If you are still using CVS, it's time to evaluate the alternatives, and think distributed.
Comments (18 posted)
System Applications
Database Software
Version 0.8.9 of Glom, a database table designer GUI, is out
with numerous bug fixes and translation improvements.
Full Story (comments: none)
Version 1.6 of JabRef, a graphical application for managing
bibliographical databases,
has been announced.
"
Being
the first version preceded by a public beta, we hope that JabRef 1.6 will be
the most stable release so far. There are many new features since version
1.55, including greatly improved handling of bibtex strings, export to MODS
format and facilities for detecting and handling external changes to open
files. Many bugs have been fixed, and the user interface has been improved in
many small ways."
Comments (none posted)
Version 8.0.0 Beta 5 of the PostgreSQL database
has been announced.
"
Its been almost 4 weeks since Beta4. After a lot of work involving a lot of bug fixes and documentation improvements to the source tree, we have just released our 5th Beta of 8.0.0.
All of our major Open Items have now been completed, and we're slowly entering the final stages, involving a lot of testing and documentation changes."
Comments (none posted)
The November 29, 2004 edition of the PostgreSQL Weekly News is
available with the week's PostgreSQL database news.
Full Story (comments: none)
Libraries
Version 1.12 of libxklavier, the X keyboard utility library, has been released.
"
The very first xmodmap-enabled release of libxklavier is out. The
API/ABI were broken again (sure, compatbility in GNOME CVS HEAD is
maintained). Really hope to keep 1.1x series API stable from this
point."
Full Story (comments: none)
Mail Software
Version 3.0 final of the standalone email package for Python
is available.
"
Python 2.4 final will probably be released in a few hours so this seems
like a good time to release the standalone email package, version 3.0
final. Unless there's some last second snafu, this will be identical to
the version released with Python 2.4."
Full Story (comments: none)
Networking Tools
Version 1.0 of Firestarter, a visual firewall tool for GNOME,
is out.
"
The program features a friendly setup wizard, a real time firewall
event monitor and an advanced rules based system for creating traffic
policy. The program also helps you set up Internet connection sharing
in just a few clicks, or port forwarding when used on a LAN."
Changes include a redesigned user interface, a new security policy
system, DHCP service support, a view of connections, and more.
Full Story (comments: none)
Web Site Development
Stable version 1.2.02 of
BIG SAM,
the Built-In Guestbook / Stand-Alone Module (written in PHP) is out.
Comments (none posted)
Version 3.2.25 of the
mnoGoSearch
web site search engine has been released. See the
Change Log for details.
Comments (none posted)
The first stable release of phpPgWeb
has been announced.
"
This PHP lgpl library is intended to make quickly a user friendly web interface to a postgresql database. It is thought to be configurable, manage automatically references between tables, has multilanguage support, and could be extended quite easily. It is not intended as admin tool (see phpPgAdmin), but as an intuitive web mask to a database."
Comments (none posted)
Version 2.0a2 of the Quixote web platform is available with lots of
changes.
"
We still have a lot of work to do before a stable release.
The documentation needs to be updated. The mod_python publisher is
broken. The Quixote 1 style publisher probably needs some more
work."
Full Story (comments: none)
Nils-Erik Frantzell
writes about XAMPP on IBM developerWorks.
"
Open source stacks such as XAMPP from Apache Friends are simplifying open source development by making it easier to write and distribute applications in a stable and standardized environment. Traditionally, AMPP -- Apache, MySQL, PHP, and Perl -- have all been installed and configured as separate products. The trend of combining them into integrated middleware stacks promises to make open source development more competitive with J2EE application development, at least for low-end applications. In this article, you'll learn how to install, configure, and back up XAMPP on Mandrake Linux 10.0 and also how to configure and administer XAMPP, as well as how to install your own applications in an XAMPP environment."
Comments (none posted)
Web Services
Russell Butek
covers web services versioning issues on IBM developerWorks.
"
Web services versioning doesn't really exist. To achieve new versions of a service, you have to create a new set of WSDL/XSD files with new namespaces, essentially creating a new Web service. That's a rather drastic solution. There are some changes you can make to an existing set of WSDL and XSD files that are backward compatible so that you can evolve your service, to a limited degree, without the drastic measure of creating a new one."
Comments (none posted)
Desktop Applications
Audio Applications
Version 1.2 beta 1 of amaroK, a KDE music player, is out
with numerous changes.
Full Story (comments: none)
Version 0.2.13 of QjackCtl, the Qt/GUI frontend for the JACK Audio
Connection Kit, has been released with minor improvements.
Full Story (comments: none)
Data Visualization
Kst is "a real-time data viewing and plotting tool with basic data analysis
functionality." Version 1.0 of Kst has just been released; click below for
the details.
Full Story (comments: none)
Version 0.4 of
MultiPlot, an FLTK-based graph plotting utility, has been released.
Here is the change summary:
"
new version with minor bugfixes. sould now easily compile under linux and windows."
Comments (none posted)
Desktop Environments
The
Elektra Project is an
attempt to rationalize Linux configuration files by bringing them all into
a standard key/value pair format (apply your favorite registry analogy
here). The project has just released a major proof of its concept: an
"elektrified" version of the X.org server. Click below for lots of
details.
Full Story (comments: 85)
The November 26, 2004 edition of the
KDE CVS-Digest is online. Here's the content summary:
"
Extended password dialog can define length and strength thresholds. Dell Laptop Buttons Plug-in for KMilo . As-you-type spellchecking with aspell. KAddressbook import/export filter GMX addressbook format. X-Face support for Kmail and KNode. New blogging resource for Korganizer."
Comments (none posted)
Version 2.9.2 of gnome-utils, a collection of utilities for the GNOME
desktop, is available.
"
The biggest change overall is that GNOME Screenshot has been moved
from gnome-panel to gnome-utils."
Full Story (comments: none)
Version 2.9.2 of gnome-panel is out.
"
Since gnome-panel 2.9.2, the gnome-panel use the /apps/panel gconf
directory to store its settings. The settings that were previously
stored in /apps/panel/profiles will be automatically migrated."
Full Story (comments: 1)
Electronics
The latest new electronics applications on
Open Collector include new versions of annotate_gschem, gschem2xpcb, and Oregano.
Comments (none posted)
Financial Applications
Version 2.4.5 of
SQL-Ledger,
a web-based accounting system, has been released.
Changes include a couple of bug fixes.
Comments (none posted)
Games
Unstable version 2.9.2 of gnome-games, a collection of games for
the GNOME desktop, is out with numerous changes to individual games.
Full Story (comments: none)
A new release of HLA Adventure, a text-based adventure game, is out.
Full Story (comments: none)
Liza Daly
introduces interactive fiction languages in an O'Reilly article.
"
IF languages have various structural and syntactic optimizations for writing games. Turn-based time (or even, in some cases, real time) is a built-in. It's easy to define conditions on which the game can be won or lost. An IF language already knows not only that GET HAMSTER means the player would like to perform an action called GET on an object called HAMSTER, but it also knows that PUT HAMSTER ON TABLE is an entirely different matter than PUT TABLE ON HAMSTER and that PUT NORTH ON HAMSTER is something altogether nonsensical."
Comments (1 posted)
Graphics
Inkscape 0.40 has been released; click below for the details. There are
some major enhancements in this version, including support for layers, the
ability to render text along a path, and "bitmap tracing," which turns
bitmap images into vector graphics. A new set of tutorials has been added
as well.
Full Story (comments: 3)
GUI Packages
Unstable version 2.9.2 of Gtk2-Perl, the Perl bindings to GTK+,
has been announced.
Full Story (comments: none)
Version 2.4.8 of gtkmm, the C++ interface to GTK+, is out with
bug fixes and documentation improvements.
Full Story (comments: none)
Interoperability
The November 26, 2004 edition of
Wine Traffic is available with the latest Wine project news.
Comments (none posted)
Multimedia
Version 0.8.6 of the GStreamer plugins
have been announced.
"
Lots of bugs fixed
in this release (44 bugzilla items closed). New polypaudio sound server
plugin and support for musepack files. Another important addition to this
release is support for chained ogg files, which is important for many ogg web
radio streams for instance. Some important fixes to our ALSA support was also
made, so people who had troubles with ALSA output with earlier releases are
advised to give this one a go."
Comments (none posted)
Music Applications
Stable version 0.9.1 of Hydrogen, a drum machine, has been released.
Changes include a new ALSA driver, French documentation, and bug fixes.
Full Story (comments: none)
News Readers
Version 0.6.4 of Liferea, the Linux Feed Reader, is available. Changes include a Polish translation, global article skimming keybindings,
and bug fixes.
Full Story (comments: none)
Office Applications
Version 5.5.16 of Gcalctool, the default GNOME desktop calculator,
has been announced, it is considered stable. Changes include
translation work.
Full Story (comments: none)
Office Suites
KDE.News has
the announcement for OpenOffice.org 1.1.3-kde. This is a version of ooo-build which has been reworked to fit into the KDE environment; it uses the KDE native widget framework and features KDE icons.
Comments (1 posted)
Version 1.3.5 of KOffice has been released, this is the fifth bugfix
package for this series.
Changes include Breton language support, a security fix, and KPresenter
fixes.
Full Story (comments: none)
Build 1.3.7 of OpenOffice.org has been announced.
"
This package contains Desktop integration work for
OpenOffice.org, several back-ported features & speedups, and a much
simplified build wrapper, making an OO.o build / install possible for
the common man. It is a staging ground for up-streaming patches to
stock OO.o."
Full Story (comments: none)
Web Browsers
Stable version 1.4.6 of Epiphany, the GNOME web browser, has
been announced. Changes include numerous bug fixes and more.
Full Story (comments: none)
Version 1.4.3 of Epiphany Extensions has been released.
A security bug fix is included, upgrading is advised.
Full Story (comments: none)
Unstable version 1.5.2 of Epiphany, the browser for GNOME, is out.
Changes include interface improvements, bug fixes, and more.
Full Story (comments: none)
Unstable version 1.5.2 of Epiphany Extensions has been announced.
Changes include an important security update, bug fixes, and more.
Full Story (comments: none)
The November 2, 2004 edition of the Mozilla
Independent Status Reports are available. Here's the content summary:
"
The latest set of independent status reports includes updates
from mozImage, Biobar, fireFTP, Habari Xenu, Checky, citations
nd Linkvisitor."
Comments (none posted)
Miscellaneous
Version 2.3.10 of Bakery, a C++ Framework for creating document-based
GNOME applications, has been released. This is a bug-fix release.
Full Story (comments: none)
Version 2.0.3 of the gnubiff mail notification program is out
with bug fixes and security improvements.
Full Story (comments: none)
Languages and Tools
Caml
The November 23-30, 2004 edition of the Caml Weekly News
is online with news of the week's Caml language developments.
Full Story (comments: none)
Java
Howard Wen
examines the JDistro project on O'Reilly.
"
Appropriately enough, running multiple Java applications at once can be akin to drinking too much coffee in one sitting: You get erratic results and ultimately crash hard. But having more than one Java program running can be helpful for development. Java programmer Guillaume Desnoix wanted such a robust environment, so he created his own: JDistro."
Comments (none posted)
Brett McLaughlin
looks at for/in in Java 5.0 in an IBM developerWorks article.
"
The for/in loop -- often called either enhanced for or foreach is largely a convenience feature in Java 5.0. It doesn't really offer any new functionality, but certainly makes several routine coding tasks simpler. In this article, you'll learn about many of those, including using for/in to iterator over arrays and collections, as well as how it can help avoid unnecessary (or just plain annoying) typecasts. You'll also learn how for/in is implemented, glean details about the new Iterable interface, and even understand how to make your own custom objects usable with this new construct."
Comments (2 posted)
John Zukowski
examines the JDK 5.0 license on IBM developerWorks.
"
Sun recently released the JDK 5.0 source through the Sun Community Source License (SCSL) and Java Research License (JRL). This month, Tiger columnist John Zukowski takes a break from the details of the new release and overviews the licensing terms and what access to the source offers developers. He also provides a quick look at the surprise early access drop for Mustang, the J2SE 6.0 release."
Comments (none posted)
Lisp
Version 0.8.17 of SBCL (Steel Bank Common Lisp) is out.
"
The main new feature of this version is Unicode support."
Full Story (comments: none)
Perl
Perl 5.8.6
has been announced.
"
The Perl 5 developer team is pleased to announce the Perl
Release 5.8.6, the sixth maintenance release of Perl 5.8."
Comments (none posted)
PHP
Version of 5.0.3RC1
PHP is available.
"
This is the first release candidate and should have a very low number of problems and/or bugs. Nevertheless, please download and test it as much as possible on real-life applications to uncover any remaining issues."
Comments (none posted)
The
PHP Weekly Summary for November 22, 2004 is out. Topics include:
Broken pipe in fork, Overloaded class registration,
CLI and go-pear in win32 installer, Binary compatibility broken,
SPL's Countable, Cleanup for sprintf, libgd fonts, and Browscap.
Comments (none posted)
The
PHP Weekly Summary for December 1, 2004 is out. Topics include:
Detached processes, php_iconv_string exportable, Segfault in PHP 5,
PHP 4.3.10 RC1, Additional module registration, Per-directory magic quotes,
Binary compatibility and Reverted commits.
Comments (none posted)
PostScript
Beta release 4.61 of GSview, a PostScript previewer,
has been announced.
Numerous changes are included.
"
Please send in bug reports before the GSview 4.7 release, scheduled for mid December 2004."
Comments (none posted)
Python
Python 2.4 is out; this is a major release which adds a number of new
features to the language. Click below for the announcement, or see
the Python 2.4 page for download
and change information. There is also
a 2.4 highlights page
for those in a hurry.
Full Story (comments: none)
Build 243 of ActivePython 2.4.0, ActiveState's quality-assured binary build of Python, is out.
"
This is a release candidate matching the recently tagged core Python
2.4.0. Builds for Linux, Solaris and Windows are available."
Full Story (comments: none)
Tcl/Tk
The November 23, 2004 edition of Dr. Dobb's Tcl-URL!
is out with the week's Tcl/Tk articles and resources.
Full Story (comments: none)
XML
John E. Simpson
discusses the Geography Markup Language (GML) on O'Reilly.
"
Geography Markup Language (GML), now at Version 3.1, is a specification of the Open Geospatial Consortium (OGC). (This standards body was formerly known as the Open GIS Consortium--GIS being an acronym for Geographic Information Systems.) If you're used to W3C-sized specs--even behemoths like XML Schema--you'd better sit down before glancing at the GML "Recommendation Paper"; it's a monster, weighing in at over 600 PDF-formatted pages, supplemented by nearly three dozen separate schemas."
Comments (none posted)
Uche Ogbuji
writes about
XML locations in an O'Reilly article.
"
It is often useful to keep track of the location of some data in an XML file being processed. If you are parsing a file in order to perform sophisticated search and analysis tasks, you may want to know in which element or other such node a specific pattern was found (or even at what file location). XPath is the standard way to convey the location of an XML node. In the case of DOM, you might like to be able to compute an XPath expression selecting a specific node. In the case of SAX, you might want to have an XPath location for a current event, or you may want to get information on a current file location from the parser. In this article, I cover techniques for figuring out such location information. Along the way, I shall be providing some examples of marginally documented corners of Python's SAX libraries."
Comments (none posted)
Build Tools
Version 0.85 Release Candidate 1 of NAnt
has been announced.
"
NAnt is a free .NET build tool, allowing applications to be
built targeting both Microsoft .NET and Mono while supporting both
win32 and Linux."
See the latest
release notes for change information.
Comments (none posted)
Editors
Version 2.9.2 of gedit, the official text editor for GNOME, is out
with lots of bug fixes and translation improvements.
Full Story (comments: none)
IDEs
Version 3.7.0 of DrPython, a cross-platform Python IDE,
is available.
"
I added Optional Text Drag and Drop (Thanks Robin Dunn), and finally nailed the encoding bug (swedish character display). The Plugin List is now updated from the website, so version number do not need to be updated by developers." See the announcement for the full list of changes.
Comments (none posted)
Page editor: Forrest Cook
Next page: Linux in the news>>