Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

December 5, 2024

Major release.

Maintenance & Testing

  • Add SystemStatePumping to dtstattribute table

  • QAQC needs to get default attribute value when attribute not defined for sensor

  • Add Admin > Device Workflow > Device Workflow Bulk Update into dmas menu
  • Bug fix: Re-direct to Device Action tab of device detail page after editing a Device Action
  • Make resourcetype list in IResourceType.java and ResourceType database table match with each other

  • Default sorting on Name column in tabs on CableManagement page
  • Add DAQ monitoring dashboards in Python ( Latest files archived in the data base for a specific device (with hyperlink) )
  • Maintain and expand automated testing

Infrastructure

  • Feature: Endeavour Earthquake Autolocate is hosted in a private docker registry ready to be deployed on demand 
  • Improvement: new users' passwords passphrases must be 15 characters minimum (as per UVic policy)
  • Improvement: restrict valid dates for annotation entry (1900 to 1 year in the future)
  • Improvement: make it easier to copy-paste dates
  • Bugfix: DeviceServiceSearchTreeNode cache load no longer gets slower and slower
  • Bugfix: don't serialize Vocabulary and SitePosition caches on hosts that don't use serialized caches
  • Bugfix: remove FATAL error logs on startup if a task has an invalid schedule
  • Bugfix: /LastReadingJSON respects access restrictions
  • Bugfix: the archiver won't fill its disk with error logging during Cassandra outages
  • Removal: unused columns of tm_taskschedule (startdate, enddate, repeatcount, scheduletype)
  • Removal: unused indexes ix_servicelog_servicename_datecreated, servicelog_servicename, archivefile_hist_filename, service_log_datecreated_index, email_dateprocessed, siteposition_positiondate
  • Internal changes: support REST URLs with path parameters in the middle of the URL, modernize playlist web services, modularize several Oceans Next base components, refactor forms.

SeaTube

  • Added default and custom layout features in ST Dive Log beta app

  • Added a new app for searching/viewing fixed camera locations

    • location tree
    • location map
    • location detail
  • Added a new app for fixed location cameras playback

    • video player

    • detail info about a fixed camera location

  • Some improvement for the ST Dive Log dashboard

    • noticeable indication in historical mode while annotating live dive

    • Clear or Cancel button in annotation Entry widget depends on create or update.

  • Some  improvement for annotation export

  • A few bug fixes

