ArchGenXML idea I want feedback onΒΆ

Tags: plone, archgenxml

There's an archgenxml idea that I'd like to pop onto those interested to get some feedback.

Basic premise: Give filesystem development more prominence.

Some issues that could bug you if you work with the code that archgenxml generates (or even just have to look at it):

  • Loads of protected sections in every file that clutter it up.
  • Custom code has to be put into those protected sections or it is removed upon re-generation.
  • Well, apart from methods, but archgenxml is prone to shuffling these around so that the file is modified in subversion though no real changes were made.
  • Most class-level customisations have to be done through tagged values. I mean the icon, the archetype_name, etc. These are often easier to change right inside the file.

What I hope is doable and acceptable: to give archgenxml the ability to leave the sourcefile alone as much as possible.

  • No more protected sections, as archgenxml won't remove exisiting code.
  • You can modify the archetype_name and friends, as archgenxml won't overwrite existing values (unless you specify them in your model).
  • Archgenxml checks the file for import statements and only adds the ones that are missing.

This does mean that you have to do more housekeeping yourself. If you remove some dependency, you'll have to remove the import statement yourself, for instance.

Archgenxml will still generate contenttypes with good defaults, but it will be much less aggressive in maintaining its iron order inside its files. This might not be everybody's piece of cake. It might be horribly undoable. It might have to be a config setting.

Feedback! reinout@vanrees.org, your own blog, mailinglist, irc, whatever.

 
vanrees.org logo

About me

My name is Reinout van Rees and I work a lot with Python (programming language) and Django (website framework). I live in The Netherlands and I'm happily married to Annie van Rees-Kooiman.

Weblog feeds

Most of my website content is in my weblog. You can keep up to date by subscribing to the automatic feeds (for instance with Google reader):