Releases: PavlidisLab/Gemma
1.30.6
1.30.5
1.30.4
1.30.3
1.30.2
- better formatting for numbers in our flat files
- improve performance of retrieval and thawing of vectors
- workaround for inferring parents/children when a limited reasoner is used
- fix substitution of placeholders when using
@Value
- revert some of the multiple hilo ID generator as it caused some issues with duplicated PKs
- always order null GEEQ scores last in the REST API
1.30.1
Highlights
- eliminate
quantitationType
for the processed vectors - highlights from multiple sources are now merged
- preserve scope when generating a link in the search results
- add audit events for mean-variance update and sample correlation analysis
- fix query to retrieve the latest audit event of a given type
- insert analysis results and contrasts with JDBC to make saving analysis fast
- fix status codes for error pages in Gemma Web
- add
rewriteBatchedStatements=true
in our defaults for MySQL - allow mentioned terms to bypass a category exclusion from the
getDatasetsAnnotationsUsageStatistics()
endpoint - harmonize some ontology terms
Migration to Hibernate Search
This release replaces the decade-old Compass fork we've been using with Hibernate Search.
1.30.0
Highlights
- major additions to our REST API
- revamped UI for monitoring caches
- cache for ontology inference
- filterable properties are enumerated in the REST API docs
- formal syntax for filtering with ANTLR4
- multiple performance improvements for the database queries performed through the REST API
- Groovy Support is now in a separate Maven artefact
- HikariCP for database pooling
- Micrometer integration
- GA4 integration
- dependency update
REST API overhaul
In coordination with our work on our the new Gemma Browser, we are releasing numerous additions to the REST API. We now have endpoints for counting usage of platforms, technology types, categories and annotations with a given full-text query of formal filter.
We now use subqueries for filters that apply to one-to-many relations (i.e. the tags of a dataset). This makes it possible to query for datasets that have a tag A and tag B.
The getDatasets()
endpoint now accept a full-text query, allowing one to search and browse in a single API call.
There are endpoints for counting platforms, datasets and result sets matching a given filter.
Paginated and filtered endpoint now include the filter
used for retrieving relevant entities. This is giving you more transparency, since our backend might add additional clauses to your expression. We also added a groupBy
to make it crystal clear what constitute a business key in the payload.
Filterable properties are now exposed in the RESTful API docs
Cache for ontology inference
In order to accelerate ontology inference and still benefit from Apache Jena's transitive inference capabilities, we've implemented a caching strategy that seeks cached subsets of queried terms.
Groovy Support
The Groovy support has been moved to a different module and is now part of our packaging process.
To include Groovy support, add the following to your pom.xml
:
<dependency>
<groupId>ubic.pavlab.gemma</groupId>
<artifactId>gemma-groovy-support</artifactId>
<version>1.30.0</version>
</dependency>
The SpringSupport
object now accepts profiles, allowing you to switch between production and testing environment at a glance:
import ubic.gemma.groovy.framework.*;
var username, password;
var springSupport = new SpringSupport(username, password, [SpringSupport.PRODUCTION]);
var eeService = springSupport.getBean(ExpressionExperimentService.class);
var datasets = eeService.loadAll();
GA4 integration
In the 1.29 series, we migrated our frontend to GA4. In the 1.30, we go one step further by integrating GA4 in the backend of our API, allowing us to relate how the GUI clients interact with the REST API. This works by passing a X-Gemma-Client-ID
header in the HTTP request.
Dependencies Update
- gsec 0.0.14
- Apache Velocity 2.3
- Commons IO 2.13
- Commons Collection 4 (Commons Collection 3 was fully retired)
1.29.15
- fix a bug when listing switched EEs in a merged platform
- decouple troubled flags for datasets and platforms (see #764)
- prevent already troubled curatables from being marked as troubled (and non-troubled as non-troubled)
- check for cycles when building Phenocarta ontology tree
- update baseCode to 1.1.18 which contains a fix for ontologies that redefine certain classes as individuals
- update the last updated moment when a dataset goes through an update intercepted by the audit advice
1.29.13
1.29.12
- replace DO with MONDO
- fix display of blacklisted terms in search results #688
- fix counting of troubled platforms
- fix label generation for term URIs that contain fragments
- fix LazyInitializationException when updating primary publication #694
- fix batch correction when a DE exclude/include factor is present #678
- eliminate
ga.domain
and its associated warning now that we switched to GA4