25.11 Release notes

New features and highlights

  • New EPICS firewall NixOS module, which simplifies configuring the firewall for EPICS clients and servers.

  • New DBWR and PVWS packages along with corresponding NixOS modules were added. These packages together enable you to serve Phoebus .bob displays as web pages.

    The integration of DBWR, PVWS, was made to be compatible with running Archiver Appliance in the same Tomcat server.

    For more information, follow the Display Builder Web Runtime (DBWR) guide.

  • Added the pvaPy Python module, along with its optional dependencies.

  • epnix.archiver-appliance was upgraded from 2.0.10 to 2.1.x.

  • epnix.phoebus-olog was upgraded from 4.7.7 to 5.0.x.

  • The epnix.support.opcua support module was upgraded from 0.10.0 to 0.11.x.

  • The epnix.support.twincat-ads support module was upgraded from an unreleased version to 2.1.x.

  • The programs.phoebus-client module gained a package and a finalPackage option so that you can customize your Phoebus build and get files from the customized Phoebus package (change also backported to 25.05).

Breaking changes

No breaking change were introduced in this EPNix release.

Warning

The IOC module system (the “old way” of packaging IOCs) was deprecated in EPNix 25.05 and EPNix 25.11 is the last release where this style of packaging is still possible.

If you haven’t already, follow the Migrating from modules development guide to migrate to the “new style” of developing IOCs.

Documentation

For developing EPICS IOCs

  • The new Integration tests article guides you through using integration tests in EPNix tops, in which you can start a fleet of NixOS VMs running IOCs and simulators.

  • The new Dependencies article guides you through adding and debugging dependencies for EPICS tops and EPICS support modules.

  • The new Nix dependency types articles are more of a “deep-dive” explanation on what the various buildInputs, nativeBuildInputs, propagatedBuildInputs means when packaging EPICS software by using Nix.

For deploying NixOS machines

For contributing to EPNix

Other documentation changes

  • A brand new Glossary.

  • With this update there is a mechanism for adding a redirection for moved documentation pages, to avoid breaking URLs.

  • Links to EPNix packages and options now have a nice icon next to them.

  • Hovering internal links now give a nice preview of the link target (change also backported to the 25.05 documentation).

  • EPNix documentation older than 23.11 included were removed from the EPNix website, as they used another documentation framework.

EPNix internals

  • With this release, a regular CI job checks the links in the documentation to see if they’re still valid.

  • Another CI job that runs on Pull Requests check that web page redirections are added for moved documentation articles.

  • We now use editorconfig-checker to check the consistency of the EPNix source code according to the .editorconfig file. This checker is more maintained, and checks indentation.

  • The Vale rules that check the documentation writing style now have much fewer false positives and fewer duplicated rules.

  • By using Intersphinx, the EPNix documentation can now refer to objects defined in other Sphinx documentation websites, such as the EPICS, Python, or Sphinx documentation.

  • You can now include PlantUML diagrams in the documentation thanks to the sphinxcontrib-plantuml plugin.