You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have been working on upgrading the version of Biojava used in a code base that was previously using version 1.7.
Most of the biojava code was used for working with genbank files, I have gone about altering this code to be compatible with version 5 of biojava.
During this work I have come across an issue with the locus line parsing in GenbankSequenceParser class.
This became apparent because tests previously passing using 1.7 are now failing using 5.1 due to "Bad locus line" exceptions when trying to parse the unchanged test genbank files.
These test failures are being caused by a few changes in the way the locus line is parsed:
Units (bp/aa) - is required to be lower case
Topology (linear/circular) - is required to be lower case
Strand (ds-/ss-/ms-) - is required to be lower case
There is also a requirement of at least one white space character after the units even though all the following fields are captured optionally.
Before I submit a pull request with a change to the Pattern that captures information in the locus line to correct these issues I wanted to check if there was any reason for the case sensitivity?
Hello @jamesmorris, thank you for submitting this issue.
Note that Biojava 1.x is still maintained at https://github.com/biojava/biojava-legacy, and if there are new features/bug fixes you require there, we can cut new releases. So if it ain't broke don't fix it. ;)
If you have other reasons for migrating to Biojava 5.x, then yes, unfortunately there might be differences in the parser implementations, as they were written by different people, and no integration tests were made to compare 5.x against 1.x. I know I've seen other differences with regards to FASTA description lines.
Please submit a pull request here with your proposed changes. We can see if the specification has any guidance, and perhaps add a flag for leniency with regards to case-sensitivity, if the spec says one thing and real data the other.
Activity
heuermh commentedon Apr 11, 2019
Hello @jamesmorris, thank you for submitting this issue.
Note that Biojava 1.x is still maintained at https://github.com/biojava/biojava-legacy, and if there are new features/bug fixes you require there, we can cut new releases. So if it ain't broke don't fix it. ;)
If you have other reasons for migrating to Biojava 5.x, then yes, unfortunately there might be differences in the parser implementations, as they were written by different people, and no integration tests were made to compare 5.x against 1.x. I know I've seen other differences with regards to FASTA description lines.
Please submit a pull request here with your proposed changes. We can see if the specification has any guidance, and perhaps add a flag for leniency with regards to case-sensitivity, if the spec says one thing and real data the other.
heuermh commentedon Apr 24, 2019
Thank you, @jamesmorris