# HG changeset patch # User brinkmanlab # Date 1592261307 14400 # Node ID 061c3402a9772e642155079cfb15a96f0f2fb608 # Parent a3a09dd8d09aba3da66bd0cfe28a6b8293cec5d0 "planemo upload for repository https://github.com/brinkmanlab/galaxy-tools/tree/master/make_unique_id commit b661895b5e2dff7235eb32476602c3b93411a42e" diff -r a3a09dd8d09a -r 061c3402a977 make_unique_id.py --- a/make_unique_id.py Fri Jan 24 17:38:28 2020 -0500 +++ b/make_unique_id.py Mon Jun 15 18:48:27 2020 -0400 @@ -29,20 +29,22 @@ ids = defaultdict(int) def makeUnique(seq): - count = ids[seq.id] - ids[seq.id] += 1 + newid = seq.id[:28] # Genbank has a max length for the id and sequence length number, truncate the sequence id if too long + count = ids[newid] + ids[newid] += 1 if count: suffix = "_" + str(count) - newid = seq.id seqlenlen = len(str(len(seq))) if len(newid) + len(suffix) + 1 + seqlenlen > 28: - # Genbank has a max length for the id and sequence length number, truncate the sequence id if too long newid = newid[:27 - seqlenlen - len(suffix)] - print(f"{seq.id}\t{newid}{suffix}") - seq.id = newid + suffix + newid += suffix seq.name += suffix + if seq.id != newid: + print(f"{seq.id}\t{newid}") + + seq.id = newid return seq