[Biopython-dev] Restriction analysis package.

Brad Chapman chapmanb at uga.edu
Wed Jun 2 11:28:22 EDT 2004

Hi Fred;

[Proposal for directory structure for restriction package]
> >Bio/Restriction/__init__.py --> The current Restriction.py
> >Bio/Restriction/Restriction_Dictionary.py --> the dictionary
> >Bio/Restriction/_Update/ --> The Update, RanaConfig and 
> >RestrictionCompiler code to do the updates and regenerate the
> >dictionary.
> yes and no. I agree with the organisation of the code and
> I would effectively update the dictionary in Biopython but I think it is
> important for the end user to be able to update the dictionary on their 
> machine
> without downloading the full distribution, so this is also a public 
> functionality.

Okay, not a problem. I think having the Update directory being
non-public is okay -- mostly as long as it is a separate directory
so that regular usage versus updating is clear.

[updating the restriction dictionary]
> The first point is who we want to do the update :

I think you are making things more complicated then I meant. All I
was proposing was two things:

1. We (meaning the Biopython community) keep the
Restriction_Dictionary.py in Biopython up to date. Thus people
either following CVS or downloading new releases will get the
updates when they update Biopython. To me this covers 99 percent of
use cases, since most of the updates are to brand new enzymes not in
wide use.

2. For people who need an update faster then it gets into a release
(or don't want to reinstall Biopython for some reason, or whatever),
they can run the ranacompiler.py script. I don't think we need to be
fancy about where the Database and Updates directories go -- why
can't they just be created in the directory where the user runs the
Script from? Then the Resriction_Dictionary.py is created in that
directory and the user can take charge of moving it to
site-packages/Bio/Restiction on their own. This relieves all of the
problems of worrying about standard directories and permissions to
the users, instead of us. Less work. Yay.

> I have had some time when I was away to test a bit further the 
> Restriction package.
> I have a class to add which allow analysis (i.e where you can specify 
> things as only blunt, or enzymes which cut twice...).

Great. If the above sounds good or at least we are on the same page
(I think so...) then I'd be happy to work on getting this into
Biopython. If you create another release with the functionality I'd
be happy to work on getting it in.

Thanks again for your work on this!

More information about the Biopython-dev mailing list