v3.4.x Release Notes

Platform Changes

This release contains a major redevelopment for the offline capabilities of Peek.

There are significant performance and memory improvements to the vortex libraries and all plugins containing data indexes.

Major Plugin Changes

Introduction of the Diagram PDF Exporter plugin.

v3.4.0 introduces PDF export support for the DMS Network Diagram. This allows either the visible network or trace context to be exported as a PDF document which the user can then download. When the Trace Export is selected, the area of the network which contains the trace is exported. Alternatively, when Visible Network is selected, the area of the network visible to the user will be the area exported. Page size, orientation, and maximum pages can be set to customise the PDF.

v3.4.0 introduces Light Mode, this feature replaces the background of the network diagram with a white background and inverts only the colours necessary to be visible on a white background. The initial migration automatically detects and populates the light mode colours. The colours can be manually updated if required. Simply clicking the button in the network diagram will enable light mode, increasing the readability of the network diagram if required.

Deployment Changes

There are no deployment changes with this release.

Windows Deployment

Note

This release is not supported on Windows.

Windows support might be possible in Peek version 4, however it will have a higher purchase and support cost to the customer.

Linux Deployment

Deployment for Linux remains the same after the changes of Peek v3.1.x

Debian: Installation Guide

Redhat: Installation Guide

macOS Deployment

Deployment for macOS remains the same after the major changes of Peek v3.1.x

MacOS: Installation Guide

Windows Deployment

Nil.

Note

The windows deployment will change to use Windows Subsystem for Linux in a future release.

Migration Steps

OpenStreetMap Loader Lookups File Migration

  1. Locate the lookups.csv file. The file location can be found in the configuration tab of the OpenStreetMap Loader Loader in Peek Admin.

  2. Open the lookups.csv with a spreadsheet editor. Eg. Microsoft Excel

  3. Remove Point from the acceptedGeometries where isRoadName = TRUE. Eg. LineString, Point becomes Linestring

  4. Duplicate all rows where isRoadName = TRUE.

  5. In the original rows; Update the option.isRoadName to FALSE.

  6. In the new duplicated rows:

    1. Append the importHash value with _road_name. Eg. osm:highways:motorway1 becomes osm:highways:motorway1_road_name

    2. Increment the level.order value by 1.

  7. Restart Peek Agent sudo systemctl restart peek_agent

  8. Touch the geojson file. The file location can be found in the configuration tab of the OpenStreetMap Loader Loader in Peek Admin.

    touch [GEOJSON FILE NAME]
    

Note

Synerty recommends running the Initial Load Attune Blueprint for faster loading of the PowerOn data. You can download the Attune Community Addition App for Windows or MacOS FOR FREE from www.servertribe.com

v3.4.15 Migration Steps

  1. Stop Peek using stop_peek.sh

  2. On the node which hosts the Peek database as the Peek user:

    psql <<'EOF'
    
    TRUNCATE pl_enmac_graphdb_loader."GraphSegmentLoadState";
    
    TRUNCATE TABLE pl_graphdb."GraphDbSegment";
    TRUNCATE TABLE pl_graphdb."GraphDbChunkQueue";
    TRUNCATE TABLE pl_graphdb."GraphDbEncodedChunk";
    
    TRUNCATE TABLE pl_graphdb."ItemKeyIndex";
    TRUNCATE TABLE pl_graphdb."ItemKeyIndexCompilerQueue";
    TRUNCATE TABLE pl_graphdb."ItemKeyIndexEncodedChunk";
    
    EOF
    
  3. Restart Peek with restart_peek.sh

User Acceptance Test Results

Peek v3.4.0 User Acceptance Test results can be found at: v3.4.x UAT Results

v3.4.16 Changes

Improvement

  • [PEEK-2473] - Peek DMS Diagram AD Restricted World Views Requires restrict users FROM group

  • [PEEK-2484] - Landing CoordSet logic to instead first in order, add new order field

v3.4.15 Changes

Bug

