Forum OpenACS Development: Re: New util::zip_file command
You are mentioning "windows and linux". i guess, you did not want to imply that it only works on these two and not on e.g. Mac OS X or Solaris. If this is part of the core, it is supposed to work everywhere, so it is necessary to include zip/unzip to the dependencies in the installer scripts.
We are using on our production platform mostly nx::zip , which allows e.g. to stream zip-files (e.g. from the content repository) without copying. Without that we had the problem with the direct use of zip that voluminous file-system operations could bring the fastest server to a crawl.
I haven't checked throughly about zip command compatibility, because I assumed the options I've used would be there in every current zip tool one could download.
This said, your concerns are legit. The main problem is that we are wrapping a command here, and that this command lacks a feature so basic we have to build a little script every time... very unconvenient.
Didn't know about nx::zip. It would be far better of course! Maybe I could use the same trick we did on util::http and check for the platform: if Naviserver -> nx::zip, otherwise the command hack.