Preparing for Open-Source Release
Submitted by
brentmh.
on 2005-06-06 09:15.
We've released some bits of our code as open-source before (ZAnnot, pycvs, FSDumpTool). This month (June) we'll finally be open-sourcing the rest of RISA.
There's still a fair bit to be done to make the code release-ready though:
- Pull out look and feel from CNXPloneSite, CNXContent
- The term Connexions is trademarked so it will have to be removed from all of the open-sourced code. We'll also be pulling out our custom look and feel. By default a RISA install will use Plone's look, leaving it up to the site admin to create a new skin. The CNXPloneSite portion of this is completed with the creation of the RisaSite product. I'm still working on CNXContent. It will take me a little longer since I'm also experimenting with a new module rendering path (more on that in a future entry.)
- Packages for *ML
- We need an easy way to install the various XML pieces like DTDs and stylesheets. Ross has already started looking at building Debian packages. We should probably also provide tarballs and zipfiles.
- Replace cnxmllint
- Our validator is still a slightly modified copy of xmllint running in a forked process. Since libxml2 has python bindings that we use in several places it would be great to get rid of this dependency. Especially since it no longer compiles against the libxml2 source and we've just been copying binaries everywhere.
- Remove hardcoded paths
- There are a couple places in the code that have hardcoded filesystem paths to stylesheets. These need to be removed and done through either a catalog lookup or done relative to the Zope package_home.
- Get rid of CNXML.py extension
- Not a requirement, but it would make installation easier if this were done with a Product (a CMF tool perhaps) instead of as an ExternalMethod. It could conceivably stay an ExternalMethod and just move into CNXMLDocument.
- Get rid of AllowedScriptPackages
- There 's really no reason for this Product to exist since all of it's security declarations can be done in the Products that require them.
- Get rid of NewsFolder and FeedbackFolder in favor of default_pages setting
- NewsFolder is done already and works fine. FeedbackFolder (part of the FeatureArticle Product) isn't really part of RISA, but it's an easy thing to do anyway.
- Subclass References instead of patching it
- We have enough patched products we're distributing already (Plone, Archetypes). There's really no reason for patching References. We can just subclass it in RisaRepository.
- Migrate TechBlog -> SimpleBlog and get rid of custom blog stuff
- Again, this isn't really part of RISA, but should be fairly easy to do.
Did someone say documentation????
