Changes for version 2.163 - 2026-06-05
- Model declaration changes (backward compatible, except for Config::Model::Itself < 2.031):
- Warp: Change warp property to use "when <test> => apply {element properties}"
- Model: to save typing, element declaration can now be written like: element => [ X => { type => 'leaf', value_type => 'enum', choice => [qw/Av Bv Cv/] }, Y => '*X', # alias to X Z => '*X', ] This kind of factorization was already possible using clunky Perl tricks. Using aliases inspired from YAML should make model more readable for non Perl gurus. To be able to factorize elements, it may be necessary to declare some properties outside of element declaration. So, 'summary', 'description' and 'warp' properties can be declared as class properties like: summary => { 'X' => 'a good summary' 'Y' => '*X', } Likewise, 'level' and 'status' properties can also be declared as class properties with a more suitable structure: level => { important => [qw/X Y/], hidden => 'Z'} status => { deprecated => 'X' } Note that Config::Model::Itself >= 2.031 allows 'cme meta -factorize all' to write models with factorized properties.
- Feature:
- add 'cme run translate_legacy' script to help update models.
- Doc updates:
- Remove references to 'obsolete' 'experience' and 'permission' properties
- Model and Node: fix doc of 'level' 'status' 'description' and 'summary' properties
- Deprecated features:
- Warper: deprecate using array for "follow" arguments
- Removed features:
- Model: remove inherit and inherit_after deprecated class properties
- Bug fix:
- Dumper: fix crash when dumping a list of warped_node
- Node: trim white spaces in gist
- WarpedNode: better fix of crash during WarpedNode creation
- Model: fix bug in translate_rules_arg
- Note:
- This new version breaks Config::Model::Itself < 2.031. Config::Model::Itself 2.031 will be available soon.
Documentation
Create a configuration model from application documentation
Creating a model with advanced features
Introduction to model creation with Config::Model
Configuration class Fstab
Configuration class Fstab::FsLine
Configuration class PopCon
Modules
a framework to validate, migrate and edit configuration files
Read and write configuration annotations
Base class for hash or list element
Base class for configuration tree item
Virtual class for other backends
Read and write config as a Cds data structure
Read and write config from fstab file
Read and write config as a INI file
Read and write config as a JSON data structure
Read and write config as a Perl data structure
Read and write config as plain file
Read and write config as a SHELLVAR data structure
Load configuration node on demand
Track read order of elements from configuration
Handle check list element
Provide a description of a node element
Dump configuration content as a perl data structure
Serialize data of config tree
Exception mechanism for configuration model
Fuse virtual file interface for Config::Model
Handle hash element for configuration model
Refer to id element(s) and extract keys
Instance of configuration tree
Iterates forward or backward a configuration tree
Handle list element for configuration model
List available models and applications
Load serialized data into config tree
Class for configuration tree node
Scan config tree and perform call-backs for each element or node
Reports data from config tree
compute &index or &element functions
Provide some constant data.
role to read or write configuration files
Role to grab data from elsewhere in the tree
Translate element help from pod to text
Load Node element in configuration tree
Provide some utilities
register and trigger a warped element
Search an element in a configuration model
Simple interface for Config::Model
Interactive command line interface for cme
Search tree for match in value, description...
Mouse type constraints for Config::Model
generate pod documentation from configuration models
Strongly typed configuration value
Include a sub layer configuration
Retrieve data from several external files
Retrieve data from external file
Provides configuration value computation
Node that change config class properties
Warp tree properties
Provides
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm
in lib/Config/Model/Exception.pm