Recent Releases of api
api - v0.6.4
๐ Enhancements
- [MNT] Update diagnosis terms to SNOMED v20250227 and standardize vocab file format #427 (@alyssadai)
Authors: 1
- Alyssa Dai (@alyssadai)
- Python
Published by neurobagel-bot[bot] 11 months ago
api - v0.6.3
๐ Bug Fixes
- [FIX] update assessments to SNOMED v20250227 and exclude non-standard terms #421 (@alyssadai)
Authors: 1
- Alyssa Dai (@alyssadai)
- Python
Published by neurobagel-bot[bot] 12 months ago
api - v0.6.2
:tada: This release contains work from a new contributor! :tada:
Thank you, Khushi Jitendra Rajurkar (@KhushiRajurkar), for all your work!
๐ Bug Fixes
- [FIX] Ensure defaults are correctly applied for environment variables set to empty strings #418 (@alyssadai)
๐ Internal
- [REF] Move environment variable handling to Pydantic
BaseSettingsclass #416 (@alyssadai) - [REF] Refactor startup/shutdown events to lifespan events #407 (@KhushiRajurkar @alyssadai)
๐ฉ Dependency Updates
- [REF] Upgrade to Pydantic>2 #413 (@alyssadai)
Authors: 2
- Alyssa Dai (@alyssadai)
- Khushi Jitendra Rajurkar (@KhushiRajurkar)
- Python
Published by neurobagel-bot[bot] 12 months ago
api - v0.6.1
๐ Enhancements
- [MNT] Remove trailing slashes from all paths + rename
NB_NAPI_ROOT_PATH#408 (@alyssadai) - [ENH] Make
root_pathfor app configurable #400 (@alyssadai)
Authors: 1
- Alyssa Dai (@alyssadai)
- Python
Published by neurobagel-bot[bot] about 1 year ago
api - v0.5.1
๐ Documentation
- [DOC] Update shortcuts in README.md #391 (@alyssadai)
Authors: 1
- Alyssa Dai (@alyssadai)
- Python
Published by neurobagel-bot[bot] about 1 year ago
api - v0.4.3
๐ Internal
- [REF] Manually verify ID token using PyJWT instead of google_auth #386 (@alyssadai)
Authors: 1
- Alyssa Dai (@alyssadai)
- Python
Published by neurobagel-bot[bot] about 1 year ago
api - v0.4.2
๐ Enhancements
- [FIX] Filter for only
ImagingSessions orPhenotypicSessions in SPARQL query #375 (@alyssadai)
Authors: 1
- Alyssa Dai (@alyssadai)
- Python
Published by neurobagel-bot[bot] over 1 year ago
api - v0.4.1
๐ Bug Fixes
- [FIX] Ensure non-agg API doesn't error out when all matches lack pipeline data #369 (@alyssadai)
๐งช Tests
- [TST] Remove unneeded env file mount from test docker-compose.yml #366 (@alyssadai)
Authors: 1
- Alyssa Dai (@alyssadai)
- Python
Published by neurobagel-bot[bot] over 1 year ago
api - v0.4.0
๐ฅ Breaking Changes
- [REF] Split generic
/attributesendpoints into attribute-specific routers #358 (@alyssadai) - [ENH] Implemented
pipeline_versionandpipeline_namequery fields #345 (@rmanaem)
๐ Enhancements
- [ENH] Add
/pipelinesrouter & route for fetching available pipeline versions #350 (@alyssadai) - [REF] Update README links and simplify Docker Compose instructions #340 (@alyssadai)
๐ Bug Fixes
- [FIX] Allow only
"true"orNoneforis_controlquery parameter #364 (@alyssadai) - [FIX] Fixed a typo in filtering pipeline name #351 (@rmanaem)
- [FIX] Ensure pipeline variables are returned from the graph in an aggregate query #349 (@alyssadai)
๐ Internal
- [MNT] Updated
default_neurobagel_query#347 (@rmanaem) - [MNT] Removed build docker nightly workflow file #342 (@rmanaem)
๐ Documentation
- [MNT] Update default Neurobagel SPARQL query file and turn into PR checkbox #359 (@alyssadai)
๐งช Tests
- [TST] Add integration test against local test graph #357 (@rmanaem @surchs @alyssadai)
Authors: 3
- Alyssa Dai (@alyssadai)
- Arman Jahanpour (@rmanaem)
- Sebastian Urchs (@surchs)
- Python
Published by neurobagel-bot[bot] over 1 year ago
api - v0.3.1
๐ Bug Fixes
- [FIX] Ensure subjects without imaging sessions are considered in main query #333 (@alyssadai)
๐ Internal
- [CI] Fix reference for
DOCKERHUB_REPOin builddockeron_release.yml #337 (@alyssadai)
Authors: 1
- Alyssa Dai (@alyssadai)
- Python
Published by neurobagel-bot[bot] over 1 year ago
api - v0.3.0
๐ฅ Breaking Changes
- [FIX] Disable redirect slashes globally and remove trailing
/from/query#328 (@alyssadai) - [ENH] Add authentication to
/queryroute #323 (@alyssadai)
๐ Bug Fixes
- [FIX] Exclude sessions missing a queried property from matches #326 (@alyssadai)
Authors: 1
- Alyssa Dai (@alyssadai)
- Python
Published by neurobagel-bot[bot] over 1 year ago
api - v0.2.1
๐ Bug Fixes
- [FIX] Address performance issues in SPARQL query #308 (@surchs)
- [FIX] Disable timeout for request to graph #305 (@alyssadai)
Authors: 2
- Alyssa Dai (@alyssadai)
- Sebastian Urchs (@surchs)
- Python
Published by surchs almost 2 years ago
api - v0.2.0
:tada: This release contains work from a new contributor! :tada:
Thank you, Abdul Samad Siddiqui (@samadpls), for all your work!
Release Notes
[MNT] Release new data model (#300)
We have updated the Neurobagel data model to allow users to specify phenotypic information at the session level (https://github.com/neurobagel/planning/issues/83). This release updates the node API so it can understand the new graph data.
๐ฅ Breaking Changes
- [REF] Make session count names clearer in query response #282 (@alyssadai)
- [ENH] Support queries of session-level phenotypic attributes #264 (@alyssadai)
๐ Enhancements
- [ENH] Added root endpoint with welcome message and API docs link #286 (@samadpls)
- [MNT] Release new data model #300 (@surchs)
- Delete .github/workflows/add_pr2project.yml #244 (@surchs)
๐ Documentation
- [DOC] Added warning about quoting in
.envfile for Docker commands #284 (@samadpls) - [DOC] Add sample default SPARQL query to repo #277 (@alyssadai)
๐งช Tests
- [TST] Refactor tests #269 (@alyssadai)
๐ฉ Dependency Updates
Authors: 4
- Abdul Samad Siddiqui (@samadpls)
- Alyssa Dai (@alyssadai)
- Arman Jahanpour (@rmanaem)
- Sebastian Urchs (@surchs)
- Python
Published by surchs almost 2 years ago
api - v0.1.1
Summary
This release introduces new API endpoints which return: - queryable Neurobagel variables/attributes - available instances of a specific Neurobagel attribute in the linked graph - all term IDs and associated human-readable labels of concepts from the vocabulary used for a given Neurobagel attribute
The release also introduces: - greater configurability of API and graph server parameters via environment variables - a helper shell script for automatically uploading graph-ready data (JSONLD/TTL) to an existing graph database - returning sizes of matching datasets in the API response for a subject query
What's Changed
New or improved features โจ
- [ENH] Increase configurability of API/graph server parameters by @alyssadai in https://github.com/neurobagel/api/pull/146
- [ENH] Add environment variable for allowed origins for CORS by @alyssadai in https://github.com/neurobagel/api/pull/151
- [ENH] Add query tool to docker compose by @surchs in https://github.com/neurobagel/api/pull/154
- [FEAT] Add script to upload data to graph by @alyssadai in https://github.com/neurobagel/api/pull/156
- [ENH] Implemented endpoint for returning available termURLs by @rmanaem in https://github.com/neurobagel/api/pull/183
- [ENH] Add Neurobagel vocab graph file by @alyssadai in https://github.com/neurobagel/api/pull/184
- [ENH] Update aggregate response body by @alyssadai in https://github.com/neurobagel/api/pull/193
- [ENH] Add endpoint returning queryable attributes + refine existing endpoint for attribute instances by @alyssadai in https://github.com/neurobagel/api/pull/194
- [ENH] Update
add_data_to_graph.shto also upload TTL files by @alyssadai in https://github.com/neurobagel/api/pull/196 - [ENH] Add endpoint that returns term ID-label mappings for vocab of a given attribute (
nb:Assessment) by @alyssadai in https://github.com/neurobagel/api/pull/201 - [ENH] Make data upload script backend responsive by @alyssadai in https://github.com/neurobagel/api/pull/205
- [ENH] Return human-readable labels (if available) as well as term IDs from
/attributes/{data_element_URI}by @alyssadai in https://github.com/neurobagel/api/pull/218 - [ENH] Changed the favicon to neurobagel logo by @rmanaem in https://github.com/neurobagel/api/pull/222
- [ENH] Return dataset sizes in query response by @alyssadai in https://github.com/neurobagel/api/pull/223
- [ENH] Add support for endpoint that will return
nb:Diagnosisoptions from SNOMED by @alyssadai in https://github.com/neurobagel/api/pull/228
Data model-related updates :gear:
- [MNT] Add NCIT namespace and update healthy control term by @alyssadai in https://github.com/neurobagel/api/pull/181
- [FIX] Make session optional in SPARQL query template by @alyssadai in https://github.com/neurobagel/api/pull/229
Documentation updates ๐
- [REF] Remove environment variable table from README by @alyssadai in https://github.com/neurobagel/api/pull/168
- [DOC] Generalized environment variables' table by @rmanaem in https://github.com/neurobagel/api/pull/198
- [DOC] Add link to official docs by @surchs in https://github.com/neurobagel/api/pull/219
Bug fixes ๐ ๏ธ
- [FIX] Fix typo in .template-env by @alyssadai in https://github.com/neurobagel/api/pull/149
- [FIX] Remove yaml list key for APIQUERYURL by @surchs in https://github.com/neurobagel/api/pull/164
- [FIX] Properly expose
NB_GRAPH_PORT_HOSTto API container by @alyssadai in https://github.com/neurobagel/api/pull/167 - [FIX] Removed the nested variable for
API_QUERY_URLenv var by @rmanaem in https://github.com/neurobagel/api/pull/177 - [FIX] Properly expose
NB_GRAPH_PORTto API container by @rmanaem in https://github.com/neurobagel/api/pull/191 - [FIX] Remove --no-progress-meter by @surchs in https://github.com/neurobagel/api/pull/227
- [FIX] Copy
vocab/directory into container filesystem in Dockerfile by @alyssadai in https://github.com/neurobagel/api/pull/231 - [FIX] Filtered out
nullimaging modalities by @rmanaem in https://github.com/neurobagel/api/pull/233 - [FIX] Remove query tool config by @surchs in https://github.com/neurobagel/api/pull/238
Other changes ๐งน
- [MNT] Added
docker-pre-commitpre-commit hook by @rmanaem in https://github.com/neurobagel/api/pull/178 - [REF] Refactor
httpx.postcall to Stardog and context creation by @alyssadai in https://github.com/neurobagel/api/pull/195 - [MNT] Removed
session_file_pathfrom aggregate results by @rmanaem in https://github.com/neurobagel/api/pull/214 - [REF] Organize related tests into modules and refactor setting of toy credentials by @alyssadai in https://github.com/neurobagel/api/pull/220
- [REF] Refactor dataset size request into separate function by @alyssadai in https://github.com/neurobagel/api/pull/235
- [CI] Renamed
ciworkflow tobuild_dockerand image tag fromlatesttonightlyby @rmanaem in https://github.com/neurobagel/api/pull/242 - [CI] Add workflow for building image on release by @alyssadai in https://github.com/neurobagel/api/pull/243
New Contributors
- @surchs made their first contribution in https://github.com/neurobagel/api/pull/144
Full Changelog: https://github.com/neurobagel/api/compare/v0.1.0...v0.1.1
- Python
Published by alyssadai about 2 years ago
api - v0.1.0
Initial release of the Neurobagel API, which interfaces with Stardog graph stores containing Neurobagel-harmonized data via SPARQL queries.
Overview
This release brings major additions to API functionality as well as automated testing setup including:
* A query endpoint for GET operations that formulate a SPARQL query to the graph based on query parameters
* Processing, validation, and tests of basic query parameters for:
* Age
* Sex
* Diagnosis
* Healthy control status
* Assessment tool
* Number of sessions
* Image modality
* A pydantic data model for responses to queries from the linked graph
* Modes for returning dataset-aggregated vs subject-level query results
* Environment variable configurability in terms of the graph the API communicates with and the query result mode
* Dockerfile + docker-compose spec and usage instructions
What's new
- Setting up bagelapi + adding GET route by @alyssadai in https://github.com/neurobagel/api/pull/17
- Set up test workflow by @rmanaem in https://github.com/neurobagel/api/pull/24
- Implement query parameters for age by @alyssadai in https://github.com/neurobagel/api/pull/28
- Implemented image modality query parameter by @rmanaem in https://github.com/neurobagel/api/pull/39
- Implement query parameters for diagnosis and is_control by @alyssadai in https://github.com/neurobagel/api/pull/41
- Implemented minimum number of imaging sessions query parameter by @rmanaem in https://github.com/neurobagel/api/pull/46
- Implement query parameter for assessment by @alyssadai in https://github.com/neurobagel/api/pull/57
- Updated the API to return subject file paths and modalities and updated test workflow file by @rmanaem in https://github.com/neurobagel/api/pull/61
- Change variable storing graph DB IP address to an environment variable by @alyssadai in https://github.com/neurobagel/api/pull/71
- Implement error catching for
httpx.ConnectTimeoutwhen not connected to McGill network by @alyssadai in https://github.com/neurobagel/api/pull/77 - Add Dockerfile and instructions for deploying API using official Docker image by @alyssadai in https://github.com/neurobagel/api/pull/79
- Add docker-compose specification and instructions by @alyssadai in https://github.com/neurobagel/api/pull/90
- Make graph database name configurable as an environment variable by @alyssadai in https://github.com/neurobagel/api/pull/93
- Return (or not) subject-level attributes in query results based on env var by @alyssadai in https://github.com/neurobagel/api/pull/99
- [ENH] Updated API to return new subject level results by @rmanaem in https://github.com/neurobagel/api/pull/125
- [FIX] Return list instead of only first term for subject-level assessment by @alyssadai in https://github.com/neurobagel/api/pull/133
New Contributors
- @alyssadai made their first contribution in https://github.com/neurobagel/api/pull/17
- @rmanaem made their first contribution in https://github.com/neurobagel/api/pull/24
- @yarikoptic made their first contribution in https://github.com/neurobagel/api/pull/95
- @dependabot made their first contribution in https://github.com/neurobagel/api/pull/105
- @Remi-Gau made their first contribution in https://github.com/neurobagel/api/pull/103
Full Changelog: https://github.com/neurobagel/api/commits/v0.1.0
- Python
Published by alyssadai over 2 years ago