Releases: kjolley/BIGSdb
Version 1.50.0
This version introduces support for registering fields from the output of third-party analysis tools that store their results within the database. These fields can then be searched, exported, or used by other analysis tools.
BIGSdb can store the results of arbitrary analyses as JSON within the analysis_results table without requiring any understanding of what the data represent. Information from this can be extracted and formatted within an isolate information page using template files stored in /etc/bigsdb/templates or in /etc/bigsdb/dbases/{dbase_config}/templates. This is used by the rMLST species id and Kleborate plugins to store their results and make them available to everyone once these analyses have been run by anyone, or by an offline script.
It is now possible to register specific fields from this output and make them available for searching, analysis (currently only in GrapeTree), and export. To do this, you need to be able to describe the location of the field in question within the JSON field. This can be done using JSONPath, e.g. a field called ‘predicted_serotype’ at the top-level within the JSON hierarchy can be described with a JSONPath of ‘$.predicted_serotype’.
Admins can add fields by expanding the ‘Fields’ selection in the admin interface and clicking the ‘Add’ link for ‘Analysis fields’:
Enter the analysis tool name, which must match the value used within the analysis_results table, the name of the field, and its JSONPath. You also need to indicate the data type (integer, text, float, or date). Optionally you can set the analysis_display_name to change how it is listed within the query and analysis interfaces.
This will now be searchable within the isolate query interface. First you will need to select the ‘Analysis results’ form elements from the ‘Modify form’ tab.
Then select the field and the value to search on.
Full Changelog: v_1.49.1...v_1.50.0
Version 1.49.1
This version:
- Provides a fix for the LIN code assignment script that was failing when using the latest version of the Perl Data Library (PDL).
- Improves the layout for the site user registration and administration pages. This now utilizes an accordion view to hide sections rather than displaying all form elements on a single page.
- Allows users to now upload their own genomes for analysis in Genome Comparator and related plugins as .tar.gz, .tar, and fasta.gz files rather than just as .zip files as previously.
- Improves the layout of the Export plugin to hide rarely used options. The form can be modified by clicking the 'Modify Form' trigger to display these. An option has also been added to allow export of LIN code prefixes of selected lengths.
Full Changelog: v_1.49.0...v_1.49.1
Version 1.49.0
- This version enables users with a site-wide account to generate their own API keys. There is now a new section on the user registation page which shows any existing key and allows their revocation or creation of new keys.
[Note the key shown above has been revoked :-)]
-
There has also been a fix to the verification of OAuth signatures in an API POST query. Previously the signature base string included JSON-encoded parameters, which should not have been included according to the OAuth 1.0A spec.
-
Finally, curators with appropriate permissions and settings will now receive an E-mail notification if a user requests that private records are made public.
Full Changelog: v_1.48.5...v_1.49.0
Version 1.48.5
This is a minor release that:
- improves the layout of the user database registration page, making use of the JQuery.multiselect plugin.
- provides an option to select only DNA or only peptide loci when making a sequence query in databases that contain both kinds.
Full Changelog: v_1.48.4...v_1.48.5
Version 1.48.4
This version speeds up the display of results for an isolate query where scheme fields from large schemes (e.g. cgST for cgMLST schemes) are displayed. The scheme values used to be determined from the isolate allele designations in real time so that they were always up-to-date, but this can take 500ms+ for a large cgMLST scheme per isolate, which is noticeable when displaying a table of 25 records. Now, if 'cache_schemes' is set in config.xml, and the scheme has >100 loci then the scheme cache table is used for the lookup. Smaller schemes (e.g. MLST) are still determined using a live lookup.
If a scheme field has multiple values, which can happen for cgSTs due to missing loci, then these are now collapsed in the results table with only the cgST that has the fewest missing loci shown. Other matching cgSTs can be shown by clicking a hyperlink.
The second record below has the list expanded:
Full Changelog: v_1.48.3...v_1.48.4
Version 1.48.3
This version introduces a number of performance improvements to sequence queries. The cached BLAST database now also includes sequence length in its headers to avoid a database lookup during the query - to see maximum improvement immediately, mark any BLAST caches as stale (using link in admin interface) so that they can be re-created. The query will still work using the old cache if this isn't done, and the cache will be recreated automatically once a new allele is added or when it is >7 days old.
If LIN codes are assigned for a scheme these are now used to identify the nearest matching genomes following a sequence query.
Please note the new dependency for Perl module Text::CSV.
Full Changelog: v_1.48.2...v_1.48.3
Version 1.48.2
This release fixes a bug when attempting to download a scheme TSV file from the API when the scheme does not have a primary key field, e.g. https://rest.pubmlst.org/db/pubmlst_neisseria_seqdef/schemes/6/profiles_csv. Due to the recent change in the way the results were streamed (introduced in v1.48.1), the check for a valid scheme was not occurring in time, and the process would crash when attempting to access a non-existent table.
Full Changelog: v_1.48.1...v_1.48.2
Version 1.48.1
This version fixes a couple of issues:
- LIN code prefix lookup of nickname field values was matching multiple values, e.g. the prefix 0_0_1051 was also returning values for prefixes 0_0_105, 0_0_10 and 0_0_1.
- LIN code assignment was failing when a scheme had a field called 'profile_id'.
In additional a performance issue has been addressed for the API cgMLST profile download in TSV format. This was taking a long time (and potentially timing out).
Full Changelog: v_1.48.0...v_1.48.1
Version 1.48.0
This version adds optional placeholder text to search fields in isolate queries. You can add placeholder text for any of the fields defined in config.xml by setting the placeholder
attribute, e.g.
<field type="text" required="no" length="50" maindisplay="no" comments="region inside country" placeholder="e.g. Oxfordshire">region</field>
Placeholder text can also be set for sparse fields, scheme fields, LIN codes, and LIN code fields by setting the placeholder
value in the appropriate table - (in the admin interface):
Full Changelog: v_1.47.3...v_1.48.0
Version 1.47.3
Potential fix for #970.
Full Changelog: v_1.47.2...v_1.47.3