How to patch Zope/Plone packages reliably?

We have now three Zope/Plone base packages where we need to alter the sourcecode to get the results we want.

One ist with the regex'es validating email-adresses when sending emails out. We have '.-' in it and it fails by one regex.

The next ist the transition-showing menu on the toolbar, the transition action can only handle a small amount of transitions. When there are more than ~15, it blanks out completely. We have not looked into this, but as a workaround we restrict in the sourcecode of the related package the amount of displayed transitions to 10 or 12, so the user can reach "erweitert..." to get to the full form to select the appropriate transition.

The third i have lost in the moment, but how can i buildout-proof apply patches to core-packages reliably ? Are there any buidout-recipes for this kind of task ?

Thank you for any information, best regards.

Depends on..

  • for overriding templates, use z3c.jbot
  • in some cases, you can override registered components using overrides in ZCML
  • if you need to modify existing methods directly, use monkey patching