-
Notifications
You must be signed in to change notification settings - Fork 70
GSF v2.3.302 Release Notes
J. Ritchie Carroll edited this page May 6, 2020
·
1 revision
Find GSF on NuGet
- Added additional overload to Common functions IsNumericType that takes explicit Type parameter.
- Added configuration flag to WindowsUserInfo to allow for legacy group lookups to speed use authentication when using local accounts.
- Added GetColumn extension for two-dimensional arrays to CollectionExtensions.
- Added GetRow in addition to GetColumn for two-dimensional arrays - and updated Row context to be first index since I'm in the minority that Column should be first.
- Added more resharper message suppression for TableOperations.
- Added optional startIndex field to StringParser.ExpectedFieldNamesMatch() method. (FRR)
- Added precompiler directives to enable WindowsUserInfo.cs to compile for Mono builds on Linux.
- Fixed GetColumn extension function to properly validate dimension zero length.
- Fixed region section alignments.
- Improved numeric type operations in Common functions class.
- In FileBackedLookupTable, fixed the setter on the indexer to properly check whether the hashtable needs to grow before adding a new item.
- In FileProcessor, implemented logic to skip subfolders during file enumeration based on a list of wildcard patterns.
- Minor clean-up / warning suppression of GSF.Text imported Diff Match and Patch code.
- Minor updates to component model value expression parser.
- Simplified boolean logic in CopyPermissions function.
- Updated char extensions for ToUpper/ToLower to use standard .NET functions
- Updated SignalReference parsing to use int.TryParse for more reliable parsing when signal reference inputs are malformed.
- Updated templated expression parser to properly handle multiple eval expressions.
- Added diff-match-path source code to GSF.Core in the GSF.Text namespace.
- Added ability to specify ReceivedBytesThreshold for serial clients in the connection string along with improved numeric parameter validation.
- Added multiple server capability to TCP clients allowing automatic fail-over.
- Added SerialException class to handle serial-type errors related to the SerialClient.
- Cleaned up TlsClient code.
- Exposed SslStream property from TlsClient class.
- Fixed issue with serialization of IdentifyClientsBy setting in UdpServer. Fixes #57
- General code clean-up of SerialClient
- General code update and clean-up.
- Improved null checks in RadiusPacket.
- Improved SerialClient status details.
- Removed automatic adjustment on MaxConnectionAttempts when used with multiple servers.
- TcpClient general code cleanup.
- Updated TlsClient on Mono builds to default to Tls1.2 since newer builds of Mono support this.
- Added multiple server connections to TlsClient.
- Removed unused code from latest updates.
- Fix outdated MONO code in TcpClient.cs and TlsClient.cs.
- Added improved error message for protocol byte based frame re-alignments in BinaryImageParserBase (plus code cleanup).
- Fixed stream initialization error in MultiSourceFrameImageParserBase
- Simplified reserved symbol initialization in TemplatedExpressionParser.
- Updated default steam initialization state for multi-source frame image parser base class (plus general code cleanup in namespace)
- Updated templated expression parser to auto-escape reserved symbols in substitution values to prevent unintended expression evaluation errors.
- Added frequency and dF/dt to attributes that are displayed via PMU Connection Tester protocol specific hierarchy.
- General code update and clean-up.
- Updated MPFP to include DisableRealTimeDataOnStop setting to allow for handling primary / secondary split serial connections where the data stream needs to stay running for secondary connection when primary connection is shutdown.
- Added BaseKV field to InputWizardDevicePhasor.
- Filtered group devices from graph measurements screen.
- Fixed SQLite operations with input device wizard in WPF Manager tools (BaseKV loads from SQLite needed cast from long to int)
- Updated AccessID to default a value of 1.
- Updated Device model to return globally configured company acronym when no company is assigned to a device.
- Updated InputDeviceWizard to properly update device acronym when updating configuration instead of adding a new device and leaving old one.
- Updated InputWizardDevices to guess phase for VSPM to be zero and added 161kV to voltage level guesses (plus general code cleanup).
- Updated InputWizardDevices with improved phase guess operation (like that found in web device wizard).
- Updated static constructor of Device model to only attempt retrieval of company acronym setting without adding one.
- Synchronized output stream phase option to those now allowed as inputs.
- Added base KV to synchrophasor wizard and improved recovery of existing data during configuration updates.
- Added original values from config as tool-tips on wizard screen and improved operation for PDC-based inputs.
- Fixed issue with Action Adapter not showing up in OpenPDC
- Added data forwarding options to phasor measurement mapper.
- Added additional null checks to TimeSortedArchiveFileScanner
- Added action to load existing company info (plus code cleanup)
- Applied a saftey check to GetPropertyValue function.
- Modified project to depend on the WiX NuGet package instead of the WiX Toolset.
- Tweaked paths and conditions in csproj so project works with just the WiX NuGet package.
- Added Option to Load dll from Path in InstallerActions.DatabaseQueryAction
- Improved status feedback and error handling.
- Minor formatting updates.
- Updated adapter comments.
- Updated to include latency calculations.
- Added new adapter that will create minute statistic counts for input devices.
- Made superficial changes to support Visual Studio 2019.
- Added ability to execute SELECT based metadata target searches without an expression to return all records.
- Added ability to specify table name for label field lookup and direct tag lookup for measurement key and Guid based signal IDs.
- Added cancellation token check for time slice operations.
- Added code to verify that series labels are unique for Grafana trends - even if forced to be the same by user.
- Added optimized location meta-data functions with ability to radially distribute duplicated coordinates,
- Added series command parameter to hide series with no data called "DropEmptySeries" to be added to filter expression.
- Cleared PVS Studio warnings.
- Cleared warnings and removed GSF prefix from DeviceAlarmStateAdapter.
- Improved operation of "dropEmptySeries" command
- Improved operation of unique label validation.
- Updated documentation comments.
- Updated GrafanaDataSourceBase to allow template target search queries based on expressions with SQL SELECT syntax, e.g.
- Updated series label uniqueness check to only start after 2 or more items.
- Exposed GetShortElapsedTimeString as public with comments.
- Added Grafana Alarm Panel Functionality to Grafana Statistic Data Sources
- Added Function to check if close Timestamp exists in Distribution
- Added Function to get status of individual Alarm
- Added GetAlarms to Grafana Controller
- Added Grafana Endpoint to get all available Device Alarm States and initial code for Device Groups
- Added Grafana Endpoint to Get Device Groups
- Fixed Slicefxn functionality in Grafana Controller
- Fixed Issue in Grafana Alarm query when PointTag is not trimmed
- Changed AlarmAdapter to include static functions to get Raised Alarms
- Removed special label for Grafana SetMode() function since mode can appear in multiple series
- Updated DeviceAlarm View to include Device ID
- Udated Location Request and query Request to include information for Alarms
- Fixed errors in CSV adapters and Metadata adapters which caused base-class connection string parameters to be overwritten by their defaults.
- Fixed Exception in LocationData due to paralell loop accessing dataTable
- Fixed Formating of CSVExcludeFieldAttribute
- Moved Alarm Panel Tables to GSF Schema
- Moved default Alarmstates to GSF
- Fixed issues in AlarmAdapter
- Fixed Reference to CSVExcludeFieldAttribute
- Moved DeviceAlarmStateAdapter and associated models from OpenPDC into GSF
- Disabled Compiler Warnings for missing XML comments in GrafanaAlarm Class
- Added Check fro CSVExclude Attribute when exporting CSV
- Added CSVExcludeField Attribute to mark data model fields that should not be included in CSV files
- Added Location request to Grafana OH v1.0 API
- Added Special case for processing Difference Function from Grafana to avoid issues when applying SLICE
- Added configuration flag to control if meta-data push should be allowed to be posted in parallel with data.
- Updated order of operations in adapter initialization to ensure proper loading of inputs.
- Added a multiplier of SQRT(2) to the voltage readings to account for SEL dividing by a SQRT(2).
- Added addition null checks to AnalogSection parser.
- Added additional null checks fro CommaSeparatedEventReport parser.
- Various fixes for SEL CEV parser. (FRR)
- Added error suppression for badly formatted status messages - errors get logged to event publisher.
- Fixed authorization logic in ServiceHelper for remote console commands with aliases.
- Updated ServiceProcess to report total run-time as elapsed time instead of seconds.
- Added "init" alias for "initialize" and "auth" for "authorize"
- Added additional timestamp validation checks for temporal measurements and adapter usages.
- Added independent adapter collection manager base classes.
- DataSubscriber general code cleanup.
- Fixed Missmatch of indices in publisher status and enumerate Client
- Fixed shutdown issue in Iaon session with filter adapters collection being null.
- Fixed status message for independent adapter collections where config reload timeout and attempt values were swapped.
- Handled dispose exception due to a race condition in statistics engine.
- Improved boolean logic for DataPublisher (and general clean up)
- Improved error response message when PING command fails.
- Udated process spawn for primary remote console functions from main service to be independent, non-child, processs on Windows
- Update SignalTypes comments for all independent adapter manager implementations.
- Updated independent adapter management handler for initialization to fail when SignalTypes is defined and length does not support per adapter output length.
- Updated independent adapter manager handlers to support custom per output signal types and per adapter custom connection strings.
- Updated independent adapter managers to allow for minute control of output measurement metadata.
- Updated initial data scripts to change Entergy acronym to ESI for Entergy Services Inc
- Updated input / output settings parse in OnSecondDataWindowAdapterBase to use "nameof" for settings.
- Updated input measurement index used for name to default to zero for BulkSequenceCalculator.
- Updated OneSecondDataWindowAdapterBase to allow to custom source measurement table defintion.
- Updated RazorEngine handling of dyanmic assemblies with automated cleanup.
- Updated ServiceHostBase to allow implementations to intercept data source propagation to IaonSession for customization purposes.
- Disabled checking for CAS publisher policy for all application config files to speed start time.
- Restored common class to internal status to prevent ambigous references to common in GSF.Core.
- Updated ServiceHostBase to properly show system uptime as elapsed time when list adapter collections.
- Updated subscription creation screens to allow for STTP or GEP and added option to use source prefix names. Includes various UI feedback improvements.
- Added additional null checks in the ApplicationRole data model.
- Added additional null checks to the Node data model.
- Removed dead code expression.
- Updated Node model to properly match database schema.
- Added "delayedPromise" function to gsf.web.client
- Added a parse query string function that will return a json object representation of said query string to gsf.web.client.js.
- Added an upside down triangle to the flot symbols package.
- Added default polyfill javascript file that will polyfill modern browser function into IE.
- Added DOM Node paramater to ko.applyBindings function call because now it is required.
- Added Flot Plugin for dashed Lines
- Added leaflet.js to shared web scripts.
- Added mising semicolons to updates in select2-bootstrap CSS.
- Added PagedViewModelDivTable.cshtml to be used if table issues arise in ie11.
- Added polyfill script for use of ES6 functionality within IE.
- Added Select2 library for HTML select customizations with associated bootstrap theme and knockout bindings.
- Adjusted select2 bootstrap CSS to include matching border radius settings.
- Cleaned up gsf.web.client code (removed ESLint errors, etc)
- Fixed leaflet to be marked as embedded resources.
- Fixed OpenEmbeddedResourceStream for manually added resources.
- Fixed table scroll issue with primeui.js.
- Improved operation of replaceAll function in gsf.web.client.js
- Moved binding to pageContentWrapper to include count field.
- Restored post functionality to WebPageController.
- Updated cache-control to better interact with Google chrome caching so that updates to Javascript are always picked-up.
- Updated embedded Bootstrap 3.4.1
- Updated embedded jQuery to 3.4.1
- Updated embedded knockout version to 3.5.0
- Updated embedded shared Angular script to v1.7.9
- Updated ko.applyBindings function to use the page body because other node was not present in all applications.
- Updated reference to Microsoft.AspNet.SignalR.Core NuGet package to match the newly added project.
- Updated replaceAll function in gsf.web.client to ensure parameters are strings before executing string operations.
- Bump angular from 1.6.8 to 1.7.9 in /Source
- Updated rendering related to record count sequence.
- Minor updates.
- Removed reference to app.config from library project
- Synchronized references to SignalR and dependencies with GSF.Web
- Updated applyBindings to include target DOM element
- Updated Nuget references
- Updated project to auto-deploy "bin" folder for improved cshtml development.
- Updated Status.cshtml page to target first body element for knockout bindings
- Added IsConcentrator flag to primary device connection which gets set when more than one device is defined in the connection.
- Fixed access to global settings object view type registry.
- Updated PhasorHub to include missing functions and improved operation of system frequency calculation creation.
- Updated GraphMeasurements to display point tag
- General code update and clean-up.
- Relabled proxy options as data fowarding options to better reflect intended purpose.
- Reordered initialization of frame parser to follow any forwarding configuration for proper order of operations
- Added after-build signing to protocol adapters project.
- Fixed issue with reporting "No data mapped" for devices with bad timestamps in GetShortStatus (plus code cleanup)
- Updated calculated measurement base to better handle null values associated with input and output measurements.
- Updated common phasor services data operation for phasor source validation to skip automatically adding a device quality measurement when device is configured to only forward data.
- Updated PhasorMeasurementMapper to properly load specified or cached configuration frames at the appropriate time.
- Added Config 3 frame header
- Added "Neutral" with identifier "N" to possible phase list.
- Added Base KV field to Phasor UI
- Added "RenameAllPointTags" invokable method to CommonPhasorServices in PhasorProtocolAdapters.
- Added Command To request CFG3 frame
- Added Option to round to distribution timestamp sampling with less tahn 1/sec
- Added Optional base-line to rounding tiemstamp to avoid issues when using less than 1 sample/sec
- Added "forward only" option to synchrophasor wizard screen.
- Added 345 as common base kV level to guess.
- Added assembly info to project.
- Added better handling to gateway connection updates and handling of empty connection strings.
- Added import / export config, serialized section and inital connection builder to wizard screen
- Added longitude/latitude fields for device definition
- Added new assembly to hold web-based operations for synchrophasor user interfaces.
- Added observable connection string and forward only options.
- Added select2 library implementation for custom associated voltages that include original phasor label.
- Changed C# target language for project.
- Corrected case-sensitive issues with SQLite for wizard screen and hid elements that are not currently fully functional.
- Fixed PDC device name acronym value accessor.
- Fixed PDC main acronym load during edit mode.
- Fixed Wizard to point to PPA by default
- Improved layout and operation of long/lat fields
- Improved operation of PDC vs direct connect modes in device wizard operation.
- Improved phase guess operation in device wizard.
- Minor updates.
- Operational updates to new device wizard screen.
- Removed openPDC TODO comment for handling instance names
- Restore default with types.
- Synchronized guess code updates and checks for null device connection string from openHistorian.
- Updated add device screen to include device name, automatic display of what tag names will be and original tag name.
- Updated CompanyAcronym to read from implementation defined app model.
- Updated device wizard screen to allow config export when user is not an editor.
- Updated device wizard to delete un-enabled phasors on save.
- Updated embedded resource operation of primary view.
- Updated LoadConfigurationFrame PhasorHub function to support returning a configuration frame a provided a connection string.
- Updated protocol enum parse to ignore case.
- Updated synchrophasor wizard to allow for either disabled or deleted phasors with better visual feedback on selected options (attempt 2).
- Updated synchrophasor wizard to allow for either disabled or deleted phasors with better visual feedback on selected options.
- Added CurrentOutputIndex to allow for custom tag naming.
- Added initial implementation of the BulkSequenceCalculator adapter that will automatically calculate sequence values for all matched A/B/C phasors including automatic creation of output measurements.
- Simplified BulkSequenceCalculator initialization.
- Updated 'default literal' to old style to it will compile on BuildBot
- Updated documentation comments for BulkSequenceCalculator.
- Updated sequence calculator enumeration and variable names for clarity and consistency.
- Updated SequenceCalculator adapter to support operation as either a standalone adapter or as part of an independently managed bulk collection adapter.
- Added sign build operation to project file.
- Changed all setting scopes to application since app is admin only and updated build location.
- Corrected default values and XML encoding.
- Corrected manager config file save operation.
- Updated tool to auto-reference SQLite and target a 64-bit executable.
- Added CreateOutputStream tool that will create an output stream based on CSV inputs.
- Added tool to allow easier updates of point tag name expressions.
- Suppressed release-level code analysis warnings from recent code additions.
- Updated deployed tools to use SIGNTOOL.
- Added iconography to new tool.
- PQDif: Added tags and Guid for DisturbanceCategory
- COMTRADE: Added owner and location tag per 2019 standard
- GSF.Net: Added logging for swallowed exception in FtpFileWatcher.
- OSI-PI: Suppressed debug messages in PI real-time reader unless a debug build is targeted.
- NoIntUtil: Added Flag to (--checkall) to run all fixes and complete without user interaction
- StatReportGenerator: Updated NuGet reference to Report.NET
- GSF: Case sensitive filename issue on Linux.
- GSF: In MONO the stack is sometimes missing data, prevent logging exceptions.
- GSF: NuGet on Mono/Linux cannot handle backslashes. Changing to forward slash, please validate on windows.