This is more a case of “release prematurely, release often” than anything else, but I’ve just completed the move of my PHP5 libraries up to a Google Code repository, with a GPLv3 license attached.

The primary reason for the release is to get the generic ACL code out in the wild.

As the project description says, documentation is thin to nonexistent, and significant parts of the code are just straight copies of the equivalent PHP4 library. I’ll be “porting” code as the opportunity arises.
This is what can be found in the library:

  • Access Control List management: Brand new code but with a reasonable level of unit testing.
  • Apache: Classes to read Apache configuration files and write them out; classes to manipulate Apache’s password and groups files.
  • CSS: Program generated CSS files.
  • Forms: A fairly easy to use form generation library, with HTML renderers and some simple CAPTCHA image generation.
  • Gfx: Graphics.
    • A useful ColorSpace class that understands transparency and makes transformation between RGB and HSB easy.
    • A wrapper for GD with some useful features.
    • Generalized support for area filling. Useful for background colour washes etc.
    • The beginning of an image filler tool that will combine an XML command set with some parameters to automate creation of background images.
  • Http: A very simple HTTP client; helper classes to make some common web site tasks easier.
  • Io: A class to support streaming IO to global variables. I needed this somewhere….
  • Math: Very basic support for 2D geometry; required for many of the Gfx classes.
  • Net: An outline of a mostly unimplemented system for monitoring multiple servers working together.
  • Php: Language specific features. Contains InflexibleObject, the basis for many other library classes.
  • Sql: Scattered work on schema manipulation and SQL command parsing.
  • Stats: A powerful system for capturing web site metrics. Suffers from a complete lack of analysis tools. Lots of data, no insight. Can provide very useful debugging information though.
  • Xml: Tools to make XML parsing easier.
  • XmlRpc: pure-PHP XML-RPC solution, features “fss” a utility that allows remote file synchronization, useful in deployment applications.