Hi Seqr-people,
We're working on a major upgrade for Panelapp Australia to migrate the underlying gene annotation from Gencode 27 (Ensembl 90) to Gencode 49 (Ensembl 115). This entails quite a few genes changing symbol (name), and Ensembl ID, and in some cases both.
This will lead to some problems - some fairly direct, and some more subtle.
I'm still investigating, and will add more details as I discover them, but let me start with what we have determined so far.
Where the blob of JSON from the Panelapp API is parsed, the hard coded "90" here, will break:
|
gene['gene_data']['ensembl_genes'].get('GRch38', {}).get('90', {}).get('ensembl_id'): gene |
But there's a more subtle and pervasive problem, which is that there will be gene symbols and Ensembl IDs that will be inconsistent with GeneInfo. GeneInfo can be updated with the relevant gencode version, I'm still trying to elucidate what that "fixes" and what remains problematic.
One area of concern is in gene_utils.py
|
gene_ids.update({gene_ids[0] for gene_ids in gene_symbols_to_ids.values() if len(gene_ids)}) |
where gene symbols are resolved into gene IDs for query resolution. The code currently finds the most "recent" match only, which means existing projects/samples stored in the backend will not match the query without being reloaded.
We thought we should give a heads-up, since this will affect any Seqr instance using Panelapp Australia for gene lists. I understand that Genomics England are also working toward an update of their underlying genome annotation, but I can't speak to any detail about that.
We would be keen to work with you to make the transition as smooth as possible for everyone!
Tom, for the Bioinformatics Methods Group at MCRI.
Hi Seqr-people,
We're working on a major upgrade for Panelapp Australia to migrate the underlying gene annotation from Gencode 27 (Ensembl 90) to Gencode 49 (Ensembl 115). This entails quite a few genes changing symbol (name), and Ensembl ID, and in some cases both.
This will lead to some problems - some fairly direct, and some more subtle.
I'm still investigating, and will add more details as I discover them, but let me start with what we have determined so far.
Where the blob of JSON from the Panelapp API is parsed, the hard coded "90" here, will break:
seqr/panelapp/panelapp_utils.py
Line 23 in 7e611fc
But there's a more subtle and pervasive problem, which is that there will be gene symbols and Ensembl IDs that will be inconsistent with GeneInfo. GeneInfo can be updated with the relevant gencode version, I'm still trying to elucidate what that "fixes" and what remains problematic.
One area of concern is in gene_utils.py
seqr/seqr/utils/gene_utils.py
Line 198 in 7e611fc
where gene symbols are resolved into gene IDs for query resolution. The code currently finds the most "recent" match only, which means existing projects/samples stored in the backend will not match the query without being reloaded.
We thought we should give a heads-up, since this will affect any Seqr instance using Panelapp Australia for gene lists. I understand that Genomics England are also working toward an update of their underlying genome annotation, but I can't speak to any detail about that.
We would be keen to work with you to make the transition as smooth as possible for everyone!
Tom, for the Bioinformatics Methods Group at MCRI.