If you want to have this newsletter mailed to you or you want to make comments/suggestions about the format/content then send an email to acedb@sanger.ac.uk.
Some small changes to AceConn, a new init flag, some query improvements, some smap stuff...some bugs....
The long and winding road, at last we make a reasonable release of acedb including a complete replacement of the sequence building code in FMap with the new SMap code.
There has been a small change to the AceConn interface, this is the C library that provides a set of basic routines for interfacing to the acedb socket server.
Initialisation and connection have now been separated which gives the application more control over when to connect to the database and also more error feedback when the crucial intial connection fails. The initialise/connect and disconnect/destroy calls are now:
status = AceConnCreate(&connection, host, port, userid, passwd, timeout) ;
status = AceConnConnect(connection) ;
.... make requests to server ....
status = AceConnDisconnect(connection) ;
AceConnDestroy(AceConnection connection) ;
When any acedb program starts up, it checks for the presence of the database/ACEDB.wrm file,
it then prompts the user as to whether to reinitialise the database. This can make running
tace and giface from a script a bit tedious because you have to remember to handle this
possibility. You can now specify the "-init"
command line option which
means that if database/ACEDB.wrm file is not found, then the program will continue without
prompting and reinitialise.
The tace/giface "dna" command now has options for unspliced/spliced/cds dna dumping. The new command synopsis is:
Dna [-mismatch] [-unspliced | -spliced | -cds] [[-f] out_filename] :
Fasta dump of related dna sequences.
-mismatch allow mismatches in construction of dna
-unspliced | -spliced | -cds
for intron/exon objects dna can be dumped for exons + introns,
the spliced exons or just the CDS within the spliced exons.
[-f] out_filename output file for dna.
The query/tablemaker handling of arithmetic/algebra has been improved so that
it can do interpretations of sums like: "- -3 == 3"
and "3 + 5 (7+2)"
. The handling
of negative numbers is useful in table maker when you say "%5"
and "%5"
is negative.
A small but important clarification has been added to the SMap model for gluing together sequences and features, it is fundamental to the SMap that each child has one and only one parent. Objects that are to be SMap'd must form strict trees, i.e. each object has a single parent (except for the top object which has no parent). Objects may, of course, have multiple children.
The part of the SMap model that must be put in the child object to point to its parent should be:
SMap S_Parent UNIQUE <parent_tag> UNIQUE <parent_key>
<parent_tag> UNIQUE <parent_key>
As an example the current wspec/models.wrm Sequence class includes:
?Sequence
SMap S_Parent Canonical_parent UNIQUE ?Sequence XREF Genomic_non_canonical
Genomic_parent UNIQUE ?Sequence XREF Nongenomic
AGP_parent UNIQUE ?Sequence XREF AGP_fragment
This means that any one of Canonical_parent, Genomic_parent or AGP_parent could be the parent of this object.
The downloads page on the acedb web site now includes a separate downloads package for the belvu, dotter, and blixem binaries. These are available for Unix, Mac OSX and MS Windows.
An old bug, if you used the seqdna command from giface to dump the dna for a gene on the reverse strand it dumped the dna for the forward strand instead ! This goes right back to acedb 4_7 and is now fixed.
The signal handler was setting the messOut context to NULL instead of the messExit context. Then when it called messExit, this caused the program to reenter GTK from the signal handler, this is almost always a disaster as it messes up the state of GTK. This is fixed now.
The documentation for "max reply bytes" in the server was muddled: the client can set this to any value between 0 and the server maximum (100KB), the server will except the special value zero, meaning "no maximum", i.e. send whole of reply at once.
Since Simon improved the help browser for acedb it handles subdirectories within whelp/ and in general it would be good if we could all consider putting documents that go into whelp/ or wdoc/ into their subdirectories, particularly if you include seperate picture files that should go with the documents. This has been done for whelp/AQL and also for wdoc/SMap and wdoc/Socket_server documentation already. If you aren't sure how to add subdirectories in a CVS directory then mail me edgrif@sanger.ac.uk and I'll send you the incantations.
When we all used the "acXXXX"
scripts to access our files there
was a system that warned you if someone else was already editting a file that you wanted
to get out, if you carried on and got the file out then it also warned the person(s)
already editting the file that you had got the file out. Note that this was just a warning,
it in no way prevented you from editting the file, a courtesy email really. Rob has added
code to get CVS to perform this function now rather than the
"acXXXX"
scripts.
The aquila scripts have now been placed in cvs.
We now have a "_DEF" file for OSF v5 called ALPHA_5, Simon has pointed out that this breaks the convention that the first number refers to the acedb release. This is partly my fault, I was unaware of this convention and also it has been broken for other operating systems. If anyone feels really strongly about this I will change it to ALPHA_4_5. I have put in the compiler flags to get "level 3" warnings out which seems about right as a balance between over zealous and useful messages.
I also attempted to fix yet more #define nonsense on Alpha, they cannot make up their minds whether to define socklen_t or not...sigh.... first they don't, then they do, then they only sometimes do....
Apologies, once again there was no build this month due to the major SMap development work.