Skip to content

Releases: VOLTTRON/volttron

9.0.1

08 May 21:45
7b5339b
Compare
Choose a tag to compare

This release provides an update to a security issue that was found. There was also a code path where requirements weren't getting properly loaded in the main volttron process.

What's Changed

Full Changelog: 9.0...9.0.1

9.0

01 Apr 18:52
5b45014
Compare
Choose a tag to compare
9.0

This release is the culmination of a large body of work from multiple contributors in the community and includes new features, improved ease of use, and development support. The following list highlights the most notable changes included in 9.0:

New Features / Improvements

  • Fixed boostrap process for newer versions of pip (#3159)
  • The VOLTTRON 2030.5 EndDevice agent manages communication between the VOLTTRON platform and a 2030.5 server using the IEEE 2030.5 protocol, enabling both control and monitoring of an End Device. The agent implements the 2030.5 function sets End Device Time, Distributed Energy Resources, Metering, and Metering Mirror.
  • New DNP3 driver which acts as DNP3 Master and supports communication with DNP3 Outstation to read/write end device points.
  • New DNP3 Outstation agent to interact with DNP3 Master. This replaces the deprecated DNP3 Outstation agent.
  • New HomeAssistant driver for data collection and control of IoT devices in smart buildings.
    vcfg command now has new update-config-store function that can add multiple configuration store entries in one go (#3121).
  • Fixed RPC calls of configuration store to go through auth layer in order to avoid security loop holes. This is fix for issue https://github.com/VOLTTRON/volttron/issues/3097. As a side effect of this change duplicate RPC calls that do same function(manage_* RPC methods) have been deprecated and will be removed in future
  • Updated RMQ VOLTTRON to use pika version 1.2.0 and Rabbitmq version 3.9.29.
  • Fixes to several pytests.

Known Issues:

  • 2030.5 EndDevice agent has been tested with inverter simulator and not against an actual device.

The following provides an in-depth look of commits since the 8.2 release.

What's Changed

New Contributors

Full Changelog: 8.2...9.0

9.0 Release Candidate

15 Nov 00:22
Compare
Choose a tag to compare
9.0 Release Candidate Pre-release
Pre-release

9.0 Release Candidate

This release candidate is the culmination of a large body of work from multiple contributors in the community and includes new features, improved ease of use, and development support. The following list highlights the most notable changes included in 9.0-Release Candidate 0:

New Features / Improvements

  • The VOLTTRON 2030.5 EndDevice agent manages communication between the VOLTTRON platform and a 2030.5 server using the IEEE 2030.5 protocol, enabling both control and monitoring of an End Device. The agent implements the 2030.5 function sets End Device Time, Distributed Energy Resources, Metering, and Metering Mirror.
  • New DNP3 driver which acts as DNP3 Master and supports communication with DNP3 Outstation to read/write end device points.
  • New DNP3 Outstation agent to interact with DNP3 Master. This replaces the deprecated DNP3 Outstation agent.
  • New HomeAssistant driver for data collection and control of IoT devices in smart buildings.
  • vcfg command now has new update-config-store function that can add multiple configuration store entries in one go (#3121).
  • Fixed RPC calls of configuration store to go through auth layer in order to avoid security loop holes. This is fix for issue https://github.com/VOLTTRON/volttron/issues/3097. As a side effect of this change duplicate RPC calls that do same function(manage_* RPC methods) have been deprecated and will be removed in future
  • Updated RMQ VOLTTRON to use pika version 1.2.0 and Rabbitmq version 3.9.29.
  • Fixes to several pytests.

Known Issues:

  • 2030.5 EndDevice agent has been tested with inverter simulator and not against an actual device.

8.2 Full Release

30 Sep 23:05
a537ca0
Compare
Choose a tag to compare

Version updates

Updated to newer version of RabbiMQ(3.9.7) and Pika(1.2.0)
#2839

Backward incompatible changes

VOLTTRON feature to run individual agents as unique Unix users is now named "agent-isolation-mode" and is consistently referred using this name in code, configuration, and documentation. Before VOLTTRON 8.2 this configuration parameter was called "secure-agent-users" and related documentation referred to this mode as "secure mode".
#3036
To upgrade existing VOLTTRON environment, use volttron-upgrade command. See README.

New features

  1. Added platform feature to disable authentication (Currently only for ZMQ VOLTTRON). This would help avoid authentication overhead and improve performance for VOLTTRON instances used for running simulations, testing, or instances deployed in highly restricted and/or secure environment. https://volttron.readthedocs.io/en/releases-8.2/platform-features/security/non-auth-mode.html
    #2926, #2989, #2995, #3001

  2. Added RESTful web API which exposes functionality to client applications locally or over the network for working with devices, historians, RPC, pubsub, and management functionality similar to vctl. https://volttron.readthedocs.io/en/releases-8.2/platform-features/web-api/introduction.html
    #2948, #2752, #2861, #2866, #2975, #2786, #2910

  3. Added new OpenADRVen agent in core/services to support the Open Automated Demand Response (OpenADR) standard. Allows an agent to connect to an OpenADR Virtual Top Node (VTN). This agent replaces the old OpenADRVen agent and uses the third-party library OpenLEADR that is fully compliant with OpenADR 2.0b.
    #2859

  4. Added new --all-tagged option to vctl commands.
    #2882
    #3010

  5. WeatherDotGov agent can now query hourly forecast data using (latitude and longitude), or (station id), or (wfo, x, y)
    #2996

Improvements

  1. All example agents (source, test, and documentation) have been updated to ensure compatibility with the latest VOLTTRON version

  2. Fixed and updated several test cases to improve coverage for existing and newly added features, and improve CI integration

  3. Several minor bug fixes and code improvements

  4. Updated documentation in https://volttron.readthedocs.io

    • Added documentation for all new features and agents
    • Added quick-start tutorial
    • Add documentation for Asyncio and Gevent usage in Agent development
  5. Moved unsupported/deprecated agents into <volttron_source_root>/deprecated
    #2990

8.1.3 Maintenance Release

14 Jan 19:25
5be3926
Compare
Choose a tag to compare

This release fixes issue related to agent installation using VOLTTRON Central user interface and minor pytest issues.

For more information, please refer to below issues:

  1. Fix agent install on VC #2851
  2. Fix ambient tests and load config #2853

8.1.2 Maintenance Release

02 Dec 23:54
4284fc6
Compare
Choose a tag to compare

This release fixes a historian bug that occurs when meta data is an empty dictionary. For more information see issue #2821

8.1.1 Maintenance Release

22 Sep 18:49
97514d8
Compare
Choose a tag to compare

This release fixes bugs that were introduced with the addition of the dynamic rpc capability for 8.1 and through testing of different versions of python. This release targets 3.6.9 version of python, but has been tested with versions up to 3.9.

  • [ #2778 ] An issue with vcfg where the vip identity of SQLHistorian wasn't platform.historian
  • [ #2779 ] An issue with setuptools < 40
  • [ #2790 ] Upgrading from 7.x volttron issue
  • [ #2796 ] Pinned pyzmq and removed duplicate entry between requirements.py and bootstrap.py

A volttron-upgrade function has been added to upgrade the location of backup.sqlite for historian as well as updating auth.json file for any version of auth.json since 6.x See README.

8.1 Release

02 Sep 20:40
dba24e6
Compare
Choose a tag to compare

This release contains new features, fixes to issues reported by the community and the development team. The following list highlights the most notable changes included in 8.1:

  • Historian related changes
    • Support for newer version of Mysql 8.0.
    • Updated SQL historians schema to combine topics and metadata into the same table. The new version of historian will work with existing tables (i.e. old schema) if tables already exists.
    • Updated SQL aggregate historian schema to store aggregates as double precision number instead of text – removed support for string aggregations such as GROUP_CONCAT.
  • Ability to allow capabilities to RPCs dynamically at run time.
  • Bug fixes for RabbitMQ federation and shovel. Added pytests for RabbitMQ federation and shovel.
  • Updated tests for web authentication.
  • Added testing of RabbitMQ VOLTTRON into Github actions/workflows.
  • Video tutorial on overview of platform driver.
  • Moved agents contributed by external community into 'services/core/contrib' folder, agents that may work but is not actively maintained by PNNL team into 'services/core/unsupported' and agents that are deprecated into 'deprecated' folder.

Known Issues:

  • RabbitMQ VOLTTRON does not work in Ubuntu 20.04 LTS
  • There is a 6-7 compatibility issue when forwarding data from 6 instance to 7 instance

8.0 Full Release

13 Apr 23:35
db9256f
Compare
Choose a tag to compare

This is full release of 8.0 version of VOLTTRON. This incorporates community feedback from the release candidate as well as new contributions and features.

⦁ Added a video tutorial for historian framework that walks through historian features and installation process (https://volttron.readthedocs.io/en/develop/, https://volttron.readthedocs.io/en/develop/agent-framework/historian-agents/historian-framework.html?highlight=video#historian-video-tutorial)
⦁ Renamed MasterDriver to PlatformDriver, MasterWebService to PlatformWebService and updated all associated documentation
⦁ Added command line support to authenticate remote ZeroMQ/RabbitMQ message bus-based connections
⦁ Added CSR support for multi-platform federation connection
⦁ Created github workflow to run VOLTTRON tests on github
⦁ Improved VOLTTRON test framework for automated unit and integration tests
⦁ Installation of agents is made available through volttron-ctl (vctl). 'vctl install' command will not by default install agent with default configuration.
⦁ All agents by default send heartbeat messages. Agents can opt out by removing default heartbeat configuration
⦁ Updated documentation for VOLTTRON introduction, services core agents and multiplatform deployment in readthedocs (https://volttron.readthedocs.io, https://volttron.readthedocs.io/en/develop/agent-framework/operations-agents/index.html, https://volttron.readthedocs.io/en/develop/deploying-volttron/multi-platform/index.html)
⦁ Added secure deployment guidance section in VOLTTRON readthedocs based on review comments from Secure Software Central report (https://volttron.readthedocs.io/en/develop/deploying-volttron/secure-deployment-considerations.html)
⦁ Minor bug fixes in vctl and vcfg sub commands
⦁ Removed pubsub backward compatibility with VOLTTRON 4.1
⦁ Fix for critical issue pertaining to non-start of VOLTTRON platform (zmq/rmq) without installation of RabbitMQ server (Issue #2596)
⦁ Fix for MQTT Historian to capture custom topics and store as single data element (Issue #2638)
⦁ Fix for Historians to detect data with invalid date and time and store in alternate datastore to be investigated later (Issue #2444)

Known Issues:
⦁ SSL handshake error is observed in the volttron log when remote authentication request (either from zmq/rmq instance) is observed in admin webpage. The approval, denial, deletion process goes through fine. A github issue has been raised to track the problem (#2594)
⦁ RabbitMQ VOLTTRON does not work in Ubuntu 20.04 LTS
⦁ There is a 6-7 compatibility issue when forwarding data from 6 instance to 7 instance

7.0.1 Update

26 Feb 17:50
aa02c99
Compare
Choose a tag to compare

This is a hot fix release to fix issues #2618, #2619, #2626, #2627

Updates to underlying libraries prevented VOLTTRON from bootstrapping. This hotfix resolves the issues by pinning the versions of third party libraries.

Please report any incompatibilities encountered on your system.