Releases: Pioreactor/pioreactor
Releases · Pioreactor/pioreactor
24.4.10rc0
Upcoming
Enhancements
- Faster app start-up performance, which should translate to faster response times.
- Log when workers change experiment assignments.
- Log when workers change active status.
- Adding
[pioreactor]
section to config.inis
Breaking changes
pio install-plugin
is nowpio plugins install
. Likewise foruninstall
.pio list-plugins
is nowpio plugins list
.pios install-plugin
is nowpios plugins install
. Likewise foruninstall
.
Bug fixes
- fixed Log table in the UI not showing all entries.
- fixed HAT button response in the UI.
24.4.3
24.4.3
Highlights
- The Pioreactor leader can now support multiple experiments! If you have more than one Pioreactor, this change allows you to run multiple experiments simultaneously, assign Pioreactors to different experiments, and manage all experiments concurrently. No more multi-leader set ups - all you need is a single leader and multiple workers! See video here.
- Ability to delete experiments from the UI.
- Better control over your cluster, using the Inventory page in the UI.
- Ship with network configuration of local-link connections: plug in an ethernet from your Pioreactor to your computer, and after invoking
sudo nmcli c PioreactorLocalLink up
, you should be able to visithttp://pioreactor.local
in your browser.
Enhancements
- replace the
ip
file that is written to on startup with a newnetwork_info.txt
file that contains the hostname, IPv4 address, and MAC addresses. - Adding the ethernet (wired) mac address to the system tab.
- new Python module for controlling workers:
pioreactor.cluster_management
- by default, for new installs, the local-access-point SSID is now
pioreactor_<hostname>
. - UI performance improvements
- New database tables to handle workers (
workers
) and experiments assignments (experiment_assignments
). - New
pio workers
CLI to mange your inventory. Trypio workers --help
to see all the commands available. - Better error messages when a self-test fails.
pio kill
has new options to kill specific actions. Ex:pio kill --experiment this-exp
,pio kill --job-source experiment_profile
Breaking changes
- When a experiment profile stops early (i.e. via "stop early" in the UI), it now will halt any jobs that it started. This is a change from how they worked previously, but this new behaviour is less of a surprise to users.
pio add-pioreactor <name>
is nowpio workers add <name>
pio cluster-status
is nowpio workers status
utils.publish_ready_to_disconnected_state
changed names toutils.managed_lifecycle
config.inventory
in the config.ini is no longer used. All that data is now handled in the database on the leader, and managed in the UI or CLI.pio kill <job_name>
is removed, usepio kill --name <job_name>
.
Bug fixes
- fix for not being able to access
http://pioreactor.local
reliably. - fix for multiple exporting datasets when selecting "All experiments"
Known bugs
- removing a Pioreactor leader from an experiment will stop any experiment profiles running that are associated to that experiment.
24.4.3rc0
Upcoming
Highlights
- The Pioreactor leader can now support multiple experiments! If you have more than one Pioreactor, this change allows you to run multiple experiments simultaneously, assign Pioreactors to different experiments, and manage all experiments concurrently. No more multi-leader set ups - all you need is a single leader and multiple workers!
- Ability to delete experiments from the UI.
- Better control over your cluster, using the Inventory page in the UI.
- Ship with network configuration of local-link connections: plug in an ethernet from your Pioreactor to your computer, and after invoking
sudo nmcli c PioreactorLocalLink up
, you should be able to visithttp://pioreactor.local
in your browser.
Enhancements
- replace the
ip
file that is written to on startup with a newnetwork_info.txt
file that contains the hostname, IPv4 address, and MAC addresses. - Adding the ethernet (wired) mac address to the system tab.
- new Python module for controlling workers:
pioreactor.cluster_management
- by default, for new installs, the local-access-point SSID is now
pioreactor_<hostname>
. - UI performance improvements
- New database tables to handle workers (
workers
) and experiments assignments (experiment_assignments
). - New
pio workers
CLI to mange your inventory. Trypio workers --help
to see all the commands available. - Better error messages when a self-test fails.
pio kill
has new options to kill specific actions. Ex:pio kill --experiment this-exp
,pio kill --job_source experiment_profile
Breaking changes
- When a experiment profile ends early, it now will halt any jobs that it started. This is a change from how they worked previously, but this new behaviour is less of a surprise to users.
pio add-pioreactor <name>
is nowpio workers add <name>
pio cluster-status
is nowpio workers status
publish_ready_to_disconnected_state
changed names tomanaged_lifecycle
config.inventory
in the config.ini is no longer used. All that data is now handled in the database on the leader, and managed in the UI or CLI.pio kill <job_name>
is removed, usepio kill --name <job_name>
.
Bug fixes
- fix for not being able to access
http://pioreactor.local
reliably. - fix for multiple exporting datasets when selecting "All experiments"
Known bugs
- removing a Pioreactor leader from an experiment will stop any experiment profiles running that are associated to that experiment.
24.4.2rc0
Upcoming
Highlights
- The Pioreactor leader can now support multiple experiments! If you have more than one Pioreactor, this change allow you to run multiple experiments simultaneously, assign Pioreactors to different experiments, and control all experiments concurrently. No more multi-leader set ups - all you need is a single leader and multiple workers!
- Ability to delete experiments from the UI.
- Better control over your cluster, using the Inventory page in the UI.
- Ship with network configuration of local-link connections: plug in an ethernet from your Pioreactor to your computer, and after invoking
sudo nmcli c PioreactorLocalLink up
, you should be able to visithttp://pioreactor.local
in your browser.
Enhancements
- replace the
ip
file that is written to on startup with a newnetwork_info
file that contains the hostname, IPv4 address, and MAC addresses. - Adding the ethernet (wired) mac address to the system tab.
- new Python module for controlling workers:
pioreactor.cluster_management
- by default, for new installs, the local-access-point SSID is now
pioreactor_<hostname>
. - UI performance improvements
- New database tables to handle workers (
workers
) and experiments assignments (experiment_assignments
). - New
pio workers
CLI to mange your inventory. Trypio workers --help
to see all the commands available. - Better error messages when a self-test fails.
pio kill
has new options to kill specific actions. Ex:pio kill --experiment this-exp
,pio kill --job_source experiment_profile
Breaking changes
- When a experiment profile ends early, it now will halt any jobs that it started. This is a change from how they worked previously, but this new behaviour is less of a surprise to users.
pio add-pioreactor <name>
is nowpio workers add <name>
pio cluster-status
is nowpio workers status
publish_ready_to_disconnected_state
changed names tomanaged_lifecycle
config.inventory
in the config.ini is no longer used. All that data is now handled in the database on the leader, and managed in the UI or CLI.pio kill <job_name>
is removed, usepio kill --name <job_name>
.
Bug fixes
- fix for not being able to access
http://pioreactor.local
reliably. - fix for multiple exporting datasets when selecting "All experiments"
24.3.10
24.3.10
Enhancements
- For better consistency between Pioreactors, we've introduced a new configuration option that will automatically adjust the IR LED intensity to match a target value in the reference photodiode, at the start of OD reading. This means that if your IR LEDs are slightly different between Pioreactors, the IR LED output will be adjusted to match a hardcoded value. To enable this feature, change the
[od_config]
config parameterir_led_intensity
value toauto
. For new installs, this is the default configuration. This shouldn't change your actual OD readings very much (since we normalize raw PD by REF, and increase or decrease in REF is balanced by increase or decrease in PD), but it will make analysis easier. - Significant UI performance improvements: we are use less MQTT clients, which should mean faster loading, less network overhead, and overall lower resource-usage.
Bug fixes
- Fixes updating automations in experiment profiles
24.3.8rc0
Upcoming
Enhancements
- For better consistency between Pioreactors, we've introduced a new configuration option that will automatically adjust the IR LED intensity to match a target value in the reference photodiode, at the start of OD reading. This means that if your IR LEDs are slightly different between Pioreactors, the IR LED output will be adjusted to match a hardcoded value. To enable this feature, change the
[od_config]
config parameterir_led_intensity
value toauto
. For new installs, this is the default configuration. This shouldn't change your actual OD readings very much (since we normalize raw PD by REF, and increase or decrease in REF is balanced by increase or decrease in PD), but it will make analysis easier. - Significant UI performance improvements: we are use less MQTT clients, which should mean faster loading, less network overhead, and overall lower resource-usage.
Bug fixes
- Fixes updating automations in experiment profiles
24.3.6rc1
Upcoming
Highlights
- For better consistency between Pioreactors, we've introduced a new configuration option that will automatically vary the IR LED intensity to match a target value in the reference. This means that if your IR LED is slightly different between Pioreactors, the intensity % will be adjusted to match an internal value. To enable this feature, change the
[od_config]
config parameterir_led_intensity
value toauto
Bug fixes
- Fixes updating automations in experiment profiles
24.3.4
24.3.4
Enhancements
- reusing more MQTT clients internally => faster job startup and less network overhead
Bug fixes
- using the archive upload method to update Pioreactors had a bug when distributing the archive to workers on the cluster. That has been fixed. The first time, you archive update may fail. But it should succeed the second time.
- fix UI bug that was preventing real-time data from showing up in some custom charts.
- fix UI bug that was causing a stale datum to appear in charts.
- To avoid downstream permission issues,
pio
can't be run as root. That is,sudo pio ...
will fail. - a typo prevented
od_config.smoothing_penalizer
from being used internally. This is fixed. - some retry logic for fixing "lost" state in the UI.
- fixed numerous MQTT connections from accumulating in the UI
24.2.27rc0
This is a release to test some release changes.
24.2.26
24.2.26
Highlights
- Experimental introducing outlier filtering in growth rate calculations. This is tunable with the new
ekf_outlier_std_threshold
parameter under[growth_rate_calculating.config]
. To turn off outlier filtering, set this parameter to some very large number (1000s). Don't put it less than 3.0 - that's silly. - With this new filtering, we can provide more reasonable values for the parameters of the growth rate Kalman filter. We previously had to artificially increase the measurement std. deviation (
obs_std
) to allow for some outliers. This had the knock-on effect of hiding growth-rate changes, so we had to also increase that parameterrate_std
. With better outlier protection in the model, we can move these values back. New installs will have the following parameters, and we encourage existing users to try these values if you plan to use the outlier filtering.
[growth_rate_kalman]
acc_std=0.0008
obs_std=1.5
od_std=0.0025
rate_std=0.1
- added configuration for alternative mqtt brokers with the new configuration
[mqtt] username=pioreactor password=raspberry broker_address= broker_ws_port=9001 broker_port=1883 ws_protocol=ws use_tls=0
Enhancements
- clear the growth-rate cache with
pio run growth_rate_cacluating clear_cache
- added Pioreactor specific software version to the UI: Page Pioreactors -> Manage -> System -> Version. this requires a restart to display correctly
- new UI MQTT library. Is it faster? Maybe!
- increased the default
max_subdose
to 1.0.
Bug fixes
- fixed a case where dosing automation IO execution would not run due to a floating point rounding error. Sorry!
- fixed a memory leak in long running dosing automations that had thousands of dosing events. Sorry!
- fixed a race condition that caused an error to occur when a software PWM channel was closed too quickly. Sorry!
- fixed bug that was partially crashing the UI if some bad syntax was entered into a custom yaml file. Sorry!
- fixed bug that was causing bad json from the server, causing empty / non-loading areas in the UI. Sorry!
- fixed
datum
bug in the Overview that was crashing the UI. Sorry!