Nnormally, binary fields should be 7-bit ASCII base64-encoded data, but sometimes
it's not the case, so we do additional sanity checks to make sure the binary values
can pass safely via xmlrpc as strings.
As a last resort we coerce the binary values to unicode to make sure they can
be safely serialized as utf-8-encoded values, always valid XML characters.
When this happens, decoding on the other endpoint is not likely to produce
the expected output, but this isjust a safety mechanism(in these cases base64
data or xmlrpc. Binary values should be returned instead by the function field.
In a future version we should probably switch to using XMLRPC Binary types always for
passing fields.binary values, but this requires more refactoring.
lp bug: https://launchpad.net/bugs/670778 fixed
bzr revid: odo@openerp.com-20101209230742-gwf8e4zvmk43k6ln
Content indexer spawns the *nix "file" command in an attempt to determine
the type of arbitrary files. The way we have fetched the stdout of the
child process had been flawed, leaving a zombie process for every file
scanned. It was not a matter of closing the file descriptors, rather an
issue of cleaning up the child process.
bzr revid: p_christ@hol.gr-20101209112607-psu98d0h2e7xqwu7
Original report:
> From: Dr. Ferdinand Gasauer
> Date: 29-11-2010
> Subject: webdav - create folder duplicates existing attachments
> to reproduce
> add attachment to partner using webdav (konqueror 4.5.3)
> create new folder in webdav directory
> the attachment will be displayed ALSO in the newly created folder
Well, this /did/ work as the code intended, but not as a user would
expect.
As of commit e549808c0e90, the resource directories would list _all_
attachments referencing some record, by default. This meant that a
newly created folder with files [and subfolders with files..] would
have all the files listed at the root folder, too
eg. /Dirs/Products/Product-A/ + [ /dir2/a.txt, /dir2/b.txt ]
would list a.txt, b.txt under ../Product-A/ , too.
Now, the algorithm is improved to handle such a case and turn off the
"find all" flag[1] so that child files will be contained in their
folders[2].
[1] I'm now glad I had left that option there.
[2] still, files may all appear at the root folder, too, if this has
the "find-all" flag set.
bzr revid: p_christ@hol.gr-20101209100121-6kaq1zcqfewwl25b
Since forward slashes would confuse all protocols like DAV, FTP, we
have to convert them to underscores, and also match them in search.
bzr revid: p_christ@hol.gr-20101209100117-6dibokskybf47610
Please use this way to translate other strings like that. A callable
lambda for a _default wouldn't evaluate right, we do have to define
a proper function for _() to work.
bzr revid: p_christ@hol.gr-20101209100053-fjkoxjayaiqf8vj0
Yes, I have been subclassing the DAV module and improving on the existing
code, regarding that we couldn't ship our own version of the whole
python-webdav library (as in v5.x).
At commit b2a2c3f95416788, on 2010-04-06, we explicitly deleted our custom
copies of the DAV module and linked to the upstream project, in fact.
bzr revid: p_christ@hol.gr-20101209095950-qf2ppgdxw8y2lake
[ADD] account_analytic_plan: if user installs account_analytic_plans, the group Usability / Analytic accounting should be attributed to the administrator by default.
bzr revid: mra@mra-laptop-20101209064813-fcdqkknx4bggojk4