This page contains the current year's release notes and new features, primarily for Oceans 3.0, as well as any applications created/maintained by the ONC software development group, including mobile Apps and desktop/PC applications. In progress project status may be presented as well. The information below is written in plain language as much as possible. "Major" releases include all completed items at that time (monthly), while "minor" releases are updates to the previous major release with bug fixes and specific features. Detailed release notes are available on internal confluence pages (internal users only).
All region qaqc tests, instead of current region test, are shown on Applied QAQC Tab of Sensor Maintenance page
Historical device attribute values and dates should not be editable if the devicetype attributes are read only
Topology should not allow device connects to itself (otherwise the qaqccache will get stuck loading)
Not or Partially connected" device list on Topology page should include partially connected devices
Fix bugs, tests and, fix bugs in QA before they happen in PROD
Internal Projects
Fix password synchronization to diveloggers
Support load-balancing requests to external API services
Remove broken page /DeviceGroup (displays something to do with device workflows, but has been broken since Java 17)
Remove unused "page" /UserSelector (displays all 30k users' names & email addresses as a giant list of radio buttons)
SeaTube
Dive log rewrite
new video player (control buttons should break in upgrades less often)
improved approach to passing current/seek-to time between video player and other widgets should have fewer edge cases
Bulk annotation ingestion
support a standard, generic CSV format for annotation file upload
major code quality improvements
Annotation export
code quality improvements
Button set configuration
improve performance by tracking a button set's creator (minor improvement in production, major improvement in QA)
Playlists
a few minor UI improvements (mostly tooltips)
General UI
update many many buttons to current standards (i18n support!)
create a new standard API for creating forms
New Features
CIOOS - Community Fishers & CIOOS Pacific
More informative UI for errors in Taxonomy Upload (note the service for taxonomy upload uses a new internal service pattern, "internal/*")
Can now use a pipeline job as the job to run when a cast is reviewed
Cast DOI page now shows correct device and data search links
Use 'cast', not‘cast’, so text shows up correctly on DataCite
Dashboards
Improve usability of Chart Widget so it doesn't lock up waiting for the Data Source Tree to load
Improve performance for Dashboards Table page for users with many dashboards
Fix an issue in the Chart Widget where average data would continue to show even though single point data should show (only happens in QA where average data exists but there's no single point data)
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
UI-WG
Upgrade React to version 18, including testing updates
Refactor Toggles, Table, RadioGroup, high emphasis buttons
Fix storybook linting errors for rennovate
Buttons updates: fixes and internationalization
Instruments
CIB driver and junction box tab, including an updated parser for the CIB and improved JSON parsing
Axis camera zombie driver fix
Sensor loads in parsers with attributes
Data Products
MATLAB client library update: new docs, updates with the API, delete on download support, bug fixes (20+ github tickets)
unwrap FFT spectrograms
videofileQAQC email parameter fix
RDI Cassandra migration complete
decimal support in DP options
Prevent creating searches that have have dates in the future
Java dataProducts show depth in filename for non depth sensor level searches on Community Fishers Devices
[DMAS-80636] - Fix button text typo in PVCSViewPage UI
[DMAS-80640] - Running UserReplication UI tests causes a deadlock in Postgres
User Story
[DMAS-75305] - As a Dev I would like to update the General Tab of Device Details page to React
[DMAS-78213] - As a Community Fishers user I would like a profile animation as a data product
[DMAS-78312] - As a data steward, I would like a proper way of connecting multiple devices in topology to the same port
[DMAS-78584] - As a dev, I'd like to track a button set's creator via a column rather than an audit table in order to simplify logic and resolve issues
[DMAS-78882] - As a NOAA admin, I want to provide annotation files in a standard format so that they can be ingested promptly
[DMAS-79233] - DataSearch Map centre default view could shift south
[DMAS-79241] - As a ST developer, I would like to create a new video player widget that supports interwidget communication, so that I can use it in new Dive Log and Fixed Camera apps
[DMAS-79406] - As a SeaTube developer, I want annotation converter code to be generalized so that we can easily add new converters
[DMAS-79421] - As a software developer I want to support and demo the use of log4j2 so that I can improve logging performance
[DMAS-79847] - As a user of the Community Fishers Device Package Info Page I would like some improvements/iterations to the page
[DMAS-80015] - Battle of Midway - Annotation Ingest
[DMAS-80054] - As a dev, I would like to see trx database table for tables used for dataproductmapping
[DMAS-80370] - As a data search user I want the capability to not allow some dataproducts on some searchtreenodes
[DMAS-80484] - Wrap up generic annotation ingestion
Task
[DMAS-73005] - As a Dev, I would like to remove newsletter subscription for dmasuser registration
[DMAS-79540] - Ensure that deleting a a SearchTreeNode or a GeospatialArea will always delete the corresponding SearchTreeNodeGeospatialArea record associating the two
[DMAS-79625] - Trim leading and trailing whitespace for Device Type Code
[DMAS-79830] - Remove complex data parser and complex archiver code
[DMAS-80362] - Cable management services don't check authentication or authorization
[DMAS-80404] - Annotation considered invalid if it has attribute columns, no attribute values, and no taxon
[DMAS-80436] - DeviceListing page in QA is broken with react 18
[DMAS-80444] - ConnectorTypeAssembler does not translate modifyBy from type to state
[DMAS-80451] - Sensor Tab of Device Details page is empty in QA with react 18
[DMAS-80452] - UnitOfMeasure Service denies access and uses outdated DmasRestService formatting
Investigation
[DMAS-79535] - Make subtasks to simplify existing code using transactions
[DMAS-79953] - Investigation into the use of react-hook-form
Documentation
[DMAS-78613] - Document new dataproduct in public wiki
[DMAS-78614] - Document new data product options in public wiki
[DMAS-80395] - update related confluence for this feature
[DMAS-80478] - Write documentation for new DataProductRule feature
Requirement
[DMAS-78608] - Requirements for profile animation dataproduct
Design
[DMAS-80238] - Design to allow creating sensor level searches for devices with multiple versions of sensors
[DMAS-80371] - Design to not show data product on searchTreeNode
[DMAS-80453] - Document the standard annotation ingestion format
June 3, 2024
Minor release, includes high priorities for cruise support: reset button for UMN gas-tight sampler, add SMOOVE camera devicetype to camera controls, fix for quarantine system, quarter scalar summary generation fixes.
Minor release, includes: fixes for PVCS (ferry) driver, BPR residual calculations, Earthquake catalogue sorting, Data Player syncing, Community Fishers: cast overlaps, refined fuel sensor support, millisecond support in MUI5, SeaTube: fixes in annotations, taxons and configurations
Remove aria-label attribute for Submit button in SupportRequestForm
Improve performance of DeviceAttributeService
Re-order Column display on DriverSchedule page
Create JVMDevice_Trx database history table
Device workflow admin page will be redirected to a new process group when it is created
Do not ftp transfer file with zero file-size
Python client library updates
Bug Fixes
Clicking on the data availability chart to change the search time range skips data product restriction update (bug on front-end only, back-end check prevents access)
Permissions on User Management page are disappearing after being saved
SCUv2 port at Baynes Sound failure to send alarm on failure
DatasetAttributeService error message "Could not get french translation of "fixed" from database"
fix bug in XML parser for SBE19plus
SeaTube
Building new Dive Log dashboard for this coming ONC expedition.
Finished 10+ on-ship server support
MUI 5 upgrade
Many minor UI improvements and bug fixes
Internal projects
support for MUI 5 upgrade, process and testing improvements
New Features
CIOOS
Bug fix: Cast DOIs correct site device subset is passed to cast DOI Job
In progress: Add simple update support for taxonomy CSV, we have a few more days so may get this into the release
Latest Hydrophone Player
Test version now available for internal feedback
MUI Upgrade
Lots of fixes to changed code and tests
The only change that should be noticeable here is that instead of having two fields to enter a date and time there is one combined field. Note that the previous time entry field supported milliseconds and the new combined date/time field does not. Milliseconds added in the next minor release.
Earthquake and API Features
scalarData service now supports raw min/max downsampled data (raw averaging has never been supported, use clean average instead.)
Improve the earthquake catalogue page to handle different browser tab sizes
Community Fishers
Add download button for pre-generated csv data to cast popup first card
Create service call for csv file
update sensorcode table to use modifyby and modifydate
update sensorcode table schema to use modifyby and modifydate - SQL & Java
Added community fishers device package info to dmas menu
Created UI that displays information about deployed device packages
Added station centre to service call that matlab makes to get siteDeviceSubset metadata - Java
Turned off RDI Complex Archiver
Added additional data product options to station profile animation - SQL
Added UI test automation user to the rate limited search exemption list
Added xChange sensor type to xchange sensor table
Fixed help popper appearing in the wrong place
Removed "--fix" from linting for builds
Added labels to dropdowns in Add Clause
Fixed <CardGrid /> not rendering everything at the same time and has shadow issues due to placeholder cards
Extracted renderDataLayer to it's own Component
Refactored Buttons.jsx to use translated Buttons instead (first third)
Instruments
Station specific permissions to enable locations-specific driver control (useful for instrument testing)
Camera interface board driver
Driver support for ASL acoustic scintillation devices (CORAS)
[DMAS-79848] - Search Automation resulting in search failures
[DMAS-79850] - I don't think Oceans 3 deployments are properly parallelized
[DMAS-79856] - Fix time pickers and time field in QA caused by MUI V5
[DMAS-79885] - SCUv2 port at Baynes Sound did not alarm that it had failed
[DMAS-79889] - file size of oceans-next.jar in 24.03.002 is very different from the oceans-next.jar in 24.03.001
[DMAS-79912] - oceans-next deployment failed in qa -- ./build-webpack : no such file or directory
[DMAS-79917] - Cannot save site device subset in QA
[DMAS-79922] - Some web services are very slow in QA
[DMAS-79930] - JSON table macros no longer works on confluence pages using API URLs
[DMAS-79944] - AnnotationHdrManager's SynchronizationLogger is null
[DMAS-79967] - Date filter in GeospatialMap is not working as expected in QA
[DMAS-79973] - zero-sized .txt hydrophone files on Dec 22
[DMAS-79990] - EEW message processing broken in QA on release branch
[DMAS-80019] - Bug in the tests for SBE19plus parser
[DMAS-80029] - I can't remove a user from ONC Observatory Administrators in DEV and QA
[DMAS-80041] - Imported taxons can not be deleted from the UI
[DMAS-80046] - QA User Management can not delete user from IPP group
[DMAS-80050] - Delete button is enabled when creating a new device port
[DMAS-80079] - Deck log page doesn't load for anonymous users
[DMAS-80084] - EarthquakeMapWidget has flakey cypress test - "Enables and disables map layers"
[DMAS-80092] - Taxon common names don't allow for more than 1 common name
[DMAS-80097] - tx_taxon_trx doesn't contain all of the values of tx_taxon
[DMAS-80107] - Error when trying to save TaxonButtonSetConfig
[DMAS-80109] - Can not add new IP or edit existing IP in QA
[DMAS-80120] - Cannot update device attribute Date From for device type 64
User Story
[DMAS-73505] - As a software developer, I want to modularize QAQC persistence (and some other bits)
[DMAS-77586] - As a data steward, I would like taxon attributes to be preserved when editing an annotation in a deck log, so that if I use the wrong taxon I don't have to reenter data
[DMAS-78921] - As a ST developer, I would like to have an easy way to see all the synchronization errors in all ST related servers
[DMAS-79087] - As a developer, I would like to refactor the Deck Log's Annotation Entry widget to work for dive logging in the new Dive-Log app
[DMAS-79088] - As a dive logger, I would like to have an Annotation List in the new Dive Log app
[DMAS-79293] - As a dev, I would like to udpate existing database tables or create new tables for new cable metadata UI page
[DMAS-79402] - Generate a new DOI when a cast is reviewed
[DMAS-79468] - As a community fishers program member, I would like a UI that displays information about deployed device packages
[DMAS-79602] - Playing an Audio Widget "plays" the associated spectrogram in the Data Viewer
[DMAS-79613] - As a community fishers map user I would like to download .csv data files from the community Fishers Map
[DMAS-79762] - As a data steward, I would like the Driver Schedule to display the schedule year, month, and day next to the schedule hour, minute, and second
[DMAS-79779] - As a ST developer, I would like to have all the synchronization related error messages to be written in a separated file, so that other system can collect it easily.
[DMAS-79894] - Add ManualEntry to Dive Log dashboard
Task
[DMAS-74587] - As a data steward, I would like to be able to delete device ports in the UI
[DMAS-77241] - Deprecate or fix getDapInstruments service
[DMAS-79766] - Extract EventDetectionService to an OSGi bundle
[DMAS-79783] - Add labels to dropdowns in Add Clause
[DMAS-79788] - Extract JBAlarmService to an OSGi bundle
[DMAS-79789] - Extract SnmpTrapSender to an OSGi bundle
[DMAS-79869] - update sensorcode table schema to use modifyby and modifydate - SQL
[DMAS-79870] - update sensorcode to use modifyby and modifydate - Java
[DMAS-79881] - Clean up custom styling in Buttons.tsx
[DMAS-79895] - Add AnnotationEntry widget to the new Dive Log dashboard
[DMAS-79897] - Create a layout file for the default layout on page load
[DMAS-79906] - Remove synchronization of messages from SynchronizerLogger.java; just log the error
[DMAS-79907] - Add the new appender for SynchronizerLogger.java in core.system.logger.impl's resources/log4j.properties as well as the same in qamon and ncdeploy
[DMAS-79916] - Create UnitOfMeasure Service with GET
[DMAS-79933] - (Don't) use MaximumFrequencyLogger in JBAlarmService's AlarmNotifier
[DMAS-79936] - Modify driver to send 'exit' command when stopping.
[DMAS-79939] - Add station centre to service call that matlab makes to get siteDeviceSubset metadata - Java
[DMAS-79940] - Add additional data product options to station profile animation - SQL
[DMAS-79977] - add searchtreenodeid column to eec_endeavoureventsite
[DMAS-80013] - Do not provide no binning dataproduct option - SQL
Bug fix for Nortek Current Profiler driver that was resulting in memory overflow - caused by a particular configuration edge case
New permissions for driver start/stop. Uses a new stations specifier to limit permissions to certain locations for specified groups. Enables staff to more easily test instruments.
[DMAS-79665] - Removing and adding the Annotation Entry widget crashes the Deck Log page
[DMAS-79668] - Fix post-refresh scripts for non-prod environments' synchronizer tables
[DMAS-79675] - QAQC reprocessing doesn't handle inheritance as it should
[DMAS-79681] - Storybook failing after upgrade to v8
[DMAS-79699] - Oceans 3 main branch fails to start in QA
[DMAS-79718] - Storybook deployment fails on new Jenkins agents
[DMAS-79729] - Dataset Landing Page test failing due to label
User Story
[DMAS-76357] - As a software developer, I want to migrate the Taxonomy page to Oceans Next in order to simplify maintenance
[DMAS-76402] - As a system admin, I want to manage which datasync queues receive messages so that I don't have to do too much manual clean up
[DMAS-77861] - As a community fishers program member, I would like a service that gets information about deployed device packages
[DMAS-78606] - As a ST Search/Playlist user, I would like see detailed error messages if there is a error while I am creating a playlist using ST Search so that I can report the error and take actions.
[DMAS-78726] - As an Erddap Operator I would like improvements to the minimally implemented ErddapNetCdfPostProcessor
[DMAS-79086] - As a ST user, I would like a modernized dive log page built in the same way as the deck log
[DMAS-79403] - Display cast DOIs on the Site Device Subset Maintenance page
[DMAS-79414] - As a SeaTube developer, I want ship-shore synchronization to use the modern MQ service framework
[DMAS-79467] - As a dev, I'd like to make synchronizer deployments require a dateTo
Task
[DMAS-74035] - Improve the performance of DeviceCategoryService
[DMAS-74587] - As a data steward, I would like to be able to delete device ports in the UI
[DMAS-78023] - As a data steward, I would like the site page modified date to include changes made to the site's position
[DMAS-78425] - AS a Data Steward I would like to be able to filter attributions in Network Console based on Role or DateFrom
[DMAS-78702] - Addition of ORP Sensor for NOAA: add to ST display
[DMAS-79687] - limit continual acceleration download job to a max of the past 30 days.
[DMAS-79709] - Only Create metadata for PNSN devices in the EEW event definition
Implementation
[DMAS-76983] - Update backend for General Tab Maintenance
[DMAS-77695] - Expand Data Search data product selection table tool-tips
[DMAS-78452] - Add .csv option to CF map historical casts and lasso table
[DMAS-78615] - Create and map new dataproduct to Community Fishers devices - SQL
[DMAS-78844] - Update PlaylistService and PlaylistLineService to successfully create/update a playlist when an annotation is missing video and include broken clips in the result playlist
[DMAS-78901] - Synchronize to only certain destinations according to the message being synchronized
[DMAS-79026] - Generate DataCite XML for casts - Database
[DMAS-79053] - Implement webservice for device workflow bulk update
[DMAS-79085] - Add a button in SeaTubeV3 that links to the "new" dive log
[DMAS-79095] - Add datefrom, dateto, and comment columns to manage CF stations
[DMAS-79163] - Extract generic system command API to new OSGi bundles
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
integrated Wi-Fi and Bluetooth connection more closely with Android
fixed loading from archived log/ctd data creating an unclose-able menu
various performance improvements under the hood
Acoustic Instruments Data Viewer
added a reference URL to custom taxons (front-end)
Fixed: Data Search for all available data doesn't return all the data (high-priority bug)
Data Products
Two very minor bug fixes and automated testing improvements.
Infrastructure
Restricted/testing environments only allow a subset of users to log in (secondary security to VPN/firewalls)
Remove abandoned "Camera Shut Down" application and "Complex Data Viewer" (v1&v2) pages
Abort a deployment & shut down if Oceans 3 tries & fails to connect to its database
Modernize code behind Taxonomy Management page
Dashboards
Data Source Selector Widget now shows sources in a table
Location Selector now uses public API/locations service (much faster)
Fix: Audio player now goes to the correct location to play FLAC files
Fix: Data Player Widget can now be used anonymously
CIOOS Pacific
Add tab to Agreements to edit and view local context labels
ExperiMINTED
Remove incorrect ERROR logging in the DOI registration job (378)
Link available from Data Search page to go to Search History page
When running a batch an email can be sent under various conditions
Earthquake Early Warning, API and Tasks
Now continually sending acceleration data to IRIS on some high bandwidth land sites
Add message to API when requesting restricted data
Improved response descriptions on the open API page
Add better messaging when a default value is used on dataProductDelivery API
Wrap text on browser telnet console page
Simplify logic for running tasks and don't send tasks over the scheduler topic
SeaTube
Finished most phase 1 features in supporting 10+ on-ship servers
In-progress: DateTimePicker for MUI 5 updates, annotation ingestion parser, refactoring DiveLog to use the same framework as the DeckLog
Minor improvements and bug fixes
Instruments
Subc MK5/6 driver zoom function updated
Device does not report current zoom location. Driver now generates the current zoom location by counting the number of zooms in from the maximum zoom out.
Add new sensor attributes for the total number of zoom positions and largest zoom step size, accounting for differences in model years.
[DMAS-76402] - As a system admin, I want to manage which datasync queues receive messages so that I don't have to do too much manual clean up
[DMAS-77348] - Link to Search History Page from Data Search to improve accessibility of page
[DMAS-77692] - As a Community Fishers users, I want to download all casts from one station on Community Fishers Map without having to go to Data Search
[DMAS-77978] - As a batch management user I would like to have batch tasks automatically run in sequence
[DMAS-78339] - As a dev, I would like to see consistent date format on UI pages
[DMAS-78482] - As a system admin, I want to see whether synchronizers are deployed so I know which message queues need to be managed
[DMAS-78483] - As a system admin, I want to create synchronizer deployments so I don't need to manage their queues myself
[DMAS-78484] - As a system admin, I want to edit synchronizer deployments so I can end deployments
[DMAS-78575] - As an API user, I'd like better messaging when I hit restricted data
[DMAS-78797] - As a user, I would like to see Modified Date and Modified By info on Device Workflow Admin page
[DMAS-79057] - Ensure all ST-related synchronized tables use ModGenerator
[DMAS-79224] - Clean up activation and bundling of DataSyncServiceActivator
[DMAS-79429] - Define Storybook usage and standards
Task
[DMAS-35284] - Quarter-scalar-generation: limit number of records to be processed each time
[DMAS-67742] - Change property value from sensortype name to sensortype code on url of data search
[DMAS-73214] - Deprecate CANARIE registry endpoints and supporting code
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
Internal projects
Java 17 upgrade project is officially complete
Various small deployment improvements: better logging, reduce errors, improve validator warnings
Support refactoring ship-shore-synchronizing managers into OSGi-services mid-season
Drop support for IE9
Dashboards (in support of Acoustic Data Viewer)
DEV/QA only data selector widget beta
CIOOS
Use correct version of DOI link now that CKAN supports it
Local Contexts - in progress - support association of Local Contexts project ID with Organization Agreement, display labels associated with project
Fixed issue with CKAN harvest jobs not finishing
ExperiMINTED/Task Management
Remove pagination for Batch Tasks - all top-level batch tasks now show on one page to make sequencing simpler
Batches now support auto-run
We now support a pipeline job which will run the specified set of jobs sequentially
Bug fix: running DOI registration jobs metadataOnly updates DataCite correctly again
EEW
Fixed a bug where site detections could show up multiple times if they didn't have a p-wave or s-wave attached on the earthquake detail page.
API
Removed userId parameter fromScalarDataAPIService (not the public API service) to improve security.
Support default data product options in the data product delivery service. Also ignore any incorrect options a user provides. Response contains the corrected URL.
Remove scalar data get by station API
Have user input persist on the OpenAPI page if they enter it while logged out and then log in to try their query.
Add deviceCode filter to the OpenAPI deployment service page. The API already supported it but it wasnt listed on the OpenAPI page.
Improve performance of the get location and get location tree services
Update all public API services to support an appToken (for dashboards)
Update the citation response from delivery API services to include fields for the DOI, landing page link, and query pid in addition to the citation string.
Added filters to the location tree service so it has all the same ones as the get location service.
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 ErddapDatasetAttributeand ErddapDatasetAttribute_histtable
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
[DMAS-79003] - Null Pointer Exception When Logging in on Dev
[DMAS-79027] - Clip deletion failing due to missing playlistHdrId
[DMAS-79032] - Investigate QAQC Reprocess (job ID 359) failure for taskId 36661223
[DMAS-79045] - Geospatial map lasso tool removes selected casts when performing new lasso
[DMAS-79049] - Device Workflow Admin Phase Filter not showing up in QA
[DMAS-79065] - Selecting casts with lasso after choosing 'Select all casts' doesn't revert button to 'select all casts'
[DMAS-79084] - In QA, I can't update the datatype of a taxonomy attribute, or add options to it
[DMAS-79090] - Device Workflow Admin Process Filter not showing up in QA
[DMAS-79092] - DOI title mismatch between datacite and ONC database
[DMAS-79106] - Accessing ComplexDataPlayer as an anonymous user will crash the browser
[DMAS-79109] - Device Workflow Admin page can not add/delete phase
[DMAS-79110] - Pressure data for RDI ADCP 150 kHz (SN 8580) for SOG East is incorrect in MAT and RDI data prdocuts
[DMAS-79121] - Cannot generate dataProducts for historical casts at a station via the Community Fishers Map
[DMAS-79125] - Error occurring in Batch Management when deselecting a batch
[DMAS-79134] - Earthquake Detail Page site detection table is showing duplicate sites
[DMAS-79142] - error when trying an open api query when logged out
[DMAS-79146] - Applying filters or enabling drifter/cf sampling stations on QA DataSearch causes device tree to reload collapsed
[DMAS-79170] - modifyDate and modifyBy is null for a new Process, Phase or phasephasetask
[DMAS-79200] - imagenex-837-postprocess-job generate *.837 files with zero filesize in qa with release/24.01.000
[DMAS-79207] - The XML configuration files for the AZFP Echosounder (55036) at DDL are incorrect after 2023-11-24 22:06
[DMAS-79219] - piggyback device connect multiple ports to different port of parent device in topology is broken
Epic
[DMAS-74103] - As a software developer, I want to upgrade our tools to use Java 17 so that we can make use of the latest features and ongoing support
User Story
[DMAS-73635] - As a ST developer, I would like to support more than 10 onship servers
[DMAS-75300] - As a software developer, I want to upgrade dev dependencies to match the versions used in the new Equinox
[DMAS-77737] - As a software developer, I would like more constraints on database updates and deletes in the QA and DEV databases
[DMAS-78371] - As a software developer, I want synchronizer database tables to use a module prefix
[DMAS-78447] - As a dev, I would like to have modifydate and modifyby coumns and trx table for device workflow related database tables
[DMAS-78474] - As a user, I would like to see consistent names for fields Modified Date and Modified By
[DMAS-78481] - As a software developer, I want a synchronizer management skeleton page for me to build on
[DMAS-78494] - As a scientist using SeaTube, I want to be able to lock a playlist against editing so that links from published papers can't be broken
[DMAS-78552] - As a software developer, I want to drop support for testing old branches with Java 8 in order to simplify maintenance and test processes
[DMAS-78684] - As a ST user, I want to be able to create, edit, and delete playlist group from the group panel
[DMAS-78708] - As a SeaTube user, I want video snapshots to use a more appropriate quality
[DMAS-78933] - Add stories for map buttons, menus, sizeables sliders
[DMAS-37728] - remove navdata configproperties in database
[DMAS-46729] - Jan Schluter would like a "restrict to visible area" tickbox instead of automatic filtering in data search
[DMAS-47205] - ServerManagementService appears to be inactive
[DMAS-67409] - As a data partner, I would like to see ScalarDataAPIService validate its user's identity so that data access restrictions can be enforced
[DMAS-73306] - As a user, I would like to see an alert when future dates are used in QAQC Results Deletion Job
[DMAS-74927] - As an app developer, it would be useful to have quick access to the android version of a tablet used in CF
[DMAS-75613] - As a dev, I would like to see dialog box on device category dragable
[DMAS-76872] - Always proxy through qamon/ncdeploy when deploying from Jenkins
[DMAS-76942] - Add job.failed.email.recipients job parameter for QAQC reprocessing job
[DMAS-76961] - Make each of the data product options in the Dataset Landing Page for query PID options table links to the wiki
[DMAS-77026] - Improve email content for the support request
[DMAS-77818] - Print any errors thrown when installing OSGi bundles in QA/prod
[DMAS-77950] - Remove the page header bar on the playlist playback page
[DMAS-78013] - Lazily load Playlist apps when running Oceans Next in playground mode
[DMAS-78301] - Replace loading spinners on Thumbnails with a Skeleton component
[DMAS-78338] - Populate the synchronizer database tables
[DMAS-78356] - Adjust styling in PlaylistList to add space between thumbnail and text
[DMAS-78357] - Redirect the SeaTubeV3 Playlist playback route to the new Playlist Playback page
[DMAS-78411] - Make DataSyncServiceActivator agnostic to whether a synchronizable manager is an OSGi service or not
[DMAS-78528] - Refactor AsyncAutocomplete to use cancellable service calls and create storybook
[DMAS-78585] - Design where playlist lock/unlock buttons and icons will go, how it will affect the playback page
[DMAS-78639] - Allow colons in the field label of formfield entries.
[DMAS-78692] - Search Hydrophone Data page does not allow to close zoomed images
[DMAS-78711] - As a user, I would like to see consistent display for Modified By on dmas UI pages
[DMAS-78732] - Update the playlist discovery page's Modified column if a playlist's clips are modified
[DMAS-78583] - Disable locked playlists in selection dropdowns for adding clips in Oceans Next
[DMAS-78598] - Update dataproduct discovery service to show default values, request service to use default values, and open api page to display defaults in description text
[DMAS-78626] - Add a reference URL to custom taxons (backend)
[DMAS-78664] - Add a method to PlaylistService to update a group name
[DMAS-78665] - Create a new Expedition Admin - ONC group
[DMAS-78671] - Update ExpeditionOrganization.java to use the new group
[DMAS-78674] - Update SeaTube.jsx to use the new group
[DMAS-78675] - Create a Dialog for creating a playlist group
[DMAS-78676] - Create a dialog for editing a playlist group name
[DMAS-78678] - Create a dialog for deleting a playlist group
[DMAS-78679] - Disable the add group button if there aren't any ungrouped playlists
[DMAS-78713] - Add translations with a button base component
[DMAS-78716] - Enable authentication when running UI tests in QA2
[DMAS-78722] - Implement date chunking when searching for days to create NetCDF files in ErddapNetCdfPostProcessor
[DMAS-78723] - When generating NetCDF for Erddap always produce a NetCDF file even when sourceFile does not have sufficient data
[DMAS-78724] - Implement filtering options for ErddapNetCDFPostProcessor
[DMAS-78774] - update column names to Modified Date and Modified By on Network Console page
[DMAS-78793] - Refactor Create/Update Playlist buttons in SeaTube Search to be disabled/have loading indicators
[DMAS-78806] - Hide locked playlists in selection dropdowns for adding clips in SeaTube Pro
[DMAS-78811] - Extract StudyArea persistence code to OSGi bundles
[DMAS-78812] - Extract data acquisition metrics to OSGi bundles
[DMAS-78818] - Check if a taxon's originTaxonomy is editable in the default attributes form
[DMAS-78820] - Add mapId to the context so it isn't passed around everywhere
[DMAS-78823] - Update Modified Date/Modified By field names for Device Details, Site Device and Dive page
[DMAS-78825] - Add a Properties table for imported taxonomies and their taxons