def update(desc, other=None, **kwds):
other = other and _as_dict(other) or {}<EOL>for i in other, kwds:<EOL><INDENT>for k, v in i.items():<EOL><INDENT>if isinstance(v, dict):<EOL><INDENT>old_v = desc[k]<EOL>for k2, v2 in v.items():<EOL><INDENT>if v2 is None:<EOL><INDENT>old_v.pop(k2, None)<EOL><DEDENT>else:<EOL><INDENT>old_v[k2] = v2<EOL><DEDENT><DEDENT><DEDENT>else:<EOL><INDENT>set_one(desc, k, v)<EOL><DEDENT><DEDENT><DEDENT>
Update sections in a Project description