Skip to content

Releases: kjolley/BIGSdb

Version 1.38.1

21 Nov 14:55
Compare
Choose a tag to compare

This version adds front-end dashboards for user and public projects hosted within an isolate database. Previously, front-end dashboards were limited to summarising the complete database, but these now provide a landing page for individual projects. As with other dashboards, these are fully customisable by end users and can be specific for individual projects. Links within the dashboard and menu items lead to database views filtered by the current project.

GMGL-Neisseria-isolates

In addition, the annotation status for any scheme can be displayed within a dashboard.

GMGL-Neisseria-isolates(1)

Custom dashboards can be created for any project by adding a TOML file in the database configuration named dashboard_project_X.toml (where X is the project id). The format for this file is described at https://bigsdb.readthedocs.io/en/latest/dbase_setup.html#defining-default-dashboards.

Version 1.38.0

28 Oct 09:33
Compare
Choose a tag to compare

This version adds support to limit submissions and curators to specific database configurations. This can be useful if two distinct datasets, with harmonised isolate fields, are hosted in the same database. Configurations can filter the dataset using database views and sets. Setting:

separate_database="yes"

in config.xml (or in the system.overrides file for a particular config) means that the configuration will be treated as though it was a separate database when it comes to notifying curators of submissions and allowing them to handle them. Curators can be limited to specific configurations by populating the new curator_configs table. Fields can now also be hidden from specific configurations by setting the 'hide' attribute to 'yes' in config.xml (or more usefully in the field.overrides file for a specific config). If a default field value is set, this value is automatically included in the record even if the field is hidden.

An example of where this may be useful is in the recent merging of the PubMLST S. aureus and S. epidermidis databases, so that analysis can be performed across both closely-related species. These appear as distinct when accessed from their respective species pages (https://pubmlst.org/organisms/staphylococcus-aureus and https://pubmlst.org/organisms/staphylococcus-epidermidis) and they each have their own curators. They are, however, also accessible as a merged dataset (https://pubmlst.org/organisms/staphylococcus-spp), where the species field is available to select between the two (this field is hidden in the specific species views).

In addition, the rMLST species id tool now provides text and Excel output files.

Version 1.36.5

25 Aug 08:24
Compare
Choose a tag to compare

This version adds new optional query dashboards to isolate databases. These visually summarise the results of a query.
slide1

The new query_dashboard attribute needs to be set within bigsdb.conf to enable these.

Support has also been added for GPS maps to be included within dashboards
slide3
.

Version 1.36.0

28 Jun 10:26
Compare
Choose a tag to compare

Version 1.36.0 allows isolate fields to be linked to GPS lookup tables to facilitate mapping. This allows, for example, a field for town_or_city to contain place names, which can then be mapped within the isolate information page and in the Field Breakdown and Microreact plugins.

Isolate-information-id-52199-0085-19-Neisseria-isolates

In order to enable this, the PostgreSQL PostGIS module needs to be installed and an optional table created in the isolates database using the isolatedb_geocoding.sql script. A field described in config.xml can then be linked to GPS lookups by setting the geography_point_lookup attribute to 'yes'.

GPS lookup values can then be set in the curator interface by administrators or curators with the 'modify geopoints' permission set.
Curator-s-interface-Neisseria-isolates
Add-new-geography-point-lookup-value

Alternatively, lookup GPS values can be set in bulk by using the gp_town_lookups.pl script found in the scripts/maintenance directory. This uses the Geonames database, containing coordinates of town and cities with populations of at least 1000 worldwide, that is distributed with BIGSdb.

Version 1.35.3

19 May 08:10
Compare
Choose a tag to compare

Version 1.35.3 improves on the GPS mapping available in the Field Breakdown plugin.

Users can now dynamically change pointer colour and size, and the map is automatically centred and zoomed on the displayed points.
Field-breakdown-Borrelia-isolates

In addition, a race condition was fixed that could occasionally mix up visualisation controls if users rapidly switched between country and GPS fields before the current visualisation was fully loaded.

Version 1.35.2

13 May 10:12
Compare
Choose a tag to compare

Version 1.35.2 adds support for a new isolate field type to natively support GPS coordinates for use in mapping. A map will appear within the isolate record information page if such a field is populated. By default, OpenStreetMap is used, but Bing maps can be used if a Bing Map API key is set within the bigsdb.conf file. Bing maps allow you to toggle between map and aerial views.

Bing_map

Bing_aerial

In addition, record locations are mapped within the Field Breakdown plugin.

Field-breakdown-Borrelia-isolates

You can also use the field as the source for mapping information when exporting to Microreact so that sub-country level mapping can now be used.

The field type 'geography_point' needs to be set as the type attribute for the field within the database config.xml file.

In order to create the field within the isolate table you will need to install the PostGIS module for PostgreSQL and enable this within the isolate database with the following:

CREATE EXTENSION postgis;

and then add the field as below, in this case for a field called location:

ALTER TABLE isolates ADD location geography(POINT,4326);

[SRID 4326 represents spatial data using longitude and latitude coordinates on the Earth’s surface.]

Geographic data are entered within the curation interface as a single string in the format '[latitude], [longitude]'. The latitude and longitude are individually queryable when performing an isolate search.

If you already have a database that contains separate latitude and longitude data as float values, you can use these to populate a new location field as follows:

UPDATE isolates SET location = POINT(longitude,latitude)::geometry WHERE latitude IS NOT NULL AND longitude IS NOT NULL;

Version 1.35.0

08 Apr 13:42
Compare
Choose a tag to compare

Version 1.35.0 adds support for alternative codon tables. Databases can be set to use a particular codon table, as defined at https://www.ncbi.nlm.nih.gov/Taxonomy/Utils/wprintgc.cgi. This can be done by setting the codon_table attribute in config.xml to the appropriate table id number. In addition, if the alternative_codon_tables attribute is set to 'yes', individual isolates can be set with different codon tables. This would be appropriate for databases that contain records of different bacterial species that may use different codon tables.

The selected codon table is used for translations and for checks that involve determining if a sequence is a complete coding sequence (has a start/stop codon in frame, with no internal stop codons).

Version 1.34.0

08 Mar 13:53
Compare
Choose a tag to compare

This version provides support for LINcodes based on cgMLST schemes. See https://doi.org/10.1101/2021.07.26.453808 for more information about LINcodes.

Documentation for using setting up LINcodes within BIGSdb can be found at https://bigsdb.readthedocs.io/en/latest/administration.html#setting-up-lincode-definitions-for-cgmlst-schemes.

Version 1.33.0

21 Jan 12:38
Compare
Choose a tag to compare

This adds data drill-down functionality linked to the front-end dashboards on isolate databases.

Version 1.32.1

22 Nov 09:15
Compare
Choose a tag to compare

This version updates the Microreact plugin to support breaking changes introduced on the Microreact website. API uploads to Microreact now require an account token - this needs to be set in the bigsdb.conf file.

In addition, it is no longer a requirement for databases to have fields named 'country' and 'year' in order for the plugin to be enabled. Fields with different names can be used and set within the config.xml file using the microreact_country_field and microreact_year_field attributes in the system tag. Note that countries should use the standardised list of names as defined in BIGSdb since these are mapped internally to ISO 3166-2 2 letter country codes used by Microreact. The easiest way to use these is to define a country field in the config.xml as below:

<field type="text" required="yes" maindisplay="yes" comments="country where strain was isolated" optlist="yes" values="COUNTRIES" sort="no">country
  <optlist>
    <option>Unknown</option>
  </optlist>
</field>

If either a country or year field is not used, data are still uploaded to Microreact but either the map or timeline is not shown.