GSoC - 4th Week

hi all,

This is my 4th status report (14 June to 20 June).

This week I wrote the Default package, that will be the base of the next
packages (TDG, ProducingOSS). Also I started porting the Pear Themes to the
new design.
PhD now is working with namespaces and pear conventions \o/, kudos to
Christian Weiske that made the changes so fast. One day I'll be as fast as
you guys ;)

New classes:
Package_Default_XHTML: Base class of the xhtml formats
Package_Default_ChunkedXHTML: Chunked html format
Package_Default_BigXHTML: Big html format
Package_Default_PHP: PHP format, working only with the phpdoc yet.

Started porting the Pear Themes to the new design:

Merged the code of Theme, Theme_XHTML, Helper, with the Format and
Format_Abstract_XHTML classes.

Port the Pear Themes to the new design (Using the SQLite indexer/Remove
the legacy code from HEAD)
Fix bugs in the Default Package

In the Pear Themes we have a CHM theme and I have to study this format
before code, I think this task will spend more time to be done.

GSoC - Third Week

hi all,

This is my third status report (7 June to 13 June).

This week I proposed a design for merging PhD Enterprise to HEAD With that design we will be
able to use all the features of PhD Enterprise and the current output
formats of HEAD (using adapters), the formats will be grouped in packages
and the packages are pluggable. We will reuse almost all the classes of PhD
Enterprise, the PhDFormatFactory class was written in my first week. To
reuse the themes of HEAD is necessary to write packages to adapt them to

This week I also begin coding the abstract formats and the default package.

In my schedule the current task is "Make concrete formats plug and play" but
it's already done, so my tasks now are:
- Discuss the interface of the abstract formats.
- Finish coding the Default package.
- Begin porting the old PhD Themes to the current design.

Important Note: This week we are planning to begin moving PhD to use the
PEAR filename and class convention.

GSoC - Second Week

Hi all,

This is my second status report (31 May to 6 June).

This week I began merging stuff from PhD Enterprise to HEAD. The Enterprise
branch has a really better design than HEAD. The indexer is storaged on a
SQLite database, some design patterns were used and there are not themes,
only output formats. On the other hand, Enterprise is no longer updated and
doesn't have as many output formats as HEAD. As I said in my last report
I'll make this merge throughout the project, the main difficult is because
the design is very different in both the versions.

In fact, this week I began killing the themes in PhD :), and merging the
code written on the first week (the --package option) to HEAD. My main task
now is separate the formats in abstract and concrete classes. The idea is
make easy write your own PhD output format.

GSoC - First Week

Hi all,

This is my first GSoC Status Report and I'll tell you about the Community Bonding Period and the first week of GSoC.

Community Bonding Period

During the Community Bonding Period a was reading the documentation about DocBook, understanding the code of PhD and learnig important things to the project. I also started to familiarize myself with the community. We agree in to start coding the project in May 23th and the deal was: while you don't have patches, no CVS account :).

1st Week

In my first week, I began coding a new feature to PhD: the --package option. With this feature you can simply paste the format classes in a folder and PhD will automatically detect them.

Example: If you have a new package of formats called PHP-GTK, all you have to do is paste the package in the packages/ directory and run PhD:

phd -d .manual.xml --format xhtml --package PHP-GTK

The design was discussed on the mailing list as well as in our IRC channel. I'm trying to listen the opinion of each member of the community before make decisions. I submitted the patches for reviewing and now I finally have a CVS account \o/.
This feature is a very important to make PhD more generic and flexible. Now, we don't need modify the main code of PhD to add a new format. For while the --package option is only available in PHD_ENTERPRISE.

My task now is begin merging stuff from ENTERPRISE to HEAD, this is not a simple task and I'll do this throughout the project.

see you next week!