Hello,
A couple of more comments.
These changes are occurring for several reasons. The new top objects will
be useful for the database implementations, they get rid of some namespace
pollution in Project (e.g. there used to be two Experiment classes which
were children of Project, hence the need for 'nmrExperiments') and they
also help simplify the machinery that generates the APIs. The use of sets
instead of lists for links will make getByKey operations much faster (and
they in the past have caused efficiency problems). Not all links will be
sets, but most of them will be. (The documentation will say what is
what.)
There is one other change which is looming in 1.1 of the API. Because of
database implementations we are no longer going to allow
application-specific data to hang off of Implementation package objects,
in particular off of Project. Now Analysis used a lot of these, but these
are all migrating as new attributes or roles of the new analysisProject
top object. And while we are at it we are also changing some other
application-specific data to be attributes on some of the other Analysis
package classes (these should have never been app data in the first
place). We are writing some backwards compatibility code in Analysis
which should pick up the old app data and convert it to the new way of
doing things, so the user should not notice any difference.
Wayne
On Mon, 23 Oct 2006, Tim Stevens wrote:
> Dear API-aware people,
>
> Version 1.1 of the Python API and 1.1 of Analysis are nearly here. In
> anticipation of this, the next Analysis release (v1.0.12) will use
> a hybrid API with many v1.1 features installed.
>
> This has required a substantial amount of compatibility work to Analysis,
> but will make the transition to v1.1 smoother.
>
> A consequence of this API upgrade is that upon the next release
> many existing scripts and macros not directly supported by us will cease to
> function.
>
> Essentially the changes are to do with the introduction of new top-level
> objects for the Nmr and Analysis packages, links (but not attributes)
> becoming sets, when they were lists, and also some class and link name
> changes.
>
> Advice on upgrading code yourself is given here:
>
> http://www.ccpn.ac.uk:9080/ccpn/data-model/version-1-0-to-1-1-code-migration/
>
>
> However, for the next couple of weeks, I am willing to upgrade any Python
> code that uses the API to be version 1.1 compatible. Just send it to me by
> e-mail.
>
> We aim to release the version of Analysis that would break things this
> week. So, if you are using macros that are prone, you may like to postpone
> an upgrade until any scripts are ready.
>
> However, in general I am anxious that people move to the new version as
> soon as possible so that any bugs can be ironed out and so that I am not
> supporting two incompatible versions.
>
> Yours,
>
> Tim
>
> -------------------------------------------------------------------------------
> Dr Tim Stevens Email: [log in to unmask]
> Department of Biochemistry [log in to unmask]
> University of Cambridge Phone: +44 1223 766018 (office)
> 80 Tennis Court Road +44 7816 338275 (mobile)
> Old Addenbrooke's Site +44 1223 364613 (home)
> Cambridge CB2 1GA WWWeb: http://www.bio.cam.ac.uk/~tjs23
> United Kingdom http://www.pantonia.co.uk
> -------------------------------------------------------------------------------
> ------ +NH3CH(CH(CH3)OH)C(O)NHCH(CH(CH3)CH2CH3)C(O)NHCH(CH2CH2SCH3)CO2- -------
> -------------------------------------------------------------------------------
>
|