Template:Janus overview
The Janus family of products is itself made up of two distinct components:
- A collection of object code enhancements to the Model 204 database-engine
nucleus. These enhancements are distributed as components of the Sirius Mods and make up a collection of products including those in the Janus family.
The Sirius Mods include many non-connectivity related products (such as Fast/Backup, Fast/Reload, and the Fast/Unload User Language Interface) that are not part of the Janus family. No Sirius Mods products are required to run a Janus product other than itself and Janus TCP/IP Base.
- A collection of Model 204 procedures that contain User Language, documentation, and assorted other data.
These Model 204 procedures install and implement the components of the User Language Structured Programming Facility, also known as UL/SPF. All the UL/SPF files reside in the SIRIUS procedure file (as of Sirius Mods version 6.8), which also contains code and data useful to Janus product users. UL/SPF also includes files that are components of non-connectivity related products such as SirPro, SirScan, and SirMon.
No other UL/SPF products are required to run any Janus product. Thus, to install a Janus product, both the Sirius Mods and UL/SPF must be installed, following the instructions in the Sirius Mods Installation Guide and the UL/SPF Installation and Maintenance Guide, respectively. When the Sirius Mods are installed, all other products owned by the installing site that are part of the Sirius Mods will also be installed. Similarly, when UL/SPF is installed, all other products owned by the installing site that are part of UL/SPF will be installed.
Versions and compatibility
Because the Sirius Mods and UL/SPF have somewhat different release cycles, the version numbers for these two components will often differ in a distribution. For example, version 7.6 of the Sirius Mods might be shipped with version 7.3 of UL/SPF. All the products in UL/SPF depend on certain features being present in the version of the Sirius Mods that is installed in the Model 204 load module under which UL/SPF is running. This implies, obviously, that the Sirius Mods must be installed for any UL/SPF component to operate correctly. And, as of version 6.8, the Sirius Mods version must match or be higher than the UL/SPF version number.
The Sirius Mods however, do not depend on any particular features of the UL/SPF product, merely the presence of the UL/SPF SIRIUS file. The SIRIUS file contains the code for the sample Janus Web Server, and Janus port definitions have default rules that call to this file.
Sirius Software has a strong commitment to backward compatibility with the Sirius Mods. This means that any User Language application (including UL/SPF) that uses the Sirius Mods will run correctly on subsequent versions of the Sirius Mods. It is, thus, always possible to upgrade the Sirius Mods without having to worry about upgrading UL/SPF. This is not to say that this is always a good idea, only that it is possible and that the installed version of a UL/SPF product will continue to run as it had before the Sirius Mods upgrade.
While the Janus family of products has a UL/SPF component, most of the critical code is actually in the Sirius Mods — object code enhancements to the Model 204 nucleus. The UL/SPF component of the Janus family consists mostly of utilities, examples, and documentation. Because of this, the version number of a Janus product is generally considered to be the version of the Sirius Mods in which it is contained.
Janus product documentation assumes that a site is running Sirius Mods version 6.7 or later and has installed UL/SPF version 6.2 or later. Any documentation that requires a later version of the Sirius Mods or UL/SPF will be clearly marked to indicate this. For example, a JANUS DEFINE parameter that is only available in versions 7.7 and later of the Sirius Mods will have a sentence such as "This parameter is only available in version 7.7 and later of Sirius Mods" in its documentation. If a feature, $function, command, or parameter is not indicated as requiring any specific version of the Sirius Mods, it can be assumed that it is available, as documented, in all versions of a Janus product; that is, all versions since version 6.7 of the Sirius Mods and version 6.2 of UL/SPF.