Upgrade to InterMine 0.93
See release notes for InterMine 0.93
The are some minor updates you may need to make in your checkout when upgrading from 0.92 to 0.93. If upgrading from an earlier version see the detailed notes for upgrading to 0.92 below.
First, follow this procedure to get version 0.93 then see the upgrade notes below:
- we recommend you back up your existing changes first in case of any problems. For example:
> tar -cvf my_intermine.tar svn/intermine_checkout
You could either svn switch your current checkout to the new branch (recommended) or make a new checkout with a different directory name and copy your changes across.
To perform an svn switch:
- Once you have made a backup of your current InterMine, in the root directory of your check out (e.g. svn/dev) do:
> svn switch svn://subversion.flymine.org/branches/intermine_0_93
- You should see a large number of update statements.
- If there are any conflicts, where you have changed the same parts of files that have been updated you will need to resolve them manually. Once you are done run:
> svn resolved filename
To perform a new checkout see the checkout instructions
Changes to make in 0.93
Once you have switched your Mine over to 0.93 you should make these changes as necessary:
- If you have written your own widgets in Java you will need to update the package of the InterMineBag class to:
import org.intermine.api.profile.InterMineBag;
- To enable orthologue links between Mines, add this line to MINE/webapp/resources/struts-config-model.xml
<action path="/initOrthologueLinkDisplayer" type="org.intermine.bio.web.OrthologueLinkController"/> - To enable orthologue links between Mines, add this line to MINE/webapp/resources/tiles-defs-model.xml
<definition name="orthologueLinkDisplayer.tile" path="/model/orthologueLinkDisplayer.jsp" controllerUrl="/initOrthologueLinkDisplayer.do"/> - Add this to web.properties. These used to be hardcoded in JSP, they are HTML META information that is added to the site. The description will show up in Google search results.
# web.properties meta.keywords = [comma separated keywords for your site] meta.description = [Description of you Mine, this gets displayed in Google search results]
Upgrade to InterMine 0.92
See release notes for InterMine 0.92
Notes on changes
- If upgrading from a branch before 0.9 please follow the instructions for upgrading to 0.9 first (see below). Note that there is a change to the way integration keys can be configured but this is backwards compatible with anything already set up.
- If upgrading from 0.91 to 0.92 there should be no changes required to existing Mines or sources.
- The integration priorities file, e.g. xxxmine/dbmodel/resources/genomic_priorities.properties now gets validated. When starting integration the validation checks that each source name that appears in the priorities file exists in project.xml so you may need to make some corrections the first time you start a build.
- This will affect any commented out lines, i.e. this will be flagged as an invalid source:
BioEntity.name = \ # interpro, \ uniprot, \
- This will affect any commented out lines, i.e. this will be flagged as an invalid source:
- If you have an existing Mine database built with 0.9 and release a webapp with 0.92 the GO enrichment will not work. In 0.92 the query we use to fetch data for the GO enrichment widget has changed to use the parents collection introduced in 0.91.
Note - If you're not sure which version you currently have in an svn checkout you can type svn info somewhere in your checkout and look at the URL value.
To get the new code, follow the procedure:
- we recommend you back up your existing changes first in case of any problems. For example:
> tar -cvf my_intermine.tar svn/intermine_checkout
You could either svn switch your current checkout to the new branch (recommended) or make a new checkout with a different directory name and copy your changes across.
To perform an svn switch:
- Once you have made a backup of your current InterMine, in the root directory of your check out (e.g. svn/dev) do:
> svn switch svn://subversion.flymine.org/branches/intermine_0_92
- You should see a large number of update statements.
- If there are any conflicts, where you have changed the same parts of files that have been updated you will need to resolved them manually. Once you are done run:
> svn resolved filename
To perform a new checkout see the checkout instructions
Upgrade to InterMine 0.91
See release notes for InterMine 0.91
If upgrading from a branch before 0.9 please follow the instructions for upgrading to 0.9 first (see below). If upgrading from 0.9 to 0.91 there should be no changes required to existing Mines or sources. To get the new code, follow the procedure:
- we recommend you back up your existing changes first in case of any problems. For example:
> tar -cvf my_intermine.tar svn/intermine_checkout
You could either svn switch your current checkout to the new branch (recommended) or make a new checkout with a different directory name and copy your changes across.
To perform an svn switch:
- Once you have made a backup of your current InterMine, in the root directory of your check out (e.g. svn/dev) do:
> svn switch svn://subversion.flymine.org/branches/intermine_0_91
- You should see a large number of update statements.
- If there are any conflicts, where you have changed the same parts of files that have been updated you will need to resolved them manually. Once you are done run:
> svn resolved filename
To perform a new checkout see the checkout instructions
Upgrade to InterMine 0.9
We have made several changes to XML formats, database storage and configuration files all aimed at making InterMine easier to set up. We recommend rebuilding your InterMine databases from scratch with the new code.
Several changes need to made to your Mine and Sources:
project.xml
You can now create sources in sub-directories of bio/sources or in a location outside your InterMine checkout. Specify the locations to look for sources in new source.location properties in project.xml. You need to add at least:
<project type="bio">
...
<property name="source.location" location="../bio/sources"/>
...
The available sources have been re-organised such that e.g. FlyMine specific sources are in bio/sources/flymine/, the common sources should all be in the top level bio/sources but you may need to add more than one source.location property.
dbmodel
- Update the dbmodel/project.properties to change the order of extra.model.paths.start from:
extra.model.paths.start = bio/core/genomic_additions.xml bio/sources/so/so_additions.xml
To:extra.model.paths.start = bio/sources/so/so_additions.xml bio/core/genomic_additions.xml
- Update the following lines in dbmodel/resources/genomic_keyDefs.properties for some changes in the model. From:
Synonym.key_synonym = subject, value, type, source ... OntologyRelation.key=parentTerm, childTerm, type
To:Synonym.key_synonym = subject, value, type ... OntologyRelation.key=parentTerm, childTerm, relationship
- In dbmodel/resources/objectstoresummary.config.properties file, replace FlyMine.model.genomic with InterMine.model.bio, like so:
org.flymine.model.genomic.DataSet.fields = title org.flymine.model.genomic.DataSource.fields = name ...
org.intermine.model.bio.DataSet.fields = title org.intermine.model.bio.DataSource.fields = name ...
- Also in dbmodel/resources/objectstoresummary.config.properties file, remove GOAnnotation.autocomplete:
org.flymine.model.genomic.GOAnnotation.autocomplete = name
Replace with:org.intermine.model.bio.GOTerm.autocomplete = name
- You can only set the priority for a field once, you can't set the priority for a field in a class and then set it again in its parent class. Depending on which sources you load, you may have duplicate entries in your dbmodel/resources/genomic_priorities file. For example, BioEntity.primaryIdentifier and BioEntity.name can only be set once, eg. in Protein.name or BioEntity.name but not in both. Remove duplicate entries:
BioEntity.primaryIdentifier = \ flybase, \ uniprot, \ * BioEntity.name = \ uniprot, \ * Protein.name = \ uniprot, \ * Gene.primaryIdentifier = \ wormbase, \ uniprot, \ *
To:Protein.name = \ uniprot, \ * Gene.primaryIdentifier = \ wormbase, \ uniprot, \ *
Additions XML files
The package of the biological data model has changed from org.flymine.model.genomic to org.intermine.model.bio. However the full package no longer needs to be specified in model additions files. So, for example, you should change:
<classes>
...
<class name="org.flymine.model.genomic.Gene"
extends="org.flymine.model.genomic.BioEntity" is-interface="true">
<collection name="pathways"
referenced-type="org.flymine.model.genomic.Pathway" reverse-reference="genes"/>
</class>
...
</classes>
To:
<classes>
...
<class name="Gene" extends="BioEntity" is-interface="true">
<collection name="pathways" referenced-type="Pathway" reverse-reference="genes"/>
</class>
...
</classes>
Loading FASTA
The fasta source requires that you specify class names of feature types to create in the project.xml file. These need to be updated to reflect the new package name. For example, change:
<source name="flybase-dpse-gene-fasta" type="fasta"> ... <property name="fasta.className" value="org.flymine.model.genomic.Gene"/> ... </source>
To:
<source name="flybase-dpse-gene-fasta" type="fasta"> ... <property name="fasta.className" value="org.intermine.model.bio.Gene"/> ... </source>
webapp
The package of the biological data model has changed from org.flymine.model.genomic to org.intermine.model.bio, you will need to search and replace the package name in webconfig-model.xml.
userprofile
To transfer an existing userprofile database from an old release you will need to write it out as XML from the old branch of code you were using then read the XML in using the new InterMine release. This will update the format that query XML is stored in. See instructions here.
