diff --git a/.pydevproject b/.pydevproject index c3434da..ad74947 100644 --- a/.pydevproject +++ b/.pydevproject @@ -3,6 +3,6 @@ /${PROJECT_DIR_NAME} -python 3.0 +python interpreter Default diff --git a/pyreference/reference.py b/pyreference/reference.py index 9b828a3..fc538e3 100644 --- a/pyreference/reference.py +++ b/pyreference/reference.py @@ -1,7 +1,8 @@ from __future__ import print_function, absolute_import import HTSeq -from deprecated import deprecated +from functools import reduce +from deprecation import deprecated import gzip import json from lazy import lazy @@ -88,7 +89,7 @@ def __init__(self, build=None, config=None, **kwargs): params = load_params_from_config(build=build, config=config) except OSError as e: config_exception = e - params = {} + params = {"build" : build} # Set / Overwrite with non-null kwargs params.update({k : v for (k,v) in kwargs.items() if v is not None}) @@ -191,11 +192,11 @@ def get_gene_by_name(self, gene_name): return self.get_gene_by_id(gene_id) - #@deprecated(reason="Use get_gene_by_id") + #@deprecated(details="Use get_gene_by_id") def get_gene(self, gene_id): return self.get_gene_by_id(gene_id) - #@deprecated(reason="Use get_transcript_by_id") + #@deprecated(details="Use get_transcript_by_id") def get_transcript(self, transcript_id): return self.get_transcript_by_id(transcript_id) @@ -349,7 +350,7 @@ def get_best_region(self, iv): break return region - @deprecated(reason="Use get_best_region()") + @deprecated(details="Use get_best_region()") def get_region(self, iv): return self.get_best_region(iv) diff --git a/pyreference/tests/reference/hg19_chrY_300kb_genes.gtf.json.gz b/pyreference/tests/reference/hg19_chrY_300kb_genes.gtf.json.gz index 51a8487..08ae36c 100644 Binary files a/pyreference/tests/reference/hg19_chrY_300kb_genes.gtf.json.gz and b/pyreference/tests/reference/hg19_chrY_300kb_genes.gtf.json.gz differ diff --git a/pyreference/tests/test_reference.py b/pyreference/tests/test_reference.py index 9cee748..75561e8 100644 --- a/pyreference/tests/test_reference.py +++ b/pyreference/tests/test_reference.py @@ -65,7 +65,7 @@ def test_genes(self): "3p_utr" : "CGCCGCCCGC" }, } - for test in test_cases.itervalues(): + for test in six.itervalues(test_cases): transcript = self.reference.transcripts[test["transcript_id"]] utr = str(transcript.get_3putr_sequence()).upper() diff --git a/pyreference/transcript.py b/pyreference/transcript.py index 612f2e9..49e5605 100644 --- a/pyreference/transcript.py +++ b/pyreference/transcript.py @@ -1,7 +1,7 @@ from __future__ import print_function, absolute_import import HTSeq -#from deprecated import deprecated +#from from deprecation import deprecated from lazy import lazy from pyreference.genomic_region import GenomicRegion @@ -37,7 +37,7 @@ def get_features_length(self, feature_type): length += feature[END] - feature[START] return length - #@deprecated(reason="Use get_features_in_stranded_order") + #@deprecated(details="Use get_features_in_stranded_order") def get_features(self, feature_type): ''' returns list of HTSeq.GenomicFeature ''' genomic_features = [] @@ -76,7 +76,7 @@ def get_features_in_stranded_order(self, feature_type): def length(self): return self.get_features_length("exon") - #@deprecated(reason="Use Transcript.length") + #@deprecated(details="Use Transcript.length") def get_transcript_length(self): return self.length diff --git a/pyreference/utils/file_utils.py b/pyreference/utils/file_utils.py index 99bbedd..6418437 100644 --- a/pyreference/utils/file_utils.py +++ b/pyreference/utils/file_utils.py @@ -3,14 +3,15 @@ @author: dlawrence ''' -from md5 import md5 +from hashlib import md5 import os +import six try: - from pathlib import Path + from pathlib import Path #@UnresolvedImport except (ImportError,AttributeError): - from pathlib2 import Path + from pathlib2 import Path #@UnresolvedImport def name_from_file_name(file_name): return Path(file_name).name @@ -26,12 +27,12 @@ def mk_path_for_file(f): mk_path(os.path.dirname(f)) def file_or_file_name(f, mode='r'): - if isinstance(f, basestring): # Works on unicode + if isinstance(f, six.string_types): if 'w' in mode: # Create path if writing mk_path_for_file(f) return open(f, mode) - elif isinstance(f, file): + elif hasattr(f, 'read'): return f # Already a File object else: raise ValueError("'%s' (%s) not a file or string" % (f, type(f))) diff --git a/pyreference/utils/genomics_utils.py b/pyreference/utils/genomics_utils.py index a193d79..2d133dd 100644 --- a/pyreference/utils/genomics_utils.py +++ b/pyreference/utils/genomics_utils.py @@ -6,6 +6,11 @@ from Bio import SeqIO import HTSeq +try: + from sys import intern +except (ImportError,AttributeError): + pass + from pyreference.settings import CHROM, START, END, STRAND diff --git a/requirements.txt b/requirements.txt index 87ef713..6791cf8 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,6 @@ biopython configargparse -deprecated +deprecation HTSeq lazy pyfasta diff --git a/setup.py b/setup.py index 3fb350c..1a09633 100644 --- a/setup.py +++ b/setup.py @@ -4,7 +4,7 @@ setup(name = 'pyreference', packages = find_packages(), - version = '0.3', + version = '0.4', description = 'Library for working with reference genomes', author = 'David Lawrence', author_email = 'davmlaw@gmail.com', @@ -14,7 +14,7 @@ install_requires=[ 'biopython', 'configargparse', - 'deprecated', + 'deprecation', 'HTSeq', 'lazy', 'pyfasta',