# Change Log All notable changes to GAPS and its web applications will be documented in this file. ## 2024.297 ### Added - Allow an active location tab in OriginLocatorView v2 to be able to start with an artificial origin if the event list is empty. ## 2024.292 ### Added - Added parameter `HTTP.maxLineCharacters` to control the maximum number of characters per HTTP request header line. The default configuration is usually sufficient but if webservers inject custom cookies into the request then gaps might fail. This settings can fix the error "too many characters (>= 500) on request". ## 2024.263 ### Changed - Apply new default value "@DATADIR@/gaps/apps/2" for the configuration parameter `mediaDirectory`. Apply "@DATADIR@/gaps/apps/" when installing from the older packages "gaps-frontends" or "gaps-frontends-all". ## 2024.183 ### Fixed - Fix description section for `scheme.colors.gm.gradient` which was accidentally added to `scheme.colors.originSymbol.`. ## 2024.180 ### Fixed - Fix regression from 2024.179 which prevents EQView from loading the configuration. ## 2024.179 ### Added - Add configuration of ground motion and quality control (delay, latency) color gradient. ``` scheme.colors.gm.gradient = ... scheme.colors.qc.gradient = ... ``` - Add configuration of ground motion value unit. ``` # This will select the desired output unit shown in the web # frontends. The configured color gradient is w.r.t. values # in this unit. scheme.colors.gm.unit = m/s**2 ``` - Respect configured ground motion unit in StationView v2. ## 2024.171 ### Added - Forward map `pen.style` attribute in geofeatures to allow rendering non-solid (e.g. dashed) borders. ## 2024.169 ### Added - Add support for thumbnail parameter in `gaps.idx` files for web applications. This can be used in a custom index template. ## 2024.148 ### Fixed - Fix precision of status value in JSON response. This currently only affects OriginLocatorView v2 when computing magnitudes. ## 2024.134 ### Fixed - Fix reading of geo feature styles (map.cfg) and their inheritance. - Fix GeoJSON generation for points. ### Added - Add support for GeoJSON point rendering with circle and square shapes in V2 web applications. ## 2024.129 ### Fixed - Fix "compute magnitudes" access rights which did not work for the "guest" profile. ## 2024.128 ### Fixed - Fix bug of the following call sequence: - Relocate with a new pick - Relocate again - Commit - Relocate ### Added - API call to compute magnitudes including missing amplitudes. Requires access rights "staff" or "guest". - Implement magnitude computation into OriginLocatorView v2. - Added `apps.scolv.picker.loadAllComponents` to control initial component loading in OriginLocatorView v2. ## 2024.124 ### Changed - Changed default mbtiles path in configuration description. ## 2024.106 ### Added - Support setting magnitude type in `/api/commit.json` - Add magnitude type to OriginLocatorView v2. ## 2024.100 ### Added - Add warning log message if a pick during relocation cannot be found. ## 2024.071 ### Fixed - Fix `--list-users` and `--list-props`. ## 2024.064 ### Changed - Relocate request accepts single arrival usage flags. This will be supported along with v2 OriginLocatorView. ## 2024.037 ### Fixed - Consider diamond shape for station symbols from configuration of `schema.map.stationShape`. ## 2023.349 ### Added - TraceView v2 shows the latest event as green marker as in v1. ## 2023.346 ### Added - TraceView v2 can select station clusters. Furthermore station clusters will be colored according the the active state of all contained stations: fully or partially. ## 2023.345 ### Added - Forward name, font and drawName properties for geo features to web frontends and support geo feature annotations for polygons. ## 2023.324 ### Changed - Update SQLite library to 3.44.0. ## 2023.299 ### Added - Read `eventlist.filter.types.enabled` and set event list filter in OriginLocatorView initially. ## 2023.290 ### Added - Add filter "Show/hide other/fake events" to event list of OriginLocatorView v1. - Use global configuration `eventlist.filter.types.blacklist` to declare the list of event types treated as other/fake events. ## 2023.289 ### Added - StationView v2 received a configuration option for the event timespan: `apps.mapview.eventTimeSpan`. The default is 168 (hours). ## 2023.279 ### Fixed - Render Geo feature coordinates with full precision as read from either BNA or GeoJSON. The precision was fixed to 4 digits. ## 2023.255 ### Added - Configuration option `apps.eqview.showRegion` - Use evaluation mode and status for color encoded status flag similar to scolv (native SeisComP application) ## 2023.251 ### Added - Added support for `STALTA(sta, lta)` to webapps v1 ## 2023.249 ### Added - Added support for `STALTA(sta, lta)` filter definition. ## 2023.244 ### Added - Added `apps.eqview.geoCodeURL` configuration parameter - Show geo code (address) of earthquake location in EQView V2 ## 2023.241 ### Added - Show picks on traces in traceview v2 ## 2023.186 ### Fixed - Fixed dead lock caused by concurrent access with `forceHTTP = true` ## 2023.185 ### Changed - Changed internal socket debug logging - Fix acquisition thread purging ## 2023.180 ### Added - Add option to configure station symbol border width: ``` scheme.map.stationBorder = 1 ``` ## 2023.179 ### Added - Add switch to toggle map legends in apps v2 and a configuration option in gaps to initialize this setting: ``` apps.mapShowLegend = false ``` - Add option to toggle UTC in traceview/v2: ``` apps.traceview.utc = true ``` ## 2023.178 ### Added - Add optional event region per widget. This can be useful if the events per widget should cover a larger region than the initial widget bounds. ``` # Use a different event region than the initial map region apps.eqview.widget.abc.eventRegion = 20x40+45-8 ``` ## 2023.174 ### Added - Add EQ symbol animation type "three-circles" which animates the current earthquake symbol in three steps: one circle, two circles, three circles: ``` apps.eventSymbolAnimation = three-circles ``` ## 2023.173 ### Added - Add configuration parameter to toggle display of map zoom controls in v2 web applications: ``` apps.mapShowZoomControl = true ``` - Add default station cluster setting for v2 traceview: ``` apps.traceview.cluster = true ``` ## 2023.166 ### Added - Support event color scale based on magnitude: ``` apps.colorMode = magnitude ``` - Use `scheme.maps.originSymbolMinSize` to configure the fixed size of event symbols if the color mode is "magnitude". - Add single event mode to eqview v2 which shows the selected event exclusively. ``` apps.eqview.singleEventMode = true ``` - Show stations in eqview v2 optionally and allow to configure station colors per type. ``` apps.eqview.showStations = true scheme.colors.stationTypes = BB:orange, SM:blue, SP:lightgreen ``` ## 2023.158 ### Fixed - Fix setting configured mode in stationview (v2) ### Added - Add forwarding of SeisComP `scheme.precision` values to web apps v2. To restore the current precision display, the following values have to be configured in `gaps.cfg`: ``` scheme { precision { depth = 0 distance = 1 location = 1 magnitude = 1 originTime = 0 pickTime = 1 traceValues = 1 rms = 1 uncertainties = 1 } map { stationSize = 25 } } ``` - Add configuration to set the station shape: ``` scheme.map.stationSymbol = hexagon | triangle | diamond ``` This is only recognized with web apps v2. ## 2023.157 - Fix lat/lon/mag display in web apps version 2 - Add `widget.maximumMagnitude` filter and add support for it to web apps version 2 ## 2023.146 - Fix relocation errors in OriginLocatorView. Sometimes the locator failed while it worked in SeisComP scolv. - Fix showing stations with a valid end time but in future in frontends2 ## 2023.142 - Change lat/lon precision two digits in web apps version 1. ## 2023.107 - Support URL parameter "stations" to preset and show the trace view initially in TraceView V2. An example URL looks like this: ## 2023.104 - Update event processors input CSV description. Five additional fm columns have been added. ## 2023.101 - Add missing description for `processors.events` ## 2023.096 - Add `authorize` flag to event processor to require authentication for staff members ## 2023.075 - Support event processing and running configured scripts from within eqview v2 when a user selects a region with ctrl+left mouse ## 2023.055 - Internal cleanups ## 2023.019 - Let webapps v1 handle Quakelink URLs without the concrete events/query path ending with a slash ## 2023.017 - Allow microsecond precision for waveform requests ## 2023.006 - Add websocket support for objects query - Add region query ## 2022.355 ### Added - Add new configuration variables: `computePGAVD` and `windowPGAVD` to control ground motion amplitude computation. ## 2022.298 ### Changed - Update SQLite library to 3.39.4 to fixing CVE-2022-35737. ## 2022-07-29 ### Fixed - Apply mapMaxLevel to base layer - eqview widgets for undefined minimum magnitude threshold - Tile layer config debug output - Tile layer contains test ## 2022-07-28 ### Fixed - Fixed configuration description and removed invalid option `apps.traceview.forceHTTP`. - Respect forceHTTP setting in traceview@v2. ## 2022-07-13 ### Fixed - Support environment variables with `tileLayers.*.db` ## 2022-07-11 ### Added - Added additional tile layer configuration. In order to provide higher detailed maps in certain areas it is now possible to define a mbtiles database for particular zoom levels and bounding rects. An example configuration looks like this: ``` tileLayers = myarea tileLayers.myarea { db = /path/to/map.mbtiles levels = 11:16 rects = +2048+2048+2064+2064 } ``` ## 2022-05-17 ### Changed - Update documentation on installation and setup ## 2022-04-28 ### Added - Allow configuration of event age color scale with `scheme.colors.originSymbol.age.gradient`. This setting will currently be only used by frontends in version 2 and later. ## 2022-04-27 ### Added - Fetch event type list and event type certainty list from server ## 2022-04-26 ### Fixed - Read spatial vector data from standard vector directory of the corresponding SeisComP release ## 2022-04-25 ### Changed - Renamed the v1 frontend assets directory `static` to `assets` - OriginLocatorView fetches known event types from backend and presents a sorted list - Frontends v2 do respect `colorByAge` settings. ### Fixed - v1 frontends used a wrong maximum age value of 210 days instead of 1 month. This has been fixed. All events older than 30 days are being rendered in gray now. ## 2022-04-14 ### Added - Add install instructions for basic setup and web server integration ### Fixed - Typos and default values in description XML ## 2022-03-17 ### Added - Added landing page for frontends v2. To configure it use ``` indexTemplate = @DATADIR@/gaps/index-v2.cs ``` ## 2022-02-23 ### Fixed - Fixed typo in description: showWidgetsBounds -> showWidgetBounds ## 2022-02-21 ### Fixed - Fixed display of region bound rectangle. Due to a regression the initial map region bound in eqview was always shown and not the widget region bounds. As both behaviors are desirable, an additional configuration option has been introduced: `apps.eqview.showWidgetBounds`. To enable the old behavior, set ``` apps.eqview.showWidgetBounds = true ``` which takes precedence over `apps.eqview.showRegionBounds`. ## 2022-01-10 ### Changed - Add reasonable ITAPER() to default filters for optimizing data filtering - Update documentation ## 2021-10-07 ### Changed - Update AngularJS to 1.8.2 and JQuery to 2.2.4 for the 1st generation web applications ## 2021-05-20 ### Fixed - Only center at the latest earthquake initially in StationView if earthquakes should be shown ## 2020-11-19 ### Fixed - Fix redirection to index.html ## 2020-09-30 ### Fixed - Fix OriginLocatorView settings input fields which were not applied correctly on change. ## 2020-09-15 ### Fixed - Fix handling of empty server responses in Web applications. This is important for QuakeLink servers which are configured with a long poll timeout. ## 2019-09-24 ### Changed - Remove tile db configuration from default configuration in order that the global configuration is not overridden by default. This change might break existing installations that does not set the **tileDB** parameter in the configuration file explicitly. To fix the issue add the following line to the GAPS configuration. ``` tileDB = @DATADIR@/gaps/zoom12.mbtiles ``` Alternatively, the map location can be also defined in the global or GAPS configuration file with ``` map.location = @DATADIR@/gaps/zoom12.mbtiles ``` ## 2019-04-26 ### Added - Play EQView audio alerts in a loop - Added stop button to EQView widgets in case an audio alert is played ## 2019-04-16 ### Fixed - Fixed direction (azimuth) to next city or reference place ## 2019-01-24 ### Fixed - Fixed ITAPER() filter which caused invalid data ## 2019-01-22 ### Fixed - Fixed map centering in OriginLocatorView. Sometimes the map is centered 360 degrees left of the event or right of it so that it looks like the event is not shown at all. ## 2019-01-15 ### Added - Added configurable reference place to which the distance and azimuth of the currently selected event is calculated and shown in the details ## 2018-12-21 ### Added - Added configuration parameter `map.geoFeaturePath` to configure the directory of the BNA files to be displayed in the web applications ### Fixed - Fixed EQView widget layout in Chrome ## 2018-12-14 ### Added - Added options to play audio alert and give visual feedback if a new event has been set as latest event for a widget ## 2018-12-13 ### Added - Added option to hide the latest event panel and to show the latest overall event above the widgets ## 2018-12-12 ### Added - Added option to either use event depth or event age as source for symbol colors ## 2018-12-10 ### Fixed - Fixed symbol (either station or event) placement. They are now being placed as close as possible to the center of the configured region ## 2018-11-30 ### Fixed - Fixed epoch matching in web application when station are being added to the map ## 2018-08-14 ### Fixed - Restored old links in StationView and EQView caused by an upgrade of an underlying web application framework ## 2018-08-09 ### Fixed - Fix time window request in StationView which was wrong if the system time was not set to UTC ## 2018-07-23 ### Added - Support to overwrite global binding parameters in GAPS binding ## 2018-05-03 ### Fixed - Fixed relocation of events in OriginLocatorView when stations were deactivated ## 2018-04-30 ### Added - If an event in EQView is selected manually, the URL will change to a permanent link ## 2018-04-19 ### Changed - Upgraded critical external web components to latest version ## 2018-04-05 ### Fixed - Report correct content-type for URL directories, e.g. localhost/stationview/. Not reporting it prevents Google Chrome from rendering the page. ## 2018-03-07 ### Fixed - Fixed connection state in StationView which was shown always as disconnected once a connection to QuakeLink returned with an error even after a reconnect. ## 2018-03-05 ### Fixed - If the maximum bound rectangle is given (`apps.mapRegion.*`) then station symbols are placed in the map that way that they are inside this rectangle. E.g., setting the rectangle's longitude range from 0 to 360 will center the map at 180 degrees and add station symbols left and right of the date line. ## 2018-02-26 ### Added - Added EQView configuration parameter `apps.eqview.externalData` which allows to show external (with respect to the local inventory) referenced waveform data. This parameter is by default `true`. If set set to `false` then only stations which are part of the local inventory, which have bindings and which are associated with the shown event will be added to the list of traces. ## 2018-02-20 ### Fixed - Fixed waveform acquisition over HTTP which sometimes resulted in an interrupted data stream. Although the stream recovered by requesting the data again, the behavior was caused by a bug. ## 2018-01-31 ### Fixed - Finally we changed the EQView carousel screenshot thanks to Péter Mónus who discovered the fail ## 2017-09-06 ### Fixed - Fixed parsing of initial time value when relocating an origin which caused lots of LOCSAT errors for smaller events ## 2017-08-31 ### Fixed - Fixed map center location if clicked on a table entry for regions crossing the date line ## 2017-08-30 ### Fixed - Fixed earthquake symbol placement for EQView region widgets ## 2017-07-19 ### Fixed - Fixed EQView table parameter markup which was introduced by the prior version of eqview ## 2017-07-17 ### Added - Added option to use UTC timestamps for EqView ``` apps.eqview.useUTC = true ``` ## 2017-07-13 ### Added - Added OriginLocatorView configuration to setup the pre/post data timespan ``` # Both values are in seconds apps.scolv.picker.preOffset = 30 apps.scolv.picker.postOffset = 60 ``` - Added OriginLocatorView settings tab to control some picker time window settings. More probably to come. ## 2017-04-18 ### Fixed - Fixed legend style bug that showed up in Webkit browsers (Chrome/Chromium) when the page is zoomed to a particular level ## 2017-03-27 ### Fixed - StationsView continues with data requests after connection has been closed by the server - Unify data acquisition requests in StationView and EQView ## 2017-03-08 ### Fixed - GAPS interprets an unset *enable* parameter as true according to the documentation. ## 2017-03-03 ### Added - Allow guest users to do a relocation in OriginLocatorView ## 2017-02-17 ### Added - Added configuration parameter to set the TraceView trace timespan ``` # Set timespan to 20min apps.traceview.timeSpan = 1200 ``` ## 2017-02-13 ### Added - Added configuration parameters to customize travel time tables. ``` apps.scolv.ttt = libtau, LOCSAT apps.scolv.ttt.libtau.models = iasp91, ak135 apps.scolv.ttt.LOCSAT.models = iasp91, tab, custom1, custom2 ``` ## 2017-02-10 ### Added - GAPS requires now station bindings to enable station inventory and configuration for web applications. Unbound stations will not be shown in e.g. StationView. ## 2017-02-03 ### Fixed - Disable database usage only if inventory and config XML files are given ## 2017-02-01 ### Fixed - Added scroll bar to station view detail widget in case of overflow ## 2017-01-30 ### Fixed - Changed filter name of LP to BW_LP and made BW an alias of BW_HLP. The Butterworth bandpass can be explicitly created as BW_BP. ## 2017-01-23 ### Added - Added configuration parameter apps.mapview.cluster defining if stations symbols should be clustered by default ## 2017-01-18 ### Changed - Set text color of cluster icons depended on background color for best contrast ## 2016-12-12 ### Changed - Removed blue info pop up messages ## 2016-12-06 ### Added - Added URL search parameters for StationView to select a station initially ## 2016-12-05 ### Changed - Changed header text from Extern to Downloads in StationView ## 2016-11-28 ### Fixed - Fixed horizontal line rendering bug on inset world map - Open logo link in new tab ### Added - Added browser check in webapps which will warn a user that does not use a compatible browser, currently Firefox and Chrome/Chromium ## 2016-11-02 ### Added - Added lock on EQView event detail page if opened manually. This will prevent the detail panel from updating or closing automatically. To return to the automatic mode the panel has to closed explicitly. ## 2016-11-01 ### Added - Added option to configure an additional link for the station detail panel in the StationView ``` apps.mapview.customStationLink = "http://geofon.gfz-potsdam.de/fdsnws/station/1/query?network=${net}&station=${sta}&level=resp&format=sc3ml" apps.mapview.customStationLinkName = "Download instrument response" ``` ## 2016-10-19 ### Added - Added configuration option for initial mode of StationView ``` apps.mapview.mode = delay | latency | groundmotion ``` ## 2016-09-26 ### Fixed - Fixed segmentation fault ## 2016-09-15 ### Fixed - Fixed TraceView waveform reconnect when a proxy server is used ## 2016-08-25 ### Fixed - Fixed error when loading events from QuakeLink that is running behind a proxy ## 2015-05-13 ### Fixed - Fixed QuakeLink reconnect in EQView and StationView ## 2016-03-22 ### Added - Added option `indexTemplate` that configures the path to the index.cs template used to generate the index.html. ## 2016-03-21 ### Fixed - Fixed bug that did not take `apps.scolv.useUTC` into account. Furthermore the time edit fields expect either GMT or local time depending on that flag. ## 2016-03-18 ### Fixed - Fixed display of selected initial map region which was sometimes ignored ## 2016-03-16 ### Fixed - Fixed OriginLocatorView configuration error if `apps.scolv.distInKM` is not set to true ## 2016-03-15 ### Added - Added configuration option to specify the path of the logo shown in eqview and MapView/StationView ``` # Relative path to ~/seiscomp3/share/gaps/apps/ apps.logoPath = share/images/mylogo.svg ``` - Added travel time plot to originlocatorview - Added configuration option to show plot distances in OriginLocatorView in km instead of degree ``` # Show distances in km instead of degree apps.scolv.distInKM = true ``` ## 2016-03-14 ### Added - Added configuration of default visible region for MapView and TraceView ``` apps.mapRegion.minimumLatitude = 0 apps.mapRegion.minimumLongitude = 0 apps.mapRegion.maximumLatitude = 10 apps.mapRegion.maximumLongitude = 10 ``` ## 2016-01-27 ### Added - Added `mapMaxLevel` and `mapMaxZoom` configuration parameter for better integration of tile servers ## 2017-01-07 ### Added - Added legend to EQView and OriginLocatorView - Added time span query to OriginLocatorView ### Fixed - Added OriginLocatorView events map view to documentation - Fixed OriginLocatorView events map view to show exactly the same events as the event list and respecting the filters - Fixed tooltip (event ID) for event symbols in EQView and OriginLocatorView ## 2016-01-06 ### Added - OriginLocatorView received an additional view for the event list, a map, that it is now possible to either list all events in a table or plotted in a map ### Fixed - Fixed bug that caused an error at every second "Read" button activation ## 2015-10-26 ### Added - Remove "not existing" and "other" events ## 2015-10-19 ### Added - OriginLocatorView adds a filter the event list to either show all events, hide rejected events or only show rejected events ## 2015-07-07 ### Added - Added option to display P/S wave spreading for the current widget in EQViev ``` apps.eqview.showWaveSpreading = true ``` ## 2015-06-24 ### Added - Added option to use UTC timestamps in OriginLocatorView ``` # Uses UTC timestamps in the frontend apps.scolv.useUTC = true ``` ## 2015-06-22 ### Fixed - Fixed carousel image scaling problems in the landing page - Fixed waveform reconnection problem with web applications ## 2015-06-19 ### Added - Allow index files (`share/gaps/*/gaps.idx`) to point to an absolute URL with e.g. `link=http://www.domain.org` ## 2015-05-08 ### Added - Added forceHTTP option to disable Websockets for record which can cause problems with Apache Websocket Proxy module