[Zope3-dev] Re: zope.filerepresentation.interfaces.IWriteFile

Philipp von Weitershausen philipp at weitershausen.de
Fri Sep 29 03:54:32 EDT 2006


Christian Theune wrote:
> Hi,
> 
> as I stumbled over this recently, I'd like to bring this up for discussion:
> 
> There is an interface called IWriteFile in the module
> zope.filerepresentation.interfaces.
> 
> It defines one method "write(data)" with the doc string:
> 
> "Update the file data"
> 
> There are some problems I have with this:
> 
> a) The interface is yet another interface for doing a file-like object.
> How many of those are around?

Oh, which others are there?

> b) It *seems intended* not to be really file-like but that "update the
> file data" means: writing to this will replace all previous data

Yes.

> c) The doc string is IMHO underspecified (I asked 3 other developers in
> the office. One of them said "it will replace the data on the second
> call", one said "it will append data like the file object", the third
> wasn't sure but was in favor of appending data)
> 
> This interface is used only in very few places in Zope.

FTP and HTTP PUT.

> I'm not sure what to do now, but I think something needs to be changed.
> Here are some options:
> 
> - Make the doc string more explicit. (That should happen anyway)
> - Keep the current behavior.

I think we'll have to :(. There have been lots of documented uses of 
filerepresentation

> - Change the current behavior and make write() act like Python's
>   file.write()

Perhaps in a new interface?



More information about the Zope3-dev mailing list