CHANGES IN VERSION 1.18
-----------------------

NEW FEATURES

    o Add extractUpstreamSeqs().

    o makeTranscriptDbFromUCSC() now supports the "flyBaseGene" table
      (FlyBase Genes track).

    o makeTranscriptDbFromBiomart() now knows how to fetch the sequence
      lengths from the Ensembl Plants db.

    o makeTranscriptDbFromGFF() is now more tolerant of bad strand
      information.

SIGNIFICANT USER-VISIBLE CHANGES

    o Replace toy TxDb UCSC_knownGene_sample.sqlite (based on hg18) with
      hg19_knownGene_sample.sqlite (based on hg19) and use hg19 instead of
      hg18 in all examples (and unit tests).

    o Rename TranscriptDb class -> TxDb.

    o Now when GTF files are processed into TxDbs with exon ranking being
      inferreed, if the exons are on separate chromosomes, we toss out that
      transcript (since we cannot possibly guess the exon ranking correctly).

DEPRECATED AND DEFUNCT

    o extractTranscripts() and extractTranscriptsFromGenome() are now defunct.

    o Deprecate sortExonsByRank().

BUG FIXES

    o Bug fixes and improvements to makeTranscriptDbFromBiomart():
      (a) Fix long standing bug where the code in charge of inferring the
          CDSs from the UTRs would return CDSs spanning all the exons of a
          non-coding transcript.
      (b) Fix an issue that was preventing the function from extracting the
          CDS information added recently to the datasets in the Ensembl Fungi,
          Ensembl Metazoa, Ensembl Plants, and Ensembl Protists databases. 
      (c) Make the code in charge of extracting the CDSs more robust by taking
          advantage of new attributes (genomic_coding_start and
          genomic_coding_end) added by Ensembl in release 74 (Dec 2013),
          and by adding more sanity checks.


CHANGES IN VERSION 1.14
-----------------------

NEW FEATURES

    o keys method now has new arguments to allow for more
      sophisticated filtering.
    
    o adds genes() extractor 

    o makeTranscriptDbFromGFF() now handles even more different kinds
      of GFF files.


BUG FIXES

    o better argument checking for makeTranscriptDbFromGFF()

    o cols arguments and methods will now be columns arguments and methods



CHANGES IN VERSION 1.12
-----------------------

NEW FEATURES

    o Support for new UCSC species

    o Better support for GTF and GFF processing into TranscriptDb objects

    o Methods for making TranscriptDb objects from general sources
      have been made more useful

BUG FIXES

    o Updates to allow continued access to ever changing services like UCSC

    o Corrections for seqnameStyle methods

    o Over 10X performance gains for processing of GTF and GFF files


CHANGES IN VERSION 1.10
-----------------------

NEW FEATURES

    o Add makeTranscriptDbFromGFF().  Users can now use GFF files to
      make TranscriptDb resources.

    o Add *restricted* "seqinfo<-" method for TranscriptDb objects. It only
      supports replacement of the sequence names (for now), i.e., except for
      their sequence names, Seqinfo objects 'value' (supplied) and 'seqinfo(x)'
      (current) must be identical.

    o Add promoters() and getPromoterSeq().

    o Add 'reassign.ids' arg (FALSE by default) to makeTranscriptDb().

SIGNIFICANT USER-VISIBLE CHANGES

    o Updated vignette.

    o Improve how makeTranscriptDbFromUCSC() and makeTranscriptDbFromBiomart()
      assign internal ids (see commit 65144 for the details).

    o 2.5x speedup of fiveUTRsByTranscript() and threeUTRsByTranscript().

DEPRECATED AND DEFUNCT

    o Are now defunct: transcripts_deprecated(), exons_deprecated(), and
      introns_deprecated().

    o Deprecate loadFeatures() and saveFeatures() in favor of loadDb() and
      saveDb(), respectively.

BUG FIXES

    o Better handling of BioMart data anomalies.


CHANGES IN VERSION 1.8
-----------------------

NEW FEATURES

    o Added asBED and asGFF methods to convert a TranscriptDb to a
      GRanges that describes transcript structures according to either
      the BED or GFF format. This enables passing a TranscriptDb
      object to rtracklayer::export directly, when targeting GFF/BED.


CHANGES IN VERSION 1.6
-----------------------

NEW FEATURES

    o TranscriptDbs are now available as standard packages.  Functions
    that were made available before the last release allow users to
    create these packages.

    o TranscriptDb objects now can be used with select

    o select method for TranscriptDb objects to extract data.frames of
    available annotations.  Users can specify keys, along with the
    keytype, and the columns of data that they want extracted from the
    annotation package.

    o keys now will operate on TranscriptDB objects to expose ID types
    as potential keys

    o keytypes will show which kinds of IDs can be used as a key by select

    o cols will display the kinds of data that can be extracted by select

    o isActiveSeq has been added to allow entire chromosomes to be
    toggled active/inactive by the user.  By default, everything is
    exposed, but if you wish you can now easily hide everything that
    you don't want to see.  Subsequence to this, all your accessors
    will behave as if only the "active" things are present in the
    database.

SIGNIFICANT USER-VISIBLE CHANGES

    o saveDb and loadDb are here and will be replacing saveFeatures
    and loadFeatures.  The reason for the name change is that they
    dispatch on (and should work with a wider range of object types
    than just trancriptDb objects (and their associated databases).

BUG FIXES

    o ORDER BY clause has been added to SQL statements to enforce more
    consistent ordering of returned rows.

    o bug fixes to enable DB construction to still work even after
    changes in schemas etc at UCSC, and ensembl sources.

    o bug fixes to makeFeatureDbFromUCSC allow it to work more
    reliably (it was being a little too optimistic about what UCSC
    would actually supply data for)

