Releases: PavlidisLab/Gemma
1.31.12
Changeset
- fix P-value plot
- increase QC plot size
- mark JSESSIONID as http-only
- add consistent ordering behavior when ordering by a nullable field in the REST API
- filter stacktraces printed in the console to hide proxy and Hibernate internals
- allow HEAD on all GET endpoints
- numerous improvements for parsing and loading data from GEO
1.31.11
1.31.10
1.31.9
1.31.8
Changeset
- fix various issues with platform and vector merging
- new endpoint exposing batch information and effect (reserved for curators)
- quantitation type can be retrieved by name in the REST API
- improvement for creating and deleting vectors in batch
- improve serialization of interaction and continuous factors when producing result sets in TSV
Improved encoding of interactions and continuous factors in result sets TSV output
Although rarely used, Gemma's linear model can handle continuous factors. The TSV output not fully supports this.
When we produce a TSV output for a result set, we need to encode three types of contrasts: single factor, interaction of two factors and continuous factors. Those are encoded as follows:
contrast_{fv_id}_{key}
for a single factorcontrast_{fv_id1}_{fv_id2}_{key}
for an interaction between two factorscontrast_{key}
for a continuous factor
where {key}
is one of coefficient
, log2fc
tstat
or pvalue
.
Gemma is inherently limited to a single continuous factor per result set. If that were to change, we would have to account for this by adjusting the encoding.
Retrieve differential expression results across datasets
The RESTful API has been bumped to 2.8.0 and features a new endpoint for retrieving DE results for a given gene across all datasets, subsets and result sets curated in Gemma.
Results can be filtered at the dataset-level with the usual query
and filter
parameters and paginated with offset
and limit
. They can also be filtered by corrected P-value using threshold
to reject results with a poor fit for the given gene.
GET /datasets/analyses/differential/results/taxa/human/genes/BRCA1 HTTP/1.1
The endpoint can also be requested to produce a tabular output by passing Accept: text/tab-separated-values
.
GET /datasets/analyses/differential/results/taxa/{taxon}/genes/{gene} HTTP/1.1
Accept: text/tab-separated-values
Retrieve raw vectors with quantitation type names
It is now possible to use a name for retrieving vectors for a given experiment.
GET /datasets/{dataset}/data/raw?quantitationType={name}
Common quantitation type name for raw data vectors are:
- log2cpm
- counts
- rpkm
- rma value
- value
The first three are used for RNA-Seq data.
1.31.7
1.31.6
1.31.3
This patch release brings substantial performance improvements for GemBrow and much more!
- advanced search syntax with Lucene
- numerous improvements to the search backend
- batch loading and parameter padding to reuse prepared statements as much as possible
- query optimization tailored for GemBrow
- monitoring of the local task and database connection pools with Micrometer and JMX
- improved batch confound detection for small sample sizes by @ppavlidis
Advanced search syntax
We used to have this feature before migrating to Hibernate Search. It's now fully back on! It can be used in the search interface, in GemBrow or via the REST API.
Query optimization
We've introduced a bunch of query utilities for batching and padding Hibernate parameter lists. This is a temporary solution until we migrate to Hibernate 5+ which supports this feature natively. Parameter padding and batching reduces the number of prepared statements that needs to be managed by Hibernate.
1.31.2
1.31.0
- introduce statements in FactorValues by @arteymix
- improved parsing of GEO metadata for populating sample characteristics by @ppavlidis
- replace Compass with Hibernate Search
- new tool for finding obsolete terms by @ppavlidis
- remove Guava
- improve permission masking and jointures in AclQueryUtils
- migrated the CI to Jenkins Pipeline
- gradually getting rid of Apache Configuration 2 with built-in Spring support for property placeholders
FactorValue semantics
The main feature this release bring is the introduction of semantics in factor values. Previously, a factor value was annotated with a simple bag of ontology terms. In some cases, annotations were ambiguous and made it difficult to interpret the experimental design.
An example would be a treatment with two compounds and two doses. Which dose applies to which compound? This is resolved by creating two statements: "compound A delivered at dose B", "compound C delivered at dose D".
REST API-wise, we now display statements alongside old-style characteristics.
Our factor values are also made available in OWL/RDF. For example, the FactorValue #138393 from GSE10721 can be retrieved with:
curl -H Accept:application/rdf+xml https://gemma.msl.ubc.ca/ont/TGFVO/138393
Full Changelog: 1.30.6...1.31.0