2
Vote

MBF framework 1.0 (MBF.dll) and MBF framework 2.0 (Bio.dll) are not compatible!

description

I have developed some code using MBF framework 1.0 (which uses MBF.dll) for sequence analysis. I just downloaded beta version of the 2.0 framework (which uses Bio.dll). To my amazement, my project requires so many changes, that it almost renders some functionality to be re-written. MBF 1.0 had so many flexible methods for the Parser, e.g. for Fasta parser, to read sequences and parse them, such as by filename, MBFTextReader, StreamReader, reader and so on. MBF 2.0 only has one parse method, namely Parse(), whic works only on filename. I notiiced that MBFReader and so on are deleted fron the MBF 2.0. We extensively use stream readers and MBFText reader, and now I cannot take advantage of a newer and improved release.
 
Am I missing something? Why is such useful functionality deleted from the new version. I would expect that MBF would make new releases at least backword compatible, and requires very minor changes to the code, if at all. Please let me know if I am missing something.
Chris

comments

MadhusudhanGS wrote May 2, 2011 at 4:08 PM

Hi,

Thank you for your interest in Microsoft Biology Foundation. We are working with our product team to provide you with details on your query on the changes in MBFv2.0 Beta.

Appreciate your patience.

Regards,
Support Team

sjmercer wrote May 2, 2011 at 4:35 PM

Hi Chris,

One of the issues we encountered with MBF 1.0 was that the object model did not permit us to scale to large datasets and maintain a high level of performance. As a consequence, we reluctantly decided to sacrifice backward compatibility - we did not make this decision lightly, but reasoned that if we needed to make a radical change, we should do it as soon as possible to affect the minimum number of users and applications. Obviously this doesn't help you much, sorry.

MBF 1.0 will continue to be available for download and so you don't need to change your code for existing applications, you can even modify 1.0 with new functionality if you wish. We will also include your concerns in our next triage, and see if there are changes we have time to make before the v2 release that might help you and others in your position (although I can't make any guarantees). Also, the documentation will reflect the changes when it is completed for the release of version 2.0, so at least it will be easier to modify your code.

In the meanwhile if there are specific coding issues you are encountering, please let us know and we will be happy to advise.

zyskowski wrote May 2, 2011 at 7:46 PM

Hi Chris -

First - thanks so much for reporting this issue. This is exactly the type of information we look for from folks and will go a long way towards helping the project be sucessful.

As Simon mentioned, we knew we were sacrificing some backwards compat when modifying the underlying object model to scale for capacity and performance, but at the time were not sure how impactful the areas of breaking change would be to people using the framework. We are interested in your scenario and it would be a huge help if you were willing to share your scenarios and sample code that shows your use of the V1 features that are broken. We can then use this info to help guide future investement to maintain compat.

I should also let you know that we have a Silverlight compatible version of the library in the works - will be released in the final V2 version but wasn't ready for prime time at Beta. As part of this, we have maintained support for StreamReader as input. Perhaps this will be of use to you?

At the moment we don't have a plan for V2 compat of the MBFTextReader, primarily the issue is how to deal with IEnumerable. Your thoughts on this would be most welcome.

Thanks again for the report!