Releases: julien6387/supvisors
Supvisors 0.19.1
0.19.1 (2026-02-01)
-
Fix Issue #134.
Reload the Supvisors process configuration after Supervisor is updated. -
Fix the distribution logic when multiple applications are in the same starting stage, especially when
LESS_LOADED
orMOST_LOADEDstrategies are used. -
Fix
get_network_infowhen used with a Supvisors nickname. -
Consider the case where process events are received and ignored during the Supvisors handshake.
-
In the application rules of a Supvisors rules file, in combination with the use of an application
pattern,
allow the use of stereotypes and aliases associated with the hashtag symbol '#' in the applicationidentifiers. -
Set the local Supvisors nickname with the Supervisor identifier when available.
-
Prevent a Supvisors instance to be internally registered more than once at node level.
-
Add the XML-RPC
get_core_identifiersto return the resolved Supvisors core instances. -
Set the lower limit of the option
synchro_timeoutto 0 instead of 15 (Default value remains unchanged). -
Speed-up the entry in
SYNCHRONIZATIONstate. -
Strengthen robustness against
psutilissues related to certain operating systems. -
Review HTTP error codes returned by the REST API in
supvisorsflask. -
CI target added for Python 3.14.
Supvisors 0.19
0.19 (2025-07-21)
-
Python 3.9 becomes the minimal version.
Python 3.6 to Python 3.8 are not supported anymore. -
Fix the statistics compiler, so that it manages the Supvisors instances discovered.
-
Refactoring of the Supvisors internal state machine.
The stateINITIALIZATIONhas been renamed asSYNCHRONIZATIONand a new stateELECTIONhas been added
to get more stability in the Master election. -
Implement the enhancement requested through the Pull Request #120.
Supvisors uses theioctlfunctions to get the relevant network data on all network interfaces and matches
the local instance on the whole information available.
During the handshake, the local network data is shared with the other Supvisors instances using the new XML-RPC
get_network_info. -
Take into account the network data in the Supvisors Web UI, so that the same network interface is used
when navigating to another node. -
Constraint the handshake in time, so that late notifications are not considered.
-
Check the strategy consistency in the handshake.
If the optionsauto_fence,starting_strategy,conciliation_strategyandsupvisors_failure_strategyare not
strictly identical, the local and remote Supvisors instances will isolate each other. -
Add a session cookie to the Supvisors Web UI client.
All statistics images served by the Supvisors Web UI are renamed to allow multiple auto-refreshed views
in the browser tabs. -
Rework the XML-RPC
restart_sequencelogic, so that it does not require a Supvisors state change. -
Add the XML-RPCs
get_instance_state_modesandget_all_instances_state_modesin support of getting detailed state
and modes information from a single Supvisors instance.
This information has been removed from the XML-RPCsget_instance_infoandget_all_instances_info. -
Update the
stop_processcommand, so that the XML-RPC request is sent only to running-like processes. -
Update the
get_master_identifierXML-RPC, so that it returns both the identifier and its nickname in a dictionary.
Themastercommand is updated accordingly. -
Add a new option
supvisors_failure_strategyto decide what to do when the initial conditions are not met anymore. -
Add a new option
css_filesto allow user CSS in the Supvisors Web UI. -
Remove the Supvisors instance state
UNKNOWN, and renameSILENTasSTOPPED(default value).
Supvisors instances areSTOPPEDwhen created. -
Add the process PID to the process statistics event.
-
Add a timestamp to the events of the Supvisors event interface.
This timestamp is also added to the XML-RPCsget_supvisors_state,get_instance_state_modes,
get_all_instances_state_modes,get_application_info,get_all_applications_info,get_process_info,
get_all_process_info.
Thelast_event_timein the Process status event is renamed aslast_event_mtime. -
Update the upper-left hyperlink of the Supvisors instance box in the main Supvisors Web page,
so that it leads to the same page, as provided by the other Supvisors instance, instead of leading
to the Supervisor page of the other Supvisors instance. -
Cancel individual subscriptions from the Supervisor events rather than perform a global clear.
-
Consider variable CPU frequency value returned by
psutil. -
Apply the XML-RPC updates on the JAVA client and the Flask interface.
Supvisors 0.18.7
0.18.7 (2025-01-10)
-
Fix a random Python crash due to an I/O exception when the Supervisor log file is rolling over.
-
Fix a possible race condition in the Supervisor proxies management.
Supvisors 0.18.6
0.18.6 (2024-08-20)
-
Completion of fix about process CPU statistics when using SOLARIS mode.
-
Add a grid to statistics plots in the Supvisors Web UI.
Supvisors 0.18.5
0.18.5 (2024-08-19)
- Fix process CPU statistics when using SOLARIS mode.
Issue introduced in Supvisors 0.18 with statistics refactoring.
Supvisors 0.18.4
0.18.4 (2024-07-13)
-
Fix
supervisorduptime in the Supvisors Web UI.
Issue introduced in Supvisors 0.18 with monotonic time consideration. -
Set a default warning message to state that Supvisors rules don't apply on the Supervisor page
of the Supvisors Web UI. -
Emphasize the selected Supervisor instance and Application in the navigation of the Supvisors Web UI.
-
In discovery mode, clarify the logs in the event where the Supvisors nick identifier is not unique.
-
Add a section about multicast in documentation troubleshooting.
Supvisors 0.18.3
0.18.3 (2024-06-05)
-
Recreate the internal proxy to the local Supervisor if older than 20 minutes, in order to palliate the closure
of all channels inactive during 30 minutes in the Supervisor HTTP server.
This fixes a rare bug that has been introduced in Supvisors 0.17, and whose occurrence has greatly
increased after the refactoring of the Supvisors 0.18 internal communications. -
Swap Memory and Network statistics cards in the Supvisors Web UI.
Supvisors 0.18.2
0.18.2 (2024-05-27)
-
Handle PermissionError exception when trying to get disk usage.
-
Update CSS for overflow parts in the Supvisors Web UI.
Supvisors 0.18.1
0.18.1 (2024-05-26)
-
Fix the different perception of Supvisors instances about a process whose state is forced.
-
Fix regression using the
SINGLE_NODEdistribution rule. -
Share the configuration of
stdoutandstderrlog files between all Supvisors instances.
has_stdoutandhas_stderrare added to the result of the XML-RPCget_local_process_info. -
When the
software_nameoption is set, it is used as a prefix in all log traces. -
Add disk usage and read/write statistics to the Supvisors Web UI.
Disk statistics are published to the event interface and the JAVA client has been updated accordingly. -
In the Application page of the Supvisors Web UI, add the possibility to expand the process information
from all Supvisors instances where it is configured.
In the event of a process conflict, aConciliatebutton is displayed instead od a list of Supvisors instances.
Clicking on this button displays the Conciliation page. -
Split the Main and Conciliation pages of the Supvisors Web UI.
-
The conflicting processes are highlighted in the Main page of the Supvisors Web UI.
-
Change the access of the Conciliation page of the Supvisors Web UI, by clicking on the
CONCILIATIONstate.
A click on the Supvisors logo always brings back the Main page. -
Fix the renaming of
DEPLOYMENTstate asDISTRIBUTIONin the JAVA client.
Supvisors 0.18
0.18 (2024-05-02)
-
Refactoring of the Supvisors internal communications.
Theinternal_portof the Supvisors section in the Supervisor configuration file is no longer needed.
As a consequence, thesupvisors_listoption is simplified as follows:<identifier>host_name:http_port.
The transitionalSupvisorsInstanceStates.ISOLATINGstate has been removed.
The remote Supvisors instance becomesSILENTas soon as the published events fails due to a transport issue. -
Implement Issue #50.
A new tagoperational_statusin the Application rules allows to declare the formula applicable to evaluate the
application operational status.
status_formulais added to the result of the XML-RPCget_application_rules. -
Implement Issue #15.
AStarterModelhas been added to Supvisors to give a prediction of the application distribution when started.
The command is available through the new XML-RPCstest_start_applicationandtest_start_processand have been
added tosupervisorctl. -
The Supvisors
core_identifiersoption and the Supvisors rules can now accept indifferently Supervisor
identifiers or keys with thehost:http_portformat. -
Update the
get_instance_infoXML-RPC so that the function accepts a stereotype as parameter.
As a consequence, it now returns a list of dictionaries. -
Add a
lazyattribute to theupdate_numprocsXML-RPC, so that when set combined to a numprocs decrease,
Supvisors defers the obsolete processes deletion from the Supervisor configuration only when the processes stop
(exit, crash or later user request) instead of stopping them immediately. -
Add monotonic time in internal model and exchanges to cope with time updates while Supvisors is running.
Impact on the XML-RPCget_instance_info,get_process_infoand on the event interface for instance status
and process event. -
Add new
get_statistics_status,enable_host_statistics,enable_process_statistics,update_collecting_period
XML-RPCs to support the possibility to get and update the collection of host and process statistics.
The corresponding commandsstats_status,enable_statsandstats_periodhave been added tosupervisorctl.
The JAVA client includes the new XML-RPCs. -
Add new
get_all_inner_process_infoandget_inner_process_infoXML-RPCs to support debug investigation.
They return internal information on the processes declared on a Supvisors instance. -
Move the host statistics collector to the statistics collector process.
The optionstats_collecting_periodis now applicable to host statistics collector. -
Re-apply the eventual process
extra_argswhen restarting the application. -
In the Supervisors navigation menu of the Web UI, add a red light to Supervisor instances having raised a failure.
-
Allow the display of a software name and icon at the top of the Supvisors Web UI.
The optionssoftware_nameandsoftware_iconhave been added to the Supvisors section of the Supervisor
configuration file. -
All internal identifiers are now based on the
host:http_portformat. -
Rename the
DEPLOYMENTstate asDISTRIBUTIONstate to lift ambiguity ("deployment" is rather connoted when dealing
with the orchestration domain). -
Rework Supvisors
RPCInterfaceexceptions. -
Rework the Web UI.