NCrystal release 2.4.0
Various fixes relating to the usage of plugins. Most importantly, the delivery of NCMAT data files from plugins is now properly supported. For clarity, and to avoid name clashes, such data files must follow a clear naming scheme "ncplugin-_*.ncmat". The mechanism for making the data files available will depend on how the plugin is used, and is of course automatic. For a static plugin, built into a given NCrystal installation, the data file will be installed along with all of NCrystal's own data files (either as physical files or compiled into the NCrystal library, depending on the NCrystal configuration). For a dynamic plugin, built separately and later loaded by adding the plugin's shared library to NCRYSTAL_PLUGIN_LIST
, the data file will be compiled into the plugin library. Finally, for plugin developers, the data files will be made available via a symlink, ensuring that it is possible to directly edit the data file during development.
Long story short: If plugin developers place an NCMAT file in the /data directory of their plugin repository, anyone using the plugin can also use that file with NCrystal, simply by providing its filename. Thus, NCrystal configuration strings with those files can be directly shared among users and developers of these plugins.