The following bugs are fixed.

  • [PEEK-2437] - Vortex - Large payloads sent from browser JS to server PY got corrupted

  • [PEEK-2331] - Platform Worker - Logs truncated when rotating daily

  • [PEEK-2353] - Diagram - Empty gridKeysForArea in diagram sent to EDNAR

  • [PEEK-2371] - Diagram PDF Exporter - line drawn polyline start to polyline end

  • [PEEK-2465] - Diagram PDF Exporter - Exporting from worldviews with _ in name caused export to fail

  • [PEEK-2293] - Diagram PDF Exporter - OpenStreetMaps exporting, some shapes hide others

  • [PEEK-2408] - Diagram PDF Exporter - Plugin Type Error onclause

  • [PEEK-2449] - Diagram PDF Exporter - text scale attribute typos fixed

  • [PEEK-2385] - Diagram PDF Exporter - doesn’t export ModelCoordSet background color

  • [PEEK-2460] - ENMAC Diagram Loader - Importing invalid pages logged as ERROR, not WARNING

  • [PEEK-2445] - ENMAC Diagram Loader - Added logging and handling for stderr from Page and Overlay Imports

  • [PEEK-2461] - ENMAC Diagram Loader - File names with ampersand characters cause file name split

  • [PEEK-2350] - ENMAC Connectivity Loader - Incremental import causes Segment unique key violation

Improvement

  • [PEEK-2464] - ENMAC Diagram Loader - Improved the log message for shapes not being imported

  • [PEEK-2402] - Diagram PDF Exporter - Added support to configure line thickness

Task

  • [PEEK-2377] - ADMS Diagram - Add support for restricting coord set access to LDAP groups

v3.4.14 Changes

Bug

  • [PEEK-2319] - Email NAR fixed function has no attribute ‘query’ when sending email

  • [PEEK-2329] - EDNAR Plugin Frontend Updated Build Modules

  • [PEEK-2333] - Text Scalability Factor of Zero Displays in the Diagram

  • [PEEK-2340] - EDNAR Plugin Frontend Updated Build Modules

  • [PEEK-2322] - Diagram PDF Export and Schedule Controller do not consume system resources

Task

  • [PEEK-2323] - EDNAR Plugin Updated patches to core-device

v3.4.13 Changes

Bug

  • [PEEK-2292] - Improved Vertical Positioning of multiline text

  • [PEEK-2297] - Peek DispColor.darkColor migration fails to upgrade from v3.1.10

  • [PEEK-2300] - LiveDB Loader configuration allows disconnect to prevent memory leak

  • [PEEK-2302] - Initial Load of Layers DispLayer.Opacity does not update as NULL

Task

  • [PEEK-2282] - Update the GraphDB and DocumentDB office documentation

v3.4.12 Changes

Bug

  • [PEEK-2266] - OpenStreetMap Loader - Loader does not load complex polygons, like lakes

  • [PEEK-2267] - OpenStreetMap Loader - Failing an import will continuously retry, using lots of CPU

  • [PEEK-2249] - OpenStreetMap Loader - CODE cleanup, Updated variable names

  • [PEEK-2252] - OpenStreetMap - Road names do not render as configured colour

  • [PEEK-1566] - Diagram - Fixed ‘fillColor’ to polygons in Peek Diagram

  • [PEEK-2002] - Diagram - Moved Objects are no longer duplicated in diagram

  • [PEEK-2247] - Diagram - Fxied nuisance error messages from color validation using deprecated .color attribute

  • [PEEK-2283] - Diagram - No longer displays blank canvas with frequent live updates

  • [PEEK-2260] - Diagram - Fixed non selectable shapes being selectable in network diagram when shape has no key

  • [PEEK-2221] - Diagram Editor - Peek doesn’t cache Diagram Branches for offline use

  • [PEEK-2222] - Diagram Editor - Peek doesn’t cache conductor classes for offline use

  • [PEEK-2223] - Diagram Editor - Branch does not appear in the Edit Branch list while online.

  • [PEEK-2238] - Diagram Editor - Branch does not appear in the Edit Branch list while offline when created offline.

  • [PEEK-2239] - Diagram Editor - Diagram does not renders line arrow heads

  • [PEEK-2256] - Diagram Editor - Edit handles shrink and grow with zoom, they should always appear the same size

  • [PEEK-2259] - Diagram Editor - Text align options are missing from properties

  • [PEEK-2261] - Diagram Editor - Fixed polyline force straight line feature when holding shift key

  • [PEEK-2250] - User Plugin - Fixed user migration to deduplicate usernames once converted to lowercase

  • [PEEK-2254] - Device Plugin - CODE cleanup, fixed ‘NoneType’ object attribute ‘notifyOfTupleUpdate’ on shutdown

  • [PEEK-2265] - Diagram PDF Exporter - Fixed PDF Exporter Unclosed database sessions

  • [PEEK-2241] - Vortex - VortexJS does not reconnect websocket after disconnect

