API: libcrmcluster: New pcmk_cluster_disconnect()
API: libcrmcluster: Deprecate crm_cluster_disconnect()
Refactor: libcrmcluster: New pcmk__cluster_num_remote_nodes()
API: libcrmcluster: Deprecate crm_remote_node_cache_size()
Refactor: libcrmcluster: New refresh_remote_nodes()
API: libcrmcluster: Deprecate crm_remote_peer_cache_refresh()
Refactor: libcrmcluster: New pcmk__cluster_lookup_remote_node()
API: libcrmcluster: Deprecate crm_remote_peer_get()
Refactor: libcrmcluster: New pcmk__cluster_forget_remote_node()
API: libcrmcluster: Deprecate crm_remote_peer_cache_remove()
Refactor: libcrmcluster: New pcmk__cluster_is_node_active()
Refactor: libcrmcluster: New pcmk__cluster_num_active_nodes()
API: libcrmcluster: Deprecate crm_is_peer_active()
API: libcrmcluster: Deprecate crm_active_peers()
Refactor: libcrmcluster: crm_reap_dead_member() best practices
Refactor: libcrmcluster: New pcmk__cluster_forget_cluster_node()
API: libcrmcluster: Deprecate reap_crm_member()
Merge pull request #3437 from nrwahl2/nrwahl2-T788
Refactor: libcrmcommon: New pcmk__xe_copy_attrs()
API: libcrmcommon: Deprecate copy_in_properties()
Refactor: libcrmcommon: New enum pcmk__xa_flags
Refactor: libcrmcommon: New flags arg for pcmk__xe_copy_attrs()
Refactor: attrd: Drop attrd_copy_xml_attributes()
Refactor: libcrmcommon: New pcmk__xe_set_score()
Refactor: libcrmcommon: New pcmk__xaf_score_update flag
API: libcrmcommon: Deprecate expand_plus_plus()
Refactor: libcrmcommon: Some best practices in pcmk__xml_update()
Refactor: libcrmcommon: pcmk__xe_copy_attrs() checks score_update flag
Refactor: libcrmcommon: flags argument for pcmk__xml_update()
Refactor: libcrmcommon: flags argument for pcmk__xe_update_match()
Doc: libcrmcommon: Mark as_diff arg of pcmk__xml_update() deprecated
Test: cts-cli: Add tests for ++/+= syntax in cibadmin and crm_attribute
Low: libcrmcommon: Ensure crm_schema_init() initializes only once
Test: libcrmcommon: Clean up pcmk__xe_copy_attrs() unit tests
Refactor: libcrmcommon: Return EINVAL from pcmk__xe_copy_attrs()
Refactor: libcrmcommon: pcmk__{cib -> xml}_test_setup_group
Low: libcib: Fix handling of return values in CIB attr update/delete
Test: libcrmcommon: Add more unit tests for pcmk__xe_copy_attrs()
Low: tools: Fix cibadmin sync call return code logic
API: libcib: New cib_score_update cib_call_options value
Test: libcrmcommon: Avoid memory leak in pcmk__xe_set_score() unit tests
Test: libcrmcommon: Check rc in pcmk__xe_set_score() unit tests
Low: tools: Unset crm_attribute promotion_score if attr name is given
Feature: tools: --score option for cibadmin and crm_attribute
Test: cts-cli: Update tests for --score options
Refactor: libcrmcommon: PCMK__{XA -> XE}_CIB_UPDATE_DIFF
Feature: tools: Deprecate score expansion by default in cibadmin
Feature: tools: Deprecate score expansion by default in crm_attribute
Merge pull request #3403 from nrwahl2/nrwahl2-xml_attrs2
From , sbd uses and but only if
API: libcrmcommon: add pcmk_resource_id()
API: libcrmcommon: add pcmk_resource_is_managed()
API: libcrmcommon: deprecate pcmk_rsc_methods_t, struct…
Merge pull request #3439 from kgaillot/T790
API: libcrmcommon: deprecate resource_alloc_functions_s and…
API: libcrmcommon: deprecate direct access to struct pe_resource_s and its…
I suspect the use case for this feature was being able to set an explicit value in one block of meta-attributes, then have another rule-based block of attributes that resets the value to the default. Simply omitting the meta-attribute from the rule-based block wouldn't cause the explicit value to be removed.
kgaillot added a parent task for
T817: Deprecate --sync-call cibadmin option:
Unknown Object (Maniphest Task).
From the GitHub discussion:
API: libcrmcommon: add pcmk_node_is_online()
API: libcrmcommon: add pcmk_node_is_pending()
API: libcrmcommon: add pcmk_node_is_shutting_down()
API: libcrmcommon: add pcmk_node_is_clean()
API: libcrmcommon: add pcmk_foreach_active_resource()
API: libcrmcommon: add pcmk_node_is_in_maintenance()
API: libcrmcommon: deprecate enum node_type and all its values
API: libcrmcommon: deprecate enum pe_discover_e and all its values
Merge pull request #3436 from kgaillot/T789
API: libcrmcommon: deprecate struct pe_node_shared_s and all its members
API: libcrmcommon: deprecate struct pe_node_s and all its members
deprecate (via doxygen comments)
On that note, considering that Corosync has been the only supported cluster type for a long time now, I wonder to what extent this stuff even needs to be public. We can always add public API functions again after branching to 3.0.0. Might even make some naming issues easier in the interim, if we can work with things internally without introducing new public names yet.
: deprecate this name and create an equivalent (the enum value names are fine and do not need to be deprecated)
Refactor: scheduler: Simplify pe__name_and_nvpairs_xml.
Low: scheduler: Check return code in node_xml.
Merge pull request #3435 from clumens/simplify-nvpairs