Fix a bug in $$ escape handling.
That caused uninstall and install everytime for a part containing $$ in its saved options. Also it caused broken .installed.cfg in case of error, like the referenced section was not defined.
Showing
-
Owner
Issues:
- Why the change
_read_installed_part_options
? - The new "Unused options" warning in
src/zc/buildout/tests.py
is a nice side-effect, but not the other: in fact, such warning is irrelevant when updating a part. -
check-signature
option does not work anymore.
So I would only keep the change in
src/zc/buildout/tests.py
and do:--- a/src/zc/buildout/buildout.py +++ b/src/zc/buildout/buildout.py @@ -735,6 +735,7 @@ def install(self, install_args): new_options['__buildout_signature__'] = old_signature else: del(new_options['__buildout_signature__']) + new_options = new_options.copy() if old_options == new_options: # The options are the same, but are all of the # installed files still there? If not, we should @@ -821,9 +822,9 @@ def install(self, install_args): saved_options['__buildout_installed__'] = installed_files saved_options['__buildout_signature__'] = signature installed_part_options[part] = saved_options - part in installed_parts or installed_parts.append(part) - - _check_for_unused_options_in_section(self, part) + if part not in installed_parts: + installed_parts.append(part) + _check_for_unused_options_in_section(self, part) finally: installed_path = self['buildout']['installed']
- Why the change
-
mentioned in merge request !7 (merged)
-
Owner
Fixed in branch 1.x as described above
Please register or sign in to comment