Archive | Open Source

Migrating a Sourceforge Mailing List

Posted on 19 October 2006 by Demian Turner

Just in case this saves someone the considerable hassle I went through ..

If you run a project on Sourceforge and use their mailing lists you may have been tempted recently to switch to another provider, like google groups, whether due to considerable SPAM arriving at SF or regular flake-outs with 3-5 days no mails delivered.

A standard Mailman install has an export feature which is all you need to get a text output of all the email addresses subscribed to your SF list – but the SF version doens’t have this feature, perhaps it’s an older release.

Instead of copying  hundreds of records, one copy/paste for each letter in the alphabet from SF Mailman admin page, you can actually go to SF -> your project -> Mail -> Admin -> Administer/Update Lists and you get exactly the text export you need.

I have always considered SF text link navigation some of the most unintuitive available on the web, but this is the first time it has lost me a significant amount of time.

Comments (4)

Seagull 0.6.0 Released

Posted on 23 August 2006 by Demian Turner

After 3 release candidates stable version 0.6.0 of the Seagull framework was released last week, download it here.
Blame it on the heat wave this summer in the UK, we broke our "1
release per month" mantra for the first time in 3 years, but I think
the results were worth waiting for.

There are various formats of the release available:

  • the minimal, weighing in at 2MB – just the framework and core modules
  • developer at 3.4MB – includes 14 modules, the unit and web test runner, documentation, all libs, examples

A pearball will shortly be released in which the PEAR libs are
obviously not bundled, and if you exclude the somewhat weighty tinyFCK
libs, this version of Seagull will go out at 504kb, addressing some
complaints that have been voiced about package size 😉

Aside from the improved stability and bugfixes you’d expect in an even-numbered release, some notable new framework features in 0.6.0 are:

  • automated module installation for admin users, and improvements to the module generator wizard
  • module config files now have a GUI interface for editing (Julien Casanova)
  • additional
    checks in the installer for open_basedir restriction, allow_url_fopen
    problem in XML_Parser handled, and additional authentication checks
    (Steven Stremciuc)
  • improved wizard functionality based on PEAR’s HTML_QuickForm_Controller (Malaney J. Hill)
  • SQL parsing improved, more unit tests added (Randy Casburn)
  • nice CAPTCHA component (Steven Stremciuc)

On the CMS side of things, module improvements include:

  • a new default theme by Julien Casanova, and a contributed theme by Neil Mather
  • RSS blocks are now configurable (Werner Krauss)
  • admin screens added for FAQ, Guestbook, Newsletter modules (Matt Flaherty, Rares Benea)
  • Upgraded TinyFck to 0.12 (Elijah Insua)
  • updates in many of the translations

In community news quite a bit has been happening too:

And forgive me for leaving the trendiest thing for last, there’s a
bunch of new AJAX modules that are near completion, these will be
announced shortly.

Comments (1)

Seagull 0.6.0RC3 Released – Including Urgent Security Fix

Posted on 06 June 2006 by Demian Turner

RC3 is out! This will be the last release candidate before the
stable 0.6.0 release. But first an urgent security notice:

Schlemmer wrote in earlier last week to report a compromise he’d
discovered that allowed registered members of a Seagull installation to
increase their privileges to admin user level. His hack was quite
creative and I don’t think your average member is going to come up with
something similar, but I urge all Seagull users to upgrade to the
latest RC3 release which includes a fix that plugs the security hole.

you’re running an RC2 release and don’t want to do a full upgrade yet,
you can apply this patch. If you still need help fixing your
install try the irc channel, forum or mailing list.

Comments (0)

Seagull Gets Top Marks in Recent Framework Comparison

Posted on 20 March 2006 by Demian Turner

Thanks to Daniel Pallet over at for his recent article comparing 10 PHP frameworks. It’s a pleasant surprise that based on the checkmarks for features marking scheme, Seagull
came out with the top score. A lot of complaints from the other
contestants "you didn’t give me credit for this" – I guess visibility
of features is an important feature in itself.

Now that most of the work has been done for the 0.6 stable release, a
new round of effort is scheduled to bring the docs up to date and
improve the overall documentation format. My goal would be to get a few tutorials out to the same level of quality as the renowned Askeet series.

