Refactor: libcrmcommon: pcmk__xe_remove_matching_attrs() new force arg
This isn't necessary, but it's convenient. The force argument passes
through to pcmkxa_remove(), which pcmkxe_remove_matching_attrs()
calls.
The motivation is xml_accept_changes(). Previously, we checked the
document's pcmkxf_dirty flag, cleared all the document's flags, and
then accepted attr deletions throughout the tree. There was a hidden
ordering dependency there. If we did not clear the document's flags
before accepting the tree's attr deletions, then the document's
pcmkxf_tracking flag would still be enabled. In that case,
pcmkxa_remove() wouldn't actually remove the deleted attributes. It
would just set their pcmkxf_deleted flag... which was already set.
Now, we check the doc's flag, accept attr deletions throughout the tree
if set, and then clear everything in the doc that needs to be cleared.
On the flip side, adding another argument is mildly inconvenient for
other callers. Oh well.
Signed-off-by: Reid Wahl <nrwahl@protonmail.com>