The LabKey team is proud to announce the release of LabKey Server 11.1. In this release, we've added great new tools for both scientists and developers, including improved assay data processing, new visualization tools, and expanded scripting capabilities.


  • Performance improvements for general purpose assays.
  • Copy-to-study improvements. To reduce data duplication, assay data is now linked as a lookup instead of being copied into a study dataset.
  • Automated copy-to-study. Assay data can be copied to a study as part of upload.
  • Improved microarray feature extractor pipeline. The microarray feature extractor is now integrated into the Enterprise pipeline.
  • Improved assay import. Improved assay import and design inference. See the Assay Tutorial for details.
  • ELISpot assay improvements. Automated statistical calculations of spot counts now appear as a column in grid view.


  • Improved time chart wizard. We've added a new user interface for creating time charts. Time charts can be easily exported to a PDF file.
  • New MS2 visualizations. We've added new visualizations to the run comparison and run details views. See the Proteomics section below for details.

User Interface

  • New web themes. We've added three new built-in themes and a custom theme designer.
  • Look and feel improvements We've improved the look and feel of the buttons and dropdowns on web parts.
  • New user interface design guidelines documentation.


  • Server-side validation/transformation scripts.
  • SQL Enhancements. New support for parameterized queries, pivot tables, and expanded support for SQL Server and PostgreSQL functions


  • Improved support for Sequest. The Enterprise pipeline has been re-implemented to utilize FASTA database indexing for much greater performance and efficiency.
  • New peptide comparison visualizations. The peptide comparison view now uses the full featured customizable grid view and we've added a new Venn diagram visualization.
  • New protein details visualization. The protein and protein group details pages now include a peptide coverage map. The coverage map can also be exported to an Excel-readable HTML file.

Genotyping and Sequencing

  • Support for reads designated with 3' multiplex identifiers (MID) and amplicons. Reads are now linked directly to the appropriate sample based on 5' MID, 3' MID, and amplicon properties.
  • Support for manual combination and modification of genotyping matches.
  • Support for filtering out low quality bases at export time.

Other Enhancements

  • Date filter improvements. The date filter dialog now includes a graphical date picker user interface.
  • Reporting improvements. A new AJAX implementation provides a better user experience.
  • File management improvements. We've improved the user interface for the file management tool.
  • Improved email notification settings. Administrators can edit email notification schedules for multiple users at one time.
  • Daily digest notifications. New scheduling options are available for email notifications: you can choose notification summaries every 15 minutes or once daily.
  • Specimen tracking improvements. Specimen tracking in studies supports vial merging.
  • Column Aggregates. You can now add an aggregating function to a column, including: sum, average, count, minimum, or maximum.

Extensibility and New APIs


  • Server-side validation script enhancements
    • Executed on the server, as the user who submitted the request.
    • Use require(“dir/dependencyName") to include other file-based module script files.
    • Supports a subset of the JavaScript client APIs: LABKEY.ActionURL, LABKEY.Filter, LABKEY.Message, LABKEY.Query, LABKEY.Security, LABKEY.Utils.
  • Client-side JavaScript reports
    • Alternate view of data grids, analogous to R reports.
    • Available through Views menu: Views -> Create -> JavaScript View.
    • Enhanced editor for javascript source code.
  • LABKEY.Specimen - Now you can pass a config object, instead of separate parameters. (Backwards compatible with older behavior.)
  • LABKEY.Message - Now you can specify a principal id (= a group or individual user) instead of email addresses. Only works on server-side scripts.

LabKey SQL Syntax Additions

  • Support for PostgreSQL specific functions: ascii, btrim, char_length, etc.
  • Support for SQL Server specific functions: ascii, char, charindex, etc.
  • Support for comma syntax instead of join syntax.
  • Support for nested joins.
  • Auto-generation of expression aliases.
  • AS is optional for expression aliases
  • SELECT column alias now supported in ORDER BY clauses.
  • SQL Query Parameters, with default values
  • User/Group functions: USERID(), ISMEMBEROF(groupId)
  • ISEQUAL(a,b) equivalent to: (a=b OR (a IS NULL AND b IS NULL))
  • Support for PIVOT


  • TargetStudy column now supported for GPAT assays on the result domain.
  • Assay query metadata can now be placed in a file-based module.


  • Two new server APIs that support automatic processing of MS spectra files as they are produced by the instrument, without operator intervention:
    • The StartSearchCommand initiates MS2 searching on specified data files using a named, pre-configured search protocol. If a data file is not found in the specified location at the time this command is called, the search job will still be initiated and will enter a "File Waiting" status.
    • The FileNotificationCommand tells LabKey Server to check for any jobs in a given folder that are in the File Waiting status.
  • Two wrapper classes make these APIs easier to call from a batch file:
    • The MS2SearchClient class takes data file and protocol information from a CSV file and uses it to call StartSearchCommand one or more times. MS2SearchClient is designed to be called in a batch file.
    • The PipelineFileAvailableClient is a simple wrapper over FileNotificationCommand to enable calling from a batch file.

Filter Syntax

  • New filter operators (~dateeq and ~dateneq) provide more intuitive semantics.
    • visitdate~dateeq=2001-01-01 is equivalent to: visitdate >= 2001-01-01:00:00:00 and visitdate < 2001-01-02:00:00:00.

Data Persistence

  • Improved general purpose assay data persistence
    • Before 11.1, there were three forms of persistence:
      • Metadata stored in OntologyManager
      • Data stored in OntologyManager (aka "The Blender")
      • Data also stored in materialized temp tables
    • In 11.1, there are only two forms of persistence
      • Metadata stored in OntologyManager
      • Data stored only in OntologyManager maintained hard tables
Powerpoint summary of 11.1 API Changes.


expand all collapse all