# Inter-Repository Dependencies

# cbioportal-core Repository

cbioportal-core is dependent on cbioportal. This can be seen in its pom.xml. By removing the dependency and attempting to build cbioportal-core, errors are reported. This document captures a summary of the reported errors. This analysis was done at the time of release v6.0.0.

cbioportal-core now primarily provides import functionality, which is mainly located in the packages:

# Dependencies in cbioportal-core import functionality

Code in cbioportal which is referenced directly by code in cbioportal-core consists of three enum class definitions.

  • cbioportal class ResourceType is imported by cbioportal-core class ResourceDefinition. This provides enum constants {STUDY, SAMPLE, PATIENT}.
  • cbioportal class EntityType is imported by cbioportal-core class ImportTabDelimData. This provides enum constants {GENE, GENESET, PHOSPHOPROTEIN, GENERIC_ASSAY}.
  • cbioportal class CNA is imported by cbioportal-core class CnaEvent. This provides enum constants {AMP, GAIN, DIPLOID, HETLOSS, HOMDEL}.

The cbioportal-core import functionality code also relies on several packaged libraries in cbioportal.

cbioportal packaged library org.apache.commons.commons-collections4 (version 4.4) is used by these cbioportal-core classes:

cbioportal packaged library org.slf4j.slf4j-api (latest version) is used by these cbioportal-core classes:

cbioportal packaged library org.springframework.security.spring-security.core (latest compatible version) and other related such as org.springframework.security.spring-security.web are used in these cbioportal-core classes:

# Other dependencies in cbioportal-core

There are other (non-import) cbioportal-core uses of libraries packaged in cbioportal.

cbioportal packaged libraries jakarta.servlet jakarta.servlet.http (ServletConfig, HttpServlet, ServletException, HttpServletRequest, HttpServletResponse} are used by these cbioportal-core classes:

cbioportal packaged library org.json.simple / com.googlecode.json-simple.json-simple (version 1.1.1) is used by these cbioportal-core classes:

cbioportal packaged library org.apache.commonsorg.apache.commons.commons-math3 (version 3.6.1) is used by this cbioportal-core class:

cbioportal packaged library org.slf4j.slf4j-api (latest version) is used by this cbioportal-core class:

cbioportal packaged library org.springframework.security.spring-security.core (latest compatible version) and other related such as org.springframework.security.spring-security.web are used in these cbioportal-core classes:

# Consequences

When any of these dependencies are updated in cbioportal (or in the case of libraries, updated in a non-backwards-compatible way), the cbioportal-core repository should be built and tested using the updated dependencies and proper behavior of the import functionality should be tested. cbioportal-core should also be brought up to date by packaging the current version of cbioportal into cbioportal-core (in pom.xml).