Phriction Welcome to the ClusterLabs Wiki Projects Pacemaker Pacemaker 3.0 Changes Pacemaker 3.0 Api Changes History Version 2 vs 3
Version 2 vs 3
Version 2 vs 3
Content Changes
Content Changes
**This describes proposed C API changes for a possible Pacemaker 3.0.0 release. Discussion should be directed to the [[ /w/clusterlabs/clusterlabs_mailing_lists/ | developers mailing list]].**
These changes are only proposed and may not make it into the final release.
== Overview ==
The main goals for 3.0.0 are:
* Limit the public API primarily to the high-level APIs in libpacemaker, and make the vast majority of the lower-level APIs in other libraries internal. Only those lower-level APIs known to be used by DLM and SBD will definitely be kept. **If anyone wants to keep access to lower-level APIs, please specify which ones in a message to the developers list.**
* Make the contents of structs in the public API opaque. All access to the struct data must be via functions.
* Prefix all public API symbols with `pcmk_` (capitalized as appropriate).
== Specific changes ==
TBD
== libcrmcommon ==
* The **compatibility.h** header has been removed.
== libpe_rules and libpe_status (common code) ==
The following symbols were dropped from the library
=== Constants ===
| Dropped | Suggested replacement (if any) |
| -- | -- |
| RSC_ROLE_MAX | |
| RSC_ROLE_UNKNOWN_S | pcmk_role_text(pcmk_role_unknown) |
| RSC_ROLE_STOPPED_S | pcmk_role_text(pcmk_role_stopped) |
| RSC_ROLE_STARTED_S | pcmk_role_text(pcmk_role_started) |
| RSC_ROLE_UNPROMOTED_S | pcmk_role_text(pcmk_role_unpromoted) |
| RSC_ROLE_PROMOTED_S | pcmk_role_text(pcmk_role_promoted) |
| RSC_ROLE_UNPROMOTED_LEGACY_S | |
| RSC_ROLE_SLAVE_S | |
| RSC_ROLE_PROMOTED_LEGACY_S | |
| RSC_ROLE_MASTER_S | |
=== Functions ===
| Dropped | Suggested replacement (if any) |
| -- | -- |
| role2text() | pcmk_role_text() |
| role2text() | pcmk_parse_role() |
| task2text() | |
| text2task() | |
| fail2text() | |
| recovery2text() | |
| pe_pref() | |
== libpe_rules ==
== libpe_status ==
**This describes proposed C API changes for a possible Pacemaker 3.0.0 release. Discussion should be directed to the [[ /w/clusterlabs/clusterlabs_mailing_lists/ | developers mailing list]].**== libcrmcommon ==
These changes are only proposed and may not make it into the final release.* The **compatibility.h** header has been removed.
== libpe_rules and libpe_status (common code) ==
The following symbols were dropped from the library
=== Constants ===
| Dropped | Suggested replacement (if any) |
| -- | -- |
| RSC_ROLE_MAX | |
| RSC_ROLE_UNKNOWN_S | pcmk_role_text(pcmk_role_unknown) |
| RSC_ROLE_STOPPED_S | pcmk_role_text(pcmk_role_stopped) |
| RSC_ROLE_STARTED_S | pcmk_role_text(pcmk_role_started) |
| RSC_ROLE_UNPROMOTED_S | pcmk_role_text(pcmk_role_unpromoted) |
| RSC_ROLE_PROMOTED_S | pcmk_role_text(pcmk_role_promoted) |
| RSC_ROLE_UNPROMOTED_LEGACY_S | |
| RSC_ROLE_SLAVE_S | |
| RSC_ROLE_PROMOTED_LEGACY_S | |
| RSC_ROLE_MASTER_S | |
=== Functions ===
| Dropped | Suggested replacement (if any) |
| -- | -- |
| role2text() | pcmk_role_text() |
| role2text() | pcmk_parse_role() |
| task2text() | |
| text2task() | |
| fail2text() | |
| recovery2text() | |
| pe_pref() | |
== Overview ==== libpe_rules ==
The main goals for 3.0.0 are:
* Limit the public API primarily to the high-level APIs in libpacemaker, and make the vast majority of the lower-level APIs in other libraries internal. Only those lower-level APIs known to be used by DLM and SBD will definitely be kept. **If anyone wants to keep access to lower-level APIs, please specify which ones in a message to the developers list.**
* Make the contents of structs in the public API opaque. All access to the struct data must be via functions.
* Prefix all public API symbols with `pcmk_` (capitalized as appropriate).
== Specific changes ==
TBD== libpe_status ==