Version control
The main repository address is: https://bitbucket.org/lorainelab/integrated-genome-browser.
The IGB project uses git.
History
From the late 1990s until around 2005, IGB and the Genoviz SDK were closed-source, owned by Neomorphic and then Affymetrix, which bought Neomorphic in Oct. 2000.
In 2004, Affymetrix released a tarball containing IGB and Genoviz SDK source code on the Affymetrix Web site. In Jan. 2005, Affymetrix developers imported the tarball contents into a new CVS repository at Sourceforge and began using that for further development, discarding the internal repository at Affymetrix. In 2008, we migrated the code to a subversion repository, also hosted at Sourceforge. In 2014, we migrated the source code for IGB and the Genoviz SDK to a new git repository at Bitbucket.
Links:
- The 13th commit: "License for IGB code, including genoviz (formerly NGSDK) and genometry" Jan. 31, 2005 - https://sourceforge.net/p/genoviz/code/13/
- Press release - Affymetrix Completes Acquisition of Neomorphic - https://ir.thermofisher.com/investors/news-and-events/news-releases/news-release-details/2000/Affymetrix-Completes-Acquisition-of-Neomorphic/default.aspx
IGB versioning - major and minor releases
IGB uses semantic versioning, described in Semantic Versioning 2.0.
IGB releases have version names like 8.3.0 or 8.4.2, following the naming convention [M].[N].[P], where M, N, and P are integers.
In IGB, N is the major release number, M is the minor release number, and P is the micro or "bug fix" release number.
All new minor and bug fix releases of IGB support all API methods supported in earlier versions with the same major release number. New releases that increment the minor or micro numbers may contain changes to the API, but these will maintain backwards-compatibility with all prior versions from the same major release. This means that new minor or bug fix releases can run any IGB App built against earlier versions from the same major release.
New major releases of IGB will contain so-called "contract breaking" changes to the IGB API. This means that a new release that increments the major number (e.g., releasing IGB N.0.0) may include changes to the API methods that affect IGB Apps built using the previous major release.
To ensure that users can run your App when a new major version is released, you should re-build your App using the latest IGB platform and release it in the usual way. However, if you are unable to release an update to your App, users will always be able to run it using older versions of IGB, which they can get from our files download page at Sourceforge.
Before making a major release, the IGB core development team will attempt to contact everyone we know of who is developing IGB Apps to alert them to upcoming changes in the API.
QuickLoad testing
The following git repository contains broken QuickLoad sites that are helpful for testing within IGB.
https://bitbucket.org/lorainelab/brokenquickloads
Genoviz SDK
IGB depends on the Genoviz Software Development Kit (Genoviz SDK) which is version-controlled in a separate repository at https://bitbucket.org/lorainelab/genoviz-sdk. When you build IGB, the compilation tool we use (mvn) will obtain the latest copy of the genoviz compiled code (a "jar" file) and install it locally.