0.4.0 (2015-09-09)

Changes since 0.3.7 (2015-06-23). See issues at milestone 0.4.0.

Special Attention

  • #227: x_to_r and r_to_x methods were renamed to x_to_n and n_to_x as part of support for non-coding transcripts.
  • #231: The UTA data provider will use a recently updated database by default (uta_20150827). Clients with custom configurations should use postgresql://anonymous:anonymous@uta.biocommons.org/uta/uta_20150827. (Note the change of hostname, username, and password as well; see Deprecations.)
  • #238: Most methods now raise HGVSDataNotAvailableError when expected data is not available. Previously, None was returned for some methods.
  • #244: Removed cache_transcripts argument from VariantMapper. This argument was deprecated in 0.3.0 and is now obsolete. Dataproviders are now expected to cache data.
  • #246: Remove hgvsX_to_hgvsY methods. These methods were deprecated in 0.3.0 and are now obsolete.
  • #247: Dup and Repeat “seq” instance variable renamed to “ref” for consistency.
  • EasyVariantMapper, Normalizer, and Validator now fetch sequence data at runtime, which may raise performance and privacy concerns. Users may wish to read Privacy Issues in the documentation.


  • UTA: UTA now uses anonymous:anonymous as the username:password. uta_public:uta_public will be obsolete shortly.

Bug Fixes

New Features

  • #44: Added variant normalization and use during mapping. Thanks to Meng Wang and Kevin Jacobs for contributions. (pull request #17)
  • #168: EasyVariantMapper supports replacing the reference sequence during mapping and enabled by default.
  • #227: Implement initial support for non-coding transcripts.
  • #230: Allow full IUPAC for NA and AA, with tests. Previously, the grammar admitted only ACGTU.
  • #233: Added get_similar_transcripts() to data UTA provider to expose UTA’s tx_similarity view.
  • #234, #241: Preferentially use transcript-protein accession associations from RefSeq when mapping c. to p. variants. Previously, when multiple protein accessions were associated with a single distinct sequence, the p. accession was arbitrary.
  • #236, #240: Added seqfetcher.SeqFetcher to fetch sequences from NCBI & Ensembl
  • #250: Implemented configuration module; hgvs.global_config is initialized once and available globally
  • #251: Parens now optional around p. edits; default is enabled per HGVS spec (hgvs.global_config.mapping.inferred_p_is_uncertain)
  • #255: variants normalized by EasyVariantMapper by default [BROKEN: 1b85d4deabc3]
  • #261: Replace reference default from config (hgvs.global_config.mapping.replace_reference)
  • UTA is now available as a docker image for local installation. See Local Installation of UTA.

Other Changes

  • #213: Clarify warning message when validating intronic variants.
  • #254: Support inversion, conversion, and nadupn variants
  • Added misc/experimental/tx-seq-discrepancies to identify genomic locations of reference-transcript discrepancies
  • Added variant context method to evm (temporary location, but useful for debugging)
  • HGVSInternalError now subclasses HGVSError (not Exception) [BROKEN: ff6cd4dc51dc]
  • Lots of documentation updates.
  • Raise HGVSParserError (instead of ometa.runtime.ParseError) when parsing fails [BROKEN: efa93fe29d15]
  • The UTA data provider now checks for the requested schema on connection and provides more informative errors on failure.
  • hdp.data_version returns schema name for UTA since that that is the conventional use.
  • Use autocommit to prevent transaction overhead and locks [BROKEN: 65d69e41716e]

Internal and Developer Changes

  • #263: Trying out a new tag-based changelog mechanism for 0.4.0 and 0.4 series.
  • All code will be mercilously reformmated with yapf occasionally using .style.yapf
  • Build and upload wheel packages (in addition to existing eggs and tarballs)
  • Docs significantly overhauled and moved to readthedocs.org with automatic webhook-based building
  • Enable users to set application_name when connecting [BROKEN: 835ac7771909]
  • _UTA_URL_KEY (dev use only) will switch URLs to any in hgvs/_data/defaults.ini
  • on import of hgvs, emit logging info line w/version [BROKEN: aa97f2c1cdc8]
  • sped up most tests by using setUpClass() rather than setUp() [BROKEN: a6d227f6a3e0]