Improvement

  • [PEEK-2237] - OpenStreetMap Loader - Added fill colour for water to default CSV Lookups file

  • [PEEK-2253] - OpenStreetMap Loader - Loader now accepts null value colours in lookup.csv

  • [PEEK-2244] - OpenStreetMap Loader - Added support for importing road names separately to the polylines from the CSV file. This allows road names to be different levels, layers and colours to the roads.

  • [PEEK-2268] - OpenStreetMap Loader - Added support for search indexing map feature names

  • [PEEK-2257] - Diagram Editor - Improved polylines drawing support in diagram editor. There is now a big green tick to finish drawing the polyline/polygons

  • [PEEK-2258] - Diagram Editor - Editing the text of a text shape is now much easier with the new pencil button and a text box that pops up.

  • [PEEK-2271] - Diagram - Removed name field size limit from lookup tables

  • [PEEK-2243] - Diagram - Made Background Colour configurable in ModelCoordSet, allowing grey background for OpenStreetMap only canvases

  • [PEEK-2245] - Diagram - Added support for opacity settings per layer and fixed opacity overlapping appearing less transparent

  • [PEEK-2246] - Diagram - Made “light mode button shows” configurable per canvas

  • [PEEK-2251] - Diagram - Fill colours can now have PNG overlays, this is great for adding trees in grasslands.

  • [PEEK-2272] - Diagram - Improved diagram grid loading strategy. The grids are now loaded from the center of the screen outwards. See if you can notice the diffence.

  • [PEEK-2273] - Diagram - As the diagram zoomed in and out, the diagram would flicker black when the layer/sizes of grids changed. The flicking black is now gone. This is achieved by delaying applying the declutter levels to the old grids until the renderer has received the center grid for the new set of grids.

  • [PEEK-2274] - Diagram - Improved performance when rendering curved text

v3.4.11 Changes

Bug

  • [PEEK-2189] - Updated ScopeDetailsChangedTuple toUser assignment to toUserId

Improvement

  • [PEEK-2198] - Added support for wrapping text on whole words.

v3.4.10 Changes

Bug

  • [PEEK-2193] - Users with no email in AD cause AttributeError: “NoneType’ object has no attribute “lower’ Exception

  • [PEEK-2194] - Table vaccumes throw AttributeError: ‘function’ object has no attribute ‘bind’ Exception

  • [PEEK-2195] - Peek Admin does not show Offline Cache stats

  • [PEEK-2197] - Peek core_device stops processing all location updates and queues indefinitely in memory on insert fail

v3.4.9 Changes

Bug

  • [PEEK-2191] LiveDB Realtime ECOM loader ValueError expects 6

v3.4.8 Changes

Bug

  • [PEEK-2190] Corrected Component Class loader loses Object type.

v3.4.7 Changes

Bug

  • [PEEK-2188] Corrected Offline caching from not loading with persistent cache times

v3.4.6 Changes

Bug

  • [PEEK-2179] - TupleDataOffline0bserverService.storeDataLocally now works without an active cache

  • [PEEK-2180] - Reduced the time VortexStatusService takes to detect airplane mode and network disconnects

  • [PEEK-2181] - Order Search results by the object type order

  • [PEEK-2182] - Order Search results with same rank by name

  • [PEEK-2183] - Offline Searching no longer returns duplicate results

v3.4.5 Changes

Bug

  • [PEEK-2174] - Peek Offline Caching reports network slow before bandwidth test

  • [PEEK-2177] - Offline Caching start throws exception tuplesToStore.length

Improvement

  • [PEEK-2175] - Persist last cache time across app closes

  • [PEEK-2176] - Add Force Cache Start button to field app for offline caching

v3.4.4 Changes

Bug

  • [PEEK-2160] - Corrected Peek Field receiving GPS updates

v3.4.3 Changes

Bug

  • [PEEK-2134] - OpenStreetMap Diagram loader

  • invalid NaN value in projected coordinates

  • [PEEK-2136] - OpenStreetMap Diagram Loader

  • import data to DocDB has duplicate keys

  • [PEEK-2139] - OpenStreetMap Diagram Loader Fixed geojson

file changes and re-imports

  • [PEEK-2152] - Vortexjs no longer detects when websocket

is logged out - connections dropout from last fix

  • [PEEK-2159] - Peek PDF Export bottom text not correctly aligned

Task

  • [PEEK-2138] - OpenStreetMap Diagram Loader

  • Update coordinate conversion settings to use reference points

v3.4.2 Changes

Bug

  • [PEEK-2152] - Vortexjs no longer detects when websocket is logged out

  • [PEEK-2154] - Added admin configuration for offline caching timers

and blocked network metric while caching

  • [PEEK-2157] - Core Search order field in search object types doesn’t

change order of tabs in search results

Improvement

  • [PEEK-2156] - Added Search Equipment Type to Equipment Loader

v3.4.1 Changes

Bug

  • [PEEK-2130] - Core Device useSsl is not correctly detected in web version

  • [PEEK-2132] - ENMAC Diagram Loader Add handling of Control Zones that have no parents

  • [PEEK-2133] - Peek Diagram PDF Plugin Fix Diamond Rotation

Task

  • [PEEK-2131] - PDF Export Remove required indicator from checkboxes on export screen

v3.4.0 Changes

Bug

  • [PEEK-1559] - Add diagram support for wrapping text after X chars

  • [PEEK-1902] - iPads on slow network connections spawn hundreds of websocket connections

  • [PEEK-1904] - iPads Quitting iOS app and re-opening it again causes re-caching to occur

  • [PEEK-1905] - Add timeout and retry for iPads caching request

  • [PEEK-1952] - Update Search UI to use “initialLoadComplete” flag

  • [PEEK-1956] - Fix peek-plugin-livedb to write to database in logic service

  • [PEEK-1957] - Update username login to replace upper case characters to lower

  • [PEEK-1976] - Correct LiveDBItem database UnicodeDecodeError

  • [PEEK-2007] - Inserting iPad GPS Location is blocking in reactor thread

  • [PEEK-2008] - Update dbSessionCreator to not allow plugins to run database work in main thread

  • [PEEK-2009] - Offline status updates cause TupleAction timeouts

  • [PEEK-2013] - Improve support for users with special characters in password

  • [PEEK-2014] - Add general setting LDAP Enable @domain support

  • [PEEK-2015] - Offline Caching on slow connections saturates websocket

  • [PEEK-2016] - Ldap builtins.KeyError userPrincipalName

  • [PEEK-2019] - Offline Loaders lose state

  • [PEEK-2021] - Remove file watching code and replace with LoopingCall for geojson file

  • [PEEK-2022] - Missing default OSM settings when enabling plugin

  • [PEEK-2026] - VortexStatus error and information logging were swapped

  • [PEEK-2027] - Correct Start log messages to print sslEnableMutualTLS instead of sslEnable

  • [PEEK-2028] - Fixed TupleDataOfflineObserverService to filter from payload

  • [PEEK-2029] - Vortexjs undefined has no attribute SQL

  • [PEEK-2032] - Diagram zooming in while hovering over a tooltip area triggers the docdb tooltip

  • [PEEK-2034] - Remove angular circular references

  • [PEEK-2035] - Multiple searches are run at once as letters are typed

  • [PEEK-2036] - Agent Timeout retry causes 100% Logic service CPU usage

  • [PEEK-2040] - Update Peek Field to serve port 8000 with self signed certificates

  • [PEEK-2049] - Throttle GPS Location Updates from iPad

  • [PEEK-2050] - Remove upper case from Usernames

  • [PEEK-2053] - Diagram Tooltips stay up when panning on iPad

  • [PEEK-2054] - Remove Layer list filter case sensitivity

  • [PEEK-2055] - Remove Shaking iPad to undo typing support in Peek Field App

  • [PEEK-2072] - Update SettingProperty to store as float values

Improvement

  • [PEEK-2018] - Redesign Offline Caching logic to use state machine pattern

  • [PEEK-2020] - Update logic API to return all usersLoggedIn

  • [PEEK-2023] - Add setting to enable partially indexing alias

  • [PEEK-2024] - Add support for indexing component_header.user_reference

  • [PEEK-2025] - Add master “Disable All Caching” switch in Admin settings

  • [PEEK-2030] - Change TupleDataOfflineObserverService to return an empty

array of tuples if askServerEnabled=false

  • [PEEK-2031] - Add indication of slow network to home screen

  • [PEEK-2033] - Add support for excluding keywords for search engine

  • [PEEK-2048] - Make plugin loading failure print useful exceptions

  • [PEEK-2104] - Add text shape de-clutter level overrides

Task

  • [PEEK-1679] - Add the queue checking script to deployment

  • [PEEK-1984] - Replace ujson dependency with json

  • [PEEK-2000] - Create Defaults typescript file for ServerInfoTuple

  • [PEEK-2047] - Improve Peek iOS Icon