Hi Chris,
To be honest, I don't think we should be splitting either of these out. Especially at this stage.Hi;
I have been thinking of what else we can/should split out sometime soon to CPAN and it has occurred to me that the interface of the templates could probably be split out (and maybe the mailer too).
I believe that most, if not all CGI assumptions have already been removed, and if they haven't should be fairly easily removed once identified.
Both of these however contain LedgerSMB-specific assumptions and would need to be rewritten to some extent to address these. However with the templates in particular, removing these assumptions would help us get rid of a lot of the CGI assumptions we are currently making. In particular, I am thinking of the automatic output options which I think should be abstracted away or even removed.
Can you please show some examples of the CGI assumptions that we are still making.
A major justification for this is that reporting endpoints for my LedgerSMB API gateway are much harder to implement across a Dancer interface than they should be, because we assume we are operating in a CGI environment.
I really don't believe it is a sane thing to "hack" in any sort of api/plugin layer right now.
I would like to do this for the following reasons:
1. I would really like to be able to use the reporting generation in areas outside of a CGI web application, and2. It would be nice to be able to open up additional formats to third party developers saying "Put it on CPAN and tell people they can install it like so."
I wouldn't like to see that happen right now, as most of the CGI specific code should only be within the legacy codebase, and we have a declared freeze on the legacy codebase for general changes.
I would like to suggest that over the next major version or two I work on refactoring out or abstracting away the LedgerSMB-specific and CGI-specific assumptions to the templating interface, provide a dynamic format registration mechanism, and the like. And then work towards breaking these off once this is complete.
In short, my thoughts are, don't do it until we have a properly designed API
Are there any thoughts on this?
--
Best Wishes,Chris Travers
Efficito: Hosted Accounting and ERP. Robust and Flexible. No vendor lock-in.
_______________________________________________ devel mailing list devel@lists.ledgersmb.org https://lists.ledgersmb.org/mailman/listinfo/devel