Comments (11)

Admin GUI Overhaul for Seagull 0.6

Posted on 13 March 2006 by Demian Turner

After a 2 week sprint to the finish line, I’m pleased to announce the first release candidate for the 0.6 series of Seagull framework project is now available for download.

There’s been a lot of improvements implemented under the hood, but the
most noticeable change is the completely redesigned admin user
interface by Julien Casanova. Curious to try before you ‘buy’, checkout
the demo at (config edits disabled).

Although we have maintained our 1 release per month policy for most of the project’s life, the last stable release was back in November 2005, and that was from the 0.4 series which started way back in the beginning of 2005 . Get more info on our release policy .

Comments (1)

Responding to Feedback on a recent Seagull Development Release

Posted on 11 March 2006 by Demian Turner

The Seagull project recently got reviewed by Florian, I’d like to respond to a few of his points:

the site has 0.5.5 as "development release", I tried installing it via PEAR
(instructions here – didn’t work at all)

A stable release is due out shortly, and the PEAR installs have been improved.

then I tried svn-trunk, as was recommended. This worked better, but 2 more things happened:
– first pageload: template issue: "Notice: Undefined property: HTML_Template_Flexy_Token_Text"

There was a small error in Flexy configuration, now fixed.

– memory_limit of 16 MB may or may not be recommended by setup – I did
get a Fatal error in PEAR::Date_Timezone when a "joined at" should’ve
been displayed in a user page

There are a couple of screens where the PHP process grabs just over the 8MB default (when compiled with –enable-memory-limit), we should be able to address these by the next release.

they use trac, and I personally hate to register to file bugs – ok, no bug reports by me then :/

We were cautious at first due to spam worries, but the comment is a fair one, so we’ve changed the config to allow anonymous tickets now.

minimalistic is ok, but when I see the default page introduced after a
fresh install, why can’t I edit it? – too strict separation of
framework and cms? why is it installed then?

I updated the default homepage to give better instructions regarding what to do after install. Now that the admin GUI has been completely redone, the next step is to provide a better front end look and feel.

when I login as admin, I am presented the modules page – when leaving
it, however, I can’t find my way back there without logging out and in
again or remembering the url

Yep, the default navigation needed to be better thought out, this has now been done. As for Florian’s wishlist at the end of the post:

  • dish out RCs and releases faster
  • unit testing is fine, but how can it be that a new user can’t get
    it too work? my dev webserver happily accepted the last ~20 opensource
  • make submitting bugs open. don’t force work on users. YOU want them to help your project

Releases – we try to keep to one a month, I think that’s fast enough, at least it’s as fast as we can manage! Install probs – we’re always trying to improve. And anonymous bugs – we’ve taken your cue on this one.

Thanks for the feedback!

Comments (1)

Seagull 0.5.5 Released

Posted on 31 January 2006 by Demian Turner

We released development version 0.5.5 of the Seagull framework last week – many thanks for all the devs who contributed to this release, particularly all the regulars on #seagull.

0.5.5 was massive compared to previous releases, 119 tickets dealt with compared with 63 from 0.5.4, and that’s just the documented stuff. Click around for details.

The main new features in no particular order are:

An article Lukas recently wrote reviewing several frameworks stuck me as particularly insightful, if you install Seagull as a PEAR package the 5 conditions he outlines are all satisfied. Thanks to bugs in PEAR being ironed out with the 1.4.6 release subpackage dependencies now work as you’d expect. Currently Seagull is packaged as the core framework with the 3 default modules listed as required subpackages, so doing a simple

$ pear channel-discover
$ pear install phpkitchen/seagull

is all you’re need to get the framework fully up and running, thankfully more user-friendly than some recently published examples.

Comments (0)

Seagull 0.5.4 Released

Posted on 19 December 2005 by Demian Turner

Seagull 0.5.4 from the development branch was released last week, the last release for 2005, and ended up being suprisingly full of new features. Here are some of the highlights:

  • implemented an XML-RPC gateway for easy creation of web services
  • version checker first feature to take advantage of RPC
  • Chinese and Polish translations updated
  • Service Locator object added, now trivial to swap in test db at runtime
  • Smarty template support integrated (Malaney J. Hill)
  • installer now optionally loads default data
  • DB2 support added (Tobias Kuckuck)
  • Web root path now configurable from installer
  • Improved performance for DB-based sessions (Eric Persson)
  • the following url parsing strategies are now enabled by default: classic querystring, standard Seagull SEF, and now UrlAlias, see here for more details
  • Basic CLI request implemented (Eric Persson)
  • Uri aliases integrated into navigation module, external Uris handled (Andrey Podshivalov)
  • Block management enhanced – you can now create any number of arbitrarily positioned blocks and assign content to them (Andrey Podshivalov)
  • Integrated advanced locale features available via SGL_Locale (a wrapper for PEAR’s i18nv2), disabled by default

Download here, recommended for php < 5 until Zend IDE supports debugging for php 5.1. Simpletest would be nice too.

Comments (1)

Seagull 0.4.7 and 0.5.3 Released

Posted on 11 November 2005 by Demian Turner

We’re following the usual even-stable/odd-development release cycle, so here are the latest 0.4.7 and 0.5.3 releases respectively. The 0.5.x stream is where all the effort is being focused, new features include:

  • a rewritten task-based installer, easily extensible (thanks to Helgi on #pear for some quickform validation hacks)
  • cleaner URLs thanks to improvements by Julien Casanova. Work is in progress on an UrlAlias strategy, the Url object takes an array of strategies for easily extensible url handling
  • improved security for reinstalling live sites
  • blocks, when enabled, can now be filtered by user roles (Daniel Korsak)
  • a php4/5 compatible delegator class was added for simple object aggregation

This release is currently only implemented for MySQL so please wait until the DB maintainers catch up if you’re using another database. And PHP < 4.4.x, that will change shortly as new ZDE is finally out. And please be patient with the rough look & feel, html wizzes where are you?

The stable 0.4.7 release is just PEAR updates in response to recent security issues and a fix for the annoying Thunderbird RSS reader bug that duplicates any story that has an &amp; in the permalink. Thanks to this fix I would like to invite folks interested in keeping up with the Seagull project to subscribe to our RSS feed, so I don’t have to burden Planet-php with project posts :-).

In other news we also got the wiki fullly moved over to Trac from the previous Wacko install, a task made much easier thanks to Werner’s Wacko export and Trac import scripts. There is a certain amount of work still to be done to get the content correctly formatted however.

And it’s been a good month for press coverage, thanks to both PHP | Architect and Direction | PHP for running articles on the project. Finally Clay Hinson had done some interesting integration work getting FUD forum integrated with Seagull.

Comments (0)

Seagull 0.5.1 Released

Posted on 15 October 2005 by Demian Turner

Like many projects, we’re running two streams of releases, stable and devel. The development release includes the test runner and all unit and web tests, as well as developer docs which include Poseidon UML diagrams, etc. It’s recommended for folks who are interested in how the code works, though for browser based users there is little visible difference to the last stable release – download here.

The release focuses on improving code internals and has been about 1 month’s worth of refactoring geared towards improving the loose coupling and high cohesion of framework components.

Improvements include:

  • a new SGL_Config class for easy loading of config files, file type discovery and data format handled silently; ini, php array and xml types currently implemented
  • an improved SGL_Request object that internally resolves HTTP and CLI request types
  • a new SGL_URL object derived from PEAR’s Net_Url that abstracts and organises various url formats, classic querystring and Seagull’s Search Engine Friendly format are currently supported
  • a new flexible SGL_View object that integrates with the template engine of your choice and supports customised workflow for HTML and XML output (read: easy support for PDA output). Flexy is still the default but hooks now exist for Smarty or any other OO engine.
  • customisable pre and post process pipelines discussed earlier here.
  • use of global vars almost completely eliminated
  • 100 new unit and web tests added (each screen loading tested)
  • CSS reorganised to be more modular thanks to some tips from Mike Stenhouse and implementation by Riccardo Magliocchetti
  • all application resources now stored in a registry singleton for easy, appwide access. It currently manages session, current url, config and request objects
  • a range of filesystem finder objects for easy retrieval of system resources

Comments (3)



Demian Turner's currently-reading book recommendations, reviews, favorite quotes, book clubs, book trivia, book lists