Sam Tregar writes "Bricolage is a 100% pure Perl content-management and publishing system which features intuitive and highly-configurable administration, workflow, permissions, templating, server-neutral output, distribution, and document management.
The newly released 1.2.0 adds support for HTML::Template (in addition to the existing HTML::Mason support), context-sensitive online help, an FTP interface for editing templates, support for template searches across output channels, improved media previewing behavior, and many bugfixes."
Ooh. I've been looking for one of these.
It reminds me a little of Roxen Platform, (http://www.roxen.com/) which uses Pike as a language. Roxen's CVS-based solution does diffs, etc... Its pretty sweet.
Re:pgsql
samtregar on 2002-01-15T20:18:31
Bricolage does use DBI and includes a driver interface to allow porting to other databases. That said, the only currently implemented and tested driver is for Postgres (docs).
-sam.There is a driver for Oracle included (docs) but it hasn't been tested in a long time and probably hasn't aged well. Re:pgsql
autarch on 2002-01-15T20:27:32
DBI's interface does not change (or changes _very_ little) from one driver to another. However, SQL and the ways you can achieve certain things change quite a bit from one RDBMS to another. For example, how does one map MySQL's auto_increment column's to Postgres's serial type (or sequences in general).
Actually, that question is rhetorical. See Alzabo::Driver and its subclasses for a (partial) answer.
Anyway, these things are hard to deal with and DBI does not do all that much to mask these differences.Re:pgsql
lachoy on 2002-01-15T22:48:41
Or see SPOPS::DBI and how it handles auto_increment/sequence/IDENTITY fields
;-) Re:pgsql
Theory on 2002-01-18T17:06:20
Autarch is right about the portability of SQL. However, here's a little background for any dedicated hacker(s) who might want to port Bricolage to another database.
- Initial Bricolage development was done with Oracle. That's why there is a plugin for Oracle in the sources. But Sam is right that it likely hasn't aged well. I wrote all the database interface code for Bricolage, however, and I welcome questions about how to use the subclasses to work with other databases on the Bricolage Developer's List.
- The DTDs were written in in pretty standard SQL syntax. There are of course some PostgreSQL-specific bits, but they were written to be as standard as possible. All the PKs, for example, are standard NUMBER columns -- we steered clear of the SERIAL data type. However, porting to MySQL or SQL Server will likely be annoying, since Bricolage does use sequences.
- There are a few (not many!) PostgreSQL functions built in. Those would have to be ported to stored procedures or your database's equivalent.
- Most of the SQL was written in pretty standard SQL syntax. There are a few exceptions, but they could be ferreted out pretty easily by someone working on a port. There are only a few outer joins, for example.
HTH!
David