WARNING: puppetlabs has droped support for puppet < 6.0.0 as of puppetlabs-stdlib [[ https://github.com/puppetlabs/puppetlabs-stdlib/commit/0f8a4dbb0bc6bf0dbbf3026bd2a8a6940b44e63e | 7.0.0 ]]
We have a number of functions in wmflib which would be genrally usefull for inclusion in stdlib. We should identify theses and make an effort to upstream them
= Types =
|`Wmflib|Stdlib|notes|
|~~`Wmflib::HttpStatus`~~|`Stdlib::HttpStatus`|[[https://github.com/puppetlabs/puppetlabs-stdlib/pull/1132| PR 1132]], [[https://github.com/puppetlabs/puppetlabs-stdlib/releases/tag/v6.6.0 | Release 6.6.0]]|
|`Wmflib::Http::Method`|||
|`Wmflib::Enable_Service`|||
|`Wmflib::Ensure`|||
|`Wmflib::Php_version`|| (move to php module)|
|`Wmflib::Email`|`Stdlib::Email` |[[https://github.com/puppetlabs/puppetlabs-stdlib/pull/1160 | PR 1160]]|
= Functions =
|Wmflib|Stdlib|notes|
|~~`array_concat`~~||Dropped|
|~~`conflicts`~~||Droped|
|~~`conftool`~~||Droped|
|`cron_splay`||Im not sure this would fit stdlib but perhaps puppet-ext, either way we should port it to the newer api or puppet DSL|
|~~`ensure_directory`~~|`stdlib::ensure($ensure, 'directory')`|[[https://github.com/puppetlabs/puppetlabs-stdlib/pull/1150 | PR 1150]], [[https://github.com/puppetlabs/puppetlabs-stdlib/releases/tag/v6.6.0 | Release 6.6.0]]|
|~~`ensure_link`~~|`stdlib::ensure($ensure, 'link')`|[[https://github.com/puppetlabs/puppetlabs-stdlib/pull/1150 | PR 1150]], [[https://github.com/puppetlabs/puppetlabs-stdlib/releases/tag/v6.6.0 | Release 6.6.0]]|
|`ensure_mounted`|||
|~~`ensure_service`~~|`stdlib::ensure($ensure, 'service')`|[[https://github.com/puppetlabs/puppetlabs-stdlib/pull/1150 | PR 1150]], [[https://github.com/puppetlabs/puppetlabs-stdlib/releases/tag/v6.6.0 | Release 6.6.0]]|
|`get_clusters`||Dont think this is usefull to stdlib but we should port this to the newer puppet api|
|~~`hash_deselect_re`~~|`$hash.filter l$itemsl { $items[0] =~ /^a/ }`|Dropped - (if copy pasting his code the pipe is an lower case 'L')|
|~~`hash_select_re`~~|`$hash.filter l$itemsl { $items[0] !~ /^a/ }`|Dropped - (if copy pasting this code the pipe is an lower case 'L')|
|`htpasswd`|apache::pw_hash allready in puppetlabs-apache|wonder if we should import [[ https://github.com/puppetlabs/puppetlabs-apache/blob/main/lib/puppet/functions/apache/pw_hash.rb | apache::pw_hash]] to our http module|
|`ini`||Definetly a candidate to upstrem probably as a ruby function in the newer api|
|`init_template`||Currently used by systemd/systemv/upstrat_template|
|`ipresolve`||The initial plan for this was that it could cache for the life of the daemon however it currently only caches for the life of the catalouge compilation. we should look to fix this but also investigate how much performance boost this gives vs e.g. installing a dns cache on the puppet masters.|
|`ordered_json`||can probably use to_json may need an upstream patch to sort keys but i suspect the order is consodent among puppet runs|
|`ordered_yaml`||can probably use to_yaml may need an upstream patch to sort keys but i suspect the order is consodent among puppet runs|
|`php_ini`||should move to php function|
|`puppet_ssldir`|`$facts['puppet_config']['ssldir']`||
|`require_package`|`ensure_packages`||
|`requires_realm`||should port to puppet dsl and possibly change to [[ https://gerrit.wikimedia.org/r/c/operations/puppet/+/570348/ | require_domain ]]|
|`secret`|||
|~~`shell_exports`~~||Dropped|
|`ssl_ciphersuite`||Will drop or [[ https://gerrit.wikimedia.org/r/c/operations/puppet/+/640480 | replace with ssh module ]]|
|`systemd_template`||move to systemd (along with base::service_unit)?|
|~~`sysvinit_template`~~||Droped|
|~~`to_milliseconds`~~||Dropped|
|~~`to_seconds`~~||Will Dropped|
|~~`upstart_template`~~||Droped|