New Features

  • scalardata service now can returns nulls instead of NaNs with returnOptions=normalizeJson 
  • DataViewer:
    • supports page level date entry which each chart uses (changes to chart date range don't propagate to other charts yet)
    • can hide the widget header with the ability to show it on hover and pin it open
  • Unused widget types removed from Dashboards Add Widget menu
  • Add Licence URL to saved licences
  • Agreement licences now explicitly have the default licence associated with them
  • Latest Hydrophone Player:
    • now shows spectrogram corresponding to latest FLAC, and excludes FFT generated spectrograms
    • should show the spectrogram and audio more quickly

Community Fishers

...

  • Updated CastPopups to display restriction notification/text in addition to available casts

...

  • Generated SQL to copy data product format attributions from existing dataproductformat to newly added data product format

...

  • Created Community Fishers Data Attribution Post Process java task

...

  • Added parse log files code to determine data attributions

...

  • Created data attributions from parsed tablet log files

...

  • Corrected handling casts that span midnight UTC (4pm PTZ)

...

  • Added test case for casts that spans midnight UTC

...

  • Fix failing

...

  • Plotting Utility tests
    Earthquake Dashboard:

...

  • Now indicate to a user when an IRIS id can't be paired with USGS id

...

  • Added local storage memorization for earthquake signal calls

Data Products

...

  • Bug fixes for soundscape metrics: spikes, handle extended gaps, missing deployments

...

  • Improvements of Endeavour Earthquake Catalogue: hourly runs, duration parameter, deployment process, documentation and automated testing

...

  • Fix for a date time issue, fix for handling bad hydrophone files

Mini-Projects

...

  • Add Endeavour Earthquake Catalogue page to the landing page and

...

  • main menu

...

  • Removed openDAP from landing page and added a reference to it on the

...

  • OpenAPI page

...

  • Small performance improvements to the

...

  • Endeavour Earthquake Catalogue and added hex bins to the map

...

  • Allow anonymous access for the

...

  • Endeavour Earthquake Catalogue page

...

  • Allow the date formats '%d.%m.%Y', '%d/%m/%Y' in the public api

...

  • Improvements to the data availability

...

  • API (not a public

...

  • API yet)

...

  • The scalardata API now reports min and max times and flags for resampled data (the json data product already did this)

Instruments

  • Junction box API: secure and signed interface for P-ONE project
  • Sensor load parser improvements: multiple versions, pre-filter, handle ";" and "Not Used"

Tickets Released: Oceans 3.0: 24.11.000 (accessible to internal users only), total: 212. Automated Testing: AT.24.11.000, total: 26.

Expand

Bug

  • [DMAS-42217] - Vocabulary and SitePosition caches don't respect global.cache.serialize.roles
  • [DMAS-74065] - Licence URL missing from im_licence
  • [DMAS-79745] - DeviceServiceSearchTreeNode cache load gets gradually slower over time
  • [DMAS-79880] - EQ cataolog shows wrong unit for distance station to epicentre in map
  • [DMAS-80502] - Devices are taking too long to show in the search tree
  • [DMAS-80578] - New inputs for typing in dates in File Managment and AnnotionsV2 are cumbersome and prone to error
  • [DMAS-81341] - Spikes in soundscape metrics band plots
  • [DMAS-81800] - Fix flaky AvailabilityChart.cy.jsx
  • [DMAS-81863] - Storybook build errors create warnings in Oceans Next dev builds
  • [DMAS-82008] - After saving a device action, the page is not redirected to the correct device details page
  • [DMAS-82094] - Export results don't follow the format's file structure
  • [DMAS-82194] - Annotation Entry displays "Cancel" when it should display "Clear"
  • [DMAS-82196] - Layouts are synchronized between live and historical tabs. They should be stored seperately
  • [DMAS-82215] - Fix failing datapreviewmanagement tests
  • [DMAS-82231] - ESlint warnings on main caused by conflicts
  • [DMAS-82238] - NeptuneVelocityServlet inappropriately logs FATAL errors
  • [DMAS-82239] - InternalScheduler logs FATAL errors if a task's schedule is invalid
  • [DMAS-82244] - Fix incorrect date format in linked files
  • [DMAS-82245] - 'getOne' operation on DerivedSensorParserDefinitionService swaps sensorId and parserDefinitionId parameters
  • [DMAS-82253] - Archivers failed to buffer all CQL statements during Cassandra outage
  • [DMAS-82264] - Ingestion CSV exports don't only export default camera annotations
  • [DMAS-82292] - main is broken by incorrect import caused by conflicts
  • [DMAS-82294] - ST maps are not resized properly
  • [DMAS-82302] - Fix ts bug from SizeMe change (DMAS-82188)
  • [DMAS-82312] - LastReadingJSON doesn't respect access restrictions
  • [DMAS-82336] - Fix errors caused by licence code merge (DMAS-82059)
  • [DMAS-82351] - Data Player playline fails to move when synced with audio widget
  • [DMAS-82377] - Casts that span midnight are not being handled correctly
  • [DMAS-82394] - Fix some failed tests in ML CORK parser definition
  • [DMAS-82397] - Attempt to address intermittent "styled-default" vite build error
  • [DMAS-82415] - Oceans Next code coverage results aren't displaying properly in Jenkins
  • [DMAS-82418] - DiveLogDashboard.Historical Mode.Widget Communication.Highlights the correct annotation and seeks video to the timestamp when a map annotation is clicked, possibly flakey
  • [DMAS-82423] - MatlabFilePostProcessor trying to write to read-only AD file location
  • [DMAS-82425] - Fix Failing DataViewerDashboard Cypress Test
  • [DMAS-82431] - not able to download files through File Management page in qa
  • [DMAS-82436] - Cypress not running on windows with vite build
  • [DMAS-82445] - Change import for busted node module
  • [DMAS-82467] - Qaqc needs to get default attribute value when attribute not defined for sensor
  • [DMAS-82477] - PATCH requests all fail in QA
  • [DMAS-82510] - DataPreviewWidget Cypress Test Failing
  • [DMAS-82516] - Fix faulty YUI implementation of playlist services
  • [DMAS-82517] - Unable to delete playlists or clips
  • [DMAS-82518] - The dropdown for existing playlists is not being populated in SeaTube Search
  • [DMAS-82521] - Incorrect snackbar when creating a new playlist from SeaTube Search
  • [DMAS-82527] - Correlator JVM fails to start up correctly on 24.11.000
  • [DMAS-82531] - Can't create a fixed location camera playlist in QA using ST Pro
  • [DMAS-82536] - Error snackbar on stating: "Invalid parameter locationCode. No data found for value false" on Datasearch for Instruments by Category
  • [DMAS-82554] - Unable to save Site Devices without offsets
  • [DMAS-82572] - Fix SiteDeviceMaintenance sending string "undefined" as batchId

User Story

  • [DMAS-51217] - As ONC Software Engineering, I want an online repository of snapshot & dependency jars so that I can reuse precompiled code
  • [DMAS-80471] - As a developer, I would like faster Oceans Next builds
  • [DMAS-81178] - As a data steward, I would like CC BY 4.0 set as the default value when creating a new data agreement
  • [DMAS-81690] - Small Improvements to the Endeavour Earthquake Catalog to prepare for the workshop
  • [DMAS-81760] - As a software developer I would like operational improvements on the endeavour earthquake autolocate project
  • [DMAS-81764] - As a fixed camera logger, I would like to create a public or unlisted annotation
  • [DMAS-81786] - As a ST developer, I would like a new page to view fixed location camera footage
  • [DMAS-81823] - Add Chart Widget to layout
  • [DMAS-81833] - Support one place to enter date range
  • [DMAS-81855] - As a system operator, I want to be able to deploy a dockerized project to QA and production without needing to build it on each docker host
  • [DMAS-81889] - As a ST developer, I would like to add a tree widget to the fixed camera locations page
  • [DMAS-81891] - As a ST developer, I would like to add a map widget to the fixed camera locations page
  • [DMAS-81892] - As a ST developer, I would like to add a details widget to the fixed camera locations page
  • [DMAS-82015] - Create a User Defined Dashboards V2 page
  • [DMAS-82097] - As a SeaTube User, I would like to be able to save and apply different dashboard layouts to the new dive log (II)
  • [DMAS-82304] - As a software developer, I want to remove useless columns in the tm_taskschedule table so I don't need to understand what they're for
  • [DMAS-82329] - As a ST developer, I would like to add a details widget to the fixed camera locations page (I)

Task

  • [DMAS-77945] - Increase Minimum password length in dmas
  • [DMAS-78008] - Update Share* components to typescript, functional components
  • [DMAS-79111] - As a seatube developer, I want playlist web services to be RESTful to simplify maintenance
  • [DMAS-79141] - Extend date format input for API requests
  • [DMAS-80588] - Convert WebRequest to be a namespace import
  • [DMAS-81203] - Provide RDM team with SQL to copy data product format attributions from existing dataproductformat to newly added data product format
  • [DMAS-81205] - Indicate to a user when an IRIS id can't be paired with USGS id
  • [DMAS-81347] - Add service parameter to scalar data web service so data is returned in RFC 8259 standard format
  • [DMAS-81494] - Simulator for Inertial Measurement Unit
  • [DMAS-81699] - Upgrade VideoWidget, VideoWidgetDisplay, VideoWidgetConfig
  • [DMAS-81767] - As a fixed camera logger, I would like to see detailed information about a fixed camera location from the playback page
  • [DMAS-81831] - Ensure that the latest hydrophone player shows the corresponding spectrogram for the audio file it's playing, handling the case of FFT-source data
  • [DMAS-81876] - Refactor: The DiveLogDashboard cypress test file
  • [DMAS-82023] - Switch all page load failures from manual global.open calls to redirect page & update faulty cypress tests against it
  • [DMAS-82047] - As a SeaTube user, I would like something more noticeable to indicate I am viewing historical video for a dive in progress
  • [DMAS-82096] - Write Dashboard level cypress tests for the fixed camera locations dashboard
  • [DMAS-82222] - Widget Tests Upgrade - InteractivePlotWidget
  • [DMAS-82230] - Make it possible to call WebParameters.matchPath from HttpServlet.service in service factories
  • [DMAS-82242] - Drop support for task parameter "all.runs.required"
  • [DMAS-82273] - Add link to docs for DmasRestService
  • [DMAS-82317] - Increase the number of machines used for cypress runs
  • [DMAS-82318] - Look into vite for cypress builds
  • [DMAS-82322] - Run cypress on port 3001 so it can be run in tandem with webpack deploy
  • [DMAS-82334] - As a fixed camera user, I would like to play a single clip
  • [DMAS-82374] - Remove ability to access location search in SeaTube Search
  • [DMAS-82376] - DeviceWorkflowBulkUpdate: Add non-visible selector Row id for increased Accessibility
  • [DMAS-82380] - Send an email *whenever* renovate builds fail
  • [DMAS-82396] - Improve performance of getting latest files from archivefile
  • [DMAS-82427] - Enhance Endeavour Earthquake Catalogue site presence
  • [DMAS-82434] - add DeviceWorkflowBulkUpdate page in dmas menu
  • [DMAS-82448] - As a developer I would like faster dev server start times
  • [DMAS-82454] - Untrack .vscode folder and add it to vscode-ony-helper repo
  • [DMAS-82479] - Remove unused widgets from widget menu and order alphabetically
  • [DMAS-82484] - please make resourcetype enum in IResourceType.java and ResourceType database table match with each other
  • [DMAS-82496] - Please, create SystemStatePumping sensorattributes on new System State sensors
  • [DMAS-82522] - update open api description to include opendap info

Implementation

  • [DMAS-76899] - Update AnnotationSearchPage.cy.tsx to use testing-library
  • [DMAS-80507] - Modernize transactions in user & organization code
  • [DMAS-80508] - Modernize transactions in SearchTreeNodeManagerImpl
  • [DMAS-80990] - Add UserOrganizationService to support CRUD user_org database table
  • [DMAS-81186] - Update CastPopup to display restriction notification/text in addition to available casts
  • [DMAS-81566] - Implement saving and applying custom layouts in SeaTube
  • [DMAS-81567] - Implement update and delete actions on custom layouts
  • [DMAS-81633] - Junction Box API Implementation
  • [DMAS-81639] - Public key upload Backend
  • [DMAS-81640] - Allow assigning devices to a group through user permission.
  • [DMAS-81701] - VideoWidgetDisplay: typescript and functional
  • [DMAS-81702] - VideoWidgetConfig: typescript and functional
  • [DMAS-81797] - Create a new app that renders an empty dashboard for the fixed camera viewer
  • [DMAS-81798] - Create a servlet that will be the home of the new "viewer" page for fixed cameras
  • [DMAS-81811] - Move Card, Collapse, Dialog to base-components
  • [DMAS-81817] - Implement DeviceSyncConfig as a typescript functional component using react-hook-form
  • [DMAS-81825] - Modularize translations
  • [DMAS-81861] - VideoWidget: typescript and functional
  • [DMAS-81879] - Create Community Fishers Data Attribution Post Process task - Java
  • [DMAS-81897] - Implement DeviceSearchParameterTab as a typescript functional component using react-hook-form
  • [DMAS-81965] - Parse log files to determine data attributions
  • [DMAS-81968] - Create a dummy widget to be used for testing header features
  • [DMAS-82007] - allow for resampling the datavailability and default to reporting continuous data intervals
  • [DMAS-82009] - Create a new widget to render the fixed camera location tree
  • [DMAS-82010] - Refactor existing tree code to modern standards for use in the fixed camera locations tree widget
  • [DMAS-82012] - Create a new map widget for use on fixed camera locations page
  • [DMAS-82019] - Update dal layer for licenceurl on Licence domain object
  • [DMAS-82020] - Update service code for licenceurl in LicenceService
  • [DMAS-82021] - Update front end to fetch and edit licenceurl on the licence management page
  • [DMAS-82046] - Implement SiteDeviceSubsetRePostProcess as a typescript functional component using react-hook-form
  • [DMAS-82048] - Create Cypress Tests for ShareDialog, ShareSimple, ShareAdvanced
  • [DMAS-82050] - Share*: typescript and functional
  • [DMAS-82057] - Create a SeaTube Details widget
  • [DMAS-82058] - Add How-To documentation for the details widget
  • [DMAS-82059] - Make minor refactoring changes to update Licence table and add LicenceURL
  • [DMAS-82061] - Create data attributions from parsed tablet log files
  • [DMAS-82101] - Implement QaqcAttributesConfig as a typescript functional component using react-hook-form
  • [DMAS-82182] - Implement DriverScheduleConfig as a typescript functional component using react-hook-form
  • [DMAS-82188] - Move drag scroll & sizeMe to base-components
  • [DMAS-82199] - Implement SiteDeviceMaintenanceRW as a typescript functional component using react-hook-form
  • [DMAS-82203] - Move form, image-list, input-adornment to base-components
  • [DMAS-82204] - Move lightbox to base-components
  • [DMAS-82212] - Change dockerfile to copy any package.json files in subdirectories
  • [DMAS-82216] - Implement pin & overlay functionality to header
  • [DMAS-82226] - InteractivePlotWidgetConfig Test Update
  • [DMAS-82232] - Implement shared config for dashboards
  • [DMAS-82233] - Implement ParserDefinitionMaintenance as a typescript functional component using react-hook-form
  • [DMAS-82241] - Use dashboard config on data viewer for date range
  • [DMAS-82251] - Push Endeavour Earthquake Autolocate docker images to our registry from CI
  • [DMAS-82260] - Earthquake Activity Plot should show hourly when zoomed in enough
  • [DMAS-82262] - use hex bins for the map display
  • [DMAS-82275] - Move parseDmasAPIResponse & postImpl out of WebRequest
  • [DMAS-82276] - Make WebRequest.put no longer a class function
  • [DMAS-82277] - Make WebRequest.post no longer a class function
  • [DMAS-82278] - Make WebRequest.patch no longer a class function
  • [DMAS-82279] - Make WebRequest.get no longer a class function
  • [DMAS-82282] - Make WebRequest no longer an imported class and make Temp the active version
  • [DMAS-82286] - Implement SiteDeviceSubsetMaintenance as a typescript functional component using react-hook-form
  • [DMAS-82296] - Set up a group for making public fixed camera annotations
  • [DMAS-82297] - Update the permissions service to provide info on whether the user can make public fixed camera annotations
  • [DMAS-82298] - Update annotation-saving logic to check for fixed camera annotation publishing permissions
  • [DMAS-82301] - Add playground page, "User Defined Dashboards", using new Dashboard framework
  • [DMAS-82303] - Drop large unused database indexes
  • [DMAS-82305] - Remove references to these columns from backend code
  • [DMAS-82307] - Drop these columns from the database
  • [DMAS-82313] - Make remainder of WebRequest methods named exports
  • [DMAS-82324] - Deprecate RecurringSearchJob task type
  • [DMAS-82340] - Delete Unused TextWidget* Enzyme Tests
  • [DMAS-82343] - ImageWidget* Tests
  • [DMAS-82345] - AudioPlayerWidget* Tests
  • [DMAS-82346] - ChartWidget* Tests
  • [DMAS-82352] - Digital Signature Test Code
  • [DMAS-82353] - Deduplicate React from generator & libraries
  • [DMAS-82355] - Move Popover, Select, Slide, Slider to base-components
  • [DMAS-82356] - Improve eearthquake plot performance when plotting 100k+ earthquakes
  • [DMAS-82357] - Move stepper, Text, ToggleButton, Transition to base-components
  • [DMAS-82361] - Modify jest types to not conflict with cypress
  • [DMAS-82366] - LatestReadingsWidget* Tests
  • [DMAS-82368] - DataPreviewWidget* Tests
  • [DMAS-82378] - Move Box, Checkbox, Chip, ClickAwayListener to base-components
  • [DMAS-82383] - Move buttons to base-components
  • [DMAS-82385] - Add diagnostic logging to DeviceServiceSearchTreeNodeCacheLoader
  • [DMAS-82390] - Create useQuery for using WebRequests get function
  • [DMAS-82412] - Shorten error messages when writing to Cassandra
  • [DMAS-82444] - Run autolocate code hourly instead of daily
  • [DMAS-82465] - DataPlayerWidget* Tests Upgrade
  • [DMAS-82468] - Set fields to exclude from serialization when activating DeviceServiceSearchTreeNodeCacheLoader
  • [DMAS-82470] - Replace null values in organizationagreement table with CC-by-4.0 and make column non-null
  • [DMAS-82471] - Use default value to set licence for organizationagreement when creating a new one
  • [DMAS-82486] - Add duration mode parameter to Endeavour Earthquake Autolocate task
  • [DMAS-82491] - CableManagement: change default sort to be based on Name column

Test

  • [DMAS-81646] - Test edge cases - matlab dies, canceled task, etc
  • [DMAS-82214] - Add Cypress Test for new Chart Widget
  • [DMAS-82381] - Add test case for cast that spans midnight UTC

Bug (ST)

  • [DMAS-80750] - "Not Used" and ";" not working properly
  • [DMAS-80807] - SensorLoad check needs to be able to handle values with pre-filter/formula
  • [DMAS-81542] - Generate timestamp for Min and Max sampleTimes -all webservices
  • [DMAS-81847] - Fix issue where cypress tests from base-components aren't shown when failing
  • [DMAS-82289] - Soundscape metrics plots missing data from previous deployments
  • [DMAS-82290] - Soundscape metrics data product order segmentation cannot handle extended periods of no data
  • [DMAS-82291] - Multiple files downloaded for one week of SPDdata with weekly file breaks
  • [DMAS-82342] - Issue with multiple ParserVersion
  • [DMAS-82429] - Restrict start & end dates for annotation entry inputs
  • [DMAS-82430] - Allow easier copying of date inputs

Investigation

  • [DMAS-82022] - Ensure requirement and design documentation are up-to-date and correct for licenceurl
  • [DMAS-82249] - Figure out how to use Harbor

Documentation

  • [DMAS-82013] - Create a how-to for the fixed camera locations map widget
  • [DMAS-82014] - Create a how-to for the fixed camera locations tree widget
  • [DMAS-82472] - Document requirement changes
  • [DMAS-82487] - Write documentation for Endeavour Earthquake Autolocate task

...

  • Staging topology tool
  • Device Workflow Bulk Update
  • Cable Management Page (three tabs: cable listing, cable type, and connector type)
  • Write DAQ monitoring dashboard in Python (finished 3/8)
    • Time series scalar data plot from one sensor — line plot with error bar
    • Data Preview png data product –- image
    • Time series scalar data plot with two sensors of the same type — line plot with error bar
  • New and updated automated tests

Bug Fixes

  • Bug fixes in python client library

...

  • In-progress: new system for assigning data products by deployment
  • Change cast deletion process to soft delete
  • Display message to not logged in users when selecting casts
  • Disable cast lasso button for anonymous users
  • As a data search user I want the capability to not allow some dataproducts on some searchtreenodes
  • Add comment about interpolation method to dataproduct footer
  • Update frontend types to receive list of device objects for CTD and NAV
  • Elapsed time restriction on siteDeviceSubsetMaintenance is not functioning correctly
  • Update database check for overlapping siteDeviceSubsets to exclude deleted siteDeviceSubsets from comparison
  • Place set name and community name on one line and devices on a second line within accordion header
  • Updates for device package page: make the details cards display responsive, add deviceType names and id's, add distinctive tablet card when it's missing from the package, add tooltips
  • Design to allow creating sensor level searches for devices with multiple versions of sensors
  • modify dataproduct record to reflect new dataproductcode and name for CF app log file
  • stopped users from being able to lasso the same station multiple times and add multiple entries of that same station into the lassoselection
  • Ensure that deleting a a SearchTreeNode or a GeospatialArea will always delete the corresponding SearchTreeNodeGeospatialArea record associating the two
  • Alter SearchTreeNodeGeospatialArea set new datefrom column to prevent null values
  • Add activated/deactivated casting station logic to cast assignment job, API, map and data products
  • Support filtering out non reviewed casts based on dataproduct options
  • Support cast processing options in Station Profile Animation
  • Implement core functionality of Community Fishers Profile Animation data product
  • Add documentation for upcoming Community Fishers Profile Animation data product 
  • Remove some data products from Depth sensors

 Bug Fixes

  • prevent double save request from frontend on SearchTreeMaintenanceDetail
  • Support making a sensor level request when product is mapped to only one of both sensor types
  • Prevent Community Fishers Data Preview Searches created without search options
  • Misc typos and other errors found in automated testing

...

  • Created database tables and web services for new cable management tool
  • Improve performance of DeviceCategoryService
  • Ability to delete deviceportid through UI
  • Ability to create new parser definition through UI
  • Add Modified Date and Modified By of mobile/fixed site position on Site page
  • Add tooltips for data product selection table on Data Search page
  • Change default zoom level to display all deployed nodes on Data Search page
  • Change minimum zoom level on Data Search page
  • Sort Instruments by JVM on Device Console page
  • Add ability to sort columns of data product attributions on Network Console
  • Python client library updates, new process for Python development and continuous integration and automated testing (internal feature)
  • Many new / updated / fixed automated tests


Bug Fixes

  • Broken "Contact Us" links
  • Fix broken QAQC inheritance 
  • System Console sometimes displays the wrong Oceans Next version

...

  • Add Modified By and Modified Date on Device Workflow Admin page
  • Database improvements: improve a number of constraints on field lengths, remove a few deprecated tables, update a few _hist tables to _trx tables for better auditing.
  • Remove deprecated code: CANARIE Registry, adcpdata API
  • Quarter-scalar-data-generation-cassandra limit number of records to be processed each time
  • Update date format for QAQC reprocess and QAQC deletion jobs
  • Change property value from sensortypename to sensortypecode in Data Search URL

Bug Fixes

  • CSV/JSON data products header should report metadata file name with .xml not .pdf
  • User Management: "Select All" doesn't select all data products
  • Plotting Utility: Quarter scalar data includes data outside of deployment when it should not
  • Updates and bug fixes in automated testing

...

  • Standardized data format for Modified By and Modified Date Oceans 3.0 pages
  • Python API library documentation update
  • Update web services to add Modified By and Modified Date for device workflow admin page
  • Allow to close enlarged images on Search Hydrophone Data page
  • Add new data source filter "Restrict data source selection to map-view" on Data Search page. Off by default to prevent tree-trimming.
  • Add another order by (modifydate desc) for deviceattributes or sensorattributes on Device Details display
  • Draggable dialog box on Device Category page
  • Allow colons in the field label of fornfield entries
  • Remove groundfault alarm setting for mini JunctionBox with 400 volt ports
  • Lots of new or updated or fixed automated tests

Bug Fixes

  • Fix ticket creation which was broken by Jira upgrade

...

Data Products

  • Bug fixes: Nortek data for rest of day is missing after a configuration change (in some cases), slow/stuck RDI reading with gappy data
  • Better plot titles for supporting global data
  • ERDDAPnetCDFpostProcessor ready: added features for automatic dataset switch over as we populate, handling of re-postprocessing, chunking for reliability, filters by device and time for live and re-postprocessing, edge cases

SeaTube

  • Finished Playlist update project phase 1
  • In-progress: supporting 10+ onship servers
  • Some minor improvements
  • A few bugs fixed

Community Fishers

  • Fixed multiple lasso tool bugs
  • Fixed CF duration limit accidentally applied to all siteDeviceSubset types
  • Fixed CF App Wi-Fi Regression Test patch for CF.3.2.10
  • Added DeviceTypeAttribute to track android SDK version for devicetype 267
  • Dropped the ErddapDatasetAttribute and ErddapDatasetAttribute_hist table
  • Converted CFOverlay to a functional typescript component
  • Refactored Cast Selection popup out of CFOverlay
  • Added mapId to the context so it isn't passed around everywhere
  • Fixed lasso tool on CF map contains undefined reference to assignedCastData
  • Added I18n to cut down on code maintenance for Buttons